One document matched: draft-ietf-tsvwg-ecnsyn-00.ps
%!PS-Adobe-3.0
%%BoundingBox: 24 24 588 768
%%Title: Enscript Output
%%For: Sally Floyd
%%Creator: GNU enscript 1.6.1
%%CreationDate: Wed Nov 16 13:46:44 2005
%%Orientation: Portrait
%%Pages: (atend)
%%DocumentMedia: Letter 612 792 0 () ()
%%DocumentNeededResources: (atend)
%%EndComments
%%BeginProlog
%%BeginResource: procset Enscript-Prolog 1.6 1
%
% Procedures.
%
/_S { % save current state
/_s save def
} def
/_R { % restore from saved state
_s restore
} def
/S { % showpage protecting gstate
gsave
showpage
grestore
} bind def
/MF { % fontname newfontname -> - make a new encoded font
/newfontname exch def
/fontname exch def
/fontdict fontname findfont def
/newfont fontdict maxlength dict def
fontdict {
exch
dup /FID eq {
% skip FID pair
pop pop
} {
% copy to the new font dictionary
exch newfont 3 1 roll put
} ifelse
} forall
newfont /FontName newfontname put
% insert only valid encoding vectors
encoding_vector length 256 eq {
newfont /Encoding encoding_vector put
} if
newfontname newfont definefont pop
} def
/SF { % fontname width height -> - set a new font
/height exch def
/width exch def
findfont
[width 0 0 height 0 0] makefont setfont
} def
/SUF { % fontname width height -> - set a new user font
/height exch def
/width exch def
/F-gs-user-font MF
/F-gs-user-font width height SF
} def
/M {moveto} bind def
/s {show} bind def
/Box { % x y w h -> - define box path
/d_h exch def /d_w exch def /d_y exch def /d_x exch def
d_x d_y moveto
d_w 0 rlineto
0 d_h rlineto
d_w neg 0 rlineto
closepath
} def
/bgs { % x y height blskip gray str -> - show string with bg color
/str exch def
/gray exch def
/blskip exch def
/height exch def
/y exch def
/x exch def
gsave
x y blskip sub str stringwidth pop height Box
gray setgray
fill
grestore
x y M str s
} def
% Highlight bars.
/highlight_bars { % nlines lineheight output_y_margin gray -> -
gsave
setgray
/ymarg exch def
/lineheight exch def
/nlines exch def
% This 2 is just a magic number to sync highlight lines to text.
0 d_header_y ymarg sub 2 sub translate
/cw d_output_w cols div def
/nrows d_output_h ymarg 2 mul sub lineheight div cvi def
% for each column
0 1 cols 1 sub {
cw mul /xp exch def
% for each rows
0 1 nrows 1 sub {
/rn exch def
rn lineheight mul neg /yp exch def
rn nlines idiv 2 mod 0 eq {
% Draw highlight bar. 4 is just a magic indentation.
xp 4 add yp cw 8 sub lineheight neg Box fill
} if
} for
} for
grestore
} def
% Line highlight bar.
/line_highlight { % x y width height gray -> -
gsave
/gray exch def
Box gray setgray fill
grestore
} def
% Column separator lines.
/column_lines {
gsave
.1 setlinewidth
0 d_footer_h translate
/cw d_output_w cols div def
1 1 cols 1 sub {
cw mul 0 moveto
0 d_output_h rlineto stroke
} for
grestore
} def
% Column borders.
/column_borders {
gsave
.1 setlinewidth
0 d_footer_h moveto
0 d_output_h rlineto
d_output_w 0 rlineto
0 d_output_h neg rlineto
closepath stroke
grestore
} def
% Do the actual underlay drawing
/draw_underlay {
ul_style 0 eq {
ul_str true charpath stroke
} {
ul_str show
} ifelse
} def
% Underlay
/underlay { % - -> -
gsave
0 d_page_h translate
d_page_h neg d_page_w atan rotate
ul_gray setgray
ul_font setfont
/dw d_page_h dup mul d_page_w dup mul add sqrt def
ul_str stringwidth pop dw exch sub 2 div ul_h_ptsize -2 div moveto
draw_underlay
grestore
} def
/user_underlay { % - -> -
gsave
ul_x ul_y translate
ul_angle rotate
ul_gray setgray
ul_font setfont
0 0 ul_h_ptsize 2 div sub moveto
draw_underlay
grestore
} def
% Page prefeed
/page_prefeed { % bool -> -
statusdict /prefeed known {
statusdict exch /prefeed exch put
} {
pop
} ifelse
} def
% Wrapped line markers
/wrapped_line_mark { % x y charwith charheight type -> -
/type exch def
/h exch def
/w exch def
/y exch def
/x exch def
type 2 eq {
% Black boxes (like TeX does)
gsave
0 setlinewidth
x w 4 div add y M
0 h rlineto w 2 div 0 rlineto 0 h neg rlineto
closepath fill
grestore
} {
type 3 eq {
% Small arrows
gsave
.2 setlinewidth
x w 2 div add y h 2 div add M
w 4 div 0 rlineto
x w 4 div add y lineto stroke
x w 4 div add w 8 div add y h 4 div add M
x w 4 div add y lineto
w 4 div h 8 div rlineto stroke
grestore
} {
% do nothing
} ifelse
} ifelse
} def
% EPSF import.
/BeginEPSF {
/b4_Inc_state save def % Save state for cleanup
/dict_count countdictstack def % Count objects on dict stack
/op_count count 1 sub def % Count objects on operand stack
userdict begin
/showpage { } def
0 setgray 0 setlinecap
1 setlinewidth 0 setlinejoin
10 setmiterlimit [ ] 0 setdash newpath
/languagelevel where {
pop languagelevel
1 ne {
false setstrokeadjust false setoverprint
} if
} if
} bind def
/EndEPSF {
count op_count sub { pos } repeat % Clean up stacks
countdictstack dict_count sub { end } repeat
b4_Inc_state restore
} bind def
% Check PostScript language level.
/languagelevel where {
pop /gs_languagelevel languagelevel def
} {
/gs_languagelevel 1 def
} ifelse
%%EndResource
%%BeginResource: procset Enscript-Encoding-88591 1.6 1
/encoding_vector [
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/space /exclam /quotedbl /numbersign
/dollar /percent /ampersand /quoteright
/parenleft /parenright /asterisk /plus
/comma /hyphen /period /slash
/zero /one /two /three
/four /five /six /seven
/eight /nine /colon /semicolon
/less /equal /greater /question
/at /A /B /C
/D /E /F /G
/H /I /J /K
/L /M /N /O
/P /Q /R /S
/T /U /V /W
/X /Y /Z /bracketleft
/backslash /bracketright /asciicircum /underscore
/quoteleft /a /b /c
/d /e /f /g
/h /i /j /k
/l /m /n /o
/p /q /r /s
/t /u /v /w
/x /y /z /braceleft
/bar /braceright /tilde /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/space /exclamdown /cent /sterling
/currency /yen /brokenbar /section
/dieresis /copyright /ordfeminine /guillemotleft
/logicalnot /hyphen /registered /macron
/degree /plusminus /twosuperior /threesuperior
/acute /mu /paragraph /bullet
/cedilla /onesuperior /ordmasculine /guillemotright
/onequarter /onehalf /threequarters /questiondown
/Agrave /Aacute /Acircumflex /Atilde
/Adieresis /Aring /AE /Ccedilla
/Egrave /Eacute /Ecircumflex /Edieresis
/Igrave /Iacute /Icircumflex /Idieresis
/Eth /Ntilde /Ograve /Oacute
/Ocircumflex /Otilde /Odieresis /multiply
/Oslash /Ugrave /Uacute /Ucircumflex
/Udieresis /Yacute /Thorn /germandbls
/agrave /aacute /acircumflex /atilde
/adieresis /aring /ae /ccedilla
/egrave /eacute /ecircumflex /edieresis
/igrave /iacute /icircumflex /idieresis
/eth /ntilde /ograve /oacute
/ocircumflex /otilde /odieresis /divide
/oslash /ugrave /uacute /ucircumflex
/udieresis /yacute /thorn /ydieresis
] def
%%EndResource
%%EndProlog
%%BeginSetup
%%IncludeResource: font Courier-Bold
%%IncludeResource: font Courier
/HFpt_w 10 def
/HFpt_h 10 def
/Courier-Bold /HF-gs-font MF
/HF /HF-gs-font findfont [HFpt_w 0 0 HFpt_h 0 0] makefont def
/Courier /F-gs-font MF
/F-gs-font 10 10 SF
/#copies 1 def
% Pagedevice definitions:
gs_languagelevel 1 gt {
<<
/PageSize [612 792]
>> setpagedevice
} if
/d_page_w 564 def
/d_page_h 744 def
/d_header_x 0 def
/d_header_y 744 def
/d_header_w 564 def
/d_header_h 0 def
/d_footer_x 0 def
/d_footer_y 0 def
/d_footer_w 564 def
/d_footer_h 0 def
/d_output_w 564 def
/d_output_h 744 def
/cols 1 def
%%EndSetup
%%Page: (1) 1
%%BeginPageSetup
_S
24 24 translate
/pagenum 1 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 731 M
(Internet Engineering Task Force A. Kuzmanovic) s
5 720 M
(INTERNET DRAFT Northwestern University) s
5 709 M
(draft-ietf-tsvwg-ecnsyn-00.txt S. Floyd) s
5 698 M
( ICIR) s
5 687 M
( K.K. Ramakrishnan) s
5 676 M
( AT&T) s
5 665 M
( October, 2005) s
5 621 M
( Adding Explicit Congestion Notification \(ECN\) Capability to TCP's) s
5 610 M
( SYN/ACK Packets) s
5 566 M
(Status of this Memo) s
5 544 M
( By submitting this Internet-Draft, each author represents that any) s
5 533 M
( applicable patent or other IPR claims of which he or she is aware) s
5 522 M
( have been or will be disclosed, and any of which he or she becomes) s
5 511 M
( aware will be disclosed, in accordance with Section 6 of BCP 79.) s
5 489 M
( Internet-Drafts are working documents of the Internet Engineering) s
5 478 M
( Task Force \(IETF\), its areas, and its working groups. Note that) s
5 467 M
( other groups may also distribute working documents as Internet-) s
5 456 M
( Drafts.) s
5 434 M
( Internet-Drafts are draft documents valid for a maximum of six months) s
5 423 M
( and may be updated, replaced, or obsoleted by other documents at any) s
5 412 M
( time. It is inappropriate to use Internet-Drafts as reference) s
5 401 M
( material or to cite them other than as "work in progress.") s
5 379 M
( The list of current Internet-Drafts can be accessed at) s
5 368 M
( http://www.ietf.org/ietf/1id-abstracts.txt.) s
5 346 M
( The list of Internet-Draft Shadow Directories can be accessed at) s
5 335 M
( http://www.ietf.org/shadow.html.) s
5 313 M
( This Internet-Draft will expire on April 2006.) s
5 291 M
(Copyright Notice) s
5 269 M
( Copyright \(C\) The Internet Society \(2005\). All Rights Reserved.) s
5 247 M
(Abstract) s
5 225 M
( This draft specifies a modification to RFC 3168 to allow TCP SYN/ACK) s
5 214 M
( packets to be ECN-Capable. For TCP, RFC 3168 only specified setting) s
5 170 M
(Kuzmanovic Standards Track [Page 1]) s
_R
S
%%Page: (2) 2
%%BeginPageSetup
_S
24 24 translate
/pagenum 2 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
( an ECN-Capable codepoint on data packets, and not on SYN and SYN/ACK) s
5 676 M
( packets. However, because of the high cost to the TCP transfer of) s
5 665 M
( having a SYN/ACK packet dropped, with the resulting retransmit) s
5 654 M
( timeout, this document is specifying the use of ECN for the SYN/ACK) s
5 643 M
( packet itself, when sent in response to a SYN packet with the two ECN) s
5 632 M
( flags set in the TCP header, indicating a willingness to use ECN.) s
5 621 M
( Setting TCP SYN/ACK packets as ECN-Capable can be of great benefit to) s
5 610 M
( the TCP connection, avoiding the severe penalty of a retransmit) s
5 599 M
( timeout for a connection that has not yet started placing a load on) s
5 588 M
( the network. The sender of the SYN/ACK packet must respond to an ECN) s
5 577 M
( mark by reducing its initial congestion window from two, three, or) s
5 566 M
( four segments to one segment, reducing the subsequent load from that) s
5 555 M
( connection on the network.) s
5 533 M
( NOTE TO RFC EDITOR: PLEASE DELETE THIS NOTE UPON PUBLICATION.) s
5 511 M
( Changes from draft-kuzmanovic-ecn-syn-00.txt:) s
5 489 M
( * Changed name of draft to draft-ietf-twvsg-ecnsyn.) s
5 467 M
( END OF NOTE TO RFC EDITOR.) s
5 445 M
(1. Conventions) s
5 423 M
( The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",) s
5 412 M
( "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this) s
5 401 M
( document are to be interpreted as described in [RFC 2119].) s
5 379 M
(1. Introduction) s
5 357 M
( TCP's congestion control mechanism has primarily used packet loss as) s
5 346 M
( the congestion indication, with packets dropped when buffers) s
5 335 M
( overflow. With such tail-drop mechanisms, the packet delay can be) s
5 324 M
( high, as the queue at bottleneck routers can be fairly large.) s
5 313 M
( Dropping packets only when the queue overflows, and having TCP react) s
5 302 M
( only to such losses, results in:) s
5 291 M
( 1\) significantly higher packet delay;) s
5 280 M
( 2\) unnecessarily many packet losses; and) s
5 269 M
( 3\) unfairness due to synchronization effects.) s
5 247 M
( The adoption of Active Queue Management \(AQM\) mechanisms allows) s
5 236 M
( better control of bottleneck queues. This use of AQM has the) s
5 225 M
( following potential benefits:) s
5 214 M
( 1\) better control of the queue, with reduced queueing delay;) s
5 203 M
( 2\) fewer packet drops; and) s
5 192 M
( 3\) better fairness because of fewer synchronization effects.) s
5 170 M
( With the adoption of ECN, performance may be further improved. When) s
5 126 M
(Kuzmanovic Standards Track [Page 2]) s
_R
S
%%Page: (3) 3
%%BeginPageSetup
_S
24 24 translate
/pagenum 3 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
( the router detects congestion before buffer overflow, the router can) s
5 676 M
( provide a congestion indication either by dropping a packet, or by) s
5 665 M
( setting the Congestion Experienced \(CE\) codepoint in the Explicit) s
5 654 M
( Congestion Notification \(ECN\) field in the IP header [RFC3168]. The) s
5 643 M
( IETF has standardized the use of the Congestion Experienced \(CE\)) s
5 632 M
( codepoint in the IP header for routers to indicate congestion. For) s
5 621 M
( incremental deployment and backwards compatibility, the RFC on ECN) s
5 610 M
( [RFC 3168] specifies that routers may mark ECN-capable packets that) s
5 599 M
( would otherwise have been dropped, using the Congestion Experienced) s
5 588 M
( codepoint in the ECN field. The use of ECN allows TCP to react to) s
5 577 M
( congestion while avoiding unnecessary retransmissions and, in some) s
5 566 M
( cases, unnecessary retransmit timeouts. Thus, using ECN has several) s
5 555 M
( benefits:) s
5 533 M
( 1\) For short transfers, a TCP connection's congestion window may be) s
5 522 M
( small. For example, if the current window contains only one packet,) s
5 511 M
( and that packet is dropped, TCP will have to wait for a retransmit) s
5 500 M
( timeout to recover, reducing its overall throughput. Similarly, if) s
5 489 M
( the current window contains only a few packets and one of those) s
5 478 M
( packets is dropped, there might not be enough duplicate) s
5 467 M
( acknowledgements for a fast retransmission, and the sender might have) s
5 456 M
( to wait for a delay of several round-trip times using Limited) s
5 445 M
( Transmit [RFC3042]. With the use of ECN, short flows are less likely) s
5 434 M
( to have packets dropped, sometimes avoiding unnecessary delays or) s
5 423 M
( costly retransmit timeouts.) s
5 401 M
( 2\) While longer flows may not see substantially improved throughput) s
5 390 M
( with the use of ECN, they experience lower loss. This may benefit TCP) s
5 379 M
( applications that are latency- and loss-sensitive, because of the) s
5 368 M
( avoidance of retransmissions.) s
5 346 M
( RFC 3168 only specified marking the Congestion Experienced codepoint) s
5 335 M
( on TCP's data packets, and not on SYN and SYN/ACK packets. RFC 3168) s
5 324 M
( specified the negotiation of the use of ECN between the two TCP end-) s
5 313 M
( points in the TCP SYN and SYN-ACK exchange, using flags in the TCP) s
5 302 M
( header. Erring on the side of being conservative, RFC 3168 did not) s
5 291 M
( specify the use of ECN for the SYN/ACK packet itself. However,) s
5 280 M
( because of the high cost to the TCP transfer of having a SYN/ACK) s
5 269 M
( packet dropped, with the resulting retransmit timeout, this document) s
5 258 M
( is specifying the use of ECN for the SYN/ACK packet itself. This can) s
5 247 M
( be of great benefit to the TCP connection, avoiding the severe) s
5 236 M
( penalty of a retransmit timeout for a connection that has not yet) s
5 225 M
( started placing a load on the network. The sender of the SYN/ACK) s
5 214 M
( packet must respond to an ECN mark by reducing its initial congestion) s
5 203 M
( window from two, three, or four segments to one segment, reducing the) s
5 192 M
( subsequent load from that connection on the network.) s
5 170 M
( The use of ECN for SYN/ACK packets has the following potential) s
5 126 M
(Kuzmanovic Standards Track [Page 3]) s
_R
S
%%Page: (4) 4
%%BeginPageSetup
_S
24 24 translate
/pagenum 4 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
( benefits:) s
5 676 M
( 1\) Avoidance of a retransmit timeout;) s
5 665 M
( 2\) Improvement in the throughput of short connections.) s
5 643 M
( This draft specifies a modification to RFC 3168 to allow TCP SYN/ACK) s
5 632 M
( packets to be ECN-Capable. Section 2 contains the specification of) s
5 621 M
( the change, while Section 3 discusses some of the issues, and Section) s
5 610 M
( 4 discusses related work. Section 5 contains an evaluation of the) s
5 599 M
( proposed change.) s
5 577 M
(2. Proposal) s
5 555 M
( This section specifies the modification to RFC 3168 to allow TCP) s
5 544 M
( SYN/ACK packets to be ECN-Capable. We use the following terminology) s
5 533 M
( from RFC 3168:) s
5 511 M
( The ECN field in the IP header:) s
5 500 M
( o CE: the Congestion Experienced codepoint; and) s
5 489 M
( o ECT: either one of the two ECN-Capable Transport codepoints.) s
5 467 M
( The ECN flags in the TCP header:) s
5 456 M
( o CWR: the Congestion Window Reduced flag; and) s
5 445 M
( o ECE: the ECN-Echo flag.) s
5 423 M
( ECN-setup packets:) s
5 412 M
( o ECN-setup SYN packet: a SYN packet with the ECE and CWR flags;) s
5 401 M
( o ECN-setup SYN-ACK packet: a SYN-ACK packet with ECE but not CWR.) s
5 379 M
( RFC 3168 in Section 6.1.1. states that "A host MUST NOT set ECT on) s
5 368 M
( SYN or SYN-ACK packets." In this section, we specify that a TCP node) s
5 357 M
( MAY respond to an ECN-setup SYN packet by setting ECT in the) s
5 346 M
( responding ECN-setup SYN/ACK packet, indicating to routers that the) s
5 335 M
( SYN/ACK packet is ECN-Capable. This allows a congested router along) s
5 324 M
( the path to mark the packet instead of dropping the packet as an) s
5 313 M
( indication of congestion.) s
5 291 M
( Assume that TCP node A transmits to TCP node B an ECN-setup SYN) s
5 280 M
( packet, indicating willingness to use ECN for this connection. As) s
5 269 M
( specified by RFC 3168, if TCP node B is willing to use ECN, node B) s
5 258 M
( responds with an ECN-setup SYN-ACK packet.) s
5 236 M
( Table 1 shows an interchange with the SYN/ACK packet dropped by a) s
5 225 M
( congested router. Node B waits for a retransmit timeout, and then) s
5 214 M
( retransmits the SYN/ACK packet.) s
5 126 M
(Kuzmanovic Standards Track [Page 4]) s
_R
S
%%Page: (5) 5
%%BeginPageSetup
_S
24 24 translate
/pagenum 5 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
( ---------------------------------------------------------------) s
5 676 M
( TCP Node A Router TCP Node B) s
5 665 M
( ---------- ------ ----------) s
5 643 M
( ECN-setup SYN packet --->) s
5 632 M
( ECN-setup SYN packet --->) s
5 610 M
( <--- ECN-setup SYN/ACK, possibly ECT) s
5 599 M
( 3-second timer set) s
5 588 M
( SYN/ACK dropped .) s
5 577 M
( .) s
5 566 M
( .) s
5 555 M
( 3-second timer expires) s
5 544 M
( <--- ECN-setup SYN/ACK, not ECT) s
5 533 M
( <--- ECN-setup SYN/ACK) s
5 522 M
( Data/ACK --->) s
5 511 M
( Data/ACK --->) s
5 500 M
( <--- Data \(one to four segments\)) s
5 489 M
( ---------------------------------------------------------------) s
5 467 M
( Table 1: SYN exchange with the SYN/ACK packet dropped.) s
5 434 M
( If the SYN/ACK packet is dropped in the network, the TCP host \(node) s
5 423 M
( B\) responds by waiting three seconds for the retransmit timer to) s
5 412 M
( expire [RFC2988]. If a SYN/ACK packet with the ECT codepoint is) s
5 401 M
( dropped, the TCP node SHOULD resend the SYN/ACK packet without the) s
5 390 M
( ECN-Capable codepoint. \(Although we are not aware of any middleboxes) s
5 379 M
( that drop SYN/ACK packets that contain an ECN-Capable codepoint in) s
5 368 M
( the IP header, we have learned to design our protocols defensively in) s
5 357 M
( this regard [RFC3360].\)) s
5 335 M
( Table 2 shows an interchange with the SYN/ACK packet sent as ECN-) s
5 324 M
( Capable, and ECN-marked instead of dropped at the congested router.) s
5 126 M
(Kuzmanovic Standards Track [Page 5]) s
_R
S
%%Page: (6) 6
%%BeginPageSetup
_S
24 24 translate
/pagenum 6 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
( ---------------------------------------------------------------) s
5 676 M
( TCP Node A Router TCP Node B) s
5 665 M
( ---------- ------ ----------) s
5 643 M
( ECN-setup SYN packet --->) s
5 632 M
( ECN-setup SYN packet --->) s
5 610 M
( <--- ECN-setup SYN/ACK, ECT) s
5 599 M
( <--- Sets CE on SYN/ACK) s
5 588 M
( <--- ECN-setup SYN/ACK, CE) s
5 566 M
( Data/ACK, ECN-Echo --->) s
5 555 M
( Data/ACK, ECN-Echo --->) s
5 544 M
( Window reduced to one segment.) s
5 533 M
( <--- Data, CWR \(one segment only\)) s
5 522 M
( ---------------------------------------------------------------) s
5 500 M
( Table 2: SYN exchange with the SYN/ACK packet marked.) s
5 467 M
( If the receiving node \(node A\) receives a SYN/ACK packet that has) s
5 456 M
( been marked by the congested router, with the CE codepoint set, the) s
5 445 M
( receiving node MUST respond by setting the ECN-Echo flag in the TCP) s
5 434 M
( header of the responding ACK packet. As specified in RFC 3168, the) s
5 423 M
( receiving node continues to set the ECN-Echo flag in packets until it) s
5 412 M
( receives a packet with the CWR flag set.) s
5 390 M
( When the sending node \(node B\) receives the ECN-Echo packet reporting) s
5 379 M
( the Congestion Experienced indication in the SYN/ACK packet, the node) s
5 368 M
( MUST set the initial congestion window to one segment, instead of two) s
5 357 M
( segments as allowed by [RFC2414], or three or four segments allowed) s
5 346 M
( by [RFC3390]. If the sending node \(node B\) was going to use an) s
5 335 M
( initial window of one segment, and receives an ECN-Echo packet) s
5 324 M
( informing it of a Congestion Experienced indication on its SYN/ACK) s
5 313 M
( packet, the sending node MAY continue to send with an initial window) s
5 302 M
( of one segment, without waiting for a retransmit timeout. We note) s
5 291 M
( that this updates RFC 3168, which specifies that "the sending TCP) s
5 280 M
( MUST reset the retransmit timer on receiving the ECN-Echo packet when) s
5 269 M
( the congestion window is one." As specified by RFC 3168, the sending) s
5 258 M
( node \(node B\) also sets the CWR flag in the TCP header of the next) s
5 247 M
( packet sent, to acknowledge its receipt of and reaction to the ECN-) s
5 236 M
( Echo flag.) s
5 214 M
(3. Discussion) s
5 192 M
( Motivation:) s
5 181 M
( The rationale for the proposed change is the following. When node B) s
5 170 M
( receives a TCP SYN packet with ECN-Echo bit set in the TCP header,) s
5 126 M
(Kuzmanovic Standards Track [Page 6]) s
_R
S
%%Page: (7) 7
%%BeginPageSetup
_S
24 24 translate
/pagenum 7 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
( this indicates that node A is ECN-capable. If node B is also ECN-) s
5 676 M
( capable, there are no obstacles to immediately setting one of the) s
5 665 M
( ECN-Capable codepoints in the IP header in the responding TCP SYN/ACK) s
5 654 M
( packet.) s
5 632 M
( There can be a great benefit in setting an ECN-capable codepoint in) s
5 621 M
( SYN/ACK packets, as is discussed further in Section 4. Congestion is) s
5 610 M
( most likely to occur in the server-to-client direction. As a result,) s
5 599 M
( setting an ECN-capable codepoint in SYN/ACK packets can reduce the) s
5 588 M
( occurence of three-second retransmit timeouts resulting from the drop) s
5 577 M
( of SYN/ACK packets.) s
5 555 M
( Flooding attacks:) s
5 544 M
( Setting an ECN-Capable codepoint in the responding TCP SYN/ACK) s
5 533 M
( packets does not raise any novel security vulnerabilities. For) s
5 522 M
( example, provoking servers or hosts to send SYN/ACK packets to a) s
5 511 M
( third party in order to perform a "SYN/ACK flood" attack would be) s
5 500 M
( greatly inefficient. Third parties would immediately drop such) s
5 489 M
( packets, since they would know that they didn't generate the TCP SYN) s
5 478 M
( packets in the first place. Moreover, such SYN/ACK attacks would) s
5 467 M
( have the same signatures as the existing TCP SYN attacks. Provoking) s
5 456 M
( servers or hosts to reply with SYN/ACK packets in order to congest a) s
5 445 M
( certain link would also be highly inefficient because SYN ACK packets) s
5 434 M
( are small in size.) s
5 412 M
( The TCP SYN packet:) s
5 401 M
( There are several reasons why an ECN-Capable codepoint MUST NOT be) s
5 390 M
( set in the IP header of the initiating TCP SYN packet. First, when) s
5 379 M
( the TCP SYN packet is sent, there are no guarantees that the other) s
5 368 M
( TCP endpoint \(node B in Table 2\) is ECN-capable, or that it would be) s
5 357 M
( able to understand and react if the ECN CE codepoint was set by a) s
5 346 M
( congested router.) s
5 324 M
( Second, the ECN-Capable codepoint in TCP SYN packets could be misused) s
5 313 M
( by malicious clients to `improve' the well-known TCP SYN attack. By) s
5 302 M
( setting an ECN-Capable codepoint in TCP SYN packets, a malicious host) s
5 291 M
( might be able to inject a large number of TCP SYN packets through a) s
5 280 M
( potentially congested ECN-enabled router, congesting it even further.) s
5 258 M
( For both these reasons, we continue the restriction that the TCP SYN) s
5 247 M
( packet MUST NOT have the ECN-Capable codepoint in the IP header set.) s
5 225 M
( Backwards compatibility:) s
5 214 M
( If there are some older TCP implementations that don't respond to the) s
5 203 M
( Congestion Experienced codepoint in a SYN/ACK packet, that would not) s
5 192 M
( be an insurmountable problem. It would mean that the sender of the) s
5 181 M
( SYN/ACK packet would not reduce the initial congestion window from) s
5 170 M
( two, three, or four segments down to one segment, as it should.) s
5 126 M
(Kuzmanovic Standards Track [Page 7]) s
_R
S
%%Page: (8) 8
%%BeginPageSetup
_S
24 24 translate
/pagenum 8 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
( However, the TCP sender would still respond correctly to any) s
5 676 M
( subsequent CE indications on data packets later on in the connection.) s
5 654 M
( SYN/ACK packets and packet size:) s
5 643 M
( There are a number of router buffer architectures that have smaller) s
5 632 M
( dropping rates for small \(SYN\) packets than for large \(data\) packets.) s
5 621 M
( For example, for a Drop Tail queue in units of packets, where each) s
5 610 M
( packet takes a single slot in the buffer regardless of packet size,) s
5 599 M
( small and large packets are equally likely to be dropped. However,) s
5 588 M
( for a Drop Tail queue in units of bytes, small packets are less) s
5 577 M
( likely to be dropped than are large ones. Similarly, for RED in) s
5 566 M
( packet mode, small and large packets are equally likely to be dropped) s
5 555 M
( or marked, while for RED in byte mode, a packet's chance of being) s
5 544 M
( dropped or marked is proportional to the packet size in bytes.) s
5 522 M
( For a congested router with an AQM mechanism in byte mode, where a) s
5 511 M
( packet's chance of being dropped or marked is proportional to the) s
5 500 M
( packet size in bytes, the drop or marking rate for TCP SYN/ACK) s
5 489 M
( packets should generally be low. In this case, the benefit of making) s
5 478 M
( SYN/ACK packets ECN-Capable should be similarly moderate. However,) s
5 467 M
( for a congested router with a Drop Tail queue in units of packets or) s
5 456 M
( with an AQM mechanism in packet mode, and with no priority queueing) s
5 445 M
( for smaller packets, small and large packets should have the same) s
5 434 M
( probability of being dropped or marked. In such a case, making) s
5 423 M
( SYN/ACK packets ECN-Capable should be of significant benefit.) s
5 401 M
( We believe that there are a wide range of behaviors in the real world) s
5 390 M
( in terms of the drop or mark behavior at routers as a function of) s
5 379 M
( packet size [Tools, Section 10]. We note that all of these) s
5 368 M
( alternatives listed above are available in the NS simulator \(Drop) s
5 357 M
( Tail queues are by default in units of packets, while the default for) s
5 346 M
( RED queue management has been changed from packet mode to byte mode\).) s
5 324 M
(4. Related Work) s
5 302 M
( The addition of ECN-capability to TCP's SYN/ACK packets was proposed) s
5 291 M
( in [ECN+]. The paper includes an extensive set of simulation and) s
5 280 M
( testbed experiments to evaluate the effects of the proposal, using) s
5 269 M
( several Active Queue Management \(AQM\) mechanisms, including Random) s
5 258 M
( Early Detection \(RED\) [RED], Random Exponential Marking \(REM\) [REM],) s
5 247 M
( and Proportional Integrator \(PI\) [PI]. The performance measures were) s
5 236 M
( the end-to-end response times for each request/response pair, and the) s
5 225 M
( aggregate throughput on the bottleneck link. The end-to-end response) s
5 214 M
( time was computed as the time from the moment when the request for) s
5 203 M
( the file is sent to the server, until that file is successfully) s
5 192 M
( downloaded by the client.) s
5 170 M
( The measurements from [ECN+] showed that setting an ECN-Capable) s
5 126 M
(Kuzmanovic Standards Track [Page 8]) s
_R
S
%%Page: (9) 9
%%BeginPageSetup
_S
24 24 translate
/pagenum 9 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
( codepoint in the IP packet header in TCP SYN/ACK packets) s
5 676 M
( systematically improves performance with all evaluated AQM schemes.) s
5 665 M
( When SYN/ACK packets at a congested router are ECN-marked instead of) s
5 654 M
( dropped, this can avoid a long initial retransmit timeout, improving) s
5 643 M
( the response time for the affected flow dramatically.) s
5 621 M
( [ECN+] showed that the impact on aggregate throughput can also be) s
5 610 M
( quite significant, because marking SYN ACK packets can prevent larger) s
5 599 M
( flows from suffering long timeouts before being "admitted" into the) s
5 588 M
( network. In addition, the testbed measurements from [ECN+] showed) s
5 577 M
( that Web servers setting the ECN-Capable codepoint in TCP SYN/ACK) s
5 566 M
( packets could serve more requests.) s
5 544 M
( As a final step, [ECN+] explored the co-existence of flows that do) s
5 533 M
( and don't set the ECN-capable codepoint in TCP SYN/ACK packets. The) s
5 522 M
( results in [ECN+] confirmed that both types of flows can coexist;) s
5 511 M
( flows that apply the change improve their end-to-end performance,) s
5 500 M
( while the performance degradation for flows that don't apply the) s
5 489 M
( change, as a result of the flows that do apply the change, is) s
5 478 M
( marginal.) s
5 456 M
(5. Evaluation) s
5 434 M
( The addition of ECN-capability to SYN/ACK packets could be of) s
5 423 M
( significant benefit for those ECN connections that would have had the) s
5 412 M
( SYN/ACK packet dropped in the network, and for which the ECN-) s
5 401 M
( Capability would allow the SYN/ACK to be marked rather than dropped.) s
5 379 M
( The percent of SYN/ACK packets on a link can be quite high. In) s
5 368 M
( particular, measurements on links dominated by Web traffic indicate) s
5 357 M
( that 15-20% of the packets can be SYN/ACK packets [SCJO01].) s
5 335 M
( The benefit of adding ECN-capability to SYN/ACK packets depends in) s
5 324 M
( part on the size of the data transfer. The drop of a SYN/ACK packet) s
5 313 M
( can increase the download time of a short file by an order of) s
5 302 M
( magnitude, by requiring a three-second retransmit timeout. For) s
5 291 M
( longer-lived flows, the effect of a dropped SYN/ACK packet on file) s
5 280 M
( download time is less dramatic. However, even for longer-lived) s
5 269 M
( flows, the addition of ECN-capability to SYN/ACK packets can improve) s
5 258 M
( the fairness among long-lived flows, as newly-arriving flows would be) s
5 247 M
( less likely to have to wait for retransmit timeouts.) s
5 225 M
( The question that arises of course is what fraction of connections) s
5 214 M
( would see the benefit from making SYN/ACK packets ECN-capable, in a) s
5 203 M
( particular scenario? Specifically:) s
5 181 M
( \(1\) What fraction of arriving SYN/ACK packets are dropped at the) s
5 170 M
( congested router when the SYN/ACK packets are not ECN-capable?) s
5 126 M
(Kuzmanovic Standards Track [Page 9]) s
_R
S
%%Page: (10) 10
%%BeginPageSetup
_S
24 24 translate
/pagenum 10 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
( \(2\) Of those SYN/ACK packets that are dropped, what fraction of those) s
5 676 M
( drops would have been ECN-marks instead of drops if the SYN/ACK) s
5 665 M
( packets had been ECN-capable?) s
5 643 M
( To answer \(1\), it is necessary to consider not only the level of) s
5 632 M
( congestion but also the queue architecture at the congested link. As) s
5 621 M
( described in Section 3 above, for some queue architectures small) s
5 610 M
( packets are less likely to be dropped than large ones. In such an) s
5 599 M
( environment, SYN/ACK packets would have lower packet drop rates;) s
5 588 M
( question \(1\) could not necessarily be inferred from the overall) s
5 577 M
( packet drop rate, but could be answered by measuring the drop rate) s
5 566 M
( for SYN/ACK packets directly. In such an environment, adding ECN-) s
5 555 M
( capability to SYN/ACK packets would be of less dramatic benefit than) s
5 544 M
( in environments where all packets are equally likely to be dropped) s
5 533 M
( regardless of packet size.) s
5 511 M
( As question \(2\) implies, even if all of the SYN/ACK packets were ECN-) s
5 500 M
( capable, there could still be some SYN/ACK packets dropped instead of) s
5 489 M
( marked at the congested link; the full answer to question \(2\) depends) s
5 478 M
( on the details of the queue management mechanism at the router. If) s
5 467 M
( congestion is sufficiently bad, and the queue management mechanism) s
5 456 M
( cannot prevent the buffer from overflowing, then SYN/ACK packets will) s
5 445 M
( be dropped rather than marked upon buffer overflow whether or not) s
5 434 M
( they are ECN-capable.) s
5 412 M
( For some AQM mechanisms, ECN-capable packets are marked instead of) s
5 401 M
( dropped any time this is possible, that is, any time the buffer is) s
5 390 M
( not yet full. For other AQM mechanisms however, such as the RED) s
5 379 M
( mechanism as recommended in [RED], packets are dropped rather than) s
5 368 M
( marked when the packet drop/mark rate exceeds a certain threshold,) s
5 357 M
( e.g., 10%, even if the packets are ECN-capable. For a router with) s
5 346 M
( such an AQM mechanism, when congestion is sufficiently severe to) s
5 335 M
( cause a high drop/mark rate, some SYN/ACK packets would be dropped) s
5 324 M
( instead of marked whether or not they were ECN-capable.) s
5 302 M
( Thus, the degree of benefit of adding ECN-Capability to SYN/ACK) s
5 291 M
( packets depends not only on the overall packet drop rate in the) s
5 280 M
( network, but also on the queue management architecture at the) s
5 269 M
( congested link.) s
5 247 M
(6. Security Considerations) s
5 225 M
( TCP packets carrying the ECT codepoint in IP headers can be marked) s
5 214 M
( rather than dropped by ECN-capable routers. This raises several) s
5 203 M
( security concerns that we discuss below.) s
5 181 M
( TCP SYN flooding attacks:) s
5 170 M
( By setting an ECN-Capable codepoint in TCP SYN packets, a malicious) s
5 126 M
(Kuzmanovic Standards Track [Page 10]) s
_R
S
%%Page: (11) 11
%%BeginPageSetup
_S
24 24 translate
/pagenum 11 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
( host might be able to inject a large number of TCP SYN packets) s
5 676 M
( through a potentially congested ECN-enabled router, congesting it) s
5 665 M
( even further. This is one of the reasons why an ECN-Capable codepoint) s
5 654 M
( MUST NOT be set in the IP header of the initiating TCP SYN packet.) s
5 643 M
( On the other hand, as discussed in Section 3 above, setting an ECN-) s
5 632 M
( Capable codepoint in the responding TCP SYN/ACK packet does not raise) s
5 621 M
( any novel security vulnerabilities.) s
5 599 M
( "Bad" middleboxes:) s
5 588 M
( While there is no evidence that any middleboxes drop SYN/ACK packets) s
5 577 M
( that contain an ECN-Capable codepoint in the IP header, such behavior) s
5 566 M
( cannot be excluded [RFC3360]. Thus, if a SYN/ACK packet with the ECT) s
5 555 M
( codepoint is dropped, the TCP node SHOULD resend the SYN/ACK packet) s
5 544 M
( without the ECN-Capable codepoint.) s
5 522 M
( Congestion collapse:) s
5 511 M
( Because TCP SYN/ACK packets carrying an ECT codepoint could be ECN-) s
5 500 M
( marked instead of dropped at an ECN-capable router, the concern is) s
5 489 M
( whether this can either invoke congestion, or worsen performance in) s
5 478 M
( highly congested scenarios. This is not a problem because after) s
5 467 M
( learning that the SYN/ACK packet was ECN-marked, the sender of that) s
5 456 M
( packet will only send one data packet; in the case that this data) s
5 445 M
( packet is ECN-marked, the sender will wait for a retransmission) s
5 434 M
( timeout. In addition, routers are free to drop rather than mark) s
5 423 M
( arriving packets in times of high congestion, regardless of whether) s
5 412 M
( the packets are ECN-capable.) s
5 390 M
(7. Conclusions) s
5 368 M
( This draft specifies a modification to RFC 3168 to allow TCP nodes to) s
5 357 M
( send SYN/ACK packets as being ECN-Capable. Making the SYN/ACK packet) s
5 346 M
( ECN-Capable avoids the high cost to a TCP transfer when a SYN/ACK) s
5 335 M
( packet is dropped by a congested router, by avoiding the resulting) s
5 324 M
( retransmit timeout. This improves the throughput of short) s
5 313 M
( connections. The sender of the SYN/ACK packet responds to an ECN) s
5 302 M
( mark by reducing its initial congestion window from two, three, or) s
5 291 M
( four segments to one segment, reducing the subsequent load from that) s
5 280 M
( connection on the network. The addition of ECN-capability to SYN/ACK) s
5 269 M
( packets is particularly beneficial in the server-to-client direction,) s
5 258 M
( where congestion is more likely to occur. In this case, the initial) s
5 247 M
( information provided by the ECN marking in the SYN/ACK packet enables) s
5 236 M
( the server to more appropriately adjust the initial load it places on) s
5 225 M
( the network.) s
5 126 M
(Kuzmanovic Standards Track [Page 11]) s
_R
S
%%Page: (12) 12
%%BeginPageSetup
_S
24 24 translate
/pagenum 12 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
(8. Acknowledgements) s
5 665 M
(9. Normative References) s
5 643 M
( [RFC2414] M. Allman, S. Floyd, and C. Partridge, Increasing TCP's) s
5 632 M
( Initial Window, RFC 2414, September 1998.) s
5 610 M
( [RFC3168] K.K. Ramakrishnan, S. Floyd, and D. Black, The Addition of) s
5 599 M
( Explicit Congestion Notification \(ECN\) to IP, RFC 3168, Proposed) s
5 588 M
( Standard, September 2001.) s
5 566 M
( [RFC3390] M. Allman, S. Floyd, and C. Partridge, Increasing TCP's) s
5 555 M
( Initial Window, RFC 3390, October 2002.) s
5 533 M
(10. Informative References) s
5 511 M
( [ECN+] A. Kuzmanovic, The Power of Explicit Congestion Notification,) s
5 500 M
( SIGCOMM 2005.) s
5 478 M
( [PI] C. Hollot, V. Misra, W. Gong, and D. Towsley, On Designing) s
5 467 M
( Improved Controllers for AQM Routers Supporting TCP Flows, INFOCOM,) s
5 456 M
( June 2001.) s
5 434 M
( [RED] S. Floyd and V. Jacobson, Random Early Detection Gateways for) s
5 423 M
( Congestion Avoidance, IEEE/ACM Transactions on Networking, V.1, N.4,) s
5 412 M
( 1993.) s
5 390 M
( [REM] S. Athuraliya, V. Li, S. Low, and Q Yin, REM: Active Queue) s
5 379 M
( Management, IEEE Network, V.15, N. 3, May 2001.) s
5 357 M
( [RFC2988] V. Paxson and M. Allman, Computing TCP's Retransmission) s
5 346 M
( Timer, RFC 2988, November 2000.) s
5 324 M
( [RFC3042] M. Allman, H. Balakrishnan, and S. Floyd, Enhancing TCP's) s
5 313 M
( Loss Recovery Using Limited Transmit, RFC 3042, Proposed Standard,) s
5 302 M
( January 2001.) s
5 280 M
( [RFC3360] S. Floyd, Inappropriate TCP Resets Considered Harmful, RFC) s
5 269 M
( 3360, August 2002.) s
5 247 M
( [SCJO01] F. Smith, F. Campos, K. Jeffay, D. Ott, What {TCP/IP}) s
5 236 M
( Protocol Headers Can Tell us about the Web, SIGMETRICS, June 2001.) s
5 214 M
( [Tools] S. Floyd and E. Kohler, Tools for the Evaluation of) s
5 203 M
( Simulation and Testbed Scenarios, Internet-draft draft-irtf-tmrg-) s
5 192 M
( tools-00, work in progress, September 2005.) s
5 126 M
(Kuzmanovic Standards Track [Page 12]) s
_R
S
%%Page: (13) 13
%%BeginPageSetup
_S
24 24 translate
/pagenum 13 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
(11. IANA Considerations) s
5 665 M
( There are no IANA considerations regarding this document.) s
5 643 M
( AUTHORS' ADDRESSES) s
5 610 M
( Aleksandar Kuzmanovic) s
5 599 M
( Phone: +1 \(847\) 467-5519) s
5 588 M
( Northwestern University) s
5 577 M
( Email: akuzma@northwestern.edu) s
5 566 M
( URL: http://cs.northwestern.edu/~a) s
5 544 M
( Sally Floyd) s
5 533 M
( Phone: +1 \(510\) 666-2989) s
5 522 M
( ICIR \(ICSI Center for Internet Research\)) s
5 511 M
( Email: floyd@icir.org) s
5 500 M
( URL: http://www.icir.org/floyd/) s
5 478 M
( K. K. Ramakrishnan) s
5 467 M
( Phone: +1 \(973\) 360-8764) s
5 456 M
( AT&T Labs Research) s
5 445 M
( Email: kkrama@research.att.com) s
5 434 M
( URL: http://www.research.att.com/info/kkrama) s
5 412 M
(Full Copyright Statement) s
5 390 M
( Copyright \(C\) The Internet Society 2005. This document is subject) s
5 379 M
( to the rights, licenses and restrictions contained in BCP 78, and) s
5 368 M
( except as set forth therein, the authors retain all their rights.) s
5 346 M
( This document and the information contained herein are provided on) s
5 335 M
( an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE) s
5 324 M
( REPRESENTS OR IS SPONSORED BY \(IF ANY\), THE INTERNET SOCIETY AND THE) s
5 313 M
( INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR) s
5 302 M
( IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF) s
5 291 M
( THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED) s
5 280 M
( WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.) s
5 258 M
(Intellectual Property) s
5 236 M
( The IETF takes no position regarding the validity or scope of any) s
5 225 M
( Intellectual Property Rights or other rights that might be claimed) s
5 214 M
( to pertain to the implementation or use of the technology described) s
5 203 M
( in this document or the extent to which any license under such) s
5 192 M
( rights might or might not be available; nor does it represent that) s
5 181 M
( it has made any independent effort to identify any such rights.) s
5 170 M
( Information on the procedures with respect to rights in RFC) s
5 126 M
(Kuzmanovic Standards Track [Page 13]) s
_R
S
%%Page: (14) 14
%%BeginPageSetup
_S
24 24 translate
/pagenum 14 def
/fname (ecn-syn.txt) def
/fdir () def
/ftail (ecn-syn.txt) def
/user_header_p false def
%%EndPageSetup
5 720 M
(draft-ietf-tsvwg-ecnsyn-00.txt October 2005) s
5 687 M
( documents can be found in BCP 78 and BCP 79.) s
5 665 M
( Copies of IPR disclosures made to the IETF Secretariat and any) s
5 654 M
( assurances of licenses to be made available, or the result of an) s
5 643 M
( attempt made to obtain a general license or permission for the use) s
5 632 M
( of such proprietary rights by implementers or users of this) s
5 621 M
( specification can be obtained from the IETF on-line IPR repository) s
5 610 M
( at http://www.ietf.org/ipr.) s
5 599 M
( The IETF invites any interested party to bring to its attention any) s
5 588 M
( copyrights, patents or patent applications, or other proprietary) s
5 577 M
( rights that may cover technology that may be required to implement) s
5 566 M
( this standard. Please address the information to the IETF at ietf-) s
5 555 M
( ipr@ietf.org.) s
5 126 M
(Kuzmanovic Standards Track [Page 14]) s
_R
S
%%Trailer
%%Pages: 14
%%DocumentNeededResources: font Courier-Bold Courier
%%EOF
| PAFTECH AB 2003-2026 | 2026-04-22 08:54:10 |