One document matched: draft-ietf-dccp-problem-00.ps
%!PS-Adobe-3.0
%%Creator: groff version 1.17.2
%%CreationDate: Wed Oct 23 17:11:46 2002
%%DocumentNeededResources: font Courier-Bold
%%+ font Times-Bold
%%+ font Times-Roman
%%+ font Times-Italic
%%DocumentSuppliedResources: procset grops 1.17 2
%%Pages: 15
%%PageOrder: Ascend
%%Orientation: Portrait
%%EndComments
%%BeginProlog
%%BeginResource: procset grops 1.17 2
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/MANUAL{
statusdict begin/manualfeed true store end
}bind def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}bind def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/FL{
currentgray exch setgray fill setgray
}bind def
/BL/fill load def
/LW/setlinewidth load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
}bind def
/PEND{
clear
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%IncludeResource: font Courier-Bold
%%IncludeResource: font Times-Bold
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Italic
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
/scaron/zcaron/Ydieresis/trademark/quotesingle/.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/circumflex
/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/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/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
/Times-Italic@0 ENC0/Times-Italic RE/Times-Roman@0 ENC0/Times-Roman RE
/Times-Bold@0 ENC0/Times-Bold RE/Courier-Bold@0 ENC0/Courier-Bold RE
%%EndProlog
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Courier-Bold@0 SF(Internet Engineering Task Force)72 85 Q 276
(INTERNET-DRAFT Sally)72 98 R(Floyd)6 E 180
(draft-ietf-dccp-problem-00.ps Mark)72 111 R(Handley)6 E(Eddie Kohler)
432 124 Q(ICIR)480 137 Q(23 October 2002)414 150 Q(Expires: April 2003)
390 163 Q/F1 14/Times-Bold@0 SF(Pr)198.687 188 Q(oblem Statement f)-.252
E(or DCCP)-.35 E/F2 11/Times-Bold@0 SF(Status of this Document)72 233 Q
/F3 11/Times-Roman@0 SF(This document is an Internet-Draft and is in fu\
ll conformance with all pro)100.8 249.6 Q(visions of Section)-.165 E
(10 of [RFC 2026].)100.8 262.6 Q(Internet-Drafts are w)5.5 E
(orking documents of the Internet Engineering T)-.11 E(ask)-.88 E -.165
(Fo)100.8 275.6 S(rce \(IETF\), its areas, and its w).165 E
(orking groups.)-.11 E(Note that other groups may also distrib)5.5 E
(ute)-.22 E -.11(wo)100.8 288.6 S(rking documents as Internet-Drafts.)
.11 E(Internet-Drafts are draft documents v)100.8 314.6 Q
(alid for a maximum of six months and may be)-.275 E
(updated, replaced, or obsoleted by other documents at an)100.8 327.6 Q
2.75(yt)-.165 G(ime. It is inappropriate to use)-2.75 E
(Internet-Drafts as reference material or to cite them other than as "w)
100.8 340.6 Q(ork in progress.")-.11 E
(The list of current Internet-Drafts can be accessed at http://www)100.8
366.6 Q(.ietf.or)-.715 E(g/ietf/1id-)-.198 E(abstracts.txt)100.8 379.6 Q
(The list of Internet-Draft Shado)100.8 405.6 Q 2.75(wD)-.275 G
(irectories can be accessed at)-2.75 E(http://www)100.8 418.6 Q
(.ietf.or)-.715 E(g/shado)-.198 E -.715(w.)-.275 G(html.).715 E F2
(Abstract)267.534 437.6 Q F3(This document gi)97 460.2 Q -.165(ve)-.275
G 2.75(st).165 G(he problem statement underlying the de)-2.75 E -.165
(ve)-.275 G(lopment of an).165 E(unreliable transport protocol incorpor\
ating end-to-end congestion control.)97 473.2 Q(This is also)5.5 E
(the problem statement underlying the de)97 486.2 Q -.165(ve)-.275 G
(lopment of DCCP).165 E 2.75(,t)-1.221 G(he Datagram)-2.75 E(Congestion\
Control Protocol. DCCP implements a congestion-controlled, unreliable)
97 499.2 Q<8d6f>97 512.2 Q 2.75(wo)-.275 G 2.75(fd)-2.75 G(atagrams sui\
table for use by applications such as streaming media or on-line)-2.75 E
-.055(ga)97 525.2 S(mes.).055 E(Flo)72 769 Q(yd/Handle)-.11 E(y/K)-.165
E 293.51(ohler [P)-.385 F(age 1])-.165 E EP
%%Page: 2 2
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E/F1 13/Times-Bold@0 SF -1.196
(Ta)239.126 85 S(ble of Contents)1.196 E/F2 10/Times-Roman@0 SF
(1. Introduction)97 123 Q F0 11(......................)3.56 G F2(3)11.5
E(2. Problem Space)97 135 Q F0 11(.....................)6.48 G F2(3)11.5
E(2.1. Congestion Control for Unreliable T)107 147 Q(ransfer)-.35 E F0
11(...........)13.24 G F2(4)11.5 E(2.2. Ov)107 159 Q(erhead)-.15 E F0 11
(.....................)10.53 G F2(5)11.5 E(2.3. Fire)107 171 Q -.1(wa)
-.25 G(ll T).1 E(ra)-.35 E -.15(ve)-.2 G(rsal).15 E F0 11
(...................)4.21 G F2(5)11.5 E(2.4. P)107 183 Q(arameter Ne)
-.15 E(gotiation)-.15 E F0 11(..................).54 G F2(6)11.5 E
(3. Solution Space for Congestion Control of Unreliable Flo)97 195 Q(ws)
-.25 E F0 11(........)7.7 G F2(6)11.5 E(3.1. Pro)107 207 Q
(viding Congestion Control Abo)-.15 E .3 -.15(ve U)-.15 H(DP).15 E F0 11
(............)1.22 G F2(6)11.5 E
(3.1.1. The Burden on the Application Designer)117 219 Q F0 11
(...........)6.22 G F2(6)11.5 E(3.1.2. Dif)117 231 Q
(\214culties with ECN)-.25 E F0 11(................)12.97 G F2(7)11.5 E
(3.1.3. The Ev)117 243 Q(asion of Congestion Control)-.25 E F0 11
(............)13.53 G F2(8)11.5 E(3.2. Pro)107 255 Q
(viding Congestion Control Belo)-.15 E 2.5(wU)-.25 G(DP)-2.5 E F0 11
(............)1.72 G F2(8)11.5 E
(3.2.1. Case 1: Congestion Feedback at the Application)117 267 Q F0 11
(.........)3.99 G F2(8)11.5 E
(3.2.2. Case 2: Congestion Feedback at a Layer belo)117 279 Q 2.5(wU)
-.25 G(DP)-2.5 E F0 11(........).23 G F2(9)11.5 E(3.3. Pro)107 291 Q
(viding Congestion Control at the T)-.15 E(ransport Layer)-.35 E F0 11
(.........)2.54 G F2(9)11.5 E(3.3.1. Modifying TCP?)117 303 Q F0 11
(..................)4.94 G F2(9)11.5 E(3.3.2. Unreliable V)117 315 Q
(ariants of SCTP?)-1.11 E F0 11(..............)8.85 G F2(10)6.5 E
(3.3.3. Modifying R)117 327 Q(TP?)-.6 E F0 11(..................)5.54 G
F2(10)6.5 E(3.3.4. Designing a Ne)117 339 Q 2.5(wT)-.25 G
(ransport Protocol)-2.85 E F0 11(............)8.9 G F2(11)6.5 E
(4. Selling Congestion Control to Reluctant Applications)97 351 Q F0 11
(..........)3.82 G F2(11)6.5 E(5. Additional Design Considerations)97
363 Q F0 11(...............)13.14 G F2(12)6.5 E(6. T)97 375 Q
(ransport Requirements of Request/Response Applications)-.35 E F0 11
(........)8.65 G F2(12)6.5 E(7. Summary of Recommendations)97 387 Q F0
11(................)8.84 G F2(13)6.5 E(8. Ackno)97 399 Q(wledgements)
-.25 E F0 11(....................)1.32 G F2(14)6.5 E(9. References)97
411 Q F0 11(......................)8.58 G F2(14)6.5 E
(10. Authors' Addresses)97 423 Q F0 11(...................)10.1 G F2(14)
6.5 E F0(NO)72 439.6 Q(TE T)-.44 E 2.75(OR)-.198 G(FC EDIT)-2.75 E
(OR: PLEASE DELETE THIS NO)-.198 E(TE UPON PUBLICA)-.44 E(TION.)-1.221 E
(Changes from draft-\215o)72 452.6 Q(yd-dcp-problem-01.txt:)-.11 E 2.75
(*A)72 469.2 S(dded an "Ackno)-2.75 E(wledgements" section.)-.275 E
(Changes in response to feedback from Spencer Da)72 485.8 Q(wkins:)-.165
E 2.75(*S)72 502.4 S(mall phrasing changes.)-2.75 E 2.75(*A)72 519 S
(dded a section on Design Preferences in the be)-2.75 E(ginning.)-.165 E
2.75(*A)72 535.6 S(dded a b)-2.75 E(ullet about "Interactions with N)
-.22 E -1.221(AT)-.385 G 2.75(sa)1.221 G(nd Fire)-2.75 E -.11(wa)-.275 G
(lls" under "Additional Design).11 E(Considerations".)72 548.6 Q 2.75
(*A)72 565.2 S(dded a paragraph to the section on "Dif)-2.75 E
(\214culties with ECN" about the possibility that in times)-.275 E
(of congestion, routers w)72 578.2 Q(ould \214rst "turn of)-.11 E
(f" the use of ECN to UDP \215o)-.275 E(ws.)-.275 E(Flo)72 769 Q
(yd/Handle)-.11 E(y/K)-.165 E 293.51(ohler [P)-.385 F(age 2])-.165 E EP
%%Page: 3 3
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E/F1 11/Times-Bold@0 SF(1.)72 85
Q/F2 14/Times-Bold@0 SF(Intr)5.5 E(oduction)-.252 E F0(Historically)
100.8 101.6 Q 2.75(,t)-.715 G
(he great majority of Internet unicast traf)-2.75 E
(\214c has used congestion-controlled)-.275 E(TCP)100.8 114.6 Q 2.75(,w)
-1.221 G(ith UDP making up most of the remainder)-2.75 E 2.75(.U)-.605 G
(DP has mainly been used for short,)-2.75 E
(request-response transfers, lik)100.8 127.6 Q 2.75(eD)-.11 G
(NS and SNMP)-2.75 E 2.75(,t)-1.221 G(hat wish to a)-2.75 E -.22(vo)-.22
G(id TCP').22 E 2.75(st)-.605 G(hree-w)-2.75 E(ay)-.11 E(handshak)100.8
140.6 Q(e, retransmission, and/or stateful connections. UDP also a)-.11
E -.22(vo)-.22 G(ids TCP').22 E 2.75(sb)-.605 G(uilt-in)-2.97 E(end-to-\
end congestion control, and UDP applications tended not to implement th\
eir o)100.8 153.6 Q(wn)-.275 E(congestion control. Ho)100.8 166.6 Q(we)
-.275 E -.165(ve)-.275 G .88 -.44(r, s).165 H(ince UDP traf).44 E
(\214c v)-.275 E(olume w)-.22 E(as small relati)-.11 E .33 -.165(ve t)
-.275 H 2.75(oc).165 G(ongestion-)-2.75 E(controlled TCP \215o)100.8
179.6 Q(ws, the netw)-.275 E(ork didn')-.11 E 2.75(tc)-.198 G(ollapse.)
-2.75 E(Recent years ha)100.8 196.2 Q .33 -.165(ve s)-.22 H(een the gro)
.165 E(wth of applications that use UDP in a dif)-.275 E(ferent w)-.275
E(ay)-.11 E 2.75(.T)-.715 G(hese)-2.75 E
(applications, including RealAudio, Internet telephon)100.8 209.2 Q 1.43
-.715(y, a)-.165 H(nd on-line g).715 E(ames such as Half Life,)-.055 E
(Quak)100.8 222.2 Q
(e, and Starcraft, share a preference for timeliness o)-.11 E -.165(ve)
-.165 G 2.75(rr).165 G(eliability)-2.75 E 2.75(.T)-.715 G
(CP can introduce)-2.75 E
(arbitrary delay because of its reliability and in-order deli)100.8
235.2 Q -.165(ve)-.275 G(ry requirements; thus, the).165 E
(applications use UDP instead.)100.8 248.2 Q(This gro)5.5 E
(wth of long-li)-.275 E -.165(ve)-.275 G 2.75(dn).165 G
(on-congestion-controlled traf)-2.75 E(\214c,)-.275 E(relati)100.8 261.2
Q .33 -.165(ve t)-.275 H 2.75(oc).165 G(ongestion-controlled traf)-2.75
E(\214c, poses a real threat to the o)-.275 E -.165(ve)-.165 G
(rall health of the).165 E(Internet.)100.8 274.2 Q
(Applications could implement their o)100.8 290.8 Q
(wn congestion control mechanisms on a case-by-case)-.275 E
(basis, with encouragement from the IETF)100.8 303.8 Q 2.75(.S)-.88 G
(ome already do this. Ho)-2.75 E(we)-.275 E -.165(ve)-.275 G .88 -.44
(r, e).165 H(xperience).275 E(sho)100.8 316.8 Q
(ws that congestion control is dif)-.275 E
(\214cult to get right, and man)-.275 E 2.75(ya)-.165 G
(pplication writers w)-2.75 E(ould)-.11 E(lik)100.8 329.8 Q 2.75(et)-.11
G 2.75(oa)-2.75 G -.22(vo)-2.97 G(id rein).22 E -.165(ve)-.44 G
(nting this particular wheel. W).165 E 2.75(eb)-.88 G(elie)-2.75 E .33
-.165(ve t)-.275 H(hat a ne).165 E 2.75(wp)-.275 G(rotocol is needed,)
-2.75 E(one that combines unreliable datagram deli)100.8 342.8 Q -.165
(ve)-.275 G(ry with b).165 E(uilt-in congestion control. This)-.22 E
(protocol w)100.8 355.8 Q(ould act as an enabling technology: e)-.11 E
(xisting and ne)-.165 E 2.75(wa)-.275 G(pplications could easily)-2.75 E
(use it to transfer timely data without destabilizing the Internet.)
100.8 368.8 Q(This document pro)100.8 385.4 Q
(vides a problem statement for such a protocol. W)-.165 E 2.75(el)-.88 G
(ist the properties the)-2.75 E(protocol should ha)100.8 398.4 Q -.165
(ve)-.22 G 2.75(,t).165 G(hen e)-2.75 E(xplain wh)-.165 E 2.75(yt)-.055
G(hose properties are necessary)-2.75 E 2.75(.W)-.715 G 2.75(ed)-3.63 G
(escribe wh)-2.75 E 2.75(ya)-.055 G(ne)100.8 411.4 Q 2.75(wp)-.275 G(ro\
tocol is the best solution for the more general problem of bringing con\
gestion)-2.75 E(control to unreliable \215o)100.8 424.4 Q
(ws of unicast datagrams, and discuss brie\215y subsidiary)-.275 E
(requirements for mobility)100.8 437.4 Q 2.75(,d)-.715 G(efense ag)-2.75
E(ainst DOS attacks and spoo\214ng, interoperation with)-.055 E -.66(RT)
100.8 450.4 S 2.442 -1.221(P, a).66 H(nd interactions with N)1.221 E
-1.221(AT)-.385 G 2.75(sa)1.221 G(nd \214re)-2.75 E -.11(wa)-.275 G
(lls.).11 E(One of the design preferences that we bring to this questio\
n is a preference for a clean,)100.8 467 Q(understandable, lo)100.8 480
Q(w-o)-.275 E -.165(ve)-.165 G(rhead, and minimal protocol.).165 E
(As described later in this document,)5.5 E
(this results in the design decision to lea)100.8 493 Q .33 -.165(ve f)
-.22 H(unctionality such as reliability or F).165 E(orw)-.165 E
(ard Error)-.11 E
(Correction \(FEC\) to be layered on top, rather than pro)100.8 506 Q
(vided in the transport protocol itself.)-.165 E
(This problem statement be)100.8 522.6 Q -.055(ga)-.165 G 2.75(na).055 G
2.75(saf)-2.75 G(ormalization of the goals of DCCP)-2.75 E 2.75(,ap)
-1.221 G(roposed)-2.75 E(protocol already described in se)100.8 535.6 Q
-.165(ve)-.275 G(ral Internet-Drafts. W).165 E 2.75(ei)-.88 G
(ntended DCCP to satisfy the)-2.75 E
(problem statement laid out here. Ho)100.8 548.6 Q(we)-.275 E -.165(ve)
-.275 G .88 -.44(r, w).165 H 2.75(eb).44 G(elie)-2.75 E .33 -.165(ve t)
-.275 H(he problem should be solv).165 E(ed)-.165 E
(whether or not the chosen solution is DCCP)100.8 561.6 Q 2.75(,a)-1.221
G(nd the DCCP drafts should be judged based)-2.75 E
(on this document or its successors.)100.8 574.6 Q(Ne)5.5 E -.165(ve)
-.275 G(rtheless, for con).165 E -.165(ve)-.44 G
(nience, we write "DCCP" to).165 E(mean "an)100.8 587.6 Q 2.75(yp)-.165
G(rotocol that satis\214es this problem statement".)-2.75 E F1(2.)72
613.6 Q F2(Pr)5.5 E(oblem Space)-.252 E F0 1.76 -.88(We p)100.8 630.2 T
(ercei).88 E .33 -.165(ve a n)-.275 H
(umber of problems related to the use of unreliable data \215o).165 E
(ws in the)-.275 E 2.75(Internet. The)100.8 643.2 R(major issues are:)
2.75 E 7.15<8354>100.8 659.8 S
(he potential for non-congestion-controlled datagram \215o)-7.15 E
(ws to cause congestion collapse)-.275 E(of the netw)111.8 672.8 Q(ork.)
-.11 E 7.15<8354>100.8 689.4 S(he dif)-7.15 E
(\214culty of correctly implementing ef)-.275 E(fecti)-.275 E .33 -.165
(ve c)-.275 H(ongestion control mechanisms for).165 E
(unreliable datagram \215o)111.8 702.4 Q(ws.)-.275 E(Flo)72 769 Q
(yd/Handle)-.11 E(y/K)-.165 E 244.01(ohler Section)-.385 F 2.75(2. [P)
2.75 F(age 3])-.165 E EP
%%Page: 4 4
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E 7.15<8354>100.8 85 S(he lack \
of a standard solution for reliably transmitting congestion feedback fo\
r an)-7.15 E(unreliable data \215o)111.8 98 Q -.715(w.)-.275 G 7.15
<8354>100.8 114.6 S(he lack of a standard solution for ne)-7.15 E
(gotiating ECN usage for unreliable \215o)-.165 E(ws.)-.275 E 7.15<8354>
100.8 131.2 S
(he lack of a choice of TCP-friendly congestion control mechanisms.)
-7.15 E 1.76 -.88(We a)100.8 147.8 T
(ssume that most application writers w).88 E
(ould use congestion control for long-li)-.11 E -.165(ve)-.275 G(d).165
E(unreliable \215o)100.8 160.8 Q(ws if it w)-.275 E(as a)-.11 E -.275
(va)-.22 G(ilable in a standard, easy-to-use form.).275 E
(More minor issues include:)100.8 177.4 Q 7.15<8354>100.8 194 S(he dif)
-7.15 E(\214culty of deplo)-.275 E
(ying applications using UDP-based \215o)-.11 E(ws in the presence of)
-.275 E(\214re)111.8 207 Q -.11(wa)-.275 G(lls.).11 E 7.15<8354>100.8
223.6 S(he desire to ha)-7.15 E .33 -.165(ve a s)-.22 H(ingle w).165 E
(ay to ne)-.11 E(gotiate congestion control parameters for unreliable)
-.165 E<8d6f>111.8 236.6 Q
(ws, independently of the signalling protocol used to set up the \215o)
-.275 E -.715(w.)-.275 G 7.15<8354>100.8 253.2 S(he desire for lo)-7.15
E 2.75(wp)-.275 G(er)-2.75 E(-pack)-.22 E(et byte o)-.11 E -.165(ve)
-.165 G(rhead.).165 E(The subsections belo)100.8 269.8 Q 2.75(wd)-.275 G
(iscuss these problems of pro)-2.75 E(viding congestion control, tra)
-.165 E -.165(ve)-.22 G(rsing).165 E(\214re)100.8 282.8 Q -.11(wa)-.275
G(lls, and ne).11 E(gotiating parameters in more detail.)-.165 E 2.75
(As)5.5 G(eparate subsection also discusses)-2.75 E
(the problem of minimizing the o)100.8 295.8 Q -.165(ve)-.165 G
(rhead of pack).165 E(et headers.)-.11 E/F1 11/Times-Bold@0 SF(2.1.)72
325.4 Q/F2 13/Times-Bold@0 SF(Congestion Contr)5.5 E(ol f)-.234 E
(or Unr)-.325 E(eliable T)-.234 E(ransfer)-.962 E F0(This project aims \
to bring easy-to-use congestion control mechanisms to applications that)
100.8 342 Q(generate lar)100.8 355 Q(ge, long-li)-.198 E -.165(ve)-.275
G 2.75<648d>.165 G -.275(ow)-2.75 G 2.75(so).275 G 2.75(fu)-2.75 G
(nreliable datagrams, such as RealAudio, Internet)-2.75 E(telephon)100.8
368 Q 1.43 -.715(y, a)-.165 H(nd multiplayer g).715 E(ames. Our moti)
-.055 E -.275(va)-.275 G(tion is to a).275 E -.22(vo)-.22 G
(id congestion collapse. \(The).22 E(short \215o)100.8 381 Q
(ws generated by request-response applications, such as DNS, SNMP)-.275
E 2.75(,a)-1.221 G(nd SIP)-2.75 E(,)-1.221 E(don')100.8 394 Q 2.75(tc)
-.198 G(ause congestion in practice, and an)-2.75 E 2.75(yc)-.165 G
(ongestion control mechanism w)-2.75 E(ould tak)-.11 E(e)-.11 E(ef)100.8
407 Q(fect between \215o)-.275 E
(ws, not within a single end-to-end transfer of information.\) Ho)-.275
E(we)-.275 E -.165(ve)-.275 G -.44(r,).165 G(before designing a congest\
ion control mechanism for these applications, we must)100.8 420 Q
(understand wh)100.8 433 Q 2.75(yt)-.055 G(he)-2.75 E 2.75(yu)-.165 G
(se unreliable datagrams in the \214rst place, lest we destro)-2.75 E
2.75(yt)-.11 G(he v)-2.75 E(ery)-.165 E(properties the)100.8 446 Q 2.75
(yr)-.165 G(equire.)-2.75 E(There are se)100.8 462.6 Q -.165(ve)-.275 G
(ral reasons wh).165 E 2.75(yp)-.055 G
(rotocols currently use UDP instead of TCP)-2.75 E 2.75(,a)-1.221 G
(mongst them:)-2.75 E 7.15<8353>100.8 479.2 S(tartup Delay: the)-7.15 E
2.75(yw)-.165 G(ish to a)-2.75 E -.22(vo)-.22 G
(id the delay of a three-w).22 E(ay handshak)-.11 E 2.75(eb)-.11 G
(efore initiating)-2.75 E(data transfer)111.8 492.2 Q(.)-.605 E 7.15
<8353>100.8 508.8 S(tatelessness: the)-7.15 E 2.75(yw)-.165 G(ish to a)
-2.75 E -.22(vo)-.22 G
(id holding connection state, and the potential state-).22 E
(holding attacks that come with this.)111.8 521.8 Q 7.15<8354>100.8
538.4 S(rading of Reliability ag)-7.535 E(ainst T)-.055 E
(iming: the data being sent is timely in the sense that if it)-.385 E
(is not deli)111.8 551.4 Q -.165(ve)-.275 G
(red by some deadline \(typically a small number of R).165 E
(TTs\) then the data will)-.66 E(not be useful at the recei)111.8 564.4
Q -.165(ve)-.275 G -.605(r.).165 G
(Of these issues, applications that generate lar)100.8 581 Q
(ge, long-li)-.198 E -.165(ve)-.275 G 2.75<648d>.165 G -.275(ow)-2.75 G
2.75(so).275 G 2.75(fd)-2.75 G(atagrams, such as)-2.75 E
(media transfer and g)100.8 594 Q
(ames, mostly care about controlling the tradeof)-.055 E 2.75(fb)-.275 G
(etween timing and)-2.75 E(reliability)100.8 607 Q 2.75(.S)-.715 G
(uch applications use UDP because when the)-2.75 E 2.75(ys)-.165 G
(end a datagram, the)-2.75 E 2.75(yw)-.165 G(ish to)-2.75 E(send the mo\
st appropriate data in that datagram. If the datagram is lost, the)100.8
620 Q 2.75(ym)-.165 G(ay or may)-2.75 E(not resend the same data, depen\
ding on whether the data will still be useful at the recei)100.8 633 Q
-.165(ve)-.275 G -.605(r.).165 G(Data may no longer be useful for man)
100.8 646 Q 2.75(yr)-.165 G(easons:)-2.75 E 7.15<8349>100.8 662.6 S 2.75
(nat)-7.15 G(elephon)-2.75 E 2.75(yo)-.165 G 2.75(rs)-2.75 G
(treaming video session, data in a pack)-2.75 E
(et comprises a timeslice of a)-.11 E(continuous stream.)111.8 675.6 Q
(Once a timeslice has been played out, the ne)5.5 E
(xt timeslice is required)-.165 E(immediately)111.8 688.6 Q 5.5(.I)-.715
G 2.75(ft)-5.5 G(he data comprising that timeslice arri)-2.75 E -.165
(ve)-.275 G 2.75(sa).165 G 2.75(ts)-2.75 G
(ome later time, then it is no)-2.75 E(longer useful.)111.8 701.6 Q
(Such applications can cope with masking the ef)5.5 E
(fects of missing pack)-.275 E(ets to)-.11 E(some e)111.8 714.6 Q
(xtent, so when the sender transmits its ne)-.165 E(xt pack)-.165 E
(et, it is important for it to only)-.11 E(Flo)72 769 Q(yd/Handle)-.11 E
(y/K)-.165 E 235.76(ohler Section)-.385 F 2.75(2.1. [P)2.75 F(age 4])
-.165 E EP
%%Page: 5 5
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E
(send data that has a good chance of arri)111.8 85 Q
(ving in time for its playout.)-.275 E 7.15<8349>100.8 101.6 S 2.75(na)
-7.15 G 2.75(ni)-2.75 G(nteracti)-2.75 E .33 -.165(ve g)-.275 H
(ame or VR session, position information is transient. If a datagram).11
E(containing position information is lost, resending the old position d\
oes not usually mak)111.8 114.6 Q(e)-.11 E(sense -- rather)111.8 127.6 Q
2.75(,e)-.44 G -.165(ve)-3.025 G
(ry position information datagram should contain the latest position)
.165 E(information.)111.8 140.6 Q(In a congestion-controlled \215o)100.8
157.2 Q 1.43 -.715(w, t)-.275 H(he allo).715 E(wed pack)-.275 E
(et sending rate depends on measured)-.11 E(netw)100.8 170.2 Q
(ork congestion. Thus, some control is gi)-.11 E -.165(ve)-.275 G 2.75
(nu).165 G 2.75(pt)-2.75 G 2.75(ot)-2.75 G
(he congestion control mechanism,)-2.75 E
(which determines precisely when pack)100.8 183.2 Q(ets can be sent. Ho)
-.11 E(we)-.275 E -.165(ve)-.275 G .88 -.44(r, a).165 H
(pplications could still).44 E(decide,)100.8 196.2 Q/F1 11
/Times-Italic@0 SF(at tr)2.75 E(ansmission time)-.165 E(,)-.11 E F0
(which information to put in a pack)2.75 E(et. TCP doesn')-.11 E 2.75
(ta)-.198 G(llo)-2.75 E(w)-.275 E(control o)100.8 209.2 Q -.165(ve)-.165
G 2.75(rt).165 G(his; these applications demand it.)-2.75 E
(Often, these applications \(especially g)100.8 225.8 Q
(ames and telephon)-.055 E 2.75(ya)-.165 G(pplications\) w)-2.75 E
(ork on v)-.11 E(ery short)-.165 E(playout timescales.)100.8 238.8 Q
(Whilst the)5.5 E 2.75(ya)-.165 G
(re usually able to adjust their transmission rate based on)-2.75 E
(congestion feedback, the)100.8 251.8 Q 2.75(yd)-.165 G 2.75(oh)-2.75 G
-2.475 -.22(av e)-2.75 H(constraints on ho)2.97 E 2.75(wt)-.275 G
(his adaptation can be performed so)-2.75 E
(that it has minimal impact on the quality of the session. Thus, the)
100.8 264.8 Q 2.75(yt)-.165 G(end to need some)-2.75 E(control o)100.8
277.8 Q -.165(ve)-.165 G 2.75(rt).165 G(he short-term dynamics of the c\
ongestion control algorithm, whilst being f)-2.75 E(air)-.11 E
(to other traf)100.8 290.8 Q
(\214c on medium timescales. This control includes, b)-.275 E
(ut is not limited to, some)-.22 E(in\215uence on which congestion cont\
rol algorithm should be used -- for e)100.8 303.8 Q(xample, TFRC)-.165 E
(rather than strict TCP-lik)100.8 316.8 Q 2.75(ec)-.11 G
(ongestion control. \(TCP-Friendly Rate Control, or TFRC, is)-2.75 E(be\
ing standardized in the IETF as a congestion control mechanism that adj\
usts its sending)100.8 329.8 Q
(rate more smoothly than TCP does, while maintaining long-term f)100.8
342.8 Q(air bandwidth sharing)-.11 E(with TCP [TFRC].\))100.8 355.8 Q/F2
11/Times-Bold@0 SF(2.2.)72 385.4 Q/F3 13/Times-Bold@0 SF(Ov)5.5 E
(erhead)-.13 E F0(The applications we are concerned with often send com\
pressed data, or send frequent small)100.8 402 Q(pack)100.8 415 Q
(ets. F)-.11 E(or e)-.165 E(xample, when internet telephon)-.165 E 2.75
(yo)-.165 G 2.75(rs)-2.75 G(treaming media are used o)-2.75 E -.165(ve)
-.165 G 2.75(rl).165 G -.275(ow)-2.75 G(-).275 E(bandwidth modem links,\
highly compressing the payload data is essential. F)100.8 428 Q
(or internet)-.165 E(telephon)100.8 441 Q 2.75(ya)-.165 G
(pplications and for g)-2.75 E(ames, the requirement is for lo)-.055 E
2.75(wd)-.275 G(elay)-2.75 E 2.75(,a)-.715 G(nd hence small)-2.75 E
(pack)100.8 454 Q(ets are sent frequently)-.11 E(.)-.715 E -.165(Fo)
100.8 470.6 S 2.75(re).165 G(xample, a telephon)-2.915 E 2.75(ya)-.165 G
(pplication sending a 20Kb/s pack)-2.75 E(et stream w)-.11 E
(anting moderately)-.11 E(lo)100.8 483.6 Q 2.75(wd)-.275 G
(elay may send a pack)-2.75 E(et e)-.11 E -.165(ve)-.275 G(ry 20ms, lea)
.165 E(ving only 50 bytes for each pack)-.22 E 2.75(et. Of)-.11 F(this,)
2.75 E(20 bytes is tak)100.8 496.6 Q(en up by the IP header)-.11 E 2.75
(,l)-.44 G(ea)-2.75 E(ving only 30 bytes for the transport header and)
-.22 E 2.75(payload. Of)100.8 509.6 R(course this is a relati)2.75 E
-.165(ve)-.275 G(ly e).165 E(xtreme e)-.165 E(xample, b)-.165 E
(ut it serv)-.22 E(es to illustrate the de)-.165 E(gree)-.165 E(to whic\
h some of these applications care that the transport protocol is lo)
100.8 522.6 Q 2.75(wo)-.275 G -.165(ve)-2.915 G(rhead.).165 E
(In some cases the correct solution w)100.8 539.2 Q
(ould be to use link-based pack)-.11 E(et header compression to)-.11 E
(compress the pack)100.8 552.2 Q
(et headers, although we cannot guarantee the a)-.11 E -.275(va)-.22 G
(ilability of such).275 E(compression schemes on an)100.8 565.2 Q 2.75
(yp)-.165 G(articular link.)-2.75 E
(The delay of data until after the completion of a handshak)100.8 581.8
Q 2.75(ea)-.11 G(lso represents potentially)-2.75 E(unnecessary o)100.8
594.8 Q -.165(ve)-.165 G(rhead. A ne).165 E 2.75(wp)-.275 G
(rotocol might therefore allo)-2.75 E 2.75(ws)-.275 G
(enders to include some data)-2.75 E(on their initial datagrams.)100.8
607.8 Q F2(2.3.)72 633.8 Q F3(Fir)5.5 E(ewall T)-.234 E(ra)-.962 E -.13
(ve)-.325 G(rsal).13 E F0(Applications requiring a \215o)100.8 650.4 Q
2.75(wo)-.275 G 2.75(fu)-2.75 G
(nreliable datagrams currently tend to use signalling)-2.75 E
(protocols such as R)100.8 663.4 Q(TSP)-.66 E 2.75(,S)-1.221 G
(IP and H.323 in conjunction with UDP for the data \215o)-2.75 E 4.18
-.715(w. T)-.275 H(he).715 E(initial setup request uses a signalling pr\
otocol to locate the correct remote end-system for)100.8 676.4 Q
(the data \215o)100.8 689.4 Q 1.43 -.715(w, s)-.275 H(ometimes being re\
directed or relayed to other machines, before the data).715 E<8d6f>100.8
702.4 Q 2.75(wi)-.275 G 2.75(se)-2.75 G(stablished.)-2.75 E(Flo)72 769 Q
(yd/Handle)-.11 E(y/K)-.165 E 235.76(ohler Section)-.385 F 2.75(2.3. [P)
2.75 F(age 5])-.165 E EP
%%Page: 6 6
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E(As UDP \215o)100.8 85 Q
(ws contain no e)-.275 E(xplicit setup and teardo)-.165 E
(wn, it is hard for \214re)-.275 E -.11(wa)-.275 G(lls to handle).11 E
(them correctly)100.8 98 Q 5.5(.T)-.715 G(ypically the \214re)-6.38 E
-.11(wa)-.275 G(ll needs to parse R).11 E(TSP)-.66 E 2.75(,S)-1.221 G
(IP and H.323 to obtain the)-2.75 E
(information necessary to open a hole in the \214re)100.8 111 Q -.11(wa)
-.275 G 2.75(ll. Alternati).11 F -.165(ve)-.275 G(ly).165 E 2.75(,f)
-.715 G(or bi-directional \215o)-2.75 E(ws,)-.275 E(the \214re)100.8 124
Q -.11(wa)-.275 G(ll can open a bi-directional hole if it recei).11 E
-.165(ve)-.275 G 2.75(saU).165 G(DP pack)-2.75 E(et from inside the)-.11
E(\214re)100.8 137 Q -.11(wa)-.275 G(ll, b).11 E
(ut in this case the \214re)-.22 E -.11(wa)-.275 G(ll can').11 E 2.75
(te)-.198 G(asily kno)-2.75 E 2.75(ww)-.275 G(hen to close the hole ag)
-2.75 E(ain.)-.055 E
(While we do not consider these to be major problems, the)100.8 153.6 Q
2.75(ya)-.165 G(re nonetheless issues that)-2.75 E
(application designers f)100.8 166.6 Q 2.75(ace. Currently)-.11 F
(streaming media players such as RealPlayer attempt)2.75 E
(UDP \214rst, and then switch to TCP if UDP is not successful.)100.8
179.6 Q(Streaming media o)5.5 E -.165(ve)-.165 G 2.75(rT).165 G(CP is)
-2.75 E(undesirable, and can result in the recei)100.8 192.6 Q -.165(ve)
-.275 G 2.75(rn).165 G(eeding to temporarily halt playout while it)-2.75
E("reb)100.8 205.6 Q(uf)-.22 E(fers" data.)-.275 E -.77(Te)5.5 G(lephon)
.77 E 2.75(ya)-.165 G(pplications don')-2.75 E 2.75(te)-.198 G -.165(ve)
-3.025 G 2.75(nh).165 G -2.475 -.22(av e)-2.75 H(this option.)2.97 E/F1
11/Times-Bold@0 SF(2.4.)72 231.6 Q/F2 13/Times-Bold@0 SF -.13(Pa)5.5 G
(rameter Negotiation).13 E F0(Dif)100.8 248.2 Q(ferent applications ha)
-.275 E .33 -.165(ve d)-.22 H(if).165 E
(ferent requirements for congestion control, which may map)-.275 E
(into dif)100.8 261.2 Q(ferent congestion feedback.)-.275 E
(Examples include ECN capability and desired)5.5 E(congestion control d\
ynamics \(the choice of congestion control algorithm and, therefore, th\
e)100.8 274.2 Q(form of feedback information required\).)100.8 287.2 Q
(Such parameters need to be reliably ne)5.5 E(gotiated)-.165 E
(before congestion control can function correctly)100.8 300.2 Q(.)-.715
E(While this ne)100.8 316.8 Q
(gotiation could be performed using signalling protocols such as SIP)
-.165 E 2.75(,R)-1.221 G(TSP)-3.41 E(and H.323, it w)100.8 329.8 Q
(ould be desirable to ha)-.11 E .33 -.165(ve a s)-.22 H
(ingle standard w).165 E(ay of ne)-.11 E(gotiating these)-.165 E
(transport parameters.)100.8 342.8 Q
(This is of particular importance with ECN, where sending ECN-)5.5 E
(mark)100.8 355.8 Q(ed pack)-.11 E(ets to a non-ECN-capable recei)-.11 E
-.165(ve)-.275 G 2.75(rc).165 G
(an cause signi\214cant congestion problems)-2.75 E(to other \215o)100.8
368.8 Q 2.75(ws. W)-.275 F 2.75(ed)-.88 G
(iscuss the ECN issue in more detail belo)-2.75 E -.715(w.)-.275 G F1
(3.)72 394.8 Q/F3 14/Times-Bold@0 SF(Solution Space f)5.5 E
(or Congestion Contr)-.35 E(ol of Unr)-.252 E(eliable Flo)-.252 E(ws)
-.14 E F0 1.76 -.88(We t)100.8 411.4 T(hus w).88 E(ant to pro)-.11 E
(vide congestion control for unreliable \215o)-.165 E(ws, pro)-.275 E
(viding both ECN and)-.165 E(the choice of dif)100.8 424.4 Q
(ferent forms of congestion control, and pro)-.275 E(viding moderate o)
-.165 E -.165(ve)-.165 G(rhead in).165 E(terms of pack)100.8 437.4 Q
(et size, state, and CPU processing.)-.11 E
(There are a number of options for)5.5 E(pro)100.8 450.4 Q
(viding end-to-end congestion control for the unicast traf)-.165 E
(\214c that currently uses UDP)-.275 E 2.75(,i)-1.221 G(n)-2.75 E
(terms of the layer that pro)100.8 463.4 Q
(vides the congestion control mechanism:)-.165 E 7.15<8343>100.8 480 S
(ongestion control abo)-7.15 E .33 -.165(ve U)-.165 H(DP).165 E(.)-1.221
E 7.15<8343>100.8 496.6 S(ongestion control belo)-7.15 E 2.75(wU)-.275 G
(DP)-2.75 E(.)-1.221 E 7.15<8343>100.8 513.2 S
(ongestion control at the transport layer in an alternati)-7.15 E .33
-.165(ve t)-.275 H 2.75(oU).165 G(DP)-2.75 E(.)-1.221 E 1.76 -.88(We e)
100.8 529.8 T(xplore these alternati).715 E -.165(ve)-.275 G 2.75(si)
.165 G 2.75(nt)-2.75 G(he sections belo)-2.75 E 4.18 -.715(w. T)-.275 H
(he concerns from the discussions).715 E(belo)100.8 542.8 Q 2.75(wh)
-.275 G -2.475 -.22(av e)-2.75 H(con)2.97 E(vinced us that the best w)
-.44 E(ay to pro)-.11 E(vide congestion control for unreliable)-.165 E
<8d6f>100.8 555.8 Q(ws is to pro)-.275 E
(vide congestion control at the transport layer)-.165 E 2.75(,a)-.44 G
2.75(sa)-2.75 G 2.75(na)-2.75 G(lternati)-2.75 E .33 -.165(ve t)-.275 H
2.75(ot).165 G(he use of)-2.75 E(UDP and TCP)100.8 568.8 Q(.)-1.221 E F1
(3.1.)72 594.8 Q F2(Pr)5.5 E -.13(ov)-.234 G(iding Congestion Contr).13
E(ol Abo)-.234 E .26 -.13(ve U)-.13 H(DP).13 E F0(One possibility w)
100.8 611.4 Q(ould be to pro)-.11 E
(vide congestion control at the application layer)-.165 E 2.75(,o)-.44 G
2.75(ra)-2.75 G 2.75(ts)-2.75 G(ome)-2.75 E(other layer abo)100.8 624.4
Q .33 -.165(ve U)-.165 H(DP).165 E 5.5(.T)-1.221 G(his w)-5.5 E
(ould allo)-.11 E 2.75(wt)-.275 G
(he congestion control mechanism to be closely)-2.75 E(inte)100.8 637.4
Q(grated with the application itself.)-.165 E F1 2.75(3.1.1. The)72
663.4 R(Burden on the A)2.75 E(pplication Designer)-.275 E F0 2.75(Ak)
100.8 680 S .33 -.165(ey d)-2.86 H(isadv).165 E(antage of pro)-.275 E
(viding congestion control abo)-.165 E .33 -.165(ve U)-.165 H
(DP is that it places an).165 E(unnecessary b)100.8 693 Q
(urden on the application-le)-.22 E -.165(ve)-.275 G 2.75(ld).165 G
(esigner)-2.75 E 2.75(,w)-.44 G(ho might be just as happ)-2.75 E 2.75
(yt)-.11 G 2.75(ou)-2.75 G(se)-2.75 E(the congestion control pro)100.8
706 Q(vided by a lo)-.165 E(wer layer)-.275 E 5.5(.I)-.605 G 2.75(ft)
-5.5 G(he application can rely on a lo)-2.75 E(wer)-.275 E
(layer that gi)100.8 719 Q -.165(ve)-.275 G 2.75(sac).165 G
(hoice between TCP-lik)-2.75 E 2.75(eo)-.11 G 2.75(rT)-2.75 G(FRC-lik)
-2.75 E 2.75(ec)-.11 G(ongestion control, and that)-2.75 E(Flo)72 769 Q
(yd/Handle)-.11 E(y/K)-.165 E 227.51(ohler Section)-.385 F 2.75
(3.1.1. [P)2.75 F(age 6])-.165 E EP
%%Page: 7 7
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E(of)100.8 85 Q
(fers ECN, then this might be highly satisf)-.275 E(actory to man)-.11 E
2.75(ya)-.165 G(pplication designers.)-2.75 E(The long history of deb)
100.8 101.6 Q(ugging TCP implementations [RFC 2525] [TBIT] mak)-.22 E
(es the)-.11 E(dif)100.8 114.6 Q
(\214culties in implementing end-to-end congestion control ab)-.275 E
(undantly clear)-.22 E 5.5(.I)-.605 G 2.75(ti)-5.5 G 2.75(sc)-2.75 G
(learly)-2.75 E(more rob)100.8 127.6 Q
(ust for congestion control to be pro)-.22 E
(vided for the application by a lo)-.165 E(wer layer)-.275 E 5.5(.I)
-.605 G(n)-5.5 E(rare cases there might be compelling reasons for the c\
ongestion control mechanism to be)100.8 140.6 Q
(implemented in the application itself, b)100.8 153.6 Q(ut we do not e)
-.22 E(xpect this to be the general case.)-.165 E -.165(Fo)5.5 G(r).165
E -.165(ex)100.8 166.6 S(ample, applications that use R).165 E(TP o)-.66
E -.165(ve)-.165 G 2.75(rU).165 G(DP might be just as happ)-2.75 E 2.75
(yi)-.11 G 2.75(fR)-2.75 G(TP itself)-3.41 E
(implemented end-to-end congestion control.)100.8 179.6 Q
(\(See Section 3.3.3 for more discussion of)5.5 E -.66(RT)100.8 192.6 S
-1.221(P.).66 G(\))1.221 E(In addition to congestion control issues, we\
also note the problems with \214re)100.8 209.2 Q -.11(wa)-.275 G
(ll tra).11 E -.165(ve)-.22 G(rsal).165 E(and parameter ne)100.8 222.2 Q
(gotiation discussed in sections 2.3 and 2.4. Implementing on top of UD\
P)-.165 E
(requires that the application designer also address these issues.)100.8
235.2 Q/F1 11/Times-Bold@0 SF 2.75(3.1.2. Dif\214culties)72 261.2 R
(with ECN)2.75 E F0 2.75(As)100.8 277.8 S(econd problem of pro)-2.75 E
(viding congestion control abo)-.165 E .33 -.165(ve U)-.165 H
(DP is that it w).165 E(ould require)-.11 E(either gi)100.8 290.8 Q
(ving up the use of ECN, or gi)-.275 E
(ving the application direct control o)-.275 E -.165(ve)-.165 G 2.75(rs)
.165 G(etting and)-2.75 E(reading the ECN \214eld in the IP header)100.8
303.8 Q 5.5(.G)-.605 G -.275(iv)-5.5 G(ing up the use of ECN w).275 E
(ould be problematic,)-.11 E
(since ECN can be particularly useful for unreliable \215o)100.8 316.8 Q
(ws, where a dropped pack)-.275 E(et will not)-.11 E
(be retransmitted by the data sender)100.8 329.8 Q(.)-.605 E -.44(Wi)
100.8 346.4 S(th the de).44 E -.165(ve)-.275 G
(lopment of the ECN nonce, ECN can also be useful e).165 E -.165(ve)
-.275 G 2.75(ni).165 G 2.75(nt)-2.75 G(he absence of)-2.75 E
(ECN support from the netw)100.8 359.4 Q 2.75(ork. The)-.11 F
(data sender can use the ECN nonce, along with)2.75 E
(feedback from the data recei)100.8 372.4 Q -.165(ve)-.275 G .88 -.44
(r, t).165 H 2.75(ov).44 G(erify that the data recei)-2.915 E -.165(ve)
-.275 G 2.75(ri).165 G 2.75(sc)-2.75 G(orrectly reporting all lost)-2.75
E(pack)100.8 385.4 Q 2.75(ets. This)-.11 F(use of ECN can be particular\
ly useful for an application using unreliable)2.75 E(deli)100.8 398.4 Q
-.165(ve)-.275 G(ry).165 E 2.75(,w)-.715 G(here the recei)-2.75 E -.165
(ve)-.275 G 2.75(rm).165 G(ight otherwise ha)-2.75 E .33 -.165(ve l)-.22
H(ittle incenti).165 E .33 -.165(ve t)-.275 H 2.75(or).165 G
(eport lost pack)-2.75 E(ets.)-.11 E(In order to allo)100.8 415 Q 2.75
(wt)-.275 G(he use of ECN by a layer abo)-2.75 E .33 -.165(ve U)-.165 H
(DP).165 E 2.75(,t)-1.221 G(he UDP sock)-2.75 E(et w)-.11 E(ould ha)-.11
E .33 -.165(ve t)-.22 H(o).165 E(allo)100.8 428 Q 2.75(wt)-.275 G
(he application to control the ECN \214eld in the IP header)-2.75 E 5.5
(.I)-.605 G 2.75(np)-5.5 G(articular)-2.75 E 2.75(,t)-.44 G(he UDP)-2.75
E(sock)100.8 441 Q(et w)-.11 E(ould ha)-.11 E .33 -.165(ve t)-.22 H 2.75
(oa).165 G(llo)-2.75 E 2.75(wt)-.275 G
(he application to specify whether or not the ECN-Capable)-2.75 E -.385
(Tr)100.8 454 S(ansport \(ECT\) codepoints should be set in the ECN \
\214eld of the IP header).385 E(.)-.605 E(The ECN contract is that send\
ers who set the ECT codepoint must respond to CE)100.8 470.6 Q
(codepoints by reducing their sending rates.)100.8 483.6 Q
(Therefore, the ECT codepoint can only safely)5.5 E(be set in the pack)
100.8 496.6 Q(et header of a UDP pack)-.11 E(et if the follo)-.11 E
(wing is guaranteed:)-.275 E 7.15<8349>100.8 513.2 S 2.75(ft)-7.15 G
(he Congestion Experienced \(CE\) codepoint is set by a router)-2.75 E
2.75(,t)-.44 G(he recei)-2.75 E(ving UDP will)-.275 E
(pass that CE status to the recei)111.8 526.2 Q
(ving application at the data recei)-.275 E -.165(ve)-.275 G .88 -.44
(r, a).165 H(nd:).44 E 7.15<8355>100.8 542.8 S(pon recei)-7.15 E
(ving a pack)-.275 E(et that had the CE codepoint set, the recei)-.11 E
(ving application will)-.275 E(tak)111.8 555.8 Q 2.75(et)-.11 G(he appr\
opriate congestion control action, such as informing the data sender)
-2.75 E(.)-.605 E(Ho)100.8 572.4 Q(we)-.275 E -.165(ve)-.275 G .88 -.44
(r, t).165 H(he UDP implementation at the data sender has no w).44 E
(ay of kno)-.11 E(wing if the UDP)-.275 E
(implementation at the data recei)100.8 585.4 Q -.165(ve)-.275 G 2.75
(rh).165 G(as been upgraded to pass a CE status up to the)-2.75 E(recei)
100.8 598.4 Q(ving application, let alone whether or not the applicatio\
n will use the conformant end-)-.275 E
(to-end congestion control that goes along with use of ECN.)100.8 611.4
Q(In the absence of the widespread deplo)100.8 628 Q
(yment of mechanisms in routers to detect \215o)-.11 E(ws that)-.275 E
(are not using conformant congestion control, allo)100.8 641 Q
(wing applications arbitrary control of the)-.275 E
(ECT codepoints for UDP pack)100.8 654 Q(ets w)-.11 E(ould seem lik)-.11
E 2.75(ea)-.11 G 2.75(nu)-2.75 G(nnecessary opportunity for)-2.75 E
(applications to use ECN while e)100.8 667 Q -.275(va)-.275 G
(ding the use of end-to-end congestion control.).275 E(Thus,)5.5 E
(there is an inherent "chick)100.8 680 Q(en-and-e)-.11 E
(gg" problem of whether \214rst to deplo)-.165 E 2.75(yp)-.11 G(olicing)
-2.75 E(mechanisms in routers, or \214rst to enable the use of ECN by U\
DP \215o)100.8 693 Q 2.75(ws. W)-.275 F(ithout the)-.44 E
(policing mechanisms in routers, we w)100.8 706 Q
(ould not advise adding ECN-capability to UDP)-.11 E(sock)100.8 719 Q
(ets at this time.)-.11 E(Flo)72 769 Q(yd/Handle)-.11 E(y/K)-.165 E
227.51(ohler Section)-.385 F 2.75(3.1.2. [P)2.75 F(age 7])-.165 E EP
%%Page: 8 8
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E(In the absence of more \214ne\
-grained mechanisms for dealing with a period of sustained)100.8 85 Q
(congestion, one possibility w)100.8 98 Q
(ould be for routers to discontinue using ECN with UDP)-.11 E(pack)100.8
111 Q(ets during the congested period, and to use ECN only with TCP or \
DCCP pack)-.11 E(ets.)-.11 E(This w)100.8 124 Q
(ould be a reasonable response, for e)-.11 E
(xample, if TCP or DCCP \215o)-.165 E(ws were found to be)-.275 E
(more lik)100.8 137 Q(ely to be using conformant end-to-end congestion \
control than were UDP \215o)-.11 E 2.75(ws. If)-.275 F
(routers were to adopt such a polic)100.8 150 Q 1.43 -.715(y, t)-.165 H
(hen DCCP \215o).715 E(ws could be more lik)-.275 E(ely to recei)-.11 E
.33 -.165(ve t)-.275 H(he).165 E
(bene\214ts of ECN in times of congestion than w)100.8 163 Q
(ould UDP \215o)-.11 E(ws.)-.275 E/F1 11/Times-Bold@0 SF 2.75
(3.1.3. The)72 189 R(Ev)2.75 E(asion of Congestion Contr)-.11 E(ol)-.198
E F0 2.75(At)100.8 205.6 S(hird problem of pro)-2.75 E
(viding congestion control abo)-.165 E .33 -.165(ve U)-.165 H
(DP is that relying on congestion).165 E(control at the application le)
100.8 218.6 Q -.165(ve)-.275 G 2.75(lm).165 G(ak)-2.75 E(es it some)-.11
E(what easier for some users to e)-.275 E -.275(va)-.275 G(de end-to-)
.275 E(end congestion control.)100.8 231.6 Q 1.76 -.88(We d)5.5 H 2.75
(on).88 G(ot claim that a transport protocol such as DCCP w)-2.75 E
(ould)-.11 E(al)100.8 244.6 Q -.11(wa)-.11 G(ys be implemented in the k)
.11 E(ernel, and do not attempt to e)-.11 E -.275(va)-.275 G
(luate the relati).275 E .33 -.165(ve d)-.275 H(if).165 E(\214culty)
-.275 E(of modifying code inside the k)100.8 257.6 Q
(ernel vs. outside the k)-.11 E(ernel in an)-.11 E 2.75(yc)-.165 G 2.75
(ase. Ho)-2.75 F(we)-.275 E -.165(ve)-.275 G .88 -.44(r, w).165 H(e).44
E(belie)100.8 270.6 Q .33 -.165(ve t)-.275 H
(hat putting the congestion control at the transport le).165 E -.165(ve)
-.275 G 2.75(lr).165 G(ather than at the)-2.75 E(application le)100.8
283.6 Q -.165(ve)-.275 G 2.75(lm).165 G(ak)-2.75 E
(es it just slightly less lik)-.11 E
(ely that users will go to the trouble of)-.11 E
(modifying the code in order to a)100.8 296.6 Q -.22(vo)-.22 G
(id using end-to-end congestion control.).22 E F1(3.2.)72 322.6 Q/F2 13
/Times-Bold@0 SF(Pr)5.5 E -.13(ov)-.234 G(iding Congestion Contr).13 E
(ol Belo)-.234 E 3.25(wU)-.13 G(DP)-3.25 E F0(Instead of pro)100.8 339.2
Q(viding congestion control abo)-.165 E .33 -.165(ve U)-.165 H(DP).165 E
2.75(,as)-1.221 G(econd possibility w)-2.75 E(ould be to)-.11 E(pro)
100.8 352.2 Q
(vide congestion control for unreliable applications at a layer belo)
-.165 E 2.75(wU)-.275 G(DP)-2.75 E 2.75(,w)-1.221 G(ith)-2.75 E
(applications using UDP as their transport protocol.)100.8 365.2 Q(Gi)
5.5 E -.165(ve)-.275 G 2.75(nt).165 G(hat UDP does not itself pro)-2.75
E(vide)-.165 E(sequence numbers or congestion feedback, there are tw)
100.8 378.2 Q 2.75(op)-.11 G(ossible forms for this congestion)-2.75 E
(feedback:)100.8 391.2 Q 7.15<8328>100.8 407.8 S
(1\) Feedback at the application: The application abo)-7.15 E .33 -.165
(ve U)-.165 H(DP could pro).165 E(vide sequence)-.165 E
(numbers and feedback to the sender)111.8 420.8 Q 2.75(,w)-.44 G(hich w)
-2.75 E(ould then communicate loss information to)-.11 E
(the congestion control mechanism.)111.8 433.8 Q
(This is the approach currently standardized by the)5.5 E
(Congestion Manager [RFC 3124].)111.8 446.8 Q 7.15<8328>100.8 463.4 S
(2\) Feedback at the layer belo)-7.15 E 2.75(wU)-.275 G
(DP: The application could use UDP)-2.75 E 2.75(,a)-1.221 G
(nd a protocol)-2.75 E
(could be implemented using a shim header between IP and UDP to pro)
111.8 476.4 Q(vide sequence)-.165 E(number information for data pack)
111.8 489.4 Q(ets and return feedback to the data sender)-.11 E 5.5(.T)
-.605 G(he)-5.5 E
(original proposal for the Congestion Manager [Bala99] suggested pro)
111.8 502.4 Q(viding this layer)-.165 E
(for applications that did not ha)111.8 515.4 Q .33 -.165(ve t)-.22 H
(heir o).165 E(wn feedback about dropped pack)-.275 E(ets.)-.11 E 1.76
-.88(We d)100.8 532 T(iscuss these tw).88 E 2.75(oc)-.11 G
(ases separately belo)-2.75 E -.715(w.)-.275 G F1 2.75(3.2.1. Case)72
558 R(1: Congestion F)2.75 E(eedback at the A)-.275 E(pplication)-.275 E
F0(In this case, the application pro)100.8 574.6 Q
(vides sequence numbers and congestion feedback abo)-.165 E -.165(ve)
-.165 G(UDP)100.8 587.6 Q 2.75(,b)-1.221 G
(ut communicates that feedback to a congestion manager belo)-2.97 E 2.75
(wU)-.275 G(DP)-2.75 E 2.75(,w)-1.221 G(hich)-2.75 E(re)100.8 600.6 Q
(gulates when pack)-.165 E(ets can be sent.)-.11 E(This approach suf)5.5
E(fers from most of the problems)-.275 E(described in section 3.1, name\
ly forcing the application designer to rein)100.8 613.6 Q -.165(ve)-.44
G(nt the wheel each).165 E(time for pack)100.8 626.6 Q
(et formats and parameter ne)-.11 E
(gotiation, and problems with ECN usage,)-.165 E(\214re)100.8 639.6 Q
-.11(wa)-.275 G(lls and e).11 E -.275(va)-.275 G(sion.).275 E(It w)100.8
656.2 Q(ould a)-.11 E -.22(vo)-.22 G
(id the application writer needing to implement the control part of the)
.22 E(congestion control mechanism, b)100.8 669.2 Q(ut it is unclear ho)
-.22 E 2.75(we)-.275 G(asily multiple congestion control)-2.75 E
(algorithms \(such as recei)100.8 682.2 Q -.165(ve)-.275 G -.22(r-).165
G(based TFRC\) can be supported, gi).22 E -.165(ve)-.275 G 2.75(nt).165
G(hat the form of)-2.75 E(congestion feedback usually needs to be close\
ly coupled to the congestion control)100.8 695.2 Q
(algorithm being used.)100.8 708.2 Q
(Thus, this design limits the choice of congestion control)5.5 E
(mechanisms a)100.8 721.2 Q -.275(va)-.22 G
(ilable to applications while simultaneously b).275 E
(urdening the applications with)-.22 E(Flo)72 769 Q(yd/Handle)-.11 E
(y/K)-.165 E 227.51(ohler Section)-.385 F 2.75(3.2.1. [P)2.75 F(age 8])
-.165 E EP
%%Page: 9 9
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E
(implementations of congestion feedback.)100.8 85 Q/F1 11/Times-Bold@0
SF 2.75(3.2.2. Case)72 111 R(2: Congestion F)2.75 E(eedback at a Lay)
-.275 E(er belo)-.11 E 2.75(wU)-.11 G(DP)-2.75 E F0(Pro)100.8 127.6 Q
(viding feedback at a layer belo)-.165 E 2.75(wU)-.275 G(DP w)-2.75 E
(ould require an additional pack)-.11 E(et header belo)-.11 E(w)-.275 E
(UDP to carry sequence numbers in addition to the eight-byte header for\
UDP itself.)100.8 140.6 Q(Unless)5.5 E
(this header were an IP option \(which is lik)100.8 153.6 Q
(ely to cause problems for man)-.11 E 2.75(yI)-.165 G(Pv4 routers\))
-2.75 E(then its presence w)100.8 166.6 Q
(ould need to be indicated using a dif)-.11 E(ferent IP protocol v)-.275
E(alue from UDP)-.275 E(.)-1.221 E(Thus, the pack)100.8 179.6 Q(ets w)
-.11 E(ould no longer look lik)-.11 E 2.75(eU)-.11 G
(DP on the wire, and the modi\214ed protocol)-2.75 E -.11(wo)100.8 192.6
S(uld f).11 E(ace deplo)-.11 E
(yment challenges similar to those of an entirely ne)-.11 E 2.75(wp)
-.275 G(rotocol.)-2.75 E 1.76 -.88(To u)100.8 209.2 T
(se this mechanism most ef).88 E(fecti)-.275 E -.165(ve)-.275 G(ly).165
E 2.75(,t)-.715 G(he semantics of the UDP sock)-2.75 E
(et API \(Application)-.11 E(Programming Interf)100.8 222.2 Q(ace\) w)
-.11 E(ould also need changing, both to support a late decision on what)
-.11 E(to send, and to pro)100.8 235.2 Q
(vide access to the sequence numbers to a)-.165 E -.22(vo)-.22 G
(id the application needing to).22 E(duplicate them for its o)100.8
248.2 Q(wn purposes.)-.275 E(Thus, the sock)5.5 E(et API w)-.11 E
(ould no longer look lik)-.11 E 2.75(eU)-.11 G(DP)-2.75 E(to end hosts.)
100.8 261.2 Q(This w)5.5 E(ould ef)-.11 E(fecti)-.275 E -.165(ve)-.275 G
(ly be a ne).165 E 2.75(wt)-.275 G(ransport protocol.)-2.75 E(Gi)100.8
277.8 Q -.165(ve)-.275 G 2.75(nt).165 G
(hese complications, it seems cleaner to actually design a ne)-2.75 E
2.75(wt)-.275 G(ransport protocol,)-2.75 E(which also allo)100.8 290.8 Q
(ws us to address the issues of \214re)-.275 E -.11(wa)-.275 G(ll tra)
.11 E -.165(ve)-.22 G(rsal, \215o).165 E 2.75(ws)-.275 G
(etup, and parameter)-2.75 E(ne)100.8 303.8 Q 2.75(gotiation. W)-.165 F
2.75(en)-.88 G(ote that an)-2.75 E 2.75(yn)-.165 G .55 -.275(ew t)-2.75
H(ransport protocol could also use a Congestion Manager).275 E
(approach to share congestion state between \215o)100.8 316.8 Q
(ws using the same congestion control)-.275 E
(algorithm, if this were deemed to be desirable.)100.8 329.8 Q F1(3.3.)
72 355.8 Q/F2 13/Times-Bold@0 SF(Pr)5.5 E -.13(ov)-.234 G
(iding Congestion Contr).13 E(ol at the T)-.234 E(ransport Lay)-.962 E
(er)-.13 E F0(The concerns from the discussions abo)100.8 372.4 Q .33
-.165(ve h)-.165 H -2.475 -.22(av e).165 H(con)2.97 E
(vinced us that the best w)-.44 E(ay to pro)-.11 E(vide)-.165 E
(congestion control to applications that currently use UDP is to pro)
100.8 385.4 Q(vide congestion control)-.165 E(at the transport layer)
100.8 398.4 Q 2.75(,i)-.44 G 2.75(nat)-2.75 G
(ransport protocol used as an alternati)-2.75 E .33 -.165(ve t)-.275 H
2.75(oU).165 G(DP)-2.75 E 5.5(.O)-1.221 G(ne adv)-5.5 E(antage)-.275 E
(of pro)100.8 411.4 Q(viding end-to-end congestion control in an unreli\
able transport protocol is that it)-.165 E(could be used easily by a wi\
de range of the applications that currently use UDP)100.8 424.4 Q 2.75
(,w)-1.221 G(ith)-2.75 E(minimal changes to the application itself.)
100.8 437.4 Q(The application itself w)5.5 E(ould not ha)-.11 E .33
-.165(ve t)-.22 H 2.75(op).165 G(ro)-2.75 E(vide)-.165 E
(the congestion control mechanism, or e)100.8 450.4 Q -.165(ve)-.275 G
2.75(nt).165 G(he feedback from the data recei)-2.75 E -.165(ve)-.275 G
2.75(rt).165 G 2.75(ot)-2.75 G(he data)-2.75 E
(sender about lost or mark)100.8 463.4 Q(ed pack)-.11 E(ets.)-.11 E(The\
question then arises of whether to adapt TCP for use by unreliable app\
lications, to use)100.8 480 Q(an unreliable v)100.8 493 Q
(ariant of SCTP or a v)-.275 E(ersion of R)-.165 E(TP with b)-.66 E
(uilt-in congestion control, or to)-.22 E(design a ne)100.8 506 Q 2.75
(wt)-.275 G(ransport protocol.)-2.75 E(As we ar)100.8 522.6 Q(gue belo)
-.198 E 1.43 -.715(w, t)-.275 H(he desire for minimal o).715 E -.165(ve)
-.165 G(rhead results in the design decision to use a).165 E
(transport protocol containing only the minimal necessary functionality)
100.8 535.6 Q 2.75(,a)-.715 G(nd to lea)-2.75 E .33 -.165(ve o)-.22 H
(ther).165 E(functionality such as reliability)100.8 548.6 Q 2.75(,s)
-.715 G(emi-reliability)-2.75 E 2.75(,o)-.715 G 2.75(rF)-2.75 G(orw)
-2.915 E(ard Error Correction \(FEC\) to be)-.11 E(layered on top.)100.8
561.6 Q F1 2.75(3.3.1. Modifying)72 587.6 R(TCP?)2.75 E F0
(One alternati)100.8 604.2 Q .33 -.165(ve m)-.275 H
(ight be to create an unreliable v).165 E(ariant of TCP)-.275 E 2.75(,w)
-1.221 G(ith the reliability layered)-2.75 E
(on top for applications desiring reliable deli)100.8 617.2 Q -.165(ve)
-.275 G(ry).165 E 5.5(.H)-.715 G -.275(ow)-5.5 G -2.365 -.275(ev e).275
H .88 -.44(r, o).275 H(ur requirement is not simply).44 E
(for TCP minus the in-order reliable deli)100.8 630.2 Q -.165(ve)-.275 G
(ry).165 E 2.75(,b)-.715 G(ut also for the application to be able to)
-2.97 E(choose congestion control algorithms.)100.8 643.2 Q(TCP')5.5 E
2.75(sf)-.605 G(eedback mechanism w)-2.75 E(orks well for TCP-)-.11 E
(lik)100.8 656.2 Q 2.75(ec)-.11 G(ongestion control, b)-2.75 E
(ut is inappropriate \(or at the v)-.22 E(ery least, inef)-.165 E
(\214cient\) for TFRC.)-.275 E(In)5.5 E
(addition, TCP sequence numbers are in bytes, not datagrams. This w)
100.8 669.2 Q(ould complicate both)-.11 E(congestion feedback and an)
100.8 682.2 Q 2.75(ya)-.165 G(ttempt to allo)-2.75 E 2.75(wt)-.275 G
(he application to decide, at transmission)-2.75 E
(time, what information should go into a pack)100.8 695.2 Q 2.75
(et. Finally)-.11 F 2.75(,t)-.715 G(here is the issue of whether a)-2.75
E(modi\214ed TCP w)100.8 708.2 Q(ould require a ne)-.11 E 2.75(wI)-.275
G 2.75(Pp)-2.75 G(rotocol number as well; a signi\214cantly modi\214ed)
-2.75 E(TCP using the same IP protocol number could ha)100.8 721.2 Q .33
-.165(ve u)-.22 H(nw).165 E(anted interactions with some of the)-.11 E
(Flo)72 769 Q(yd/Handle)-.11 E(y/K)-.165 E 227.51(ohler Section)-.385 F
2.75(3.3.1. [P)2.75 F(age 9])-.165 E EP
%%Page: 10 10
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E(middlebox)100.8 85 Q
(es already deplo)-.165 E(yed in the netw)-.11 E(ork.)-.11 E
(It seems best simply to lea)100.8 101.6 Q .33 -.165(ve T)-.22 H
(CP as it is, and to create a ne).165 E 2.75(wc)-.275 G
(ongestion control protocol)-2.75 E(for unreliable transfer)100.8 114.6
Q 5.5(.T)-.605 G(his is especially true since an)-5.5 E 2.75(yc)-.165 G
(hange to TCP)-2.75 E 2.75(,n)-1.221 G 2.75(om)-2.75 G(atter ho)-2.75 E
(w)-.275 E(small, tak)100.8 127.6 Q
(es an inordinate amount of time to standardize and deplo)-.11 E 1.43
-.715(y, g)-.11 H -2.365 -.275(iv e).715 H 2.75(nT).275 G(CP')-2.75 E(s)
-.605 E(importance in the current Internet and the historical dif)100.8
140.6 Q(\214culty of getting TCP)-.275 E(implementations right.)100.8
153.6 Q/F1 11/Times-Bold@0 SF 2.75(3.3.2. Unr)72 179.6 R(eliable V)-.198
E(ariants of SCTP?)-1.012 E F0(SCTP w)100.8 196.2 Q(as in part designed\
to accommodate multiple streams within a single end-to-end)-.11 E
(connection, modifying TCP')100.8 209.2 Q 2.75(ss)-.605 G
(emantics of reliable, in-order deli)-2.75 E -.165(ve)-.275 G
(ry to allo).165 E 2.75(wo)-.275 G(ut-of-order)-2.75 E(deli)100.8 222.2
Q -.165(ve)-.275 G(ry).165 E 5.5(.H)-.715 G -.275(ow)-5.5 G -2.365 -.275
(ev e).275 H .88 -.44(r, e).275 H
(xplicit support for multiple streams o).275 E -.165(ve)-.165 G 2.75
(ras).165 G(ingle \215o)-2.75 E 2.75(wa)-.275 G 2.75(tt)-2.75 G
(he transport)-2.75 E(layer is not necessary for an unreliable transpor\
t protocol such as DCCP)100.8 235.2 Q 2.75(,w)-1.221 G(hich of)-2.75 E
(necessity allo)100.8 248.2 Q(ws out-of-order deli)-.275 E -.165(ve)
-.275 G(ry).165 E 5.5(.B)-.715 G
(ecause an unreliable transport does not need)-5.5 E
(streams support, applications should not ha)100.8 261.2 Q .33 -.165
(ve t)-.22 H 2.75(op).165 G(ay the penalties in terms of increased)-2.75
E(header size that accompan)100.8 274.2 Q 2.75(yt)-.165 G
(he use of streams in SCTP)-2.75 E(.)-1.221 E
(The basic underlying structure of the SCTP pack)100.8 290.8 Q
(et, into a common SCTP header follo)-.11 E(wed)-.275 E
(by chunks for data, SA)100.8 303.8 Q
(CK information, and so on, is moti)-.44 E -.275(va)-.275 G
(ted by SCTP').275 E 2.75(sg)-.605 G(oal of)-2.75 E
(accommodating multiple streams, Ho)100.8 316.8 Q(we)-.275 E -.165(ve)
-.275 G .88 -.44(r, t).165 H(his use of chunks comes at the cost of an)
.44 E(increased header size for pack)100.8 329.8 Q
(ets, as each chunk must be aligned on 32-bit boundaries, and)-.11 E
(therefore requires a \214x)100.8 342.8 Q(ed-size 4-byte chunk header)
-.165 E 5.5(.F)-.605 G(or e)-5.665 E(xample, for a connection using)
-.165 E(ECN, SCTP includes separate control chunks for the Explicit Con\
gestion Noti\214cation Echo)100.8 355.8 Q(and Congestion W)100.8 368.8 Q
(indo)-.44 E 2.75(wR)-.275 G
(educed functions, with the ECNE and CWR chunks each)-2.75 E
(requiring 8 bytes.)100.8 381.8 Q(As another e)5.5 E
(xample, the common header includes a 4-byte v)-.165 E(eri\214cation)
-.165 E(tag to v)100.8 394.8 Q(alidate the sender)-.275 E 5.5(.T)-.605 G
(he issue of a minimal header size is just one of the w)-5.5 E(ays that)
-.11 E(the underlying frame)100.8 407.8 Q -.11(wo)-.275 G
(rk of SCTP does not \214t the needs of an unreliable transport as).11 E
(outlined in this document.)100.8 420.8 Q
(As a second concern, SCTP as currently speci\214ed uses TCP-lik)100.8
437.4 Q 2.75(ec)-.11 G(ongestion control, and)-2.75 E(does not pro)100.8
450.4 Q(vide support for alternati)-.165 E .33 -.165(ve c)-.275 H
(ongestion control algorithms such as TFRC that).165 E -.11(wo)100.8
463.4 S(uld be more attracti).11 E .33 -.165(ve t)-.275 H 2.75(os).165 G
(ome of the applications currently using UDP \215o)-2.75 E 2.75
(ws. Thus,)-.275 F(the)2.75 E(current v)100.8 476.4 Q(ersion of SCTP w)
-.165 E(ould not meet the requirements for a choice between forms of)
-.11 E(end-to-end congestion control.)100.8 489.4 Q
(One could suggest adding support for alternati)100.8 506 Q .33 -.165
(ve c)-.275 H(ongestion control mechanisms as an).165 E(option to SCTP)
100.8 519 Q 2.75(,a)-1.221 G(nd adding a fully-unreliable v)-2.75 E
(ariant that does not include the mechanisms)-.275 E
(for multiple streams.)100.8 532 Q(Ho)5.5 E(we)-.275 E -.165(ve)-.275 G
.88 -.44(r, t).165 H(hat path leads one to a choice between a `).44 E
(`kitchen sink')-.814 E(')-.814 E(protocol that tries to include option\
s to accommodate all applications \(i.e., the modi\214ed)100.8 545 Q
-.165(ve)100.8 558 S
(rsion of SCTP\), and a clean and minimal protocol that pro).165 E
(vides only end-to-end)-.165 E(congestion control and an)100.8 571 Q
2.75(yo)-.165 G(ther mechanisms that cannot be pro)-2.75 E
(vided in a higher layer)-.165 E(.)-.605 E 1.76 -.88(We w)100.8 584 T
(ould ar).77 E(gue ag)-.198 E(ainst the `)-.055 E(`kitchen sink')-.814 E
2.75('a)-.814 G(pproach in this case.)-2.75 E(Applications that desire \
limited retransmission with multi-stream support, or that desire)100.8
600.6 Q
(multi-homing support, might be good candidates for a semi-reliable v)
100.8 613.6 Q(ersion of SCTP such)-.165 E(as U-SCTP)100.8 626.6 Q 5.5
(.H)-1.221 G -.275(ow)-5.5 G -2.365 -.275(ev e).275 H .88 -.44(r, w).275
H 2.75(eb).44 G(elie)-2.75 E .33 -.165(ve t)-.275 H(hat v).165 E
(ariants of SCTP are not suitable for fully-unreliable)-.275 E
(applications, or for the b)100.8 639.6 Q
(ulk of applications that today use UDP)-.22 E 5.5(.W)-1.221 G 2.75(ew)
-6.38 G(ould ar)-2.86 E(gue that)-.198 E(instead, an additional transpo\
rt protocol is needed for unreliable transfer)100.8 652.6 Q(.)-.605 E F1
2.75(3.3.3. Modifying)72 678.6 R -.44(RT)2.75 G(P?).44 E F0(Se)100.8
695.2 Q -.165(ve)-.275 G(ral of our tar).165 E
(get applications currently use R)-.198 E(TP layered abo)-.66 E .33
-.165(ve U)-.165 H(DP to transfer their).165 E(data. Wh)100.8 708.2 Q
2.75(yn)-.055 G(ot modify R)-2.75 E(TP to pro)-.66 E
(vide end-to-end congestion control?)-.165 E(Flo)72 769 Q(yd/Handle)-.11
E(y/K)-.165 E 222.01(ohler Section)-.385 F 2.75(3.3.3. [P)2.75 F
(age 10])-.165 E EP
%%Page: 11 11
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E(When R)100.8 85 Q(TP li)-.66 E
-.165(ve)-.275 G 2.75(sa).165 G(bo)-2.75 E .33 -.165(ve U)-.165 H(DP)
.165 E 2.75(,m)-1.221 G
(odifying it to support congestion control might encounter)-2.75 E
(some of the problems described in Section 3.1. In particular)100.8 98 Q
2.75(,u)-.44 G(ser)-2.75 E(-le)-.22 E -.165(ve)-.275 G 2.75(lR).165 G
(TP)-3.41 E(implementations w)100.8 111 Q(ould w)-.11 E
(ant access to ECN bits in UDP datagrams. It might be dif)-.11 E
(\214cult or)-.275 E(undesirable to allo)100.8 124 Q 2.75(wt)-.275 G
(hat access for R)-2.75 E(TP)-.66 E 2.75(,b)-1.221 G
(ut not for other user)-2.97 E(-le)-.22 E -.165(ve)-.275 G 2.75(lp).165
G(rograms.)-2.75 E -.275(Ke)100.8 140.6 S(rnel implementations of R).275
E(TP w)-.66 E(ould not suf)-.11 E
(fer from this problem. In the end, the)-.275 E(ar)100.8 153.6 Q
(gument ag)-.198 E(ainst modifying R)-.055 E(TP is the same as that ag)
-.66 E(ainst modifying SCTP: Some)-.055 E(applications, such as the e)
100.8 166.6 Q(xport of \215o)-.165 E 2.75(wi)-.275 G
(nformation from routers, need congestion control)-2.75 E -.22(bu)100.8
179.6 S 2.75(td).22 G(on')-2.75 E 2.75(tn)-.198 G(eed much of R)-2.75 E
(TP')-.66 E 2.75(sf)-.605 G(unctionality)-2.75 E 2.75(.F)-.715 G
(rom these applications' point of vie)-2.75 E 1.43 -.715(w, R)-.275 H
(TP).055 E -.11(wo)100.8 192.6 S(uld induce unnecessary o).11 E -.165
(ve)-.165 G(rhead. Ag).165 E(ain, we w)-.055 E(ould ar)-.11 E
(gue for a clean and minimal)-.198 E
(protocol focused on end-to-end congestion control.)100.8 205.6 Q -.66
(RT)100.8 222.2 S 2.75(Pw).66 G(ould commonly be used as a layer abo)
-2.86 E .33 -.165(ve a)-.165 H .33 -.165(ny n).165 H .55 -.275(ew t).165
H(ransport protocol, ho).275 E(we)-.275 E -.165(ve)-.275 G 1.21 -.605
(r. T).165 H(he).605 E(design of that ne)100.8 235.2 Q 2.75(wt)-.275 G
(ransport protocol should tak)-2.75 E 2.75(et)-.11 G
(his into account, either by a)-2.75 E -.22(vo)-.22 G(iding).22 E
(undue duplication of information a)100.8 248.2 Q -.275(va)-.22 G
(ilable in the R).275 E(TP header)-.66 E 2.75(,o)-.44 G 2.75(rb)-2.75 G
2.75(ys)-2.75 G(uggesting)-2.75 E(modi\214cations to R)100.8 261.2 Q(TP)
-.66 E 2.75(,s)-1.221 G(uch as a reduced R)-2.75 E(TP header that remo)
-.66 E -.165(ve)-.165 G 2.75<738c>.165 G(elds redundant with the)-2.75 E
(ne)100.8 274.2 Q 2.75(wp)-.275 G(rotocol')-2.75 E 2.75(sh)-.605 G
(eaders.)-2.75 E/F1 11/Times-Bold@0 SF 2.75(3.3.4. Designing)72 300.2 R
2.75(aN)2.75 G(ew T)-2.75 E(ransport Pr)-.814 E(otocol)-.198 E F0
(In the \214rst half of this document we ha)100.8 316.8 Q .33 -.165
(ve a)-.22 H -.198(rg).165 G(ued for pro).198 E
(viding congestion control at the)-.165 E
(transport layer as an alternati)100.8 329.8 Q .33 -.165(ve t)-.275 H
2.75(oU).165 G(DP)-2.75 E 2.75(,i)-1.221 G
(nstead of relying on congestion control supplied)-2.75 E(only abo)100.8
342.8 Q .33 -.165(ve o)-.165 H 2.75(rb).165 G(elo)-2.75 E 2.75(wU)-.275
G(DP)-2.75 E 5.5(.I)-1.221 G 2.75(nt)-5.5 G(his section, we ha)-2.75 E
.33 -.165(ve ex)-.22 H(amined the possibilities of modifying).165 E
(SCTP)100.8 355.8 Q 2.75(,m)-1.221 G(odifying TCP)-2.75 E 2.75(,a)-1.221
G(nd designing a ne)-2.75 E 2.75(wt)-.275 G(ransport protocol.)-2.75 E
(In lar)5.5 E(ge part because of the)-.198 E(requirement for unreliable\
transport, and for accommodating TFRC and well as TCP-lik)100.8 368.8 Q
(e)-.11 E(congestion control, we ha)100.8 381.8 Q .33 -.165(ve c)-.22 H
(oncluded that modi\214cations of SCTP or TCP are not the best).165 E
(answer)100.8 394.8 Q 2.75(,a)-.44 G(nd that a ne)-2.75 E 2.75(wt)-.275
G(ransport protocol is needed.)-2.75 E(Thus, we ha)5.5 E .33 -.165(ve a)
-.22 H -.198(rg).165 G(ued for the need for).198 E 2.75(an)100.8 407.8 S
.55 -.275(ew t)-2.75 H(ransport protocol that of).275 E
(fers unreliable deli)-.275 E -.165(ve)-.275 G
(ry; accommodates TFRC as well as).165 E(TCP-lik)100.8 420.8 Q 2.75(ec)
-.11 G
(ongestion control; accommodates the use of ECN; and requires minimal)
-2.75 E -.165(ove)100.8 433.8 S(rhead in pack).165 E
(et size and in the state and CPU processing required at the data recei)
-.11 E -.165(ve)-.275 G -.605(r.).165 G
(This is the line of reasoning that has lead us to the de)100.8 450.4 Q
-.165(ve)-.275 G(lopment of DCCP).165 E 5.5(.B)-1.221 G(oth the)-5.5 E(\
problem statement presented in this document, and the detailed design d\
ecisions made in)100.8 463.4 Q(the design of DCCP)100.8 476.4 Q 2.75(,h)
-1.221 G -2.475 -.22(av e)-2.75 H
(been brought to the IETF for further feedback.)2.97 E(This document)5.5
E(addresses only the problem statement; the design decisions resulting \
from this problem)100.8 489.4 Q
(statement will be addressed in a later document.)100.8 502.4 Q F1(4.)72
528.4 Q/F2 14/Times-Bold@0 SF(Selling Congestion Contr)5.5 E
(ol to Reluctant A)-.252 E(pplications)-.35 E F0(The goal of this w)
100.8 545 Q(ork is to pro)-.11 E
(vide general congestion control mechanisms that will)-.165 E
(actually be used by man)100.8 558 Q 2.75(yo)-.165 G 2.75(ft)-2.75 G
(he applications that currently use UDP)-2.75 E 5.5(.T)-1.221 G
(his may include)-5.5 E(applications that are perfectly happ)100.8 571 Q
2.75(yw)-.11 G(ithout end-to-end congestion control.)-2.75 E(Se)5.5 E
-.165(ve)-.275 G(ral of our).165 E(design requirements follo)100.8 584 Q
2.75(wf)-.275 G(rom a desire to design and deplo)-2.75 E 2.75(yac)-.11 G
(ongestion-controlled)-2.75 E(protocol that is actually attracti)100.8
597 Q .33 -.165(ve t)-.275 H 2.75(ot).165 G
(hese "reluctant" applications.)-2.75 E(These include the use)5.5 E(of \
Explicit Congestion Noti\214cation \(ECN\) and the ECN Nonce, which bot\
h pro)100.8 610 Q(vide)-.165 E(positi)100.8 623 Q .33 -.165(ve b)-.275 H
(ene\214t to the application itself; the choice between dif).165 E
(ferent forms of congestion)-.275 E(control; and moderate o)100.8 636 Q
-.165(ve)-.165 G(rhead in the size of the pack).165 E(et header)-.11 E
(.)-.605 E(There will al)100.8 652.6 Q -.11(wa)-.11 G(ys be a fe).11 E
2.75<778d>-.275 G -.275(ow)-2.75 G 2.75(st).275 G
(hat are resistant to the use of end-to-end congestion)-2.75 E
(control, preferring an en)100.8 665.6 Q
(vironment where end-to-end congestion control is used by)-.44 E -2.365
-.275(ev e)100.8 678.6 T(ryone else, b).275 E(ut not by themselv)-.22 E
2.75(es. There)-.165 F(has been substantial agreement [RFC 2309])2.75 E
([FF99] that in order to maintain the continued use of end-to-end conge\
stion control, router)100.8 691.6 Q(mechanisms are needed to detect and\
penalize uncontrolled high-bandwidth \215o)100.8 704.6 Q(ws in times)
-.275 E
(of high congestion; these router mechanisms are colloquially kno)100.8
717.6 Q(wn as `penalty box)-.275 E(es'.)-.165 E(Flo)72 769 Q(yd/Handle)
-.11 E(y/K)-.165 E 238.51(ohler Section)-.385 F 2.75(4. [P)2.75 F
(age 11])-.165 E EP
%%Page: 12 12
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E(Ho)100.8 85 Q(we)-.275 E -.165
(ve)-.275 G .88 -.44(r, b).165 H(efore undertaking a concerted ef).44 E
(fort to)-.275 E -.11(wa)-.275 G(rds the deplo).11 E
(yment of penalty box)-.11 E(es in)-.165 E
(the Internet, it seems reasonable, and more ef)100.8 98 Q(fecti)-.275 E
-.165(ve)-.275 G 2.75(,t).165 G 2.75<6f8c>-2.75 G(rst mak)-2.75 E 2.75
(eac)-.11 G(oncerted ef)-2.75 E(fort to)-.275 E(mak)100.8 111 Q 2.75(ee)
-.11 G(nd-to-end congestion control easily a)-2.75 E -.275(va)-.22 G
(ilable to applications currently using UDP).275 E(.)-1.221 E/F1 11
/Times-Bold@0 SF(5.)72 137 Q/F2 14/Times-Bold@0 SF
(Additional Design Considerations)5.5 E F0(This section mentions some a\
dditional design considerations that should be considered in)100.8 153.6
Q(designing a ne)100.8 166.6 Q 2.75(wt)-.275 G(ransport protocol.)-2.75
E 7.15<834d>100.8 183.2 S(obility: Mechanisms for multi-homing and mobi\
lity are one area of additional)-7.15 E
(functionality that cannot necessarily be layered cleanly and ef)111.8
196.2 Q(fecti)-.275 E -.165(ve)-.275 G(ly on top of a).165 E
(transport protocol.)111.8 209.2 Q
(Thus, one outstanding design decision with an)5.5 E 2.75(yn)-.165 G .55
-.275(ew t)-2.75 H(ransport).275 E(protocol concerns whether to incorpo\
rate mechanisms for multi-homing and mobility)111.8 222.2 Q
(into the protocol itself.)111.8 235.2 Q 7.15<8344>100.8 251.8 S
(efense ag)-7.15 E
(ainst DoS attacks and spoo\214ng: A reliable handshak)-.055 E 2.75(ef)
-.11 G(or connection setup)-2.75 E(and teardo)111.8 264.8 Q(wn of)-.275
E(fers protection ag)-.275 E(ainst DoS and spoo\214ng attacks.)-.055 E
(Mechanisms allo)5.5 E(wing)-.275 E 2.75(as)111.8 277.8 S(erv)-2.75 E
(er to a)-.165 E -.22(vo)-.22 G(id holding an).22 E 2.75(ys)-.165 G
(tate for unackno)-2.75 E(wledged connection attempts or already-)-.275
E(\214nished connections of)111.8 290.8 Q(fer additional protection ag)
-.275 E(ainst DoS attacks.)-.055 E(Thus, in designing)5.5 E 2.75(an)
111.8 303.8 S .55 -.275(ew t)-2.75 H(ransport protocol, e).275 E -.165
(ve)-.275 G 2.75(no).165 G(ne designed to pro)-2.75 E
(vide minimal functionality)-.165 E 2.75(,t)-.715 G(he)-2.75 E
(requirements for pro)111.8 316.8 Q(viding defense ag)-.165 E
(ainst DoS attacks and spoo\214ng need to be)-.055 E(considered.)111.8
329.8 Q 7.15<8349>100.8 346.4 S(nteroperation with R)-7.15 E
(TP: As Section 3.3.3 describes, attention should be paid to an)-.66 E
(y)-.165 E(necessary or desirable changes in R)111.8 359.4 Q
(TP when it is used o)-.66 E -.165(ve)-.165 G 2.75(rt).165 G(he ne)-2.75
E 2.75(wp)-.275 G(rotocol, such as)-2.75 E(reduced R)111.8 372.4 Q
(TP headers.)-.66 E 7.15<8341>100.8 389 S(PI: Some functionality requir\
ed by the protocol, or useful for applications using the)-7.15 E
(protocol, may require the de\214nition of ne)111.8 402 Q 2.75(wA)-.275
G(PI mechanisms.)-2.75 E(Examples include)5.5 E(allo)111.8 415 Q
(wing applications to decide what information to put in a pack)-.275 E
2.75(et at)-.11 F(transmission)2.75 E(timer)111.8 428 Q 2.75(,a)-.44 G
(nd pro)-2.75 E(viding applications with some information about pack)
-.165 E(et sequence)-.11 E(numbers.)111.8 441 Q 7.15<8349>100.8 457.6 S
(nteractions with N)-7.15 E -1.221(AT)-.385 G 2.75(sa)1.221 G(nd Fire)
-2.75 E -.11(wa)-.275 G(lls: N).11 E -1.221(AT)-.385 G 2.75(sa)1.221 G
(nd \214re)-2.75 E -.11(wa)-.275 G(lls don').11 E 2.75(ti)-.198 G
(nteract well with UDP)-2.75 E(,)-1.221 E(with its lack of e)111.8 470.6
Q(xplicit \215o)-.165 E 2.75(ws)-.275 G(etup and teardo)-2.75 E
(wn and, in practice, the lack of well-kno)-.275 E(wn)-.275 E
(ports for man)111.8 483.6 Q 2.75(yU)-.165 G(DP applications. Some of t\
hese issues are application-speci\214c; others)-2.75 E
(should be addressed by the transport protocol itself.)111.8 496.6 Q
7.15<8343>100.8 513.2 S(onsider general e)-7.15 E
(xperiences with unicast transport: A Requirements for Unicast)-.165 E
-.385(Tr)111.8 526.2 S(ansport/Sessions \(R).385 E(UTS\) BOF w)-.44 E
(as held at the IETF meeting in December)-.11 E 2.75(,1)-.44 G
(998, with)-2.75 E(the goal of understanding the requirements of applic\
ations whose needs were not met by)111.8 539.2 Q(TCP [R)111.8 552.2 Q
(UTS]. Not all of those unmet needs are rele)-.44 E -.275(va)-.275 G
(nt to or appropriate for a unicast,).275 E
(congestion-controlled, unreliable \215o)111.8 565.2 Q 2.75(wo)-.275 G
2.75(fd)-2.75 G(atagrams designed for long-li)-2.75 E -.165(ve)-.275 G
2.75(dt).165 G(ransfers.)-2.75 E(Some are, ho)111.8 578.2 Q(we)-.275 E
-.165(ve)-.275 G .88 -.44(r, a).165 H(nd an).44 E 2.75(yn)-.165 G .55
-.275(ew p)-2.75 H(rotocol should address those needs, and other).275 E
(requirements deri)111.8 591.2 Q -.165(ve)-.275 G 2.75(df).165 G
(rom the community')-2.75 E 2.75(se)-.605 G(xperience. W)-2.915 E 2.75
(eb)-.88 G(elie)-2.75 E .33 -.165(ve t)-.275 H(hat this document).165 E
(addresses the requirements rele)111.8 604.2 Q -.275(va)-.275 G
(nt to our problem area that were brought up at the).275 E -.44(RU)111.8
617.2 S(TS BOF).44 E(.)-.88 E F1(6.)72 643.2 Q F2 -1.036(Tr)5.5 G
(ansport Requir)1.036 E(ements of Request/Response A)-.252 E
(pplications)-.35 E F0(Up until no)100.8 659.8 Q 1.43 -.715(w, t)-.275 H
(his document has discussed the transport and congestion control).715 E
(requirements of applications that generate long-li)100.8 672.8 Q -.165
(ve)-.275 G(d, lar).165 E(ge \215o)-.198 E(ws of unreliable datagrams.)
-.275 E(This section discusses brie\215y the transport needs of another\
class of applications, those of)100.8 685.8 Q(request/response transfe\
rs where the response might be a small number of pack)100.8 698.8 Q
(ets, with)-.11 E(preferences that include both reliable deli)100.8
711.8 Q -.165(ve)-.275 G(ry and a minimum of state maintained at the)
.165 E 2.75(ends. The)100.8 724.8 R(reliable deli)2.75 E -.165(ve)-.275
G(ry could be accomplished, for e).165 E(xample, by ha)-.165 E
(ving the recei)-.22 E -.165(ve)-.275 G 2.75(rr).165 G(e-)-2.75 E(Flo)72
769 Q(yd/Handle)-.11 E(y/K)-.165 E 238.51(ohler Section)-.385 F 2.75
(6. [P)2.75 F(age 12])-.165 E EP
%%Page: 13 13
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E
(query when one or more of the pack)100.8 85 Q
(ets in the response is lost.)-.11 E(This is a class of)5.5 E
(applications whose needs are not well-met by either UDP or by TCP)100.8
98 Q(.)-1.221 E(Although there is a le)100.8 114.6 Q
(gitimate need for a transport protocol for such short-li)-.165 E -.165
(ve)-.275 G 2.75(dr).165 G(eliable)-2.75 E<8d6f>100.8 127.6 Q
(ws of such request/response applications, we belie)-.275 E .33 -.165
(ve t)-.275 H(hat the o).165 E -.165(ve)-.165 G(rlap with the).165 E
(requirements of DCCP is almost non-e)100.8 140.6 Q
(xistent, and that DCCP should not be designed to)-.165 E
(meet the needs of these request/response applications.)100.8 153.6 Q
(Areas of non-compatible)5.5 E(requirements include the follo)100.8
166.6 Q(wing:)-.275 E 7.15<8352>100.8 183.2 S
(eliability: DCCP applications don')-7.15 E 2.75(tn)-.198 G
(eed reliability \(and long-li)-2.75 E -.165(ve)-.275 G 2.75(da).165 G
(pplications that do)-2.75 E
(require reliability are well-suited to TCP or SCTP\).)111.8 196.2 Q
(In contrast, these short-li)5.5 E -.165(ve)-.275 G(d).165 E(request/re\
sponse applications do require reliability \(possibly client-dri)111.8
209.2 Q -.165(ve)-.275 G 2.75(nr).165 G(eliability in)-2.75 E
(the form of requesting missing se)111.8 222.2 Q
(gments of a response\).)-.165 E 7.15<8343>100.8 238.8 S
(onnection setup and teardo)-7.15 E(wn: Because DCCP is aimed at \215o)
-.275 E(ws whose duration is)-.275 E(often unkno)111.8 251.8 Q
(wn in adv)-.275 E(ance, it addresses interactions with N)-.275 E -1.221
(AT)-.385 G 2.75(sa)1.221 G(nd \214re)-2.75 E -.11(wa)-.275 G(lls by ha)
.11 E(ving)-.22 E -.165(ex)111.8 264.8 S(plicit handshak).165 E
(es for setup and teardo)-.11 E 2.75(wn. In)-.275 F
(contrast, the short-li)2.75 E -.165(ve)-.275 G 2.75(dr).165 G
(equest/response)-2.75 E(applications kno)111.8 277.8 Q 2.75(wt)-.275 G
(he transfer length in adv)-2.75 E(ance, b)-.275 E
(ut cannot tolerate the additional delay)-.22 E(of a handshak)111.8
290.8 Q 2.75(ef)-.11 G(or \215o)-2.75 E 2.75(ws)-.275 G 2.75
(et-up. Thus,)-2.75 F(mechanisms for interacting with N)2.75 E -1.221
(AT)-.385 G 2.75(sa)1.221 G(nd)-2.75 E(\214re)111.8 303.8 Q -.11(wa)
-.275 G(lls are lik).11 E(ely to be completely dif)-.11 E
(ferent for the tw)-.275 E 2.75(os)-.11 G(ets of applications.)-2.75 E
7.15<8343>100.8 320.4 S(ongestion-control mechanisms: The styles of con\
gestion control mechanisms and)-7.15 E(ne)111.8 333.4 Q
(gotiations of congestion control features are hea)-.165 E
(vily dependent on the \215o)-.22 E 2.75(wd)-.275 G(uration.)-2.75 E(In\
addition, the preference of the request/response applications for a st\
ateless serv)111.8 346.4 Q(er)-.165 E
(strongly impacts the congestion control choices.)111.8 359.4 Q
(Thus, DCCP and the short-li)5.5 E -.165(ve)-.275 G(d).165 E
(request/response applications ha)111.8 372.4 Q .33 -.165(ve r)-.22 H
(ather dif).165 E(ferent requirements both for congestion)-.275 E
(control mechanisms and for ne)111.8 385.4 Q(gotiation procedures.)-.165
E/F1 11/Times-Bold@0 SF(7.)72 411.4 Q/F2 14/Times-Bold@0 SF
(Summary of Recommendations)5.5 E F0(Our problem statement has discusse\
d the need for implementing congestion control for)100.8 428 Q
(unreliable \215o)100.8 441 Q 2.75(ws. Additional)-.275 F
(problems concern the need for lo)2.75 E 2.75(wo)-.275 G -.165(ve)-2.915
G(rhead, the problems of).165 E(\214re)100.8 454 Q -.11(wa)-.275 G
(ll tra).11 E -.165(ve)-.22 G
(rsal, and the need for reliable parameter ne).165 E 2.75
(gotiation. Our)-.165 F(consideration of the)2.75 E
(problem statement has resulted in the follo)100.8 467 Q
(wing general recommendations:)-.275 E 7.15<8341>100.8 483.6 S
(unicast transport protocol for unreliable datagrams should be de)-4.4 E
-.165(ve)-.275 G(loped, including).165 E(mandatory)111.8 496.6 Q 2.75
(,b)-.715 G(uilt-in congestion control, e)-2.97 E
(xplicit connection setup and teardo)-.165 E(wn, reliable)-.275 E
(feature ne)111.8 509.6 Q(gotiation, and reliable congestion feedback.)
-.165 E 7.15<8354>100.8 526.2 S(he protocol must pro)-7.15 E
(vide a set of congestion control mechanisms from which the)-.165 E(app\
lication may choose. These mechanisms should include, at minimum, TCP-l\
ik)111.8 539.2 Q(e)-.11 E(congestion control and a more slo)111.8 552.2
Q(wly-responding congestion control such as TFRC.)-.275 E 7.15<8349>
100.8 568.8 S(mportant features of the connection, such as the congesti\
on control mechanism in use,)-7.15 E(should be reliably ne)111.8 581.8 Q
(gotiated by both endpoints.)-.165 E 7.15<8353>100.8 598.4 S
(upport for ECN should be included.)-7.15 E
(\(Applications could still mak)5.5 E 2.75(et)-.11 G(he decision not to)
-2.75 E(use ECN for a particular session.\))111.8 611.4 Q 7.15<8354>
100.8 628 S(he o)-7.15 E -.165(ve)-.165 G(rhead must be lo).165 E 1.43
-.715(w, i)-.275 H 2.75(nt).715 G(erms of both pack)-2.75 E
(et size and protocol comple)-.11 E(xity)-.165 E(.)-.715 E 7.15<8353>
100.8 644.6 S(ome DoS protection for serv)-7.15 E
(ers must be included. In particular)-.165 E 2.75(,s)-.44 G(erv)-2.75 E
(ers can mak)-.165 E(e)-.11 E(themselv)111.8 657.6 Q
(es resistant to spoofed connection attacks \("SYN \215oods"\).)-.165 E
7.15<8343>100.8 674.2 S(onnection setup and teardo)-7.15 E
(wn must use e)-.275 E(xplicit handshak)-.165 E(es, f)-.11 E
(acilitating transmission)-.11 E(through stateful \214re)111.8 687.2 Q
-.11(wa)-.275 G(lls.).11 E
(If there is a consensus about the need for a ne)100.8 703.8 Q 2.75(wu)
-.275 G(nicast transport protocol for unreliable)-2.75 E
(datagrams, then the ne)100.8 716.8 Q(xt step can be the consideration \
of more detailed architectural issues.)-.165 E(Flo)72 769 Q(yd/Handle)
-.11 E(y/K)-.165 E 238.51(ohler Section)-.385 F 2.75(7. [P)2.75 F
(age 13])-.165 E EP
%%Page: 14 14
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E/F1 11/Times-Bold@0 SF(8.)72 85
Q/F2 14/Times-Bold@0 SF(Ackno)5.5 E(wledgements)-.14 E F0 1.76 -.88
(We w)100.8 101.6 T(ould lik).77 E 2.75(et)-.11 G 2.75(ot)-2.75 G
(hank Spencer Da)-2.75 E(wkins, Jiten Goel, Jef)-.165 E 2.75(fH)-.275 G
(ammond, Lars-Erik Jonsson,)-2.75 E(John Loughne)100.8 114.6 Q 1.43
-.715(y, M)-.165 H(ichael Mealling, and Rik W).715 E
(ade for feedback on earlier v)-.88 E(ersions of this)-.165 E 2.75
(document. W)100.8 127.6 R 2.75(ew)-.88 G(ould also lik)-2.86 E 2.75(et)
-.11 G 2.75(ot)-2.75 G(hank members of the T)-2.75 E(ransport Area W)
-.385 E(orking Group)-.88 E(and of the DCCP W)100.8 140.6 Q
(orking Group for discussions of these issues.)-.88 E F1(9.)72 166.6 Q
F2(Refer)5.5 E(ences)-.252 E F0
([Bala99] H. Balakrishnan, H. Rahul, and S. Seshan, An Inte)100.8 183.2
Q(grated Congestion)-.165 E
(Management Architecture for Internet Hosts, SIGCOMM, Sept. 1999.)129.6
196.2 Q([MEASWEB] Ramon Caceres and Sally Flo)100.8 212.8 Q
(yd, Measurement Studies of End-to-End)-.11 E
(Congestion Control in the Internet, W)129.6 225.8 Q(eb P)-.88 E
(age, 2001.)-.165 E([FF99] S. Flo)100.8 242.4 Q(yd and K. F)-.11 E
(all, Promoting the Use of End-to-End Congestion Control in the)-.165 E
(Internet, IEEE/A)129.6 255.4 Q(CM T)-.44 E(ransactions on Netw)-.385 E
(orking, August 1999.)-.11 E([MC01] S. McCreary and K.C. Claf)100.8 272
Q(fy)-.275 E 2.75(,T)-.715 G(rends in W)-3.135 E(ide Area IP T)-.44 E
(raf)-.385 E(\214c P)-.275 E(atterns: A V)-.165 E(ie)-.66 E(w)-.275 E
(from Ames Internet Exchange, ITC Specialist Seminar)129.6 285 Q 2.75
(,2)-.44 G 2.75(001. URL)-2.75 F -.814(``)129.6 298 S(http://www).814 E
(.caida.or)-.715 E(g/outreach/papers/2000/AIX0005/')-.198 E('.)-.814 E
([RFC 2026] S. Bradner)100.8 314.6 Q 2.75(.T)-.605 G
(he Internet Standards Process -- Re)-2.75 E(vision 3. RFC 2026.)-.275 E
([RFC 2481] K. Ramakrishnan, S. Flo)100.8 331.2 Q
(yd. A Proposal to add Explicit Congestion)-.11 E
(Noti\214cation \(ECN\) to IP)129.6 344.2 Q 2.75(.R)-1.221 G(FC 2481.)
-2.75 E([RFC 1191] J. C. Mogul, S. E. Deering. P)100.8 360.8 Q
(ath MTU Disco)-.165 E -.165(ve)-.165 G(ry).165 E 2.75(.R)-.715 G
(FC 1191.)-2.75 E([RFC 2309] B. Braden et al., Recommendations on Queue\
Management and Congestion)100.8 377.4 Q -1.342 -.814(Av o)129.6 390.4 T
(idance in the Internet.).814 E(RFC 2309, April 1998.)5.5 E
([RFC 2525] V)100.8 407 Q 2.75(.P)-1.419 G(axson et al., Kno)-2.915 E
(wn TCP Implementation Problems, RFC 2525, March)-.275 E(1999.)129.6 420
Q([RFC 2914] S. Flo)100.8 436.6 Q(yd. Congestion Control Principles.)
-.11 E(RFC 2914, Sept. 2000.)5.5 E([RFC 2960] R. Ste)100.8 453.2 Q -.11
(wa)-.275 G(rt, Q. Xie, K. Morneault, C. Sharp, H. Schw).11 E(arzbauer)
-.11 E 2.75(,T)-.44 G 2.75(.T)-3.564 G(aylor)-3.63 E 2.75(,I)-.44 G(.)
-2.75 E(Rytina, M. Kalla, L. Zhang, V)129.6 466.2 Q 2.75(.P)-1.419 G
(axson. Stream Control T)-2.915 E(ransmission Protocol. RFC)-.385 E
(2960.)129.6 479.2 Q
([RFC 3124] H. Balakrishnan, S. Seshan. The Congestion Manager)100.8
495.8 Q 2.75(.R)-.605 G(FC 3124.)-2.75 E([R)100.8 512.4 Q
(UTS] Requirements for Unicast T)-.44 E(ransport/Sessions \(R)-.385 E
(UTS\) BOF)-.44 E 2.75(,D)-.88 G 2.75(ec. 7,)-2.75 F 2.75(1998. URL)2.75
F("http://www)129.6 525.4 Q(.ietf.or)-.715 E
(g/proceedings/98dec/43rd-ietf-98dec-142.html".)-.198 E([TBIT] J. P)
100.8 542 Q(adh)-.165 E(ye and S. Flo)-.055 E
(yd, Identifying the TCP Beha)-.11 E(vior of W)-.22 E(eb Serv)-.88 E
(ers, SIGCOMM)-.165 E(2001.)129.6 555 Q([TFRC] M. Handle)100.8 571.6 Q
1.43 -.715(y, J)-.165 H 2.75(.P).715 G(adh)-2.915 E(ye, S. Flo)-.055 E
2.75(yd. TCP)-.11 F(Friendly Rate Control \(TFRC\): Protocol)2.75 E 2.75
(Speci\214cation. draft-ietf-tsvwg-tfrc-02.txt,)129.6 584.6 R -.11(wo)
2.75 G(rk in progress.).11 E([WES01] Da)100.8 601.2 Q(vid W)-.22 E
(etherall, Da)-.88 E(vid Ely)-.22 E 2.75(,N)-.715 G(eil Spring. Rob)
-2.75 E(ust ECN Signaling with Nonces.)-.22 E
(draft-ietf-tsvwg-tcp-nonce-03.txt, w)129.6 614.2 Q
(ork in progress, April 2002.)-.11 E F1(10.)72 640.2 Q F2 -.7(Au)5.5 G
(thors' Addr).7 E(esses)-.252 E F0(Flo)72 769 Q(yd/Handle)-.11 E(y/K)
-.165 E 233.01(ohler Section)-.385 F 2.75(10. [P)2.75 F(age 14])-.165 E
EP
%%Page: 15 15
%%BeginPageSetup
BP
%%EndPageSetup
/F0 11/Times-Roman@0 SF(INTERNET)72 49 Q 77.081(-DRAFT Expires:)-1.012 F
(April 2003)2.75 E(October 2002)112.127 E(Sally Flo)100.8 85 Q
(yd <\215o)-.11 E(yd@icir)-.11 E(.or)-.605 E(g>)-.198 E(Mark Handle)
100.8 98 Q 2.75(y<)-.165 G(mjh@icir)-2.75 E(.or)-.605 E(g>)-.198 E
(Eddie K)100.8 111 Q(ohler <k)-.385 E(ohler@icir)-.11 E(.or)-.605 E(g>)
-.198 E(ICSI Center for Internet Research \(ICIR\),)100.8 137 Q
(International Computer Science Institute,)100.8 150 Q
(1947 Center Street, Suite 600)100.8 163 Q(Berk)100.8 176 Q(ele)-.11 E
1.43 -.715(y, C)-.165 H 2.75(A9).715 G(4704.)-2.75 E(Flo)72 769 Q
(yd/Handle)-.11 E(y/K)-.165 E 233.01(ohler Section)-.385 F 2.75(10. [P)
2.75 F(age 15])-.165 E EP
%%Trailer
end
%%EOF
| PAFTECH AB 2003-2026 | 2026-04-22 20:47:17 |