One document matched: draft-ietf-dccp-user-guide-00.ps
%!PS-Adobe-3.0
%%Creator: groff version 1.17.2
%%CreationDate: Fri Oct 25 14:49:34 2002
%%DocumentNeededResources: font Courier-Bold
%%+ font Times-Bold
%%+ font Times-Roman
%%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
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-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 258
(INTERNET-DRAFT Damon)72 98 R(Lanphear)6 E 138
(draft-lanphear-dccp-user-guide-00.ps RealNetworks)72 111 R
(25 October 2002)414 124 Q(Expires: April 2003)390 137 Q/F1 14
/Times-Bold@0 SF(Datagram Congestion Contr)109.003 162 Q(ol Pr)-.252 E
(otocol \(DCCP\) User Guide)-.252 E/F2 11/Times-Bold@0 SF
(Status of this Document)72 207 Q/F3 11/Times-Roman@0 SF(This document \
is an Internet-Draft and is in full conformance with all pro)100.8 223.6
Q(visions of Section)-.165 E(10 of [RFC 2026].)100.8 236.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 249.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 262.6 S(rking documents as Internet-Drafts.)
.11 E(Internet-Drafts are draft documents v)100.8 288.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 301.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 314.6 Q(ork in progress.")-.11 E
(The list of current Internet-Drafts can be accessed at http://www)100.8
340.6 Q(.ietf.or)-.715 E(g/ietf/1id-)-.198 E(abstracts.txt)100.8 353.6 Q
(The list of Internet-Draft Shado)100.8 379.6 Q 2.75(wD)-.275 G
(irectories can be accessed at)-2.75 E(http://www)100.8 392.6 Q
(.ietf.or)-.715 E(g/shado)-.198 E -.715(w.)-.275 G(html.).715 E
(Abstract)269.366 411.6 Q(This document is an informati)97 434.2 Q .33
-.165(ve r)-.275 H(eference for the implementation of the Datagram).165
E(Congestion Control Protocol \(DCCP\) and its interf)97 447.2 Q
(ace with the application layer)-.11 E(.)-.605 E 350.919(Lanphear [P)72
769 R(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(4)11.5
E(2. Considerations for T)97 135 Q(ar)-.8 E(get Applications)-.18 E F0
11(..............)7.61 G F2(4)11.5 E(2.1. Real T)107 147 Q
(ime Media Applications)-.35 E F0 11(...............)8.5 G F2(5)11.5 E
(2.1.1. The Post Netw)117 159 Q(ork Buf)-.1 E(fer and Rate Control)-.25
E F0 11(..........)11.15 G F2(5)11.5 E
(2.1.2. Decode Costs and Media Adaptation)117 171 Q F0 11(............)
8.3 G F2(5)11.5 E(2.1.3. Selecti)117 183 Q .3 -.15(ve T)-.25 H
(ransmission and Retransmission)-.2 E F0 11(..........)9.59 G F2(5)11.5
E(2.1.4. Latenc)117 195 Q 2.5(yR)-.15 G(equirements)-2.5 E F0 11
(................)10.39 G F2(6)11.5 E(2.1.5. R)117 207 Q(TP/R)-.6 E(TCP)
-.6 E F0 11(....................).57 G F2(7)11.5 E(2.1.6. IP T)117 219 Q
(elephon)-.7 E(y)-.15 E F0 11(...................)5.94 G F2(7)11.5 E
(2.1.7. V)117 231 Q(ideo T)-.6 E(eleconferencing)-.7 E F0 11
(................)4.89 G F2(7)11.5 E
(2.1.8. Multi-Player Game Applications)117 243 Q F0 11(.............)
10.65 G F2(7)11.5 E(2.2. Cross Application Issues)107 255 Q F0 11
(.................)4.81 G F2(7)11.5 E(2.2.1. Loss Signaling)117 267 Q F0
11(..................)13.27 G F2(7)11.5 E(2.2.2. Drop Preference)117 279
Q F0 11(..................)7.2 G F2(7)11.5 E(2.2.3. Mobility)117 291 Q
F0 11(....................)10.49 G F2(7)11.5 E
(2.2.4. Send Option on Option Change W)117 303 Q(ith or W)-.4 E
(ithout Data)-.4 E F0 11(.......)8.95 G F2(8)11.5 E
(2.2.5. Protocol Information Shared with Ov)117 315 Q(erlying Layers)
-.15 E F0 11(........)3.18 G F2(8)11.5 E
(3. API and Con\214guration Considerations)97 327 Q F0 11
(..............)9.39 G F2(8)11.5 E(3.1. Con\214guration)107 339 Q F0 11
(....................)7.44 G F2(8)11.5 E(3.1.1. Con\214gurable V)117 351
Q(ariables Speci\214c to DCCP)-1.11 E F0 11(...........)3.7 G F2(9)11.5
E(3.1.2. Con\214gurable V)117 363 Q
(ariables Speci\214c to an API Implementation)-1.11 E F0 11(......)4.69
G F2(9)11.5 E(3.1.2.1. Feature Ne)127 375 Q(gotiation Limit)-.15 E F0 11
(..............)6.21 G F2(9)11.5 E
(3.1.2.2. Preferred Feature Priorities, Exclusions and Inclusions)127
387 Q F0 11(......)2.2 G F2(9)11.5 E(3.1.2.3. Loss W)127 399 Q(indo)-.4
E 2.5(wR)-.25 G(atio)-2.5 E F0 11(................)3.65 G F2(9)11.5 E
(3.1.2.4. Slo)127 411 Q 2.5(wR)-.25 G(ecei)-2.5 E -.15(ve)-.25 G 2.5(rN)
.15 G(oti\214cation)-2.5 E F0 11(..............)2.27 G F2(10)6.5 E
(3.1.2.5. Slo)127 423 Q 2.5(wR)-.25 G(ecei)-2.5 E -.15(ve)-.25 G 2.5(rO)
.15 G(ption)-2.5 E F0 11(...............)8.52 G F2(10)6.5 E
(3.1.2.6. Buf)127 435 Q(fer Close Drop Noti\214cation)-.25 E F0 11
(............)13.54 G F2(10)6.5 E(3.1.2.7. Drop Preference)127 447 Q F0
11(.................)3.45 G F2(10)6.5 E(3.1.2.8. Mobile Recei)127 459 Q
-.15(ve)-.25 G 2.5(rD).15 G(rop Beha)-2.5 E(vior Preference)-.2 E F0 11
(.........)5.46 G F2(10)6.5 E(3.1.2.9. Use Service Name)127 471 Q F0 11
(................)8.58 G F2(10)6.5 E(3.1.2.10. Minimal Buf)127 483 Q
(fering Option)-.25 E F0 11(.............)13.39 G F2(10)6.5 E
(3.1.2.11. PMTU Change Beha)127 495 Q(vior)-.2 E F0 11(..............)
5.71 G F2(11)6.5 E(3.2. Connection Establishment and T)107 507 Q
(ermination)-.7 E F0 11(...........)13.29 G F2(11)6.5 E
(3.2.1. Connection Establishment)117 519 Q F0 11(...............)8.97 G
F2(11)6.5 E(3.2.2. Data Piggybacking)117 531 Q F0 11(.................)
10.37 G F2(11)6.5 E(3.2.3. Connection T)117 543 Q(ermination)-.7 E F0 11
(................)3.15 G F2(11)6.5 E(3.3. Feature Ne)107 555 Q
(gotiation)-.15 E F0 11(..................)10.94 G F2(11)6.5 E
(3.3.1. Ne)117 567 Q(gotiable Features)-.15 E F0 11(.................)
6.64 G F2(11)6.5 E(3.3.2. Impact on Con\214guration Interf)117 579 Q
(aces)-.1 E F0 11(.............)1.6 G F2(12)6.5 E
(3.3.3. Feature options with data)117 591 Q F0 11(...............)12.87
G F2(12)6.5 E(3.3.4. Impact of feature ne)117 603 Q
(gotiation on I/O semantics)-.15 E F0 11(.........)10.27 G F2(12)6.5 E
(3.4. Error Codes)107 615 Q F0 11(.....................).65 G F2(12)6.5
E(3.5. Statistics)107 627 Q F0 11(.....................)13.13 G F2(13)
6.5 E(4. Implementation Considerations)97 639 Q F0 11(................)
9.67 G F2(13)6.5 E(4.1. Connection State)107 651 Q F0 11
(...................)8.14 G F2(13)6.5 E(4.2. Pro)107 663 Q
(vision of sequence number)-.15 E 2.5(,a)-.4 G
(nd loss data to application)-2.5 E F0 11(.......)7.05 G F2(13)6.5 E
(4.3. Probabilistic V)107 675 Q
(eri\214cation of Loss Rate using ECN for TFRC)-1.11 E F0 11(.......).64
G F2(14)6.5 E(4.4. Supporting Application Feature Preference)107 687 Q
F0 11(............)1.09 G F2(14)6.5 E(4.5. Slo)107 699 Q 2.5(wR)-.25 G
(ecei)-2.5 E -.15(ve)-.25 G 2.5(rI).15 G
(nterpretation and Noti\214cation)-2.5 E F0 11(...........)4.65 G F2(14)
6.5 E(5. Security Considerations)97 711 Q F0 11(..................)12.17
G F2(14)6.5 E(6. IAN)97 723 Q 2.5(AC)-.35 G(onsiderations)-2.5 E F0 11
(...................)7.11 G F2(14)6.5 E F0 350.919(Lanphear [P)72 769 R
(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 10/Times-Roman@0 SF
(7. References)97 84 Q F0 11(......................)8.58 G F1(14)6.5 E
(8. Author')97 96 Q 2.5(sA)-.55 G(ddress)-2.5 E F0 11
(....................)10.23 G F1(15)6.5 E F0 350.919(Lanphear [P)72 769
R(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/F1 11/Times-Bold@0 SF(1.)72 85
Q/F2 14/Times-Bold@0 SF(Intr)5.5 E(oduction)-.252 E F0(This document pr\
esents issues that pertain to the semantics and logistics of interactio\
n)100.8 101.6 Q(between the Datagram Congestion Control Protocol \(DCCP\
\) and an application that uses)100.8 114.6 Q(DCCP)100.8 127.6 Q 5.5(.T)
-1.221 G
(he choices that are to be made in implementing such semantics are also)
-5.5 E(discussed. This discussion may serv)100.8 140.6 Q 2.75(ea)-.165 G
2.75(sar)-2.75 G(eference for the use and implementation of the)-2.75 E
(Datagram Congestion Control Protocol \(DCCP\). The te)100.8 153.6 Q
(xt of this document should be)-.165 E(re)100.8 166.6 Q -.055(ga)-.165 G
(rded as informati).055 E -.165(ve)-.275 G 2.75(,r).165 G
(ather than normati)-2.75 E -.165(ve)-.275 G(.).165 E 2.75(Ad)100.8
183.2 S(iscussion of the interaction between an application and a lo)
-2.75 E(wer le)-.275 E -.165(ve)-.275 G 2.75(ls).165 G(ervice be)-2.75 E
(gs the)-.165 E(question of an API speci\214cation.)100.8 196.2 Q
(This te)5.5 E(xt does not assume a speci\214c API paradigm.)-.165 E
(Rather)100.8 209.2 Q 2.75(,A)-.44 G
(PI issues are discussed in the abstract.)-2.75 E
(The purpose of which is to allo)5.5 E 2.75(wt)-.275 G(he)-2.75 E(reade\
r to focus on fundamental implementation issues without limiting the di\
scussion to a)100.8 222.2 Q(particular problem domain. An e)100.8 235.2
Q(xample implementation using a speci\214c API is presented,)-.165 E(ho)
100.8 248.2 Q(we)-.275 E -.165(ve)-.275 G .88 -.44(r, a).165 H 2.75(sam)
.44 G
(eans by which API design choices can be demonstrated in more certain)
-2.75 E(terms.)100.8 261.2 Q
(DCCP presents a set of unique challenges to the pro)100.8 277.8 Q
(vision of an application interf)-.165 E(ace.)-.11 E
(These challenges are compounded by the f)100.8 290.8 Q(act that man)
-.11 E 2.75(yD)-.165 G(CCP implementations will be)-2.75 E(done in k)
100.8 303.8 Q(ernel space.)-.11 E
(API paradigms which are presented by e)5.5 E(xisting k)-.165 E
(ernels may not be)-.11 E(suf)100.8 316.8 Q
(\214cient for the most complete e)-.275 E(xposure of DCCP')-.165 E 2.75
(ss)-.605 G 2.75(ervices. Mitig)-2.75 F(ating the trade of)-.055 E(f)
-.275 E(between DCCP functionality muted by an API and pro)100.8 329.8 Q
(viding a suf)-.165 E(\214ciently \215e)-.275 E(xible API)-.165 E
(considered throughout this document.)100.8 342.8 Q(The reader')100.8
359.4 Q 2.75(sk)-.605 G(no)-2.75 E
(wledge of DCCP and its design rationale are assumed.)-.275 E(Re)5.5 E
(vie)-.275 E(wing the)-.275 E
(DCCP speci\214cation [DCCP] and the DCCP problem statement [DCCP-PR)
100.8 372.4 Q(OBLEM] before)-.44 E
(reading this document is therefore suggested.)100.8 385.4 Q F1(2.)72
411.4 Q F2(Considerations f)5.5 E(or T)-.35 E(ar)-1.288 E(get A)-.14 E
(pplications)-.35 E F0(DCCP speci\214cally tar)100.8 428 Q
(gets a subset of netw)-.198 E(ork applications.)-.11 E
(These applications ha)5.5 E -.165(ve)-.22 G(elected to use UDP o)100.8
441 Q -.165(ve)-.165 G 2.75(rT).165 G(CP for data transfer)-2.75 E 5.5
(.T)-.605 G(he reason for this choice is typically that)-5.5 E(the char\
acteristics of TCP data transfers are not congruent with the speci\214c\
needs of the)100.8 454 Q(application. Examples of such needs are:)100.8
467 Q 13.224(\(1\) Startup)100.8 483.6 R
(Delay: Applications may wish to a)2.75 E -.22(vo)-.22 G
(id the delay of a three-w).22 E(ay handshak)-.11 E(e.)-.11 E 13.224
(\(2\) Statelessness:)100.8 500.2 R(Applications may wish to a)2.75 E
-.22(vo)-.22 G(id holding connection state, and the).22 E
(potential state-holding attacks that come with this.)129.6 513.2 Q
13.224(\(3\) T)100.8 529.8 R(rading of Reliability ag)-.385 E(ainst T)
-.055 E(iming: F)-.385 E(or some applications, data being sent is)-.165
E(timely in the sense that if it is not deli)129.6 542.8 Q -.165(ve)
-.275 G(red by some deadline \(typically a small).165 E(number of R)
129.6 555.8 Q(TTs\) then the data will not be useful at the recei)-.66 E
-.165(ve)-.275 G 3.96 -.605(r. [).165 H(DCCP-).605 E(PR)129.6 568.8 Q
(OBLEM])-.44 E 13.224(\(4\) Smoothness)100.8 585.4 R(of Deli)2.75 E
-.165(ve)-.275 G(ry: Applications such as media deli).165 E -.165(ve)
-.275 G(ry and IP T).165 E(elephon)-.77 E 2.75(ya)-.165 G(re)-2.75 E
(susceptible to the oscillations of deli)129.6 598.4 Q -.165(ve)-.275 G
(ry rate induced by TCP).165 E 5.5(.P)-1.221 G(eriodic \215uctuations)
-5.5 E(of throughput can cause media codecs to run dry)129.6 611.4 Q
2.75(,i)-.715 G(nducing a perceptible g)-2.75 E(ap in the)-.055 E
(presentation, if a continuous stream of data is not recei)129.6 624.4 Q
-.165(ve)-.275 G 2.75(da).165 G 2.75(tt)-2.75 G(he decode rate.)-2.75 E
(DCCP has been designed to resolv)100.8 641 Q 2.75(et)-.165 G
(hese issues in a w)-2.75 E(ay that will be acceptable to)-.11 E
(applications that w)100.8 654 Q(ould otherwise use UDP)-.11 E 5.5(.T)
-1.221 G(he e)-5.5 E(xtent to which the design of a protocol)-.165 E
(can address these issues is limited by the e)100.8 667 Q
(xtent to which an implementation is sensiti)-.165 E .33 -.165(ve t)
-.275 H(o).165 E(these issues.)100.8 680 Q(It is therefore rele)5.5 E
-.275(va)-.275 G(nt that a DCCP implementation tak).275 E
(es into account the)-.11 E(needs of the o)100.8 693 Q -.165(ve)-.165 G
(rlying application through the w).165 E(ay in which it e)-.11 E
(xposes the features and)-.165 E(semantics of DCCP)100.8 706 Q(.)-1.221
E 301.419(Lanphear Section)72 769 R 2.75(2. [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
(This section discusses the needs of applications tar)100.8 85 Q
(geted by DCCP)-.198 E 5.5(.E)-1.221 G(mphasis is placed on)-5.5 E
(the impact of these needs on an implementation of DCCP)100.8 98 Q(.)
-1.221 E/F1 11/Times-Bold@0 SF(2.1.)72 124 Q/F2 13/Times-Bold@0 SF
(Real T)5.5 E(ime Media A)-.234 E(pplications)-.325 E F1 2.75
(2.1.1. The)72 150 R -.22(Po)2.75 G(st Netw).22 E
(ork Buffer and Rate Contr)-.11 E(ol)-.198 E F0
(Real time media applications typically emplo)100.8 166.6 Q 2.75(yap)
-.11 G(ost netw)-2.75 E(ork b)-.11 E(uf)-.22 E(fer)-.275 E 2.75(,o)-.44
G 2.75(rap)-2.75 G(lay out b)-2.75 E(uf)-.22 E(fer)-.275 E(,)-.44 E
(in which media pack)100.8 179.6 Q(ets are queued prior to decoding.)
-.11 E(Fluctuations in the rate and jitter of)5.5 E
(the media transmission are absorbed by the play out b)100.8 192.6 Q(uf)
-.22 E(fer)-.275 E 2.75(.Ac)-.605 G(lient in a media application)-2.75 E
(will attempt to maintain a certain de)100.8 205.6 Q
(gree of occupation of the post netw)-.165 E(ork b)-.11 E(uf)-.22 E(fer)
-.275 E(throughout the session in order to insulate the codec from such\
\215uctuations.)100.8 218.6 Q(In the e)5.5 E -.165(ve)-.275 G(nt).165 E
(that this b)100.8 231.6 Q(uf)-.22 E(fer is drained by the codec prior \
to the termination of the session, the media)-.275 E
(application will typically pause the presentation to re\214ll the b)
100.8 244.6 Q(uf)-.22 E(fer)-.275 E 5.5(.T)-.605 G
(his is an undesirable)-5.5 E(state since it implies a g)100.8 257.6 Q
(ap in the continuity of the media e)-.055 E(xperienced by the user)
-.165 E(.)-.605 E(The dynamics of the post netw)100.8 274.2 Q(ork b)-.11
E(uf)-.22 E(fer introduce a set of requirements to rate control that)
-.275 E -.165(ex)100.8 287.2 S
(ist in parallel with those of congestion control.).165 E
(Real time media applications may)5.5 E
(attempt to manage the occupation of the post netw)100.8 300.2 Q(ork b)
-.11 E(uf)-.22 E(fer by asking the serv)-.275 E(er to either)-.165 E(se\
nd more or less than the transmission rate required by the codec to dec\
ode the media in)100.8 313.2 Q(real time.)100.8 326.2 Q(Although this d\
ynamic aspect of real time media applications' rate control)5.5 E -.11
(fa)5.5 G(lls).11 E(outside of the purvie)100.8 339.2 Q 2.75(wo)-.275 G
2.75(fD)-2.75 G(CCP)-2.75 E 2.75(,i)-1.221 G 2.75(td)-2.75 G(oes ha)
-2.75 E .33 -.165(ve i)-.22 H(mplications on DCCPs congestion control)
.165 E(processing.)100.8 352.2 Q(In DCCP congestion control processing \
is particular to the CCID selected by the user of a)100.8 368.8 Q(gi)
100.8 381.8 Q -.165(ve)-.275 G 2.75(nD).165 G(CCP)-2.75 E 5.5(.I)-1.221
G 2.75(na)-5.5 G .33 -.165(ny c)-2.75 H(ase an implementation may ha)
.165 E .33 -.165(ve t)-.22 H 2.75(oc).165 G(onsider ho)-2.75 E 2.75(wa)
-.275 G 2.75(na)-2.75 G(pplication')-2.75 E(s)-.605 E(rate control may \
interact with the speci\214ed congestion control algorithms.)100.8 394.8
Q(In certain cases)5.5 E
(it may be appropriate for the congestion control scheme to re)100.8
407.8 Q -.055(ga)-.165 G(rd application cues in the).055 E(same w)100.8
420.8 Q(ay as it w)-.11 E(ould congestion cues from the netw)-.11 E
(ork. This may be achie)-.11 E -.165(ve)-.275 G 2.75(dt).165 G
(hrough the)-2.75 E(use of DCCP')100.8 433.8 Q 2.75(ss)-.605 G(lo)-2.75
E 2.75(wr)-.275 G(ecei)-2.75 E -.165(ve)-.275 G 2.75(rn).165 G
(oti\214cation.)-2.75 E 2.75([DCCP] articulates)100.8 450.4 R 2.75(as)
2.75 G(peci\214c interpretation of Slo)-2.75 E 2.75(wR)-.275 G(ecei)
-2.75 E -.165(ve)-.275 G 2.75(ro).165 G(ptions, that DCCP will not)-2.75
E(increase the sending rate for one R)100.8 463.4 Q(TT)-.66 E 5.5(.A)
-.814 G 2.75(na)-5.5 G(pplication, ho)-2.75 E(we)-.275 E -.165(ve)-.275
G .88 -.44(r, m).165 H(ay need to alter its).44 E(beha)100.8 476.4 Q
(vior to respond to Slo)-.22 E 2.75(wR)-.275 G(ecei)-2.75 E -.165(ve)
-.275 G 2.75(rr).165 G(eports in a w)-2.75 E
(ay that is independent from DCCP')-.11 E(s)-.605 E(response. As such, \
it may be useful for an API to specify to the application that a Slo)
100.8 489.4 Q(w)-.275 E(Recei)100.8 502.4 Q -.165(ve)-.275 G 2.75(rs)
.165 G(ignal has been recei)-2.75 E -.165(ve)-.275 G 2.75(d. In).165 F
(this w)2.75 E(ay the application can more tightly inte)-.11 E
(grate its)-.165 E<8d6f>100.8 515.4 Q 2.75(wc)-.275 G
(ontrol requirements with the congestion control processing of DCCP)
-2.75 E 2.75(,a)-1.221 G -.22(vo)-2.97 G(iding).22 E(redundant w)100.8
528.4 Q(ork and unintended side ef)-.11 E
(fects of interactions between application and)-.275 E
(transport layer \215o)100.8 541.4 Q 2.75(wc)-.275 G(ontrol.)-2.75 E F1
2.75(2.1.2. Decode)72 567.4 R(Costs and Media Adaptation)2.75 E F0(TBD)
100.8 584 Q F1 2.75(2.1.3. Selecti)72 610 R .22 -.11(ve T)-.11 H
(ransmission and Retransmission)-.704 E F0
(Real time media applications ha)100.8 626.6 Q .33 -.165(ve s)-.22 H
(peci\214c deli).165 E -.165(ve)-.275 G(ry latenc).165 E 2.75(yr)-.165 G
2.75(equirements. A)-2.75 F(media pack)2.75 E(et)-.11 E(must arri)100.8
639.6 Q .33 -.165(ve a)-.275 H 2.75(tt).165 G(he the recei)-2.75 E -.165
(ve)-.275 G 2.75(rw).165 G
(ithin a certain period of time in order for the the pack)-2.75 E(et to)
-.11 E(ha)100.8 652.6 Q .33 -.165(ve r)-.22 H(ele).165 E -.275(va)-.275
G(nce in the decoded media stream.).275 E
(This requirement has an impact both on)5.5 E(transmission polic)100.8
665.6 Q 2.75(ya)-.165 G(nd on retransmission polic)-2.75 E -.715(y.)
-.165 G(DCCP')100.8 682.2 Q 2.75(su)-.605 G(nreliable data \215o)-2.75 E
(ws, which defer implementation of ARQ to the application,)-.275 E(pro)
100.8 695.2 Q(vide a clear adv)-.165 E(antage o)-.275 E -.165(ve)-.165 G
2.75(rT).165 G(CP')-2.75 E 2.75(sr)-.605 G
(equirement that all data be presented to the)-2.75 E
(application in order and without loss.)100.8 708.2 Q
(By deferring retransmission to the application, the)5.5 E(application \
can enforce retransmission policies that suit its presentation requirem\
ents.)100.8 721.2 Q(A)5.5 E 284.919(Lanphear Section)72 769 R 2.75
(2.1.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(media application may not w)
100.8 85 Q(ant to pause the time line while a)-.11 E -.11(wa)-.165 G
(iting the ful\214llment of a).11 E(retransmission request.)100.8 98 Q
(Lik)5.5 E -.275(ew)-.11 G(ise, the utility of retransmitting a gi).275
E -.165(ve)-.275 G 2.75(np).165 G(ack)-2.75 E(et as a function)-.11 E
(of the coding scheme may not be equal to that of retransmitting an)
100.8 111 Q 2.75(yo)-.165 G(ther pack)-2.75 E(et in the)-.11 E 2.75
(stream. This)100.8 124 R(problem is compounded by the f)2.75 E
(act that the frequenc)-.11 E 2.75(yo)-.165 G 2.75(fr)-2.75 G
(etransmitted)-2.75 E(pack)100.8 137 Q(ets may impact the a)-.11 E -.275
(va)-.22 G(ilable throughput for more current or rele).275 E -.275(va)
-.275 G(nt data.).275 E
(DCCP has information about the loss and transmission latenc)100.8 153.6
Q 2.75(yt)-.165 G(hat may af)-2.75 E(fect an)-.275 E(application')100.8
166.6 Q 2.75(sa)-.605 G(bility to mak)-2.75 E 2.75(ead)-.11 G
(ecision about selecti)-2.75 E .33 -.165(ve r)-.275 H
(etransmission requests.).165 E(Pro)5.5 E(viding)-.165 E
(this information to an application in an ele)100.8 179.6 Q -.055(ga)
-.165 G(nt and suf).055 E(\214ciently \215e)-.275 E(xible w)-.165 E
(ay is a challenge)-.11 E(for the API design.)100.8 192.6 Q -.165(Fo)5.5
G 2.75(rc).165 G(ertain API paradigms it may not be ef)-2.75 E
(\214cient to represent to the)-.275 E
(application layer the identity of pack)100.8 205.6 Q
(ets that are lost. In such cases informing an application)-.11 E(of wh)
100.8 218.6 Q 2.75(yp)-.055 G(ack)-2.75 E
(ets are lost and the opportunity for successful retransmission o)-.11 E
-.165(ve)-.165 G 2.75(rag).165 G -2.365 -.275(iv e)-2.75 H(n).275 E
(windo)100.8 231.6 Q 2.75(wo)-.275 G 2.75(ft)-2.75 G
(ime may be a helpful alternati)-2.75 E .33 -.165(ve t)-.275 H 2.75(op)
.165 G(er pack)-2.75 E(et loss data.)-.11 E(Some media applications may\
wish to set transmission policies based on the lik)100.8 248.2 Q
(elihood that)-.11 E 2.75(ap)100.8 261.2 S(ack)-2.75 E(et will be recei)
-.11 E -.165(ve)-.275 G 2.75(do).165 G 2.75(nt)-2.75 G 2.75
(ime. Although)-2.75 F(an application may be a)2.75 E -.11(wa)-.165 G
(re that the current).11 E(transmission rate is suf)100.8 274.2 Q
(\214cient for the codec to decode the media stream continuously)-.275 E
2.75(,i)-.715 G(t)-2.75 E(may not be a)100.8 287.2 Q -.11(wa)-.165 G
(re that the dynamics of the send and recei).11 E .33 -.165(ve b)-.275 H
(uf)-.055 E(fers in the DCCP are)-.275 E(inducing a latenc)100.8 300.2 Q
2.75(yt)-.165 G(hat pre)-2.75 E -.165(ve)-.275 G(nts the timely deli)
.165 E -.165(ve)-.275 G(ry of data.).165 E(This issue becomes a)5.5 E
(particular problem during the synchronization of tw)100.8 313.2 Q 2.75
(od)-.11 G(istinct streams at the client.)-2.75 E(It will)5.5 E
(therefore be useful for an application to ha)100.8 326.2 Q .33 -.165
(ve i)-.22 H(nformation about the delay induced by send).165 E
(and recei)100.8 339.2 Q .33 -.165(ve b)-.275 H(uf)-.055 E(fers.)-.275 E
(Presentation of delay information from DCCP to the application should \
be achie)100.8 355.8 Q -.165(ve)-.275 G(d).165 E
(through a representation of a compound of tw)100.8 368.8 Q 2.75(om)-.11
G(etrics, the estimated R)-2.75 E(TT and the)-.66 E(estimated b)100.8
381.8 Q(uf)-.22 E(fer depth.)-.275 E(Although the estimated R)5.5 E
(TT is not necessarily representati)-.66 E .33 -.165(ve o)-.275 H 2.75
(ft).165 G(he)-2.75 E(forw)100.8 394.8 Q(ard propag)-.11 E(ation delay)
-.055 E 2.75(,i)-.715 G 2.75(td)-2.75 G(oes pro)-2.75 E
(vide an indication of the e)-.165 E(xtent of delay induced by)-.165 E
(the netw)100.8 407.8 Q 2.75(ork. The)-.11 F(number of b)2.75 E(uf)-.22
E(fers in the send queue may also be used by the application)-.275 E(to\
determine the amount of delay the sending DCCP may add to the propag)
100.8 420.8 Q(ation of the)-.055 E(transmission of a gi)100.8 433.8 Q
-.165(ve)-.275 G 2.75(nd).165 G 2.75(atagram. Pro)-2.75 F
(viding such metrics to the application is a matter of)-.165 E
(maintaining these metrics, and pro)100.8 446.8 Q
(viding them upon application request.)-.165 E/F1 11/Times-Bold@0 SF
2.75(2.1.4. Latency)72 472.8 R(Requir)2.75 E(ements)-.198 E F0 -.44(Wi)
100.8 489.4 S(thin the domain of real time media applications e).44 E
(xists a subset of broadcast applications)-.165 E(which ha)100.8 502.4 Q
.33 -.165(ve a v)-.22 H(arying latenc)-.11 E 2.75(yr)-.165 G 2.75
(equirements. In)-2.75 F(instances, it may be permissible to ha)2.75 E
-.165(ve)-.22 G(arbitrary latenc)100.8 515.4 Q 2.75(yb)-.165 G(etween t\
he real time encoding source and the recipients of that source.)-2.75 E
(Such cases instances include broadcast media scenarios in which there \
is no reference point)100.8 528.4 Q(ag)100.8 541.4 Q
(ainst which to ascertain the e)-.055 E(xtent to which the recei)-.165 E
-.165(ve)-.275 G 2.75(dm).165 G(edia is synchronized with w)-2.75 E(all)
-.11 E(clock time.)100.8 554.4 Q(Lik)5.5 E -.275(ew)-.11 G
(ise, there are instances in which such synchronization is absolutely)
.275 E(essential to the success of the application.)100.8 567.4 Q -.165
(Fo)5.5 G 2.75(re).165 G(xample, broadcast sessions that are used)-2.915
E(for security purposes where timely human response to e)100.8 580.4 Q
-.165(ve)-.275 G(nts communicated in the).165 E(broadcast is essential.)
100.8 593.4 Q(DCCP congestion control processing and protocol processin\
g should be done in such as)100.8 610 Q -.11(wa)100.8 623 S 2.75(ya).11
G 2.75(st)-2.75 G 2.75(oa)-2.75 G -.11(lwa)-2.75 G(ys minimize propag)
.11 E(ation delay)-.055 E 5.5(.T)-.715 G(he application should be pro)
-5.5 E(vided with a)-.165 E(mechanism to inform an)100.8 636 Q 2.75(yt)
-.165 G(rade of)-2.75 E(fs between propag)-.275 E
(ation delay and DCCP functionality)-.055 E(.)-.715 E(DCCP feature ne)
100.8 649 Q(gotiation, for e)-.165 E
(xample, may cost a delay in the stream while a gi)-.165 E -.165(ve)
-.275 G(n).165 E(feature is agreed upon.)100.8 662 Q
(An implementation of DCCP may w)5.5 E(ant to allo)-.11 E 2.75(wt)-.275
G(he application to)-2.75 E(con\214gure def)100.8 675 Q
(ault responses that can foreshorten feature ne)-.11 E
(gotiation requests.)-.165 E(This will)5.5 E(allo)100.8 688 Q 2.75(wm)
-.275 G(itig)-2.75 E(ation of e)-.055 E -.165(ve)-.275 G
(nts that may otherwise stall the session until feature ne).165 E
(gotiation)-.165 E(completes.)100.8 701 Q 284.919(Lanphear Section)72
769 R 2.75(2.1.4. [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(An API to DCCP may)100.8 85 Q
2.75(,f)-.715 G(or e)-2.75 E(xample, allo)-.165 E 2.75(wt)-.275 G
(he application to specify preferences for)-2.75 E(ne)100.8 98 Q
(gotiable features prior to the initiation of the session.)-.165 E
(This will allo)5.5 E 2.75(wD)-.275 G(CCP to perform)-2.75 E(feature ne)
100.8 111 Q(gotiation as per application preferences without e)-.165 E
(xplicit interaction with the)-.165 E 2.75(application. The)100.8 124 R
(same API may also accommodate the case where the application needs a)
2.75 E(more dynamic presence in the DCCP feature ne)100.8 137 Q
(gotiation process.)-.165 E/F1 11/Times-Bold@0 SF 2.75(2.1.5. R)72 163 R
(TP/R)-.44 E(TCP)-.44 E F0(TBD)100.8 179.6 Q F1 2.75(2.1.6. IP)72 205.6
R -1.012(Te)2.75 G(lephony)1.012 E F0(TBD)100.8 222.2 Q F1 2.75
(2.1.7. V)72 248.2 R(ideo T)-.407 E(eleconfer)-1.012 E(encing)-.198 E F0
(TBD)100.8 264.8 Q F1 2.75(2.1.8. Multi-Play)72 290.8 R(er Game A)-.11 E
(pplications)-.275 E F0(TBD)100.8 307.4 Q F1(2.2.)72 333.4 Q/F2 13
/Times-Bold@0 SF(Cr)5.5 E(oss A)-.234 E(pplication Issues)-.325 E F1
2.75(2.2.1. Loss)72 359.4 R(Signaling)2.75 E F0(Although DCCP does pro)
100.8 376 Q(vide unreliable deli)-.165 E -.165(ve)-.275 G
(ry of data, it does ha).165 E .33 -.165(ve a n)-.22 H(otion of which)
.165 E(datagrams where dropped, and a limited notion of wh)100.8 389 Q
2.75(yt)-.055 G(he)-2.75 E 2.75(yw)-.165 G(ere dropped.)-2.75 E(Such)5.5
E(information is useful to applications to perform ARQ, or tak)100.8 402
Q 2.75(eo)-.11 G(ther adapti)-2.75 E .33 -.165(ve m)-.275 H(easures.)
.165 E(The pro)100.8 415 Q(vision of such information to the applicatio\
n may blur the separation of)-.165 E
(functionality maintained by the respecti)100.8 428 Q .33 -.165(ve c)
-.275 H(ommunication layers.).165 E(As such, an)5.5 E
(implementation that pro)100.8 441 Q(vides e)-.165 E
(xplicit loss information to the application for each datagram)-.165 E
(may be both inef)100.8 454 Q
(\214cient and incongruent with certain API paradigms.)-.275 E F1 2.75
(2.2.2. Dr)72 480 R(op Pr)-.198 E(efer)-.198 E(ence)-.198 E F0
(One of DCCP')100.8 496.6 Q 2.75(ss)-.605 G(trong adv)-2.75 E(antages o)
-.275 E -.165(ve)-.165 G 2.75(rT).165 G(CP is its unreliable deli)-2.75
E -.165(ve)-.275 G(ry of pack).165 E(ets.)-.11 E(Unreliable deli)100.8
509.6 Q -.165(ve)-.275 G(ry allo).165 E
(ws an application to enforce retransmission policies, for e)-.275 E
(xample,)-.165 E(since not all pack)100.8 522.6 Q(ets need to be re)-.11
E -.055(ga)-.165 G(rded with equal rele).055 E -.275(va)-.275 G
(nce as the).275 E 2.75(yi)-.165 G 2.75(na)-2.75 G(re TCP)-2.75 E 5.5
(.T)-1.221 G(his)-5.5 E(paradigm can be e)100.8 535.6 Q
(xtended to scenarios where DCCP must drop pack)-.165 E
(ets when resources)-.11 E(become scarce.)100.8 548.6 Q(In the e)100.8
565.2 Q -.165(ve)-.275 G(nt that DCCP must drop a pack).165 E
(et due to b)-.11 E(uf)-.22 E(fer o)-.275 E -.165(ve)-.165 G(r\215o).165
E 1.43 -.715(w, a d)-.275 H(ecision must be made).715 E
(as to which pack)100.8 578.2 Q(et to drop.)-.11 E
(Some applications, such as real time media applications, may)5.5 E
(place preference on ne)100.8 591.2 Q 2.75(wd)-.275 G(ata v)-2.75 E
(ersus old data within a gi)-.165 E -.165(ve)-.275 G 2.75(nq).165 G 2.75
(ueue. As)-2.75 F(such, a DCCP)2.75 E(implementation may w)100.8 604.2 Q
(ant to pro)-.11 E
(vide the application with the ability to specify a drop)-.165 E
(semantic to follo)100.8 617.2 Q -.715(w.)-.275 G F1 2.75
(2.2.3. Mobility)72 643.2 R F0(Mobile capability in DCCP presents a set\
of problems to applications that transmit a)100.8 659.8 Q
(continuous stream of data.)100.8 672.8 Q
(Such applications include a certain subset of real time media)5.5 E
(applications and g)100.8 685.8 Q(aming applications.)-.055 E(In the e)
5.5 E -.165(ve)-.275 G(nt that a mobile enabled DCCP initiates a).165 E
(mo)100.8 698.8 Q -.165(ve)-.165 G 2.75(,t).165 G
(he transmission of data must stop until the mo)-2.75 E .33 -.165(ve c)
-.165 H(ompletes successfully).165 E 5.5(.T)-.715 G(he API)-5.5 E
(semantics of handling this e)100.8 711.8 Q -.165(ve)-.275 G
(nt may be as simple as responding to write requests with a).165 E -.11
(fa)100.8 724.8 S(ilure code indicating that a mo).11 E .33 -.165(ve e)
-.165 H -.165(ve)-.11 G(nt is occurring.).165 E(It is critical, ho)5.5 E
(we)-.275 E -.165(ve)-.275 G .88 -.44(r, t).165 H(hat the).44 E 284.919
(Lanphear Section)72 769 R 2.75(2.2.3. [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(application be af)100.8 85 Q
(forded an opportunity to mak)-.275 E 2.75(ea)-.11 G 2.75(na)-2.75 G
(dapti)-2.75 E .33 -.165(ve d)-.275 H(ecision in the presence of g).165
E(aps)-.055 E(in service induced by a mo)100.8 98 Q .33 -.165(ve e)-.165
H -.165(ve)-.11 G(nt.).165 E(DCCP speci\214es that a recei)100.8 114.6 Q
(ving DCCP HC may drop all data from a the old IP address/port)-.275 E
(pair in response to a successful mo)100.8 127.6 Q .33 -.165(ve e)-.165
H -.165(ve)-.11 G(nt, or follo).165 E 2.75(wa)-.275 G 2.75(na)-2.75 G
(lternate route of accepting a loss)-2.75 E(windo)100.8 140.6 Q(w')-.275
E 2.75(sw)-.605 G(orth of data.)-2.86 E(The semantics chosen for this e)
5.5 E -.165(ve)-.275 G(nt should be con\214gurable by the).165 E
(application.)100.8 153.6 Q(Since session attrib)100.8 170.2 Q
(utes may ha)-.22 E .33 -.165(ve c)-.22 H(hanged as a result of a Mo)
.165 E .33 -.165(ve e)-.165 H -.165(ve)-.11 G(nt, it may be useful to)
.165 E(inform the application of the successful completion of a mo)100.8
183.2 Q .33 -.165(ve e)-.165 H -.165(ve)-.11 G(nt so it can reset state)
.165 E(contingent upon such attrib)100.8 196.2 Q 2.75(utes. P)-.22 F
(ath MTU is an e)-.165 E(xample of such an attrib)-.165 E(ute that af)
-.22 E(fects)-.275 E(application beha)100.8 209.2 Q(vior)-.22 E 2.75(,a)
-.44 G(nd is susceptible to change as a result of a Mo)-2.75 E .33 -.165
(ve e)-.165 H -.165(ve)-.11 G(nt.).165 E/F1 11/Times-Bold@0 SF 2.75
(2.2.4. Send)72 235.2 R(Option on Option Change W)2.75 E(ith or W)-.198
E(ithout Data)-.198 E F0
([DCCP] indicates that options may be sent either with or without data.)
100.8 251.8 Q(Sending options)5.5 E
(with data may require that the DCCP w)100.8 264.8 Q
(ait to send the option until the application has more)-.11 E
(data to send.)100.8 277.8 Q(This may not be a desired beha)5.5 E
(vior for an application.)-.22 E(Lik)5.5 E -.275(ew)-.11 G(ise and).275
E(application may w)100.8 290.8 Q
(ant to piggyback options onto data for purposes of ef)-.11 E(\214cienc)
-.275 E 1.43 -.715(y. D)-.165 H(CCP).715 E(applications may be af)100.8
303.8 Q(forded the opportunity to inform DCCP that an option change)
-.275 E(request should be sent immediately rather than after some amoun\
t of data has been written)100.8 316.8 Q(to the DCCP)100.8 329.8 Q 5.5
(.T)-1.221 G(his can be achie)-5.5 E -.165(ve)-.275 G 2.75(dt).165 G
(hrough a \215ag sent with the options change request.)-2.75 E F1 2.75
(2.2.5. Pr)72 355.8 R(otocol Inf)-.198 E(ormation Shar)-.275 E
(ed with Ov)-.198 E(erlying Lay)-.11 E(ers)-.11 E F0
(Application layer framing protocols, such a R)100.8 372.4 Q(TP)-.66 E
2.75(,m)-1.221 G(ay represent session information that is)-2.75 E
(redundant with that used by DCCP)100.8 385.4 Q 2.75(.E)-1.221 G
(xamples of such data include sequence numbering)-2.75 E(and latenc)
100.8 398.4 Q 2.75(yc)-.165 G
(alculations. A DCCP implementation may pro)-2.75 E(vide a w)-.165 E
(ay to share information)-.11 E(with the o)100.8 411.4 Q -.165(ve)-.165
G(rlying protocol in an ef).165 E(fort to minimize redundanc)-.275 E
-.715(y.)-.165 G(Such a model, ho)100.8 428 Q(we)-.275 E -.165(ve)-.275
G .88 -.44(r, m).165 H
(ay neither be feasible nor appropriate for certain e).44 E(xisting k)
-.165 E(ernel)-.11 E(API paradigms such as BSD sock)100.8 441 Q 2.75
(ets. In)-.11 F 2.75(ac)2.75 G(lean design, DCCP need not ha)-2.75 E .33
-.165(ve k)-.22 H(no).165 E(wledge of)-.275 E
(the header information added by the o)100.8 454 Q -.165(ve)-.165 G
(rlying protocol.).165 E 2.75(At)5.5 G(rade of)-2.75 E 2.75(fm)-.275 G
(ust be made between)-2.75 E(inducing an impact on e)100.8 467 Q
(xisting APIs, or creating a ne)-.165 E 2.75(wA)-.275 G
(PI with added comple)-2.75 E(xity)-.165 E 2.75(,a)-.715 G(nd)-2.75 E
(coping with the o)100.8 480 Q -.165(ve)-.165 G
(rhead of redundant data.).165 E F1(3.)72 522.6 Q/F2 14/Times-Bold@0 SF
(API and Con\214guration Considerations)5.5 E F0(DCCP semantics and fun\
ctionality must be rendered meaningfully to the application layer)100.8
539.2 Q(through an API.)100.8 552.2 Q
(This section collects the semantical issues of DCCP that ha)5.5 E .33
-.165(ve a)-.22 H 2.75(ni).165 G(mpact)-2.75 E(on an API to DCCP)100.8
565.2 Q(.)-1.221 E F1(3.1.)72 591.2 Q/F3 13/Times-Bold@0 SF
(Con\214guration)5.5 E F0(DCCP')100.8 607.8 Q 2.75<738d>-.605 G -.165
(ex)-2.75 G(ibility has a profound in\215uence on the v).165 E
(ariability of DCCP')-.275 E 2.75(ss)-.605 G(emantics. Those)-2.75 E
(areas in which DCCP')100.8 620.8 Q 2.75(ss)-.605 G(emantics may v)-2.75
E(ary as per the needs of the application are)-.275 E
(represented here as a collection of con\214guration v)100.8 633.8 Q
(ariables which an API designer may tak)-.275 E(e)-.11 E
(into account when e)100.8 646.8 Q(xposing DCCP')-.165 E 2.75(sf)-.605 G
(unctionality)-2.75 E(.)-.715 E(Con\214gurable v)100.8 663.4 Q
(ariables for DCCP f)-.275 E(all into one of tw)-.11 E 2.75(oc)-.11 G
(ate)-2.75 E 2.75(gories. Either)-.165 F(con\214gurable)2.75 E -.275(va)
100.8 676.4 S(riable may be for an option pro).275 E
(vided in [DCCP] , or an option may be e)-.165 E(xposed pro)-.165 E
(vided)-.165 E(by the semantics of a particular implementation.)100.8
689.4 Q 293.169(Lanphear Section)72 769 R 2.75(3.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/F1 11/Times-Bold@0 SF 2.75
(3.1.1. Con\214gurable)72 85 R -1.012(Va)2.75 G
(riables Speci\214c to DCCP)1.012 E F0(The speci\214c conte)100.8 101.6
Q(xt and precise meaning of the con\214gurable options is found in [DCC\
P].)-.165 E(In some cases [DCCP] pro)100.8 114.6 Q(vides for a def)-.165
E(ault con\214guration, in others no def)-.11 E(ault is)-.11 E 2.75
(speci\214ed. Those)100.8 127.6 R(options with a speci\214ed def)2.75 E
(ault are indicated with a *. Otherwise the)-.11 E(def)100.8 140.6 Q
(ault v)-.11 E(alue indicated is a suggested v)-.275 E(alue.)-.275 E
60.5(Feature Def)136.8 163.2 R(ault V)-.11 E(alue)-1.221 E 60.5
(------- -------------)136.8 176.2 R 82.5(CCID 2)136.8 189.2 R(*)2.75 E
(Connection Nonce)136.8 202.2 Q 2.75(1*)52.25 G(ECN Capable)136.8 215.2
Q 2.75(1*)66 G(Mobility Capable)136.8 228.2 Q 2.75(0*)52.25 G 82.5
(PMTU 0)136.8 241.2 R(Data Discard)136.8 254.2 Q(0)63.25 E(Init Cookie)
136.8 267.2 Q(0)66 E(Loss W)136.8 280.2 Q(indo)-.44 E 66(w1)-.275 G
(000 *)-66 E(Ack Ratio)136.8 293.2 Q 2.75(2*)71.5 G(Use Ack V)136.8
306.2 Q 52.25(ectors 0)-1.221 F(*)2.75 E(Service Name)136.8 319.2 Q(n/a)
63.25 E F1 2.75(3.1.2. Con\214gurable)72 351.2 R -1.012(Va)2.75 G
(riables Speci\214c to an API Implementation)1.012 E F0
(The con\214gurable options collected here represent le)100.8 367.8 Q
-.165(ve)-.275 G(ls of \215e).165 E(xibility that are pro)-.165 E
(vided for)-.165 E(in [DCCP])100.8 380.8 Q -.22(bu)5.5 G 2.75(ta).22 G
(re not e)-2.75 E(xplicitly articulated.)-.165 E(An API to DCCP may e)
5.5 E(xpose these options)-.165 E(in cases where an implementation w)
100.8 393.8 Q(ants to allo)-.11 E 2.75(wd)-.275 G(ef)-2.75 E
(ault semantics to be modi\214ed to \214t the)-.11 E
(needs of an application.)100.8 406.8 Q F1 2.75(3.1.2.1. F)72 432.8 R
(eatur)-.275 E 2.75(eN)-.198 G(egotiation Limit)-2.75 E F0
(Section 5.3 of [DCCP] discusses Feature Ne)100.8 449.4 Q
(gotiation. It is possible for DCCP')-.165 E 2.75(sF)-.605 G(eature)
-2.75 E(Ne)100.8 462.4 Q(gotiation to enter an ambiguous state if a gi)
-.165 E -.165(ve)-.275 G 2.75(ne).165 G(nd point continues to ne)-2.75 E
(gotiate for a)-.165 E
(speci\214c option which the remote end point does not prefer)100.8
475.4 Q 5.5(.I)-.605 G 2.75(nt)-5.5 G(his case, it may be useful)-2.75 E
(for the application to specify the number of f)100.8 488.4 Q
(ailed change requests before the connection is)-.11 E 2.75
(aborted. The)100.8 501.4 R(def)2.75 E(ault v)-.11 E(alue should be 3.)
-.275 E F1 2.75(3.1.2.2. Pr)72 527.4 R(eferr)-.198 E(ed F)-.198 E(eatur)
-.275 E 2.75(eP)-.198 G(riorities, Exclusions and Inclusions)-2.75 E F0
(An application may w)100.8 544 Q
(ant to specify a set of preferred options with which to ne)-.11 E
(gotiate)-.165 E(ag)100.8 557 Q(ainst a remote end point.)-.055 E
(The utility of doing so is to allo)5.5 E 2.75(waD)-.275 G
(CCP to try a number of)-2.75 E
(application speci\214ed options before f)100.8 570 Q
(ailing a connection, or feature change attempt.)-.11 E(This)5.5 E
(semantics mitig)100.8 583 Q(ates the cost of forcing DCCP to ne)-.055 E
(gotiate through the application layer for)-.165 E(each f)100.8 596 Q
(ailed option change.)-.11 E(An implementation of DCCP may also pro)
100.8 612.6 Q(vide the application with the ability to indicate)-.165 E
(certain features that it prefers to use or nor to use.)100.8 625.6 Q
(The inclusion or e)5.5 E(xclusion of ne)-.165 E(gotiable)-.165 E
(features for a DCCP allo)100.8 638.6 Q 2.75(wt)-.275 G
(hat DCCP to indicate application preferences during feature)-2.75 E(ne)
100.8 651.6 Q(gotiation)-.165 E F1 2.75(3.1.2.3. Loss)72 677.6 R -.198
(Wi)2.75 G(ndo).198 E 2.75(wR)-.11 G(atio)-2.75 E F0(The Loss W)100.8
694.2 Q(indo)-.44 E 2.75(wf)-.275 G
(eature, described in section 5.9 of [DCCP])-2.75 E 2.75(,d)5.5 G
(etermines the windo)-2.75 E(w)-.275 E -.165(ove)100.8 707.2 S 2.75(rw)
.165 G(hich a DCCP endpoint re)-2.75 E -.055(ga)-.165 G(rds recei).055 E
-.165(ve)-.275 G 2.75(dd).165 G(atagrams as v)-2.75 E 2.75(alid. Since)
-.275 F(the recei)2.75 E -.165(ve)-.275 G 2.75(rm).165 G(ay)-2.75 E
(position the loss windo)100.8 720.2 Q 2.75(wa)-.275 G
(round the most recent sequence number seen, this v)-2.75 E(ariable)
-.275 E 276.669(Lanphear Section)72 769 R 2.75(3.1.2.3. [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(allo)100.8 85 Q
(ws the application to set the ratio of the loss windo)-.275 E 2.75(ws)
-.275 G(pace before the current sequence)-2.75 E
(number to the loss windo)100.8 98 Q 2.75(ws)-.275 G
(pace after the last sequence number)-2.75 E 5.5(.T)-.605 G
(he utility of this to an)-5.5 E(application may be based on the needs \
of the application for timely data.)100.8 111 Q(That is)5.5 E
(application that is too f)100.8 124 Q(ar be)-.11 E
(yond the current sequence number may not be of an)-.165 E 2.75(yu)-.165
G(se to the)-2.75 E(application and can safely be dropped. The def)100.8
137 Q(ault is 0, which implies that DCCP should)-.11 E
(select the ratio and/or adjust it dynamically)100.8 150 Q(.)-.715 E/F1
11/Times-Bold@0 SF 2.75(3.1.2.4. Slo)72 176 R 2.75(wR)-.11 G(ecei)-2.75
E -.11(ve)-.11 G 2.75(rN).11 G(oti\214cation)-2.75 E F0(Slo)100.8 192.6
Q 2.75(wR)-.275 G(ecei)-2.75 E -.165(ve)-.275 G 2.75(ri).165 G 2.75(sd)
-2.75 G(escribed in section 7.6 of [DCCP] A sending application may w)
-2.75 E(ant to)-.11 E(kno)100.8 205.6 Q 2.75(wi)-.275 G 2.75(faD)-2.75 G
(CCP HC is block)-2.75 E(ed because of congestion or because the recei)
-.11 E -.165(ve)-.275 G 2.75(ri).165 G 2.75(ss)-2.75 G(lo)-2.75 E 4.18
-.715(w. T)-.275 H(his).715 E
(is because the sending application may wish to tak)100.8 218.6 Q 2.75
(ea)-.11 G(dapti)-2.75 E .33 -.165(ve m)-.275 H(easures that are more)
.165 E(appropriate to a slo)100.8 231.6 Q 2.75(wr)-.275 G(ecei)-2.75 E
-.165(ve)-.275 G 2.75(rt).165 G
(han decreasing the sending rate. The def)-2.75 E(ault v)-.11 E
(alue for this)-.275 E(option is 0.)100.8 244.6 Q F1 2.75(3.1.2.5. Slo)
72 270.6 R 2.75(wR)-.11 G(ecei)-2.75 E -.11(ve)-.11 G 2.75(rO).11 G
(ption)-2.75 E F0(By setting the slo)100.8 287.2 Q 2.75(wr)-.275 G(ecei)
-2.75 E -.165(ve)-.275 G 2.75(ro).165 G(ption, the application allo)
-2.75 E(ws the underlying DCCP to send)-.275 E(Slo)100.8 300.2 Q 2.75
(wR)-.275 G(ecei)-2.75 E -.165(ve)-.275 G 2.75(ro).165 G
(ptions to the sending DCCP)-2.75 E 5.5(.T)-1.221 G(he def)-5.5 E
(ault v)-.11 E(alue for this option is 0.)-.275 E F1 2.75
(3.1.2.6. Buffer)72 326.2 R(Close Dr)2.75 E(op Noti\214cation)-.198 E F0
(This option indicates that a sending application w)100.8 342.8 Q
(ants to be noti\214ed in the e)-.11 E -.165(ve)-.275 G(nt that).165 E
(pack)100.8 355.8 Q(ets are being dropped at the remote end point, and \
therefore stop sending data to the)-.11 E
(underlying DCCP for transmission. The def)100.8 368.8 Q(ault v)-.11 E
(alue for this option 1.)-.275 E F1 2.75(3.1.2.7. Dr)72 394.8 R(op Pr)
-.198 E(efer)-.198 E(ence)-.198 E F0
(An application may wish to specify the w)100.8 411.4 Q
(ay in which pack)-.11 E(ets are dropped from a queue.)-.11 E -.165(Fo)
100.8 424.4 S 2.75(re).165 G(xample, certain real time applications ha)
-2.915 E .33 -.165(ve a p)-.22 H(reference for the most recent data o)
.165 E -.165(ve)-.165 G(r).165 E(the oldest data in the queue.)100.8
437.4 Q(This option may be articulated as a boolean which indicates)5.5
E(that the DCCP should drop-head \(1\) or drop-tail \(0\).)100.8 450.4 Q
(The def)5.5 E(ault should be 1.)-.11 E F1 2.75(3.1.2.8. Mobile)72 476.4
R(Recei)2.75 E -.11(ve)-.11 G 2.75(rD).11 G -.198(ro)-2.75 G 2.75(pB)
.198 G(eha)-2.75 E(vior Pr)-.275 E(efer)-.198 E(ence)-.198 E F0
(Section 9.4 of [DCCP])100.8 493 Q
(discusses indicates that a DCCP recei)5.5 E -.165(ve)-.275 G 2.75(rm)
.165 G(ay drop all data)-2.75 E(recei)100.8 506 Q -.165(ve)-.275 G 2.75
(df).165 G(rom the old endpoint once a DCCP-Mo)-2.75 E .33 -.165(ve h)
-.165 H(as completed successfully).165 E 2.75(,o)-.715 G 2.75(ri)-2.75 G
2.75(tm)-2.75 G(ay)-2.75 E(accept one Loss W)100.8 519 Q(indo)-.44 E(w')
-.275 E 2.75(sw)-.605 G(orth of data.)-2.86 E
(This option lets the application determine the)5.5 E(beha)100.8 532 Q
(vior in this case.)-.22 E 2.75(Av)5.5 G
(alue of 0 indicates that the recei)-3.025 E -.165(ve)-.275 G 2.75(rs)
.165 G(hould drop all data from the)-2.75 E(old endpoint after a mo)
100.8 545 Q -.165(ve)-.165 G 2.75(,a).165 G(nd a v)-2.75 E
(alue of 1 indicates that the recei)-.275 E -.165(ve)-.275 G 2.75(rs)
.165 G(hould accept one)-2.75 E(loss windo)100.8 558 Q(w')-.275 E 2.75
(sw)-.605 G(orth of data from the remote endpoint after the mo)-2.86 E
-.165(ve)-.165 G(.).165 E F1 2.75(3.1.2.9. Use)72 584 R(Ser)2.75 E
(vice Name)-.11 E F0
(The Service Name is discussed in section 4.5 of [DCCP].)100.8 600.6 Q
(If this option is set to 1 then)5.5 E(DCCP must force e)100.8 613.6 Q
-.165(ve)-.275 G(ry sock).165 E(et to specify a Service Name. The def)
-.11 E(ault v)-.11 E(alue should be 1.)-.275 E F1 2.75
(3.1.2.10. Minimal)72 639.6 R(Buffering Option)2.75 E F0
(An implementation may wish to allo)100.8 656.2 Q 2.75(wa)-.275 G
(pplications to specify the amount of b)-2.75 E(uf)-.22 E(fering that)
-.275 E(the DCCP will do on the sender side.)100.8 669.2 Q(So, for e)5.5
E(xample, a sending DCCP may support a)-.165 E
(semantic such that the DCCP does not mak)100.8 682.2 Q 2.75(ei)-.11 G
(tself a)-2.75 E -.275(va)-.22 G(ilable for write requests unless the)
.275 E(current CCID indicates that a write request w)100.8 695.2 Q
(ould result in an immediate transmission.)-.11 E 265.669
(Lanphear Section)72 769 R 2.75(3.1.2.10. [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/F1 11/Times-Bold@0 SF 2.75
(3.1.2.11. PMTU)72 85 R(Change Beha)2.75 E(vior)-.275 E F0
(Section 10 of [DCCP] suggests that if the MTU has changed to e)100.8
101.6 Q(xceed the sizes of the)-.165 E(pending datagrams, then those da\
tagrams may either be dropped or transmitted with the DF)100.8 114.6 Q
(bit cleared.)100.8 127.6 Q(This beha)5.5 E
(vior should be con\214gurable by the application.)-.22 E F1(3.2.)72
153.6 Q/F2 13/Times-Bold@0 SF(Connection Establishment and T)5.5 E
(ermination)-1.196 E F1 2.75(3.2.1. Connection)72 179.6 R(Establishment)
2.75 E F0(Due to Feature Ne)100.8 196.2 Q
(gotiation, it is typical that a DCCP connection attempt will not be)
-.165 E(completed immediately)100.8 209.2 Q 5.5(.A)-.715 G 2.75(nA)-5.5
G(PI to DCCP that supports non-blocking method in)-2.75 E -.22(vo)-.44 G
(cations).22 E(should pro)100.8 222.2 Q(vide a mechanism for polling th\
e connection state so an application can)-.165 E
(determine if a connection attempt is in progress, has f)100.8 235.2 Q
(ailed, or has completed.)-.11 E F1 2.75(3.2.2. Data)72 261.2 R
(Piggybacking)2.75 E F0
([DCCP] permits data piggybacking onto connection requests.)100.8 277.8
Q(An API need not support)5.5 E 2.75(this. An)100.8 290.8 R
(API implementation may)2.75 E 2.75(,h)-.715 G -.275(ow)-2.75 G -2.365
-.275(ev e).275 H .88 -.44(r, p).275 H(ro).44 E
(vide queuing of transmitted data in the)-.165 E
(DCCP prior to connection establishment to mitig)100.8 303.8 Q
(ate application latenc)-.055 E 2.75(yb)-.165 G(etween)-2.75 E
(connection realization and the initiation of data \215o)100.8 316.8 Q
1.43 -.715(w. I)-.275 H(mplementation of data piggybacking).715 E
(on a connection request may ha)100.8 329.8 Q .33 -.165(ve a)-.22 H 2.75
(ni).165 G(mpact on the non-blocking interf)-2.75 E(ace semantics of a)
-.11 E(DCCP when it a connection is in progress. Write requests on a co\
nnecting DCCP sock)100.8 342.8 Q(et)-.11 E(may not, for e)100.8 355.8 Q
(xample, block until the sending DCCPs b)-.165 E(uf)-.22 E
(fer has \214lled.)-.275 E F1 2.75(3.2.3. Connection)72 381.8 R -1.012
(Te)2.75 G(rmination)1.012 E F0 2.75(AD)100.8 398.4 S
(CCP must close both of its half connections as a pair)-2.75 E 5.5(.I)
-.605 G 2.75(nl)-5.5 G(ieu of closing a single DCCP)-2.75 E(half connec\
tion, an application may inform the DCCP that it no longer wishes to re\
cei)100.8 411.4 Q -.165(ve)-.275 G 2.75(data. At)100.8 424.4 R
(which point the application should be allo)2.75 E(wed to retrie)-.275 E
.33 -.165(ve a)-.275 H(ll data in the DCCP').165 E(s)-.605 E(recei)100.8
437.4 Q .33 -.165(ve b)-.275 H(uf)-.055 E(fer)-.275 E 5.5(.T)-.605 G
(he DCCP should then drop all incoming data for that half connection,)
-5.5 E(informing the sending end point of the b)100.8 450.4 Q(uf)-.22 E
(fer closed drop.)-.275 E(If a sending end point recei)100.8 467 Q -.165
(ve)-.275 G 2.75(sn).165 G(oti\214cation of a recei)-2.75 E .33 -.165
(ve b)-.275 H(uf)-.055 E(fer drop, it should notify the)-.275 E(applica\
tion via some asynchronous noti\214cation or upon a subsequent write re\
quest.)100.8 480 Q(This)5.5 E -.11(wa)100.8 493 S 2.75(yt).11 G
(he sending application can be made a)-2.75 E -.11(wa)-.165 G
(re that the recei).11 E(ving half connection can no)-.275 E
(longer accept data.)100.8 506 Q 2.75(Ac)100.8 522.6 S(losed recei)-2.75
E .33 -.165(ve b)-.275 H(uf)-.055 E(fer should be re)-.275 E -.055(ga)
-.165 G(rded as a terminal state for that half connection prior).055 E
(to closing the full DCCP connection.)100.8 535.6 Q
(That is, the half connection may not return from a)5.5 E -.22(bu)100.8
548.6 S -.275(ff).22 G(er closed state to a state in which it can recei)
.275 E .33 -.165(ve m)-.275 H(ore data without opening a ne).165 E(w)
-.275 E(DCCP session.)100.8 561.6 Q F1(3.3.)72 587.6 Q F2 -.325(Fe)5.5 G
(atur).325 E 3.25(eN)-.234 G(egotiation)-3.25 E F1 2.75
(3.3.1. Negotiable)72 613.6 R -.275(Fe)2.75 G(atur).275 E(es)-.198 E F0
(The follo)100.8 630.2 Q(wing features require ne)-.275 E
(gotiation with the remote DCCP:)-.165 E 7.15<8343>100.8 650.4 S
(ongestion Control \(CC\))-7.15 E 7.15<8345>100.8 667 S(CN Capable)-7.15
E 7.15<8355>100.8 683.6 S(se Ack V)-7.15 E(ector)-1.221 E 7.15<834d>
100.8 700.2 S(obility Capable)-7.15 E 279.419(Lanphear Section)72 769 R
2.75(3.3.1. [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 7.15<8343>100.8 85 S
(ertain CCID-Speci\214c Features)-7.15 E/F1 11/Times-Bold@0 SF 2.75
(3.3.2. Impact)72 111 R(on Con\214guration Interfaces)2.75 E F0 2.75(An)
100.8 127.6 S(on-blocking API may need to implement a mechanism to dete\
rmine the state of an)-2.75 E(options change request on a DCCP in the c\
ase that the options change request can not be)100.8 140.6 Q
(handled immediately)100.8 153.6 Q 5.5(.T)-.715 G
(he cases in which an options change request may be handled)-5.5 E
(immediately are:)100.8 166.6 Q 13.224(\(1\) The)100.8 183.2 R
(DCCP is not in connected, and therefore will not ne)2.75 E
(gotiate a feature change)-.165 E(until a connection is initiated.)129.6
196.2 Q 13.224(\(2\) The)100.8 212.8 R(requested feature is non ne)2.75
E(gotiable.)-.165 E(An implementation may chose to pro)100.8 229.4 Q
(vide non-blocking semantics that parallel the)-.165 E(semantics for a \
connect attempt. A request to perform an operation on a DCCP that is in\
an)100.8 242.4 Q(unkno)100.8 255.4 Q
(wn state due to a pending feature ne)-.275 E
(gotiation may result in the return of an error code)-.165 E
(that indicates a feature change is in progress. The API may then pro)
100.8 268.4 Q(vide a mechanism for)-.165 E(asynchronous noti\214cation \
or polling of the status of the pending or completed feature)100.8 281.4
Q(change.)100.8 294.4 Q F1 2.75(3.3.3. F)72 320.4 R(eatur)-.275 E 2.75
(eo)-.198 G(ptions with data)-2.75 E F0(DCCP does allo)100.8 337 Q 2.75
(wo)-.275 G(ption change requests to contain application data that is s\
cheduled to be)-2.75 E 2.75(transmitted. An)100.8 350 R
(implementation of DCCP may present a feature change mode where the)2.75
E(feature change does not be)100.8 363 Q
(gin until there is user data to transmit along with the feature)-.165 E
(change request.)100.8 376 Q(The ca)5.5 E -.165(ve)-.22 G
(at for such a feature is that feature changes may suf).165 E(fer from)
-.275 E(undue latenc)100.8 389 Q 2.75(yi)-.165 G 2.75(ft)-2.75 G
(he time between application write requests is long.)-2.75 E F1 2.75
(3.3.4. Impact)72 415 R(of featur)2.75 E 2.75(en)-.198 G
(egotiation on I/O semantics)-2.75 E F0
(The report of the success of a feature ne)100.8 431.6 Q
(gotiation may depend on more than just the)-.165 E
(acceptable completion of the ne)100.8 444.6 Q(gotiation e)-.165 E 2.75
(xchange. Outstanding)-.165 F(data in the DCCP may)2.75 E
(need to be processed under the pre)100.8 457.6 Q
(vious feature parameters before ne)-.275 E 2.75(wd)-.275 G(ata may be)
-2.75 E
(accepted from the application. This semantic is particularly rele)100.8
470.6 Q -.275(va)-.275 G(nt for CCID changes, in).275 E(which the appli\
cation may reasonably assume that all data sent prior to a CCID change \
will)100.8 483.6 Q(be sent according to the prior CCID.)100.8 496.6 Q
(This issue will ultimately the determine the timing of)5.5 E
(reporting the completion of a feature ne)100.8 509.6 Q
(gotiation to the application.)-.165 E F1(3.4.)72 535.6 Q/F2 13
/Times-Bold@0 SF(Err)5.5 E(or Codes)-.234 E F0
(An API to DCCP may wish to e)100.8 552.2 Q
(xpose error codes that represent the follo)-.165 E(wing conditions:)
-.275 E(Connection In Progress)100.8 568.8 Q 7.15<8346>100.8 585.4 S
(eature Change In Progress)-7.15 E 7.15<8346>100.8 602 S
(eature Change T)-7.15 E(imed Out)-.385 E 7.15<8346>100.8 618.6 S
(eature Change f)-7.15 E(ailed due to lack of agreement)-.11 E 7.15
<8352>100.8 635.2 S(emote Buf)-7.15 E(fer Closed)-.275 E 7.15<8352>100.8
651.8 S(ecei)-7.15 E .33 -.165(ve B)-.275 H(uf).165 E(fer Empty)-.275 E
7.15<834d>100.8 668.4 S(obile Location Change F)-7.15 E(ailed)-.165 E
7.15<8343>100.8 685 S(onnection Proof F)-7.15 E(ailed)-.165 E 7.15<8344>
100.8 701.6 S(atagram T)-7.15 E(oo Lar)-.88 E(ge for MTU)-.198 E 287.669
(Lanphear Section)72 769 R 2.75(3.4. [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 7.15<8353>100.8 85 S(lo)-7.15
E 2.75(wR)-.275 G(ecei)-2.75 E -.165(ve)-.275 G(r).165 E/F1 11
/Times-Bold@0 SF(3.5.)72 111 Q/F2 13/Times-Bold@0 SF(Statistics)5.5 E F0
2.75(AD)100.8 127.6 S(CCP implementation may maintain the follo)-2.75 E
(wing statistics for e)-.275 E(xposure for use by the)-.165 E
(application:)100.8 140.6 Q 7.15<8350>100.8 160.8 S(MTU)-7.15 E 7.15
<8345>100.8 177.4 S(stimated R)-7.15 E(TT)-.66 E 7.15<8345>100.8 194 S
(stimated Buf)-7.15 E(fer Depth)-.275 E 7.15<8345>100.8 210.6 S
(stimated inter arri)-7.15 E -.275(va)-.275 G 2.75(lt).275 G
(ime of datagrams)-2.75 E 7.15<8345>100.8 227.2 S(stimated inter retrie)
-7.15 E -.275(va)-.275 G 2.75(lt).275 G(ime of datagrams)-2.75 E 7.15
<8345>100.8 243.8 S(stimated loss metric)-7.15 E 7.15<8345>100.8 260.4 S
(stimated congestion controlled data rate)-7.15 E 7.15<834f>100.8 277 S
(utstanding un-Ack)-7.15 E(ed data)-.11 E F1(4.)72 303 Q/F3 14
/Times-Bold@0 SF(Implementation Considerations)5.5 E F0
(DCCP implementations will confront a number of common design choices.)
100.8 319.6 Q(This section)5.5 E(identi\214es and outlines those choice\
s along with possible solution paths.)100.8 332.6 Q F1(4.1.)72 358.6 Q
F2(Connection State)5.5 E F0(DCCP pro)100.8 375.2 Q
(vides a mechanism to support common connection semantics, while relie)
-.165 E(ving the)-.275 E(serv)100.8 388.2 Q(er of the need to k)-.165 E
(eep state.)-.11 E(This is achie)5.5 E -.165(ve)-.275 G 2.75(dt).165 G
(hrough an Init Cookie, which the serv)-2.75 E(er)-.165 E(uses to encap\
sulate the original connection request, along with its response.)100.8
401.2 Q(The echo of)5.5 E(this data upon completion of the three w)100.8
414.2 Q(ay hand shak)-.11 E 2.75(ea)-.11 G(llo)-2.75 E(ws the serv)-.275
E(er to establish the)-.165 E(connection with the correct parameters wi\
thout holding state throughout the processing of)100.8 427.2 Q
(the connection.)100.8 440.2 Q(If the serv)100.8 456.8 Q(er wishes to a)
-.165 E -.22(vo)-.22 G
(id holding state during connection processing, then it also must).22 E
(be able to reject data payloads piggyback)100.8 469.8 Q
(ed with a DCCP-Request pack)-.11 E(et. Otherwise the)-.11 E(serv)100.8
482.8 Q(er w)-.165 E(ould ha)-.11 E .33 -.165(ve t)-.22 H 2.75(oa).165 G
(llocate the requisite structures to manage the pending user data until)
-2.75 E(the connection is established. These semantics lea)100.8 495.8 Q
.33 -.165(ve o)-.22 H(pen the issues of the w).165 E(ay in which)-.11 E
(the Init Cookie ought to be implemented, and the w)100.8 508.8 Q
(ay in which a client copes with a data)-.11 E(discard e)100.8 521.8 Q
-.165(ve)-.275 G(nt.).165 E(DCCPs which allo)100.8 538.4 Q 2.75(wt)-.275
G(he application to piggyback data on to connection requests may ha)
-2.75 E -.165(ve)-.22 G(to handle cases where the serv)100.8 551.4 Q
(er discards the piggyback)-.165 E(ed data because it does not w)-.11 E
(ant to)-.11 E(hold state.)100.8 564.4 Q(This scenario may be quite com\
mon, since the stateless connection feature of)5.5 E
(DCCP may be widely implemented and used by applications.)100.8 577.4 Q
(DCCPs may support the)5.5 E(retransmission of data piggyback)100.8
590.4 Q(ed on a DCCP-Request pack)-.11 E(et in a subsequent DCCP-)-.11 E
(Data pack)100.8 603.4 Q(et once the connection is established.)-.11 E
(The concept of such retransmission,)5.5 E(ho)100.8 616.4 Q(we)-.275 E
-.165(ve)-.275 G .88 -.44(r, i).165 H 2.75(sc).44 G
(ontrary to DCCPs design as an unreliable protocol.)-2.75 E 2.75(Am)5.5
G(ore appropriate)-2.75 E(implementation may pro)100.8 629.4 Q(vide a w)
-.165 E(ay to notify the application that a retransmit is required.)-.11
E F1(4.2.)72 655.4 Q F2(Pr)5.5 E -.13(ov)-.234 G
(ision of sequence number).13 E 3.25(,a)-1.196 G
(nd loss data to application)-3.25 E F0(DCCP')100.8 672 Q 2.75(sm)-.605
G(aintenance of a sequence number space and a)-2.75 E -.11(wa)-.165 G
(reness of lost data may lea).11 E -.165(ve)-.22 G
(room for optimizations with protocols that operate at layers abo)100.8
685 Q .33 -.165(ve D)-.165 H(CCP).165 E 5.5(.C)-1.221 G(ertain)-5.5 E
(application layer protocols, for e)100.8 698 Q
(xample, may require an a)-.165 E -.11(wa)-.165 G
(reness of lost data that is).11 E
(congruent with that maintained by DCCP and may desire to share DCCP')
100.8 711 Q 2.75(sr)-.605 G(epresentation)-2.75 E(of this information.)
100.8 724 Q 287.669(Lanphear Section)72 769 R 2.75(4.2. [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(There are, ho)100.8 85 Q(we)
-.275 E -.165(ve)-.275 G .88 -.44(r, c).165 H
(oncerns with this approach.).44 E -.165(Fa)5.5 G(ilure to observ).165 E
2.75(et)-.165 G(he layering of)-2.75 E
(protocols may introduce semantical comple)100.8 98 Q
(xities to the API that could otherwise be)-.165 E -.22(avo)100.8 111 S
(ided. Gi).22 E -.165(ve)-.275 G 2.75(nt).165 G
(hat most DCCP implementations will be in k)-2.75 E
(ernel space, the frequenc)-.11 E(y)-.165 E(with which loss data or seq\
uence number representation must be communicated across the)100.8 124 Q
-.11(ke)100.8 137 S
(rnel/user boundary becomes a reasonable consideration for scalability)
.11 E 5.5(.T)-.715 G(he trade of)-5.5 E 2.75(ff)-.275 G(or)-2.75 E(the \
elimination of redundant maintenance of sequence numbers is therefore n\
ot necessarily)100.8 150 Q 2.75(useful. Application)100.8 163 R
(layer implementations of DCCP may)2.75 E 2.75(,h)-.715 G -.275(ow)-2.75
G -2.365 -.275(ev e).275 H .88 -.44(r, \214).275 H
(nd an approach to the).44 E
(sharing of sequence information to be viable.)100.8 176 Q/F1 11
/Times-Bold@0 SF(4.3.)72 202 Q/F2 13/Times-Bold@0 SF(Pr)5.5 E
(obabilistic V)-.234 E(eri\214cation of Loss Rate using ECN f)-1.3 E
(or TFRC)-.325 E F0(TBD)100.8 218.6 Q F1(4.4.)72 244.6 Q F2
(Supporting A)5.5 E(pplication F)-.325 E(eatur)-.325 E 3.25(eP)-.234 G
-.234(re)-3.25 G(fer).234 E(ence)-.234 E F0 2.75(Af)100.8 261.2 S
(ull featured DCCP implementation may pro)-2.75 E(vide a set of ne)-.165
E(gotiable features to the)-.165 E
(remote DCCP that the application may not wish to present.)100.8 274.2 Q
(In such cases it will be useful)5.5 E(for an DCCP implementation to ma\
intain a table of features permitted by the application as)100.8 287.2 Q
(per the application')100.8 300.2 Q 2.75(sc)-.605 G
(on\214guration input.)-2.75 E
(This table should then be consulted in response)5.5 E(to DCCP feature \
change requests when a feature preference must be indicated.)100.8 313.2
Q F1(4.5.)72 339.2 Q F2(Slo)5.5 E 3.25(wR)-.13 G(ecei)-3.25 E -.13(ve)
-.13 G 3.25(rI).13 G(nter)-3.25 E(pr)-.13 E(etation and Noti\214cation)
-.234 E F0 2.75(AD)100.8 355.8 S(CCP recei)-2.75 E -.165(ve)-.275 G 2.75
(rm).165 G(ay notify its sender that the o)-2.75 E -.165(ve)-.165 G
(rlying application k).165 E(eeping up with the)-.11 E
(inbound data rate.)100.8 368.8 Q(In order to relie)5.5 E .33 -.165
(ve t)-.275 H(he application of ha).165 E(ving to e)-.22 E
(xplicitly specify Slo)-.165 E(w)-.275 E(Recei)100.8 381.8 Q -.165(ve)
-.275 G 2.75(rt).165 G 2.75(oD)-2.75 G(CCP)-2.75 E 2.75(,a)-1.221 G 2.75
(ni)-2.75 G(mplementation may pro)-2.75 E
(vide a heuristic to determine when to send)-.165 E(Slo)100.8 394.8 Q
2.75(wR)-.275 G(ecei)-2.75 E -.165(ve)-.275 G 2.75(ri).165 G(tself.)
-2.75 E 2.75(As)100.8 411.4 S(imple heuristic w)-2.75 E(ould in)-.11 E
-.22(vo)-.44 G(lv).22 E 2.75(es)-.165 G(ending Slo)-2.75 E 2.75(wR)-.275
G(ecei)-2.75 E -.165(ve)-.275 G 2.75(ro).165 G(nce the DCCP')-2.75 E
2.75(sr)-.605 G(ecei)-2.75 E .33 -.165(ve b)-.275 H(uf)-.055 E(fer is)
-.275 E(within some speci\214ed number of bytes of being full.)100.8
424.4 Q(The problem with this approach is)5.5 E
(that such a condition could represent a steady state beha)100.8 437.4 Q
(vior for the recei)-.22 E .33 -.165(ve q)-.275 H(ueue that is).165 E
(acceptable to the application.)100.8 450.4 Q(Ho)100.8 467 Q 2.75(was)
-.275 G(ender reacts to a slo)-2.75 E 2.75(wr)-.275 G(ecei)-2.75 E -.165
(ve)-.275 G 2.75(rn).165 G(oti\214cation will depend lar)-2.75 E
(gely on beha)-.198 E(vior required)-.22 E(by the application.)100.8 480
Q -.165(Fo)5.5 G 2.75(rt).165 G
(his reason, an implementation should emplo)-2.75 E 2.75(yam)-.11 G
(echanism to)-2.75 E(inform the application that the sender is slo)100.8
493 Q 2.75(wa)-.275 G(nd for the application to indicate a course of)
-2.75 E(action for the sending DCCP to follo)100.8 506 Q 4.18 -.715
(w. T)-.275 H(here should be no def).715 E(ault beha)-.11 E
(vior for the)-.22 E(sender')100.8 519 Q 2.75(sr)-.605 G
(esponse to a Slo)-2.75 E 2.75(wR)-.275 G(ecei)-2.75 E -.165(ve)-.275 G
2.75(rn).165 G(oti\214cation, since an appropriate response is not)-2.75
E(dependent on information that is maintained by the transport layer)
100.8 532 Q(.)-.605 E F1(5.)72 558 Q/F3 14/Times-Bold@0 SF
(Security Considerations)5.5 E F0(TBD)100.8 574.6 Q F1(6.)72 600.6 Q F3
(IAN)5.5 E 3.5(AC)-.28 G(onsiderations)-3.5 E F0
(This document does not introduce an)100.8 617.2 Q 2.75(yn)-.165 G
(umbers for consideration by IAN)-2.75 E(A.)-.385 E F1(7.)72 643.2 Q F3
(Refer)5.5 E(ences)-.252 E F0([DCCP] Eddie K)100.8 659.8 Q(ohler)-.385 E
2.75(,M)-.44 G(ark Handle)-2.75 E 1.43 -.715(y, S)-.165 H(ally Flo).715
E(yd, and Jitendra P)-.11 E(adh)-.165 E 2.75(ye. Datagram)-.055 F
(Congestion Control Protocol \(DCCP\). W)129.6 672.8 Q(ork in progress.)
-.88 E([DCCP-PR)100.8 689.4 Q(OBLEM] Sally Flo)-.44 E(yd, Mark Handle)
-.11 E 1.43 -.715(y, E)-.165 H(ddie K).715 E(ohler)-.385 E 5.5(.P)-.605
G(roblem Statment for)-5.5 E(DCCP)129.6 702.4 Q 2.75(.W)-1.221 G
(ork in progress.)-3.63 E 295.919(Lanphear Section)72 769 R 2.75(7. [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([RFC 2026] S. Bradner)100.8 85
Q 2.75(.T)-.605 G(he Internet Standards Process---Re)-2.75 E
(vision 3. RFC 2026.)-.275 E/F1 11/Times-Bold@0 SF(8.)72 114.6 Q/F2 14
/Times-Bold@0 SF -.7(Au)5.5 G(thor').7 E 3.5(sA)-.518 G(ddr)-3.5 E(ess)
-.252 E F0(Damon Lanphear <damonlan@real.com>)100.8 133.6 Q
(Media Systems De)100.8 159.6 Q -.165(ve)-.275 G(lopment).165 E
(RealNetw)100.8 172.6 Q(orks, Inc.)-.11 E(PO Box 91123)100.8 185.6 Q
(Seattle, W)100.8 198.6 Q 2.75(A9)-1.32 G(8111-91123)-2.75 E(USA)100.8
211.6 Q 295.919(Lanphear Section)72 769 R 2.75(8. [P)2.75 F(age 15])
-.165 E EP
%%Trailer
end
%%EOF
| PAFTECH AB 2003-2026 | 2026-04-22 20:58:08 |