One document matched: draft-ietf-tsvwg-tfrc-05.ps


%!PS-Adobe-3.0
%%Creator: groff version 1.17.2
%%CreationDate: Tue Oct 22 12:22:55 2002
%%DocumentNeededResources: font Courier-Bold
%%+ font Times-Bold
%%+ font Times-Roman
%%+ font Courier
%%+ font Times-Italic
%%+ font Symbol
%%DocumentSuppliedResources: procset grops 1.17 2
%%Pages: 21
%%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 Courier
%%IncludeResource: font Times-Italic
%%IncludeResource: font Symbol
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/Courier@0 ENC0/Courier 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(TSV WG)
209.998 E 239.998(INTERNET-DRAFT Mark)72 98 R(Handley/ICIR)6 E 113.998
(draft-ietf-tsvwg-tfrc-05.ps Jitendra)72 111 R(Padhye/Microsoft)6 E
(Sally Floyd/ICIR)407.998 124 Q<4aa8>348 137 Q
(org Widmer/Univ. Mannheim)-6 E(22 October 2002)413.998 150 Q
(Expires: April 2003)389.998 163 Q/F1 14/Times-Bold@0 SF
(TCP Friendly Rate Contr)178.086 188 Q(ol \(TFRC\):)-.252 E(Pr)222.991
201 Q(otocol Speci\214cation)-.252 E/F2 11/Times-Bold@0 SF
(Status of this Document)72 246 Q/F3 11/Times-Roman@0 SF
(This document is an Internet-Draft and is subject to all pro)72 262.6 Q
(visions of Section 10 of RFC2026.)-.165 E(Internet-Drafts are w)72
288.6 Q(orking documents of the Internet Engineering T)-.11 E(ask F)-.88
E(orce \(IETF\), its areas,)-.165 E(and its w)72 301.6 Q(orking groups.)
-.11 E(Note that other groups may also distrib)5.5 E(ute w)-.22 E
(orking documents as)-.11 E(Internet-Drafts.)72 314.6 Q
(Internet-Drafts are draft documents v)72 340.6 Q
(alid for a maximum of six months and may be updated,)-.275 E
(replaced, or obsoleted by other documents at an)72 353.6 Q 2.75(yt)
-.165 G 2.75(ime. It)-2.75 F(is inappropriate to use Internet- Drafts)
2.75 E(as reference material or to cite them other than as "w)72 366.6 Q
(ork in progress.")-.11 E
(The list of current Internet-Drafts can be accessed at http://www)72
392.6 Q(.ietf.or)-.715 E(g/ietf/1id-abstracts.txt)-.198 E
(The list of Internet-Draft Shado)72 418.6 Q 2.75(wD)-.275 G
(irectories can be accessed at http://www)-2.75 E(.ietf.or)-.715 E
(g/shado)-.198 E -.715(w.)-.275 G(html.).715 E
(This document is a product of the IETF TSV WG.)72 444.6 Q
(Comments should be addressed to the authors.)5.5 E F2(Abstract)267.534
463.6 Q F3
(This document speci\214es TCP-Friendly Rate Control \(TFRC\).)97 486.2
Q(TFRC is a congestion)5.5 E(control mechanism for unicast \215o)97
499.2 Q(ws operating in a best-ef)-.275 E(fort Internet en)-.275 E 2.75
(vironment. It)-.44 F(is reasonably f)97 512.2 Q
(air when competing for bandwidth with TCP \215o)-.11 E(ws, b)-.275 E
(ut has a much)-.22 E(lo)97 525.2 Q(wer v)-.275 E
(ariation of throughput o)-.275 E -.165(ve)-.165 G 2.75(rt).165 G
(ime compared with TCP)-2.75 E 2.75(,m)-1.221 G(aking it more suitable)
-2.75 E(for applications such as telephon)97 538.2 Q 2.75(yo)-.165 G
2.75(rs)-2.75 G(treaming media where a relati)-2.75 E -.165(ve)-.275 G
(ly smooth).165 E(sending rate is of importance.)97 551.2 Q(Handle)72
697 Q(y/P)-.165 E(adh)-.165 E(ye/Flo)-.055 E(yd/W)-.11 E 252.843
(idmer [P)-.44 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. T)97 135 Q(erminology)-.7 E F0 11(......................)1.48 G F2
(4)11.5 E(3. Protocol Mechanism)97 147 Q F0 11(...................)11.2
G F2(4)11.5 E(3.1. TCP Throughput Equation)107 159 Q F0 11
(................)11.33 G F2(5)11.5 E(3.2. P)107 171 Q(ack)-.15 E
(et Contents)-.1 E F0 11(...................)12.28 G F2(6)11.5 E
(3.2.1. Data P)117 183 Q(ack)-.15 E(ets)-.1 E F0 11(...................)
7.57 G F2(6)11.5 E(3.2.2. Feedback P)117 195 Q(ack)-.15 E(ets)-.1 E F0
11(..................)1.88 G F2(6)11.5 E(4. Data Sender Protocol)97 207
Q F0 11(...................)8.71 G F2(7)11.5 E(4.1. Measuring the P)107
219 Q(ack)-.15 E(et Size)-.1 E F0 11(................)11.88 G F2(7)11.5
E(4.2. Sender Initialization)107 231 Q F0 11(..................)9.12 G
F2(8)11.5 E(4.3. Sender beha)107 243 Q(vior when a feedback pack)-.2 E
(et is recei)-.1 E -.15(ve)-.25 G(d).15 E F0 11(.........)5.86 G F2(8)
11.5 E(4.4. Expiration of nofeedback timer)107 255 Q F0 11
(...............)6.5 G F2(9)11.5 E(4.5. Pre)107 267 Q -.15(ve)-.25 G
(nting Oscillations).15 E F0 11(.................)11.04 G F2(9)11.5 E
(4.6. Scheduling of P)107 279 Q(ack)-.15 E(et T)-.1 E(ransmissions)-.35
E F0 11(..............).83 G F2(10)6.5 E(5. Calculation of the Loss Ev)
97 291 Q(ent Rate \()-.15 E/F3 10/Courier@0 SF(p)A F2(\))A F0 11
(..............)8.28 G F2(11)6.5 E(5.1. Detection of Lost or Mark)107
303 Q(ed P)-.1 E(ack)-.15 E(ets)-.1 E F0 11(.............)12.13 G F2(11)
6.5 E(5.2. T)107 315 Q(ranslation from Loss History to Loss Ev)-.35 E
(ents)-.15 E F0 11(...........)4.48 G F2(11)6.5 E(5.3. Inter)107 327 Q
(-loss Ev)-.2 E(ent Interv)-.15 E(al)-.25 E F0 11(.................)7.65
G F2(12)6.5 E(5.4. A)107 339 Q -.15(ve)-.74 G(rage Loss Interv).15 E(al)
-.25 E F0 11(..................)2.78 G F2(13)6.5 E
(5.5. History Discounting)107 351 Q F0 11(..................)9.11 G F2
(14)6.5 E(6. Data Recei)97 363 Q -.15(ve)-.25 G 2.5(rP).15 G(rotocol)
-2.5 E F0 11(...................)1.34 G F2(16)6.5 E(6.1. Recei)107 375 Q
-.15(ve)-.25 G 2.5(rb).15 G(eha)-2.5 E(vior when a data pack)-.2 E
(et is recei)-.1 E -.15(ve)-.25 G(d).15 E F0 11(..........)4.17 G F2(16)
6.5 E(6.2. Expiration of feedback timer)107 387 Q F0 11
(................)2.75 G F2(16)6.5 E(6.3. Recei)107 399 Q -.15(ve)-.25 G
2.5(ri).15 G(nitialization)-2.5 E F0 11(..................)2.3 G F2(17)
6.5 E(6.3.1. Initializing the Loss History after the First Loss Ev)117
411 Q(ent)-.15 E F0 11(.......)8.3 G F2(17)6.5 E(7. Sender)97 423 Q
(-based V)-.2 E(ariants)-1.11 E F0 11(...................)5.31 G F2(17)
6.5 E(8. Implementation Issues)97 435 Q F0 11(...................)3.98 G
F2(18)6.5 E(9. Security Considerations)97 447 Q F0 11
(..................)12.17 G F2(19)6.5 E(10. IAN)97 459 Q 2.5(AC)-.35 G
(onsiderations)-2.5 E F0 11(...................)2.11 G F2(19)6.5 E
(11. Authors' Addresses)97 471 Q F0 11(...................)10.1 G F2(19)
6.5 E(12. Ackno)97 483 Q(wledgments)-.25 E F0 11(....................)
.76 G F2(20)6.5 E(13. Normati)97 495 Q .3 -.15(ve R)-.25 H(eferences).15
E F0 11(..................)13.71 G F2(20)6.5 E(14. Non-normati)97 507 Q
.3 -.15(ve R)-.25 H(eferences).15 E F0 11(.................)9.13 G F2
(20)6.5 E F0(NO)72 523.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-ietf-tsvwg-tfrc-04.txt:)72 536.6 Q 2.75(*I)72 549.6
S 2.75(nS)-2.75 G(ection 4.3, changed a v)-2.75 E(ariable name from R)
-.275 E(TT to R, for consistenc)-.66 E -.715(y.)-.165 G 2.75(*I)72 566.2
S 2.75(nS)-2.75 G(ection 4.4, made one change for clarity: Changed:)
-2.75 E("Cut the sending rate in half.)72 579.2 Q(This is done by)5.5 E
(...")-.715 E(to:)72 592.2 Q("Cut the sending rate in half.)72 605.2 Q
(If the sender has recei)5.5 E -.165(ve)-.275 G 2.75(df).165 G
(eedback from the recei)-2.75 E -.165(ve)-.275 G .88 -.44(r, t).165 H
(his is done).44 E(by)72 618.2 Q(...")-.715 E(Handle)72 697 Q(y/P)-.165
E(adh)-.165 E(ye/Flo)-.055 E(yd/W)-.11 E 252.843(idmer [P)-.44 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 2.75(*I)72 85 S 2.75(nS)-2.75
G(ection 4.4, made one change for correctness:)-2.75 E(Changed:)72 98 Q
("when the sender ... has not yet recei)72 111 Q -.165(ve)-.275 G 2.75
(da).165 G .33 -.165(ny f)-2.75 H(eedback from the sender).165 E(,")-.44
E(to:)72 124 Q("when the sender ... has not yet recei)72 137 Q -.165(ve)
-.275 G 2.75(da).165 G .33 -.165(ny f)-2.75 H(eedback from the recei)
.165 E -.165(ve)-.275 G -.44(r,).165 G(").44 E(Thanks to Mik)72 150 Q
2.75(eL)-.11 G(uby for these reports.)-2.75 E 2.75(*A)72 166.6 S
(dded a section about implementation-related issues.)-2.75 E 2.75(*M)72
183.2 S(ade the follo)-2.75 E
(wing changes in response to feedback from the IESG:)-.275 E 2.75(*C)72
199.8 S(hanged the 64-seconds term in equations to "t_mbi", which is e)
-2.75 E(xplained as representing 64)-.165 E 2.75(seconds. This)72 212.8
R(is to mak)2.75 E 2.75(ei)-.11 G 2.75(tc)-2.75 G
(lear that this term is in units of seconds.)-2.75 E 2.75(*A)72 229.4 S
(dded a section about a sender)-2.75 E(-based v)-.22 E(ariant of TFRC.)
-.275 E(Changes from draft-ietf-tsvwg-tfrc-03.txt:)72 246 Q 2.75(*C)72
259 S(hanged one line in the computation of the weighted a)-2.75 E -.165
(ve)-.22 G(rage I_mean of the loss interv).165 E(als from:)-.275 E
(W_tot = w_\(i-1\) * DF_i;)72 272 Q(to:)72 285 Q
(W_tot = W_tot + w_\(i-1\) * DF_i;)72 298 Q(Bug report from W)72 311 Q
(endy Lee.)-.88 E 2.75(*R)72 327.6 S(emo)-2.75 E -.165(ve)-.165 G 2.75
(dt).165 G
(he speci\214cation that the sender sends its current transmit rate.)
-2.75 E(This w)5.5 E(as only used to)-.11 E(initialize X_recv)72 340.6 Q
2.75(,a)-.715 G(nd is not needed.)-2.75 E 2.75(*S)72 357.2 S
(aid that instead of sending the timestamp and the estimate of the R)
-2.75 E(TT)-.66 E 2.75(,t)-.814 G(he sender could send a)-2.75 E
(coarse-grained counter that increments e)72 370.2 Q -.165(ve)-.275 G
(ry quarter R).165 E(TT)-.66 E 5.5(.I)-.814 G 2.75(nt)-5.5 G
(his case, the recei)-2.75 E -.165(ve)-.275 G 2.75(ra).165 G
(lso does not)-2.75 E(ha)72 383.2 Q .33 -.165(ve t)-.22 H 2.75(os).165 G
(end the timestamp back to the sender)-2.75 E(.)-.605 E(END OF NO)72
396.2 Q(TE T)-.44 E 2.75(OR)-.198 G(FC EDIT)-2.75 E(OR.)-.198 E/F1 11
/Times-Bold@0 SF 2.75(1. Intr)72 422.2 R(oduction)-.198 E F0
(This document speci\214es TCP-Friendly Rate Control \(TFRC\).)72 438.8
Q(TFRC is a congestion control)5.5 E
(mechanism designed for unicast \215o)72 451.8 Q
(ws operating in a Internet en)-.275 E(vironment and competing with)-.44
E(TCP traf)72 464.8 Q(\214c [2]. Instead of specifying a complete proto\
col, this document simply speci\214es a)-.275 E(congestion control mech\
anism that could be used in a transport protocol such as R)72 477.8 Q
(TP [7], in an)-.66 E(application incorporating end-to-end congestion c\
ontrol at the application le)72 490.8 Q -.165(ve)-.275 G
(l, or in the conte).165 E(xt)-.165 E(of endpoint congestion management\
 [1]. This document does not discuss pack)72 503.8 Q(et formats or)-.11
E(reliability)72 516.8 Q 5.5(.I)-.715 G
(mplementation-related issues are discussed only brie\215y)-5.5 E 2.75
(,i)-.715 G 2.75(nS)-2.75 G(ection 8.)-2.75 E
(TFRC is designed to be reasonably f)72 533.4 Q
(air when competing for bandwidth with TCP \215o)-.11 E(ws, where a)
-.275 E<8d6f>72 546.4 Q 2.75(wi)-.275 G 2.75(s`)-2.75 G(`reasonably f)
-3.564 E(air')-.11 E 2.75('i)-.814 G 2.75(fi)-2.75 G
(ts sending rate is generally within a f)-2.75 E(actor of tw)-.11 E 2.75
(oo)-.11 G 2.75(ft)-2.75 G(he sending rate)-2.75 E(of a TCP \215o)72
559.4 Q 2.75(wu)-.275 G(nder the same conditions.)-2.75 E(Ho)5.5 E(we)
-.275 E -.165(ve)-.275 G 2.75(rT).165 G(FRC has a much lo)-2.75 E(wer v)
-.275 E(ariation of)-.275 E(throughput o)72 572.4 Q -.165(ve)-.165 G
2.75(rt).165 G(ime compared with TCP)-2.75 E 2.75(,w)-1.221 G(hich mak)
-2.75 E(es it more suitable for applications such as)-.11 E(telephon)72
585.4 Q 2.75(yo)-.165 G 2.75(rs)-2.75 G(treaming media where a relati)
-2.75 E -.165(ve)-.275 G(ly smooth sending rate is of importance.).165 E
(The penalty of ha)72 602 Q
(ving smoother throughput than TCP while competing f)-.22 E
(airly for bandwidth is)-.11 E(that TFRC responds slo)72 615 Q
(wer than TCP to changes in a)-.275 E -.275(va)-.22 G(ilable bandwidth.)
.275 E(Thus TFRC should only)5.5 E(be used when the application has a r\
equirement for smooth throughput, in particular)72 628 Q 2.75(,a)-.44 G
-.22(vo)-2.97 G(iding).22 E(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E
(ye/Flo)-.055 E(yd/W)-.11 E 252.843(idmer [P)-.44 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(TCP')72 85 Q 2.75(sh)-.605 G
(alving of the sending rate in response to a single pack)-2.75 E
(et drop.)-.11 E -.165(Fo)5.5 G 2.75(ra).165 G(pplications that)-2.75 E
(simply need to transfer as much data as possible in as short a time as\
 possible we recommend)72 98 Q(using TCP)72 111 Q 2.75(,o)-1.221 G 2.75
(ri)-2.75 G 2.75(fr)-2.75 G(eliability is not required, using an Additi)
-2.75 E -.165(ve)-.275 G(-Increase, Multiplicati).165 E -.165(ve)-.275 G
(-Decrease).165 E(\(AIMD\) congestion control scheme with similar param\
eters to those used by TCP)72 124 Q(.)-1.221 E
(TFRC is designed for applications that use a \214x)72 140.6 Q(ed pack)
-.165 E(et size, and v)-.11 E(ary their sending rate in)-.275 E(pack)72
153.6 Q(ets per second in response to congestion.)-.11 E
(Some audio applications require a \214x)5.5 E(ed interv)-.165 E(al of)
-.275 E(time between pack)72 166.6 Q(ets and v)-.11 E(ary their pack)
-.275 E(et size instead of their pack)-.11 E(et rate in response to)-.11
E 2.75(congestion. The)72 179.6 R
(congestion control mechanism in this document cannot be used by those)
2.75 E(applications; TFRC-PS \(for TFRC-P)72 192.6 Q(ack)-.165 E
(etSize\) is a v)-.11 E(ariant of TFRC for applications that ha)-.275 E
.33 -.165(ve a)-.22 H<8c78>72 205.6 Q(ed sending rate b)-.165 E(ut v)
-.22 E(ary their pack)-.275 E(et size in response to congestion.)-.11 E
(TFRC-PS will be speci\214ed)5.5 E(in a later document.)72 218.6 Q
(TFRC is a recei)72 235.2 Q -.165(ve)-.275 G -.22(r-).165 G(based mecha\
nism, with the calculation of the congestion control information).22 E
(\(i.e., the loss e)72 248.2 Q -.165(ve)-.275 G
(nt rate\) in the data recei).165 E -.165(ve)-.275 G 2.75(rr).165 G
(ather in the data sender)-2.75 E 5.5(.T)-.605 G
(his is well-suited to an)-5.5 E(application where the sender is a lar)
72 261.2 Q(ge serv)-.198 E(er handling man)-.165 E 2.75(yc)-.165 G
(oncurrent connections, and the)-2.75 E(recei)72 274.2 Q -.165(ve)-.275
G 2.75(rh).165 G(as more memory and CPU c)-2.75 E(ycles a)-.165 E -.275
(va)-.22 G(ilable for computation.).275 E(In addition, a recei)5.5 E
-.165(ve)-.275 G -.22(r-).165 G(based mechanism is more suitable as a b)
72 287.2 Q(uilding block for multicast congestion control.)-.22 E/F1 11
/Times-Bold@0 SF 2.75(2. T)72 313.2 R(erminology)-1.012 E F0
(In this document, the k)72 329.8 Q .33 -.165(ey w)-.11 H
(ords "MUST", "MUST NO).055 E(T", "REQ)-.44 E(UIRED", "SHALL", "SHALL)
-.11 E(NO)72 342.8 Q(T", "SHOULD", "SHOULD NO)-.44 E
(T", "RECOMMENDED", "MA)-.44 E(Y", and "OPTION)-1.155 E(AL" are to)-.385
E(be interpreted as described in RFC 2119 and indicate requirement le)72
355.8 Q -.165(ve)-.275 G(ls for compliant TFRC).165 E(implementations.)
72 368.8 Q F1 2.75(3. Pr)72 407.8 R(otocol Mechanism)-.198 E F0 -.165
(Fo)72 424.4 S 2.75(ri).165 G(ts congestion control mechanism, TFRC dir\
ectly uses a throughput equation for the allo)-2.75 E(wed)-.275 E
(sending rate as a function of the loss e)72 437.4 Q -.165(ve)-.275 G
(nt rate and round-trip time.).165 E(In order to compete f)5.5 E(airly)
-.11 E(with TCP)72 450.4 Q 2.75(,T)-1.221 G
(FRC uses the TCP throughput equation, which roughly describes TCP')
-2.75 E 2.75(ss)-.605 G(ending rate)-2.75 E(as a function of the loss e)
72 463.4 Q -.165(ve)-.275 G(nt rate, round-trip time, and pack).165 E
(et size.)-.11 E 1.76 -.88(We d)5.5 H(e\214ne a loss e).88 E -.165(ve)
-.275 G(nt as one).165 E(or more lost or mark)72 476.4 Q(ed pack)-.11 E
(ets from a windo)-.11 E 2.75(wo)-.275 G 2.75(fd)-2.75 G
(ata, where a mark)-2.75 E(ed pack)-.11 E(et refers to a)-.11 E(congest\
ion indication from Explicit Congestion Noti\214cation \(ECN\) [6].)72
489.4 Q(Generally speaking, TFRC')72 506 Q 2.75(sc)-.605 G
(ongestion control mechanism w)-2.75 E(orks as follo)-.11 E(ws:)-.275 E
21.15<8354>72 522.6 S(he recei)-21.15 E -.165(ve)-.275 G 2.75(rm).165 G
(easures the loss e)-2.75 E -.165(ve)-.275 G
(nt rate and feeds this information back to the sender).165 E(.)-.605 E
21.15<8354>72 539.2 S(he sender also uses these feedback messages to me\
asure the round-trip time \(R)-21.15 E(TT\).)-.66 E 21.15<8354>72 555.8
S(he loss e)-21.15 E -.165(ve)-.275 G(nt rate and R).165 E
(TT are then fed into TFRC')-.66 E 2.75(st)-.605 G
(hroughput equation, gi)-2.75 E(ving the)-.275 E
(acceptable transmit rate.)97 568.8 Q 21.15<8354>72 585.4 S
(he sender then adjusts its transmit rate to match the calculated rate.)
-21.15 E(The dynamics of TFRC are sensiti)72 602 Q .33 -.165(ve t)-.275
H 2.75(oh).165 G .55 -.275(ow t)-2.75 H
(he measurements are performed and applied.).275 E -.88(We)5.5 G
(recommend speci\214c mechanisms belo)72 615 Q 2.75(wt)-.275 G 2.75(op)
-2.75 G(erform and apply these measurements.)-2.75 E(Other)5.5 E
(mechanisms are possible, b)72 628 Q
(ut it is important to understand ho)-.22 E 2.75(wt)-.275 G
(he interactions between)-2.75 E(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E
(ye/Flo)-.055 E(yd/W)-.11 E 252.843(idmer [P)-.44 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(mechanisms af)72 85 Q
(fect the dynamics of TFRC.)-.275 E/F1 11/Times-Bold@0 SF 2.75(3.1. TCP)
72 111 R(Thr)2.75 E(oughput Equation)-.198 E F0(An)72 127.6 Q 2.75(yr)
-.165 G(ealistic equation gi)-2.75 E
(ving TCP throughput as a function of loss e)-.275 E -.165(ve)-.275 G
(nt rate and R).165 E(TT should be)-.66 E(suitable for use in TFRC.)72
140.6 Q(Ho)5.5 E(we)-.275 E -.165(ve)-.275 G .88 -.44(r, w).165 H 2.75
(en).44 G(ote that the TCP throughput equation used must re\215ect)-2.75
E(TCP')72 153.6 Q 2.75(sr)-.605 G(etransmit timeout beha)-2.75 E(vior)
-.22 E 2.75(,a)-.44 G 2.75(st)-2.75 G
(his dominates TCP throughput at higher loss rates.)-2.75 E -.88(We)5.5
G(also note that the assumptions implicit in the throughput equation ab\
out the loss e)72 166.6 Q -.165(ve)-.275 G(nt rate).165 E(parameter ha)
72 179.6 Q .33 -.165(ve t)-.22 H 2.75(ob).165 G 2.75(ear)-2.75 G
(easonable match to ho)-2.75 E 2.75(wt)-.275 G(he loss rate or loss e)
-2.75 E -.165(ve)-.275 G(nt rate is actually).165 E 2.75
(measured. While)72 192.6 R(this match is not perfect for the throughpu\
t equation and loss rate measurement)2.75 E(mechanisms gi)72 205.6 Q
-.165(ve)-.275 G 2.75(nb).165 G(elo)-2.75 E 1.43 -.715(w, i)-.275 H 2.75
(np).715 G(ractice the assumptions turn out to be close enough.)-2.75 E
(The throughput equation we currently recommend for TFRC is a slightly \
simpli\214ed v)72 222.2 Q(ersion of the)-.165 E
(throughput equation for Reno TCP from [4]. Ideally we')72 235.2 Q 2.75
(dp)-.55 G(refer a throughput equation based on)-2.75 E(SA)72 248.2 Q
(CK TCP)-.44 E 2.75(,b)-1.221 G(ut no one has yet deri)-2.97 E -.165(ve)
-.275 G 2.75(dt).165 G(he throughput equation for SA)-2.75 E(CK TCP)-.44
E 2.75(,a)-1.221 G(nd from both)-2.75 E(simulations and e)72 261.2 Q
(xperiments, the dif)-.165 E(ferences between the tw)-.275 E 2.75(oe)
-.11 G(quations are relati)-2.75 E -.165(ve)-.275 G(ly minor).165 E(.)
-.605 E(The throughput equation is:)72 277.8 Q/F2 11/Times-Italic@0 SF
(X)108.869 313.012 Q/F3 11/Symbol SF(=)4.114 E F2(s)91.634 -7.7 M(R)
-90.82 25.948 M/F4 28/Symbol SF 15.39 -15.372(\326` `)2.167 7.228 P F0
(2)12.418 -14.928 M F2(bp).297 E .44 LW 173.422 328.4 156.416 328.4 DL
F0(3)162.169 338.96 Q F3(+)9.493 -7.7 M F2(t)2.563 E/F5 8/Times-Italic@0
SF(RTO).977 2.2 M F0(\(3).766 -2.2 M F4 15.39 -15.372(\326` `)1.87 7.228
P F0(3)12.418 -14.928 M F2(bp).297 E 250.408 328.4 233.402 328.4 DL F0
(8)239.155 338.96 Q(\))7.073 -7.7 M F2(p)1.375 E F0(\(1).209 E F3(+)2.42
E F0(32)2.42 E F2(p)1.375 E/F6 8/Times-Roman@0 SF(2).209 -3.08 M 308.814
310.152 130.143 310.152 DL F0(\))305.151 331.26 Q(Where:)72 371.302 Q F2
(X)97 387.902 Q F0(is the transmit rate in bytes/second.)2.75 E F2(s)97
404.502 Q F0(is the pack)2.75 E(et size in bytes.)-.11 E F2(R)97 421.102
Q F0(is the round trip time in seconds.)2.75 E F2(p)97 437.702 Q F0
(is the loss e)2.75 E -.165(ve)-.275 G
(nt rate, between 0 and 1.0, of the number of loss e).165 E -.165(ve)
-.275 G(nts as a fraction of the).165 E(number of pack)97 450.702 Q
(ets transmitted.)-.11 E F2(t_RT)97 467.302 Q(O)-.198 E F0
(is the TCP retransmission timeout v)2.75 E(alue in seconds.)-.275 E F2
(b)97 483.902 Q F0(is the number of pack)2.75 E(ets ackno)-.11 E
(wledged by a single TCP ackno)-.275 E(wledgement.)-.275 E 1.76 -.88
(We f)72 500.502 T(urther simplify this by setting).88 E/F7 11/Courier@0
SF(t_RTO = 4*R)2.75 E F0 5.5(.A)C(more accurate calculation of)-2.75 E
F2(t_RT)2.75 E(O)-.198 E F0(is)2.75 E(possible, b)72 513.502 Q(ut e)-.22
E(xperiments with the current setting ha)-.165 E .33 -.165(ve r)-.22 H
(esulted in reasonable f).165 E(airness with)-.11 E -.165(ex)72 526.502
S(isting TCP implementations [9]. Another possibility w).165 E
(ould be to set)-.11 E F7(t_RTO)2.75 E F0 2.75(=m)2.75 G(ax\(4)-2.75 E
F7(R, one)A(second\))72 539.502 Q F0 2.75(,t)C 2.75(om)-2.75 G
(atch the recommended minimum of one second on the R)-2.75 E .396 -.198
(TO [)-.66 H(5].).198 E(Man)72 556.102 Q 2.75(yc)-.165 G
(urrent TCP connections use delayed ackno)-2.75 E
(wledgements, sending an ackno)-.275 E(wledgement for)-.275 E -2.365
-.275(ev e)72 569.102 T(ry tw).275 E 2.75(od)-.11 G(ata pack)-2.75 E
(ets recei)-.11 E -.165(ve)-.275 G(d, and thus ha).165 E .33 -.165
(ve a s)-.22 H(ending rate modeled by).165 E F2 2.75(b=2)2.75 G F0 5.5
(.H)-2.75 G -.275(ow)-5.5 G -2.365 -.275(ev e).275 H .88 -.44(r, T).275
H(CP).44 E(is also allo)72 582.102 Q(wed to send an ackno)-.275 E
(wledgement for e)-.275 E -.165(ve)-.275 G(ry data pack).165 E
(et, and this w)-.11 E(ould be modeled by)-.11 E F2 2.75(b=1)72 595.102
S F0 5.5(.B)-2.75 G(ecause man)-5.5 E 2.75(yT)-.165 G
(CP implementations do not use delayed ackno)-2.75 E(wledgements, we)
-.275 E(recommend)72 608.102 Q F2 2.75(b=1)2.75 G F0(.)-2.75 E
(In future, dif)72 624.702 Q
(ferent TCP equations may be substituted for this equation.)-.275 E
(The requirement is that)5.5 E(the throughput equation be a reasonable \
approximation of the sending rate of TCP for conformant)72 637.702 Q
(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E(ye/Flo)-.055 E(yd/W)-.11 E
252.843(idmer [P)-.44 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(TCP congestion control.)72 85
Q(The parameters)72 101.6 Q/F1 11/Times-Italic@0 SF(s)2.75 E F0(\(pack)
2.75 E(et size\),)-.11 E F1(p)2.75 E F0(\(loss e)2.75 E -.165(ve)-.275 G
(nt rate\) and).165 E F1(R)2.75 E F0(\(R)2.75 E
(TT\) need to be measured or calculated)-.66 E
(by a TFRC implementation.)72 114.6 Q(The measurement of)5.5 E F1(s)2.75
E F0(is speci\214ed in Section 4.1, measurement of)2.75 E F1(R)2.75 E F0
(is speci\214ed in Section 4.3, and measurement of)72 127.6 Q F1(p)2.75
E F0(is speci\214ed in Section 5. In the rest of this)2.75 E
(document all data rates are measured in bytes/second.)72 140.6 Q/F2 11
/Times-Bold@0 SF 2.75(3.2. P)72 166.6 R(ack)-.11 E(et Contents)-.11 E F0
(Before specifying the sender and recei)72 183.2 Q -.165(ve)-.275 G 2.75
(rf).165 G(unctionality)-2.75 E 2.75(,w)-.715 G 2.75(ed)-2.75 G
(escribe the contents of the data)-2.75 E(pack)72 196.2 Q
(ets sent by the sender and feedback pack)-.11 E(ets sent by the recei)
-.11 E -.165(ve)-.275 G 3.96 -.605(r. A).165 H 2.75(sT).605 G
(FRC will be used)-2.75 E
(along with a transport protocol, we do not specify pack)72 209.2 Q
(et formats, as these depend on the details)-.11 E
(of the transport protocol used.)72 222.2 Q F2 2.75(3.2.1. Data)72 261.2
R -.11(Pa)2.75 G(ck).11 E(ets)-.11 E F0(Each data pack)72 277.8 Q
(et sent by the data sender contains the follo)-.11 E(wing information:)
-.275 E 21.15<8341>72 294.4 S(sequence number)-18.4 E 2.75(.T)-.605 G
(his number is incremented by one for each data pack)-2.75 E
(et transmitted.)-.11 E(The \214eld must be suf)97 307.4 Q
(\214ciently lar)-.275 E(ge that it does not wrap causing tw)-.198 E
2.75(od)-.11 G(if)-2.75 E(ferent pack)-.275 E(ets with)-.11 E
(the same sequence number to be in the recei)97 320.4 Q -.165(ve)-.275 G
(r').165 E 2.75(sr)-.605 G(ecent pack)-2.75 E
(et history at the same time.)-.11 E 21.15<8341>72 337 S
(timestamp indicating when the pack)-18.4 E(et is sent. W)-.11 E 2.75
(ed)-.88 G(enote by)-2.75 E/F3 11/Courier@0 SF(ts_i)2.75 E F0
(the timestamp of the)2.75 E(pack)97 350 Q(et with sequence number)-.11
E F3(i)2.75 E F0 5.5(.T)C
(he resolution of the timestamp should typically be)-5.5 E
(measured in milliseconds.)97 363 Q(This timestamp is used by the recei)
97 376 Q -.165(ve)-.275 G 2.75(rt).165 G 2.75(od)-2.75 G
(etermine which losses belong to the same loss)-2.75 E -2.365 -.275
(ev e)97 389 T 2.75(nt. The).275 F
(timestamp is also echoed by the recei)2.75 E -.165(ve)-.275 G 2.75(rt)
.165 G 2.75(oe)-2.75 G(nable the sender to estimate the)-2.75 E
(round-trip time, for senders that do not sa)97 402 Q .33 -.165(ve t)
-.22 H(imestamps of transmitted data pack).165 E(ets.)-.11 E 1.76 -.88
(We n)97 415 T(ote that as an alternati).88 E .33 -.165(ve t)-.275 H
2.75(oat).165 G(imestamp incremented in milliseconds, a "timestamp")
-2.75 E(that increments e)97 428 Q -.165(ve)-.275 G
(ry quarter of a round-trip time w).165 E(ould be suf)-.11 E
(\214cient for determining when)-.275 E
(losses belong to the same loss e)97 441 Q -.165(ve)-.275 G
(nt, in the conte).165 E(xt of a protocol where this is understood by)
-.165 E(both sender and recei)97 454 Q -.165(ve)-.275 G .88 -.44(r, a)
.165 H(nd where the sender sa).44 E -.165(ve)-.22 G 2.75(st).165 G
(he timestamps of transmitted data)-2.75 E(pack)97 467 Q(ets.)-.11 E
21.15<8354>72 483.6 S(he sender')-21.15 E 2.75(sc)-.605 G
(urrent estimate of the round trip time. The estimate reported in pack)
-2.75 E(et)-.11 E F3(i)2.75 E F0(is)2.75 E(denoted by)97 496.6 Q F3(R_i)
2.75 E F0 5.5(.T)C(he round-trip time estimate is used by the recei)-5.5
E -.165(ve)-.275 G .88 -.44(r, a).165 H(long with the).44 E
(timestamp, to determine when multiple losses belong to the same loss e)
97 509.6 Q -.165(ve)-.275 G(nt.).165 E
(If the sender sends a coarse-grained "timestamp" that increments e)97
522.6 Q -.165(ve)-.275 G(ry quarter of a round-).165 E
(trip time, as discussed abo)97 535.6 Q -.165(ve)-.165 G 2.75(,t).165 G
(hen the sender does not need to send its current estimate of)-2.75 E
(the round trip time.)97 548.6 Q F2 2.75(3.2.2. F)72 591.2 R(eedback P)
-.275 E(ack)-.11 E(ets)-.11 E F0(Each feedback pack)72 607.8 Q
(et sent by the data recei)-.11 E -.165(ve)-.275 G 2.75(rc).165 G
(ontains the follo)-2.75 E(wing information:)-.275 E 21.15<8354>72 624.4
S(he timestamp of the last data pack)-21.15 E(et recei)-.11 E -.165(ve)
-.275 G(d. W).165 E 2.75(ed)-.88 G(enote this by)-2.75 E F3(t_recvdata)
2.75 E F0 5.5(.I)C 2.75(ft)-5.5 G(he last)-2.75 E(pack)97 637.4 Q
(et recei)-.11 E -.165(ve)-.275 G 2.75(da).165 G 2.75(tt)-2.75 G
(he recei)-2.75 E -.165(ve)-.275 G 2.75(rh).165 G(as sequence number)
-2.75 E F3(i)2.75 E F0 2.75(,t)C(hen)-2.75 E F3(t_recvdata = ts_i)2.75 E
F0(.)A(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E(ye/Flo)-.055 E(yd/W)-.11
E 252.843(idmer [P)-.44 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(This timestamp is used by the\
 sender to estimate the round-trip time, and is only needed if)97 85 Q
(the sender does not sa)97 98 Q .33 -.165(ve t)-.22 H
(imestamps of transmitted data pack).165 E(ets.)-.11 E 21.15<8354>72
114.6 S
(he amount of time elapsed between the receipt of the last data pack)
-21.15 E(et at the recei)-.11 E -.165(ve)-.275 G .88 -.44(r, a).165 H
(nd).44 E(the generation of this feedback report. W)97 127.6 Q 2.75(ed)
-.88 G(enote this by)-2.75 E/F1 11/Courier@0 SF(t_delay)2.75 E F0(.)A
21.15<8354>72 144.2 S(he rate at which the recei)-21.15 E -.165(ve)-.275
G 2.75(re).165 G(stimates that data w)-2.75 E(as recei)-.11 E -.165(ve)
-.275 G 2.75(ds).165 G(ince the last feedback report)-2.75 E -.11(wa)97
157.2 S 2.75(ss).11 G(ent. W)-2.75 E 2.75(ed)-.88 G(enote this by)-2.75
E F1(X_recv)2.75 E F0(.)A 21.15<8354>72 173.8 S(he recei)-21.15 E -.165
(ve)-.275 G(r').165 E 2.75(sc)-.605 G(urrent estimate of the loss e)
-2.75 E -.165(ve)-.275 G(nt rate,).165 E F1(p)2.75 E F0(.)A/F2 11
/Times-Bold@0 SF 2.75(4. Data)72 203.4 R(Sender Pr)2.75 E(otocol)-.198 E
F0(The data sender sends a stream of data pack)72 220 Q
(ets to the data recei)-.11 E -.165(ve)-.275 G 2.75(ra).165 G 2.75(tac)
-2.75 G(ontrolled rate. When a)-2.75 E(feedback pack)72 233 Q
(et is recei)-.11 E -.165(ve)-.275 G 2.75(df).165 G(rom the data recei)
-2.75 E -.165(ve)-.275 G .88 -.44(r, t).165 H
(he data sender changes its sending rate, based).44 E(on the informatio\
n contained in the feedback report. If the sender does not recei)72 246
Q .33 -.165(ve a f)-.275 H(eedback).165 E(report for tw)72 259 Q 2.75
(or)-.11 G(ound trip times, it cuts its sending rate in half.)-2.75 E
(This is achie)5.5 E -.165(ve)-.275 G 2.75(db).165 G 2.75(ym)-2.75 G
(eans of a)-2.75 E(timer called the)72 272 Q/F3 11/Times-Italic@0 SF
(nofeedbac)2.75 E(k)-.22 E F0(timer)2.75 E(.)-.605 E 1.76 -.88(We s)72
288.6 T(pecify the sender).88 E(-side protocol in the follo)-.22 E
(wing steps:)-.275 E 21.15<834d>72 305.2 S(easurement of the mean pack)
-21.15 E(et size being sent.)-.11 E 21.15<8354>72 321.8 S
(he sender beha)-21.15 E(vior when a feedback pack)-.22 E(et is recei)
-.11 E -.165(ve)-.275 G(d.).165 E 21.15<8354>72 338.4 S(he sender beha)
-21.15 E(vior when the)-.22 E F3(nofeedbac)2.75 E(k)-.22 E F0(timer e)
2.75 E(xpires.)-.165 E 21.15<834f>72 355 S(scillation pre)-21.15 E -.165
(ve)-.275 G(ntion \(optional\)).165 E 21.15<8353>72 371.6 S
(cheduling of transmission on non-realtime operating systems.)-21.15 E
F2 2.75(4.1. Measuring)72 401.2 R(the P)2.75 E(ack)-.11 E(et Size)-.11 E
F0(The parameter)72 417.8 Q F1(s)2.75 E F0(\(pack)2.75 E
(et size\) is normally kno)-.11 E(wn to an application.)-.275 E
(This may not be so in tw)5.5 E(o)-.11 E(cases:)72 430.8 Q 21.15<8354>72
447.4 S(he pack)-21.15 E(et size naturally v)-.11 E
(aries depending on the data.)-.275 E(In this case, although the pack)
5.5 E(et)-.11 E(size v)97 460.4 Q(aries, that v)-.275 E
(ariation is not coupled to the transmit rate.)-.275 E
(It should normally be safe to)5.5 E(use an estimate of the mean pack)97
473.4 Q(et size for)-.11 E F1(s)2.75 E F0(.)A 21.15<8354>72 490 S
(he application needs to change the pack)-21.15 E
(et size rather than the number of pack)-.11 E(ets per)-.11 E
(second to perform congestion control.)97 503 Q(This w)5.5 E
(ould normally be the case with pack)-.11 E(et audio)-.11 E
(applications where a \214x)97 516 Q(ed interv)-.165 E
(al of time needs to be represented by each pack)-.275 E 2.75(et. Such)
-.11 F(applications need to ha)97 529 Q .33 -.165(ve a c)-.22 H
(ompletely dif).165 E(ferent w)-.275 E(ay of measuring parameters.)-.11
E(The second class of applications are discussed separately in a separa\
te document on TFRC-PS.)72 545.6 Q -.165(Fo)72 558.6 S 2.75(rt).165 G(h\
e remainder of this section we assume the sender can estimate the pack)
-2.75 E(et size, and that)-.11 E
(congestion control is performed by adjusting the number of pack)72
571.6 Q(ets sent per second.)-.11 E(Handle)72 697 Q(y/P)-.165 E(adh)
-.165 E(ye/Flo)-.055 E(yd/W)-.11 E 252.843(idmer [P)-.44 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/F1 11/Times-Bold@0 SF 2.75
(4.2. Sender)72 85 R(Initialization)2.75 E F0 1.76 -.88(To i)72 101.6 T
(nitialize the sender).88 E 2.75(,t)-.44 G(he v)-2.75 E(alue of)-.275 E
/F2 11/Courier@0 SF(X)2.75 E F0(is set to 1 pack)2.75 E
(et/second and the)-.11 E F2(nofeedback)2.75 E F0(timer is set)2.75 E
(to e)72 114.6 Q(xpire after 2 seconds. The initial v)-.165 E(alues for)
-.275 E F2(R)2.75 E F0(\(R)2.75 E(TT\) and)-.66 E F2(t_RTO)2.75 E F0
(are unde\214ned until the)2.75 E 2.75(ya)-.165 G(re)-2.75 E
(set as described belo)72 127.6 Q 1.43 -.715(w. T)-.275 H(he intial v)
.715 E(alue of)-.275 E F2(tld)2.75 E F0 2.75(,f)C(or the T)-2.75 E
(ime Last Doubled during slo)-.385 E(w-start, is)-.275 E(set to -1.)72
140.6 Q F1 2.75(4.3. Sender)72 166.6 R(beha)2.75 E
(vior when a feedback pack)-.275 E(et is r)-.11 E(ecei)-.198 E -.11(ve)
-.11 G(d).11 E F0(The sender kno)72 183.2 Q
(ws its current sending rate,)-.275 E F2(X)2.75 E F0 2.75(,a)C
(nd maintains an estimate of the current round trip)-2.75 E(time,)72
196.2 Q F2(R)2.75 E F0 2.75(,a)C(nd an estimate of the timeout interv)
-2.75 E(al,)-.275 E F2(t_RTO)2.75 E F0(.)A(When a feedback pack)72 222.2
Q(et is recei)-.11 E -.165(ve)-.275 G 2.75(db).165 G 2.75(yt)-2.75 G
(he sender at time)-2.75 E F2(t_now)2.75 E F0 2.75(,t)C(he follo)-2.75 E
(wing actions should be)-.275 E(performed:)72 235.2 Q 13.087
(1\) Calculate)72 255.4 R 2.75(an)2.75 G .55 -.275(ew r)-2.75 H
(ound trip sample.).275 E F2
(R_sample = \(t_now - t_recvdata\) - t_delay)97 268.4 Q F0(.)A 13.087
(2\) Update)72 285 R(the round trip time estimate:)2.75 E F2
(If no feedback has been received before)133 304 Q 6.6(R=R)159.4 317 S
(_sample;)-6.6 E(Else)133 330 Q 6.6(R=q)159.4 343 S
(*R + \(1-q\)*R_sample;)-6.6 E F0(TFRC is not sensiti)97 362 Q .33 -.165
(ve t)-.275 H 2.75(ot).165 G(he precise v)-2.75 E
(alue for the \214lter constant)-.275 E F2(q)2.75 E F0 2.75(,b)C
(ut we recommend a)-2.97 E(def)97 375 Q(ault v)-.11 E(alue of 0.9.)-.275
E 13.087(3\) Update)72 391.6 R(the timeout interv)2.75 E(al:)-.275 E F2
(t_RTO = 4*R)133 410.6 Q F0(.)A 13.087(4\) Update)72 433.2 R
(the sending rate as follo)2.75 E(ws:)-.275 E F2(If \(p > 0\))158 452.2
Q(Calculate X_calc using the TCP throughput equation.)184.4 465.2 Q 6.6
(X=m)184.4 478.2 S(ax\(min\(X_calc, 2*X_recv\), s/t_mbi\);)-6.6 E(Else)
158 491.2 Q(If \(t_now - tld >= R\))184.4 504.2 Q 6.6(X=m)210.8 517.2 S
(ax\(min\(2*X, 2*X_recv\), s/R\);)-6.6 E(tld = t_now;)210.8 530.2 Q F0
(Note that if p == 0, then the sender is in slo)122 549.2 Q
(w-start phase, where it approximately)-.275 E(doubles the sending rate\
 each round-trip time until a loss occurs. The s/R term gi)122 562.2 Q
-.165(ve)-.275 G 2.75(sa).165 G(minimum sending rate during slo)122
575.2 Q(w-start of one pack)-.275 E(et per R)-.11 E(TT)-.66 E 5.5(.T)
-.814 G(he parameter)-5.5 E F2(t_mbi)122 588.2 Q F0
(is 64 seconds, and represents the maximum inter)2.75 E(-pack)-.22 E
(et back)-.11 E(of)-.11 E 2.75(fi)-.275 G(nterv)-2.75 E(al in the)-.275
E(persistent absense of feedback.)122 601.2 Q
(Thus, when p > 0 the sender sends at least one pack)5.5 E(et)-.11 E
-2.365 -.275(ev e)122 614.2 T(ry 64 seconds.).275 E(Handle)72 697 Q(y/P)
-.165 E(adh)-.165 E(ye/Flo)-.055 E(yd/W)-.11 E 252.843(idmer [P)-.44 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 13.087(5\) Reset)72 85 R(the)
2.75 E/F1 11/Courier@0 SF(nofeedback)2.75 E F0(timer to e)2.75 E
(xpire after)-.165 E F1(max\(4*R, 2*s/X\))2.75 E F0(seconds.)2.75 E/F2
11/Times-Bold@0 SF 2.75(4.4. Expiration)72 111 R(of nofeedback timer)
2.75 E F0(If the)72 127.6 Q F1(nofeedback)2.75 E F0(timer e)2.75 E
(xpires, the sender should perform the follo)-.165 E(wing actions:)-.275
E 13.087(1\) Cut)72 144.2 R(the sending rate in half.)2.75 E
(If the sender has recei)5.5 E -.165(ve)-.275 G 2.75(df).165 G
(eedback from the recei)-2.75 E -.165(ve)-.275 G .88 -.44(r, t).165 H
(his is).44 E(done by modifying the sender')97 157.2 Q 2.75(sc)-.605 G
(ached cop)-2.75 E 2.75(yo)-.11 G 2.75(fX)-2.75 G(_recv \(the recei)
-2.75 E .33 -.165(ve r)-.275 H 2.75(ate\). Because).165 F(the)2.75 E
(sending rate is limited to at most twice X_recv)97 170.2 Q 2.75(,m)
-.715 G(odifying X_recv limits the current sending)-2.75 E(rate, b)97
183.2 Q(ut allo)-.22 E(ws the sender to slo)-.275 E
(w-start, doubling its sending rate each R)-.275 E(TT)-.66 E 2.75(,i)
-.814 G 2.75(ff)-2.75 G(eedback)-2.75 E
(messages resume reporting no losses.)97 196.2 Q F1
(If \(X_calc > 2*X_recv\))158 215.2 Q
(X_recv = max\(X_recv/2, s/\(2*t_mbi\)\);)184.4 228.2 Q(Else)158 241.2 Q
(X_recv = X_calc/4;)184.4 254.2 Q F0(The term)97 276.8 Q F1
(s/\(2*t_mbi\))2.75 E F0(limits the back)2.75 E(of)-.11 E 2.75(ft)-.275
G 2.75(oo)-2.75 G(ne pack)-2.75 E(et e)-.11 E -.165(ve)-.275 G
(ry 64 seconds in the case of).165 E(persistent absence of feedback.)97
289.8 Q 13.087(2\) The)72 310 R -.275(va)2.75 G(lue of).275 E F1(X)2.75
E F0(must then be recalculated as described under point \(4\) abo)2.75 E
-.165(ve)-.165 G(.).165 E(If the)97 336 Q F1(nofeedback)2.75 E F0
(timer e)2.75 E(xpires when the sender does not yet ha)-.165 E .33 -.165
(ve a)-.22 H 2.75(nR).165 G(TT sample, and)-3.41 E(has not yet recei)97
349 Q -.165(ve)-.275 G 2.75(da).165 G .33 -.165(ny f)-2.75 H
(eedback from the recei).165 E -.165(ve)-.275 G .88 -.44(r, t).165 H
(hen step \(1\) can be skipped, and the).44 E
(sending rate cut in half directly:)97 362 Q 2.75(X=m)138.5 381 S
(ax\(X/2, s/t_mbi\))-2.75 E 13.087(3\) Restart)72 416.6 R(the)2.75 E F1
(nofeedback)2.75 E F0(timer to e)2.75 E(xpire after)-.165 E F1
(max\(4*R, 2*s/X\))2.75 E F0(seconds.)2.75 E
(Note that when the sender stops sending, the recei)72 433.2 Q -.165(ve)
-.275 G 2.75(rw).165 G(ill stop sending feedback.)-2.75 E
(This will cause)5.5 E(the)72 446.2 Q F1(nofeedback)2.75 E F0
(timer to start to e)2.75 E(xpire and decrease)-.165 E F1(X_recv)2.75 E
F0 5.5(.I)C 2.75(ft)-5.5 G(he sender subsequently)-2.75 E
(starts to send ag)72 459.2 Q(ain,)-.055 E F1(X_recv)2.75 E F0
(will limit the transmit rate, and a normal slo)2.75 E
(wstart phase will occur)-.275 E(until the transmit rate reaches)72
472.2 Q F1(X_calc)2.75 E F0(.)A F2 2.75(4.5. Pr)72 501.8 R -2.53 -.165
(ev e)-.198 H(nting Oscillations).165 E F0 1.76 -.88(To p)72 522 T(re)
.88 E -.165(ve)-.275 G(nt oscillatory beha).165 E(vior in en)-.22 E
(vironments with a lo)-.44 E 2.75(wd)-.275 G -.165(eg)-2.75 G
(ree of statistical multiple).165 E(xing it is)-.165 E
(useful to modify sender')72 535 Q 2.75(st)-.605 G(ransmit rate to pro)
-2.75 E(vide congestion a)-.165 E -.22(vo)-.22 G(idance beha).22 E
(vior by reducing the)-.22 E
(transmit rate as the queuing delay \(and hence R)72 548 Q
(TT\) increases.)-.66 E 1.76 -.88(To d)5.5 H 2.75(ot).88 G
(his the sender maintains an)-2.75 E(estimate of the long-term R)72 561
Q(TT and modi\214es its sending rate depending on ho)-.66 E 2.75(wt)
-.275 G(he most recent)-2.75 E(sample of the R)72 574 Q(TT dif)-.66 E
(fers from this v)-.275 E 2.75(alue. The)-.275 F(long-term sample is)
2.75 E F1(R_sqmean)2.75 E F0 2.75(,a)C(nd is set as)-2.75 E(follo)72 587
Q(ws:)-.275 E(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E(ye/Flo)-.055 E
(yd/W)-.11 E 252.843(idmer [P)-.44 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/F1 11/Courier@0 SF
(If no feedback has been received before)108 85 Q
(R_sqmean = sqrt\(R_sample\);)134.4 98 Q(Else)108 111 Q
(R_sqmean = q2*R_sqmean + \(1-q2\)*sqrt\(R_sample\);)134.4 124 Q F0
(Thus)72 143 Q F1(R_sqmean)2.75 E F0(gi)2.75 E -.165(ve)-.275 G 2.75(st)
.165 G(he e)-2.75 E(xponentially weighted mo)-.165 E(ving a)-.165 E
-.165(ve)-.22 G(rage of the square root of the R).165 E(TT)-.66 E 2.75
(samples. The)72 156 R(constant)2.75 E F1(q2)2.75 E F0
(should be set similarly to)2.75 E F1(q)2.75 E F0 2.75(,a)C
(nd we recommend a v)-2.75 E(alue of 0.9 as the)-.275 E(def)72 169 Q
(ault.)-.11 E(The sender obtains the base transmit rate,)72 185.6 Q F1
(X)2.75 E F0 2.75(,f)C(rom the throughput function.)-2.75 E
(It then calculates a)5.5 E(modi\214ed instantaneous transmit rate)72
198.6 Q F1(X_inst)2.75 E F0 2.75(,a)C 2.75(sf)-2.75 G(ollo)-2.75 E(ws:)
-.275 E F1(X_inst = X * R_sqmean / sqrt\(R_sample\);)108 217.6 Q F0
(When)72 240.2 Q F1(sqrt\(R_sample\))2.75 E F0(is greater than)2.75 E F1
(R_sqmean)2.75 E F0(then the queue is typically increasing and)2.75 E
(so the transmit rate needs to be decreased for stable operation.)72
253.2 Q(Note: This modi\214cation is not al)72 269.8 Q -.11(wa)-.11 G
(ys strictly required, especially if the de).11 E(gree of statistical)
-.165 E(multiple)72 282.8 Q(xing in the netw)-.165 E(ork is high.)-.11 E
(Ho)5.5 E(we)-.275 E -.165(ve)-.275 G 2.75(rw).165 G 2.75(er)-2.75 G
(ecommend that it is done because it does mak)-2.75 E(e)-.11 E
(TFRC beha)72 295.8 Q .33 -.165(ve b)-.22 H(etter in en).165 E
(vironments with a lo)-.44 E 2.75(wl)-.275 G -2.365 -.275(ev e)-2.75 H
2.75(lo).275 G 2.75(fs)-2.75 G(tatistical multiple)-2.75 E 2.75
(xing. If)-.165 F(it is not done,)2.75 E(we recommend using a v)72 308.8
Q(ery lo)-.165 E 2.75(wv)-.275 G(alue of)-3.025 E F1(q)2.75 E F0 2.75
(,s)C(uch that)-2.75 E F1(q)2.75 E F0(is close to or e)2.75 E
(xactly zero.)-.165 E/F2 11/Times-Bold@0 SF 2.75(4.6. Scheduling)72
334.8 R(of P)2.75 E(ack)-.11 E(et T)-.11 E(ransmissions)-.814 E F0(As T\
FRC is rate-based, and as operating systems typically cannot schedule e)
72 351.4 Q -.165(ve)-.275 G(nts precisely).165 E 2.75(,i)-.715 G 2.75
(ti)-2.75 G(s)-2.75 E
(necessary to be opportunistic about sending data pack)72 364.4 Q
(ets so that the correct a)-.11 E -.165(ve)-.22 G(rage rate is).165 E
(maintained despite the course-grain or irre)72 377.4 Q
(gular scheduling of the operating system.)-.165 E(Thus a)5.5 E
(typical sending loop will calculate the correct inter)72 390.4 Q(-pack)
-.22 E(et interv)-.11 E(al,)-.275 E F1(t_ipi)2.75 E F0 2.75(,a)C 2.75
(sf)-2.75 G(ollo)-2.75 E(ws:)-.275 E F1(t_ipi = s/X_inst;)108 409.4 Q F0
(When a sender \214rst starts sending at time)72 428.4 Q F1(t_0)2.75 E
F0 2.75(,i)C 2.75(tc)-2.75 G(alculates)-2.75 E F1(t_ipi)2.75 E F0 2.75
(,a)C(nd calculates a nominal)-2.75 E(send time)72 441.4 Q F1
(t_1 = t_0 + t_ipi)2.75 E F0(for pack)2.75 E(et 1.)-.11 E
(When the application becomes idle, it checks)5.5 E(the current time,)72
454.4 Q F1(t_now)2.75 E F0 2.75(,a)C
(nd then requests re-scheduling after)-2.75 E F1
(\(t_ipi - \(t_now - t_0\)\))2.75 E F0 2.75(seconds. When)72 467.4 R
(the application is re-scheduled, it checks the current time,)2.75 E F1
(t_now)2.75 E F0 2.75(,a)C -.055(ga)-2.75 G(in. If).055 E(\()72 480.4 Q
F1(t_now > t_1 - delta)A F0 2.75(\)t)C(hen pack)-2.75 E(et 1 is sent.)
-.11 E(No)72 497 Q 2.75(wan)-.275 G -.275(ew)-2.75 G F1(t_ipi)3.025 E F0
(may be calculated, and used to calculate a nominal send time)2.75 E F1
(t_2)2.75 E F0(for pack)2.75 E(et)-.11 E(2:)72 510 Q F1
(t2 = t_1 + t_ipi)2.75 E F0 5.5(.T)C
(he process then repeats, with each successi)-5.5 E .33 -.165(ve p)-.275
H(ack).165 E(et')-.11 E 2.75(ss)-.605 G(end time)-2.75 E
(being calculated from the nominal send time of the pre)72 523 Q
(vious pack)-.275 E(et.)-.11 E
(In some cases, when the nominal send time,)72 539.6 Q F1(t_i)2.75 E F0
2.75(,o)C 2.75(ft)-2.75 G(he ne)-2.75 E(xt pack)-.165 E
(et is calculated, it may already)-.11 E(be the case that)72 552.6 Q F1
(t_now > t_i - delta)2.75 E F0 5.5(.I)C 2.75(ns)-5.5 G
(uch a case the pack)-2.75 E(et should be sent)-.11 E(immediately)72
565.6 Q 5.5(.T)-.715 G(hus if the operating system has coarse timer gra\
nularity and the transmit rate is)-5.5 E
(high, then TFRC may send short b)72 578.6 Q(ursts of se)-.22 E -.165
(ve)-.275 G(ral pack).165 E(ets separated by interv)-.11 E
(als of the OS timer)-.275 E(granularity)72 591.6 Q(.)-.715 E
(The parameter)72 608.2 Q F1(delta)2.75 E F0(is to allo)2.75 E 2.75(wad)
-.275 G -.165(eg)-2.75 G(ree of \215e).165 E
(xibility in the send time of a pack)-.165 E 2.75(et. If)-.11 F(the)2.75
E(operating system has a scheduling timer granularity of)72 621.2 Q F1
(t_gran)2.75 E F0(seconds, then delta w)2.75 E(ould)-.11 E
(typically be set to:)72 634.2 Q(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E
(ye/Flo)-.055 E(yd/W)-.11 E 247.343(idmer [P)-.44 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/Courier@0 SF
(delta = min\(t_ipi/2, t_gran/2\);)108 85 Q(t_gran)72 104 Q F0
(is 10ms on man)2.75 E 2.75(yU)-.165 G(nix systems.)-2.75 E(If)5.5 E F1
(t_gran)2.75 E F0(is not kno)2.75 E(wn, a v)-.275 E
(alue of 10ms can be safely)-.275 E(assumed.)72 117 Q/F2 11/Times-Bold@0
SF 2.75(5. Calculation)72 143 R(of the Loss Ev)2.75 E(ent Rate \()-.11 E
F1(p)A F0(\))A
(Obtaining an accurate and stable measurement of the loss e)72 159.6 Q
-.165(ve)-.275 G(nt rate is of primary importance for).165 E
(TFRC. Loss rate measurement is performed at the recei)72 172.6 Q -.165
(ve)-.275 G .88 -.44(r, b).165 H(ased on the detection of lost or).44 E
(mark)72 185.6 Q(ed pack)-.11 E(ets from the sequence numbers of arri)
-.11 E(ving pack)-.275 E(ets. W)-.11 E 2.75(ed)-.88 G
(escribe this process before)-2.75 E(describing the rest of the recei)72
198.6 Q -.165(ve)-.275 G 2.75(rp).165 G(rotocol.)-2.75 E F2 2.75
(5.1. Detection)72 224.6 R(of Lost or Mark)2.75 E(ed P)-.11 E(ack)-.11 E
(ets)-.11 E F0(TFRC assumes that all pack)72 241.2 Q
(ets contain a sequence number that is incremented by one for each)-.11
E(pack)72 254.2 Q(et that is sent.)-.11 E -.165(Fo)5.5 G 2.75(rt).165 G
(he purposes of this speci\214cation, we require that if a lost pack)
-2.75 E(et is)-.11 E(retransmitted, the retransmission is gi)72 267.2 Q
-.165(ve)-.275 G 2.75(nan).165 G .55 -.275(ew s)-2.75 H
(equence number that is the latest in the).275 E
(transmission sequence, and not the same sequence number as the pack)72
280.2 Q(et that w)-.11 E(as lost.)-.11 E(If a)5.5 E(transport protocol \
has the requirement that it must retransmit with the original sequence \
number)72 293.2 Q(,)-.44 E
(then the transport protocol designer must \214gure out ho)72 306.2 Q
2.75(wt)-.275 G 2.75(od)-2.75 G(istinguish delayed from retransmitted)
-2.75 E(pack)72 319.2 Q(ets and ho)-.11 E 2.75(wt)-.275 G 2.75(od)-2.75
G(etect lost retransmissions.)-2.75 E(The recei)72 335.8 Q -.165(ve)
-.275 G 2.75(rm).165 G(aintains a data structure that k)-2.75 E
(eeps track of which pack)-.11 E(ets ha)-.11 E .33 -.165(ve a)-.22 H
(rri).165 E -.165(ve)-.275 G 2.75(da).165 G(nd which)-2.75 E
(are missing.)72 348.8 Q -.165(Fo)5.5 G 2.75(rt).165 G(he purposes of s\
peci\214cation, we assume that the data structure consists of a list)
-2.75 E(of pack)72 361.8 Q(ets that ha)-.11 E .33 -.165(ve a)-.22 H(rri)
.165 E -.165(ve)-.275 G 2.75(da).165 G(long with the recei)-2.75 E -.165
(ve)-.275 G 2.75(rt).165 G(imestamp when each pack)-2.75 E(et w)-.11 E
(as recei)-.11 E -.165(ve)-.275 G 2.75(d. In).165 F(practice this data \
structure will normally be stored in a more compact representation, b)72
374.8 Q(ut this is)-.22 E(implementation-speci\214c.)72 387.8 Q
(The loss of a pack)72 404.4 Q(et is detected by the arri)-.11 E -.275
(va)-.275 G 2.75(lo).275 G 2.75(fa)-2.75 G 2.75(tl)-2.75 G
(east three pack)-2.75 E(ets with a higher sequence)-.11 E
(number than the lost pack)72 417.4 Q 2.75(et. The)-.11 F
(requirement for three subsequent pack)2.75 E(ets is the same as with)
-.11 E(TCP)72 430.4 Q 2.75(,a)-1.221 G(nd is to mak)-2.75 E 2.75(eT)-.11
G(FRC more rob)-2.75 E(ust in the presence of reordering.)-.22 E
(In contrast to TCP)5.5 E 2.75(,i)-1.221 G 2.75(fa)-2.75 G(pack)72 443.4
Q(et arri)-.11 E -.165(ve)-.275 G 2.75(sl).165 G
(ate \(after 3 subsequent pack)-2.75 E(ets arri)-.11 E -.165(ve)-.275 G
(d\) in TFRC, the late pack).165 E(et can \214ll the hole in)-.11 E
(TFRC')72 456.4 Q 2.75(sr)-.605 G(eception record, and the recei)-2.75 E
-.165(ve)-.275 G 2.75(rc).165 G(an recalculate the loss e)-2.75 E -.165
(ve)-.275 G(nt rate.).165 E(Future v)5.5 E(ersions of)-.165 E
(TFRC might mak)72 469.4 Q 2.75(et)-.11 G
(he requirement for three subsequent pack)-2.75 E(ets adapti)-.11 E .33
-.165(ve b)-.275 H(ased on e).165 E(xperienced)-.165 E(pack)72 482.4 Q
(et reordering, b)-.11 E(ut we do not specify such a mechanism here.)
-.22 E -.165(Fo)72 499 S 2.75(ra).165 G 2.75(nE)-2.75 G
(CN-capable connection, a mark)-2.75 E(ed pack)-.11 E
(et is detected as a congestion e)-.11 E -.165(ve)-.275 G
(nt as soon as it).165 E(arri)72 512 Q -.165(ve)-.275 G(s, without ha)
.165 E(ving to w)-.22 E(ait for the arri)-.11 E -.275(va)-.275 G 2.75
(lo).275 G 2.75(fs)-2.75 G(ubsequent pack)-2.75 E(ets.)-.11 E F2 2.75
(5.2. T)72 551 R(ranslation fr)-.814 E(om Loss History to Loss Ev)-.198
E(ents)-.11 E F0(TFRC requires that the loss fraction be rob)72 567.6 Q
(ust to se)-.22 E -.165(ve)-.275 G(ral consecuti).165 E .33 -.165(ve p)
-.275 H(ack).165 E(ets lost where those)-.11 E(pack)72 580.6 Q
(ets are part of the same loss e)-.11 E -.165(ve)-.275 G 2.75(nt. This)
.165 F(is similar to TCP)2.75 E 2.75(,w)-1.221 G
(hich \(typically\) only performs)-2.75 E
(one halving of the congestion windo)72 593.6 Q 2.75(wd)-.275 G
(uring an)-2.75 E 2.75(ys)-.165 G(ingle R)-2.75 E(TT)-.66 E 5.5(.T)-.814
G(hus the recei)-5.5 E -.165(ve)-.275 G 2.75(rn).165 G(eeds to map the)
-2.75 E(pack)72 606.6 Q(et loss history into a loss e)-.11 E -.165(ve)
-.275 G(nt record, where a loss e).165 E -.165(ve)-.275 G
(nt is one or more pack).165 E(ets lost in an)-.11 E -.66(RT)72 619.6 S
4.378 -.814(T. T).66 H 2.75(op)-.066 G(erform this mapping, the recei)
-2.75 E -.165(ve)-.275 G 2.75(rn).165 G(eeds to kno)-2.75 E 2.75(wt)
-.275 G(he R)-2.75 E(TT to use, and this is supplied)-.66 E
(periodically by the sender)72 632.6 Q 2.75(,t)-.44 G
(ypically as control information piggy-back)-2.75 E(ed onto a data pack)
-.11 E(et.)-.11 E(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E(ye/Flo)-.055 E
(yd/W)-.11 E 247.343(idmer [P)-.44 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(TFRC is not sensiti)72 85 Q
.33 -.165(ve t)-.275 H 2.75(oh).165 G .55 -.275(ow t)-2.75 H(he R).275 E
(TT measurement sent to the recei)-.66 E -.165(ve)-.275 G 2.75(ri).165 G
2.75(sm)-2.75 G(ade, b)-2.75 E(ut we)-.22 E(recommend using the sender')
72 98 Q 2.75(sc)-.605 G(alculated R)-2.75 E(TT)-.66 E(,)-.814 E/F1 11
/Courier@0 SF(R)2.75 E F0 2.75(,\()C
(see Section 4.3\) for this purpose.)-2.75 E 1.76 -.88(To d)72 114.6 T
(etermine whether a lost or mark).88 E(ed pack)-.11 E
(et should start a ne)-.11 E 2.75(wl)-.275 G(oss e)-2.75 E -.165(ve)
-.275 G(nt, or be counted as part).165 E(of an e)72 127.6 Q
(xisting loss e)-.165 E -.165(ve)-.275 G
(nt, we need to compare the sequence numbers and timestamps of the).165
E(pack)72 140.6 Q(ets that arri)-.11 E -.165(ve)-.275 G 2.75(da).165 G
2.75(tt)-2.75 G(he recei)-2.75 E -.165(ve)-.275 G 3.96 -.605(r. F).165 H
(or a mark).44 E(ed pack)-.11 E(et)-.11 E F1(S_new)2.75 E F0 2.75(,i)C
(ts reception time)-2.75 E F1(T_new)2.75 E F0(can)2.75 E
(be noted directly)72 153.6 Q 5.5(.F)-.715 G(or a lost pack)-5.665 E
(et, we can interpolate to infer the nominal "arri)-.11 E -.275(va)-.275
G 2.75(lt).275 G(ime".)-2.75 E(Assume:)72 166.6 Q F1(S_loss)97 183.2 Q
F0(is the sequence number of a lost pack)2.75 E(et.)-.11 E F1(S_before)
97 199.8 Q F0(is the sequence number of the last pack)2.75 E(et to arri)
-.11 E .33 -.165(ve w)-.275 H(ith sequence number).165 E(before S_loss.)
97 212.8 Q F1(S_after)97 229.4 Q F0
(is the sequence number of the \214rst pack)2.75 E(et to arri)-.11 E .33
-.165(ve w)-.275 H(ith sequence number after).165 E(S_loss.)97 242.4 Q
F1(T_before)97 259 Q F0(is the reception time of S_before.)2.75 E F1
(T_after)97 275.6 Q F0(is the reception time of S_after)2.75 E(.)-.605 E
(Note that)72 292.2 Q F1(T_before)2.75 E F0
(can either be before or after)2.75 E F1(T_after)2.75 E F0
(due to reordering.)2.75 E -.165(Fo)72 308.8 S 2.75(ral).165 G(ost pack)
-2.75 E(et)-.11 E F1(S_loss)2.75 E F0 2.75(,w)C 2.75(ec)-2.75 G
(an interpolate its nominal "arri)-2.75 E -.275(va)-.275 G 2.75(lt).275
G(ime" at the recei)-2.75 E -.165(ve)-.275 G 2.75(rf).165 G(rom the)
-2.75 E(arri)72 321.8 Q -.275(va)-.275 G 2.75(lt).275 G(imes of)-2.75 E
F1(S_before)2.75 E F0(and)2.75 E F1(S_after)2.75 E F0 2.75(.T)C(hus)
-2.75 E F1(T_loss = T_before + \( \(T_after - T_before\))108 340.8 Q 6.6
(*\()187.2 353.8 S(S_loss - S_before\)/\(S_after - S_before\) \);)-6.6 E
F0(Note that if the sequence space wrapped between S_before and S_after)
72 376.4 Q 2.75(,t)-.44 G(hen the sequence)-2.75 E
(numbers must be modi\214ed to tak)72 389.4 Q 2.75(et)-.11 G
(his into account before performing this calculation.)-2.75 E(If the)5.5
E(lar)72 402.4 Q(gest possible sequence number is)-.198 E F1(S_max)2.75
E F0 2.75(,a)C(nd)-2.75 E F1(S_before > S_after)2.75 E F0 2.75(,t)C
(hen modifying)-2.75 E(each sequence number)72 415.4 Q F1(S)2.75 E F0
(by)2.75 E F1(S')2.75 E F0 2.75(=\()2.75 G F1(S)-2.75 E F0 2.75(+\()2.75
G F1(S_max)-2.75 E F0 2.75(+1)2.75 G(\)/2\) mod \()-2.75 E F1(S_max)A F0
2.75(+1)2.75 G 2.75(\)w)-2.75 G(ould normally be)-2.86 E(suf)72 428.4 Q
(\214cient.)-.275 E(If the lost pack)72 445 Q(et)-.11 E F1(S_old)2.75 E
F0 -.11(wa)2.75 G 2.75(sd).11 G(etermined to ha)-2.75 E .33 -.165(ve s)
-.22 H(tarted the pre).165 E(vious loss e)-.275 E -.165(ve)-.275 G
(nt, and we ha).165 E .33 -.165(ve j)-.22 H(ust).165 E(determined that)
72 458 Q F1(S_new)2.75 E F0
(has been lost, then we interpolate the nominal arri)2.75 E -.275(va)
-.275 G 2.75(lt).275 G(imes of)-2.75 E F1(S_old)2.75 E F0(and)72 471 Q
F1(S_new)2.75 E F0 2.75(,c)C(alled)-2.75 E F1(T_old)2.75 E F0(and)2.75 E
F1(T_new)2.75 E F0(respecti)2.75 E -.165(ve)-.275 G(ly).165 E(.)-.715 E
(If)72 487.6 Q F1(T_old + R)2.75 E F0(>=)2.75 E F1(T_new)2.75 E F0 2.75
(,t)C(hen S_ne)-2.75 E 2.75(wi)-.275 G 2.75(sp)-2.75 G(art of the e)
-2.75 E(xisting loss e)-.165 E -.165(ve)-.275 G(nt. Otherwise S_ne).165
E 2.75(wi)-.275 G 2.75(st)-2.75 G(he)-2.75 E(\214rst pack)72 500.6 Q
(et in a ne)-.11 E 2.75(wl)-.275 G(oss e)-2.75 E -.165(ve)-.275 G(nt.)
.165 E/F2 11/Times-Bold@0 SF 2.75(5.3. Inter)72 530.2 R(-loss Ev)-.407 E
(ent Inter)-.11 E -.11(va)-.11 G(l).11 E F0(If a loss interv)72 546.8 Q
(al, A, is determined to ha)-.275 E .33 -.165(ve s)-.22 H
(tarted with pack).165 E(et sequence number S_A and the ne)-.11 E(xt)
-.165 E(loss interv)72 559.8 Q(al, B, started with pack)-.275 E
(et sequence number S_B, then the number of pack)-.11 E(ets in loss)-.11
E(interv)72 572.8 Q(al A is gi)-.275 E -.165(ve)-.275 G 2.75(nb).165 G
2.75(y\()-2.75 G(S_B - S_A\).)-2.75 E(Handle)72 697 Q(y/P)-.165 E(adh)
-.165 E(ye/Flo)-.055 E(yd/W)-.11 E 247.343(idmer [P)-.44 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/F1 11/Times-Bold@0 SF 2.75
(5.4. A)72 85 R -.11(ve)-1.1 G(rage Loss Inter).11 E -.11(va)-.11 G(l)
.11 E F0 1.76 -.88(To c)72 101.6 T(alculate the loss e).88 E -.165(ve)
-.275 G(nt rate).165 E/F2 11/Courier@0 SF(p)2.75 E F0 2.75(,w)C 2.75
<658c>-2.75 G(rst calculate the a)-2.75 E -.165(ve)-.22 G
(rage loss interv).165 E 2.75(al. This)-.275 F(is done using a)2.75 E
(\214lter that weights the)72 114.6 Q F2(n)2.75 E F0(most recent loss e)
2.75 E -.165(ve)-.275 G(nt interv).165 E(als in such a w)-.275 E
(ay that the measured loss e)-.11 E -.165(ve)-.275 G(nt).165 E
(rate changes smoothly)72 127.6 Q(.)-.715 E -.88(We)72 144.2 S(ights).88
E F2(w_0)2.75 E F0(to)2.75 E F2(w_\(n-1\))2.75 E F0(are calculated as:)
2.75 E F2(If \(i < n/2\))108 163.2 Q(w_i = 1;)127.8 176.2 Q(Else)108
189.2 Q(w_i = 1 - \(i - \(n/2 - 1\)\)/\(n/2 + 1\);)127.8 202.2 Q F0
(Thus if n=8, the v)72 224.8 Q(alues of)-.275 E F2(w_0)2.75 E F0(to)2.75
E F2(w_7)2.75 E F0(are:)2.75 E(1.0, 1.0, 1.0, 1.0, 0.8, 0.6, 0.4, 0.2)97
241.4 Q(The v)72 258 Q(alue)-.275 E F2(n)2.75 E F0
(for the number of loss interv)2.75 E
(als used in calculating the loss e)-.275 E -.165(ve)-.275 G
(nt rate determines).165 E(TRFC')72 271 Q 2.75(ss)-.605 G
(peed in responding to changes in the le)-2.75 E -.165(ve)-.275 G 2.75
(lo).165 G 2.75(fc)-2.75 G 2.75(ongestion. As)-2.75 F
(currently speci\214ed, TFRC)2.75 E(should not be used for v)72 284 Q
(alues of)-.275 E F2(n)2.75 E F0
(signi\214cantly greater than 8, for traf)2.75 E
(\214c that might compete in)-.275 E(the global Internet with TCP)72 297
Q 5.5(.A)-1.221 G 2.75(tt)-5.5 G(he v)-2.75 E
(ery least, safe operation with v)-.165 E(alues of)-.275 E F2(n)2.75 E
F0(greater than 8)2.75 E -.11(wo)72 310 S
(uld require a slight change to TFRC').11 E 2.75(sm)-.605 G
(echanisms to include a more se)-2.75 E -.165(ve)-.275 G
(re response to tw).165 E 2.75(oo)-.11 G(r)-2.75 E
(more round-trip times with hea)72 323 Q(vy pack)-.22 E(et loss.)-.11 E
(When calculating the a)72 339.6 Q -.165(ve)-.22 G(rage loss interv).165
E(al we need to decide whether to include the interv)-.275 E(al since)
-.275 E(the most recent pack)72 352.6 Q(et loss e)-.11 E -.165(ve)-.275
G 2.75(nt. W).165 F 2.75(eo)-.88 G(nly do this if it is suf)-2.75 E
(\214ciently lar)-.275 E(ge to increase the a)-.198 E -.165(ve)-.22 G
(rage).165 E(loss interv)72 365.6 Q(al.)-.275 E
(Thus if the most recent loss interv)72 382.2 Q
(als are I_0 to I_n, with I_0 being the interv)-.275 E
(al since the most)-.275 E(recent loss e)72 395.2 Q -.165(ve)-.275 G
(nt, then we calculate the a).165 E -.165(ve)-.22 G(rage loss interv)
.165 E(al I_mean as:)-.275 E F2(I_tot0 = 0;)108 414.2 Q(I_tot1 = 0;)108
427.2 Q(W_tot = 0;)108 440.2 Q(for \(i = 0 to n-1\) {)108 453.2 Q
(I_tot0 = I_tot0 + \(I_i * w_i\);)121.2 466.2 Q(W_tot = W_tot + w_i;)
121.2 479.2 Q(})108 492.2 Q(for \(i = 1 to n\) {)108 505.2 Q
(I_tot1 = I_tot1 + \(I_i * w_\(i-1\)\);)121.2 518.2 Q(})108 531.2 Q
(I_tot = max\(I_tot0, I_tot1\);)108 544.2 Q(I_mean = I_tot/W_tot;)108
557.2 Q F0(The loss e)72 576.2 Q -.165(ve)-.275 G(nt rate,).165 E F2(p)
2.75 E F0(is simply:)2.75 E F2 6.6(p=1/I)108 595.2 S(_mean;)-6.6 E F0
(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E(ye/Flo)-.055 E(yd/W)-.11 E
247.343(idmer [P)-.44 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 2.75
(5.5. History)72 85 R(Discounting)2.75 E F0
(As described in Section 5.4, the most recent loss interv)72 101.6 Q
(al is only assigned)-.275 E/F2 11/Courier@0 SF(1/\(0.75*n\))2.75 E F0
(of the)2.75 E(total weight in calculating the a)72 114.6 Q -.165(ve)
-.22 G(rage loss interv).165 E(al, re)-.275 E -.055(ga)-.165 G
(rdless of the size of the most recent loss).055 E(interv)72 127.6 Q
2.75(al. This)-.275 F(section describes an optional history discounting\
 mechanism, discussed further in)2.75 E([3] and [9], that allo)72 140.6
Q(ws the TFRC recei)-.275 E -.165(ve)-.275 G 2.75(rt).165 G 2.75(oa)
-2.75 G(djust the weights, concentrating more of the)-2.75 E(relati)72
153.6 Q .33 -.165(ve w)-.275 H(eight on the most recent loss interv).165
E(al, when the most recent loss interv)-.275 E(al is more than)-.275 E
(twice as lar)72 166.6 Q(ge as the computed a)-.198 E -.165(ve)-.22 G
(rage loss interv).165 E(al.)-.275 E 1.76 -.88(To c)72 183.2 T
(arry out history discounting, we associate a discount f).88 E(actor)
-.11 E F2(DF_i)2.75 E F0(with each loss interv)2.75 E(al)-.275 E F2
(L_i, for i > 0)72 196.2 Q F0 2.75(,w)C(here each discount f)-2.75 E
(actor is a \215oating point number)-.11 E 5.5(.T)-.605 G
(he discount array)-5.5 E(maintains the cumulati)72 209.2 Q .33 -.165
(ve h)-.275 H(istory of discounting for each loss interv).165 E 2.75
(al. At)-.275 F(the be)2.75 E(ginning, the)-.165 E -.275(va)72 222.2 S
(lues of).275 E F2(DF_i)2.75 E F0
(in the discount array are initialized to 1:)2.75 E F2
(for \(i = 1 to n\) {)108 241.2 Q(DF_i = 1;)121.2 254.2 Q(})108 267.2 Q
F0(History discounting also uses a general discount f)72 286.2 Q(actor)
-.11 E F2(DF)2.75 E F0 2.75(,a)C(lso a \215oating point number)-2.75 E
2.75(,t)-.44 G(hat is)-2.75 E(also initialized to 1.)72 299.2 Q
(First we sho)5.5 E 2.75(wh)-.275 G .55 -.275(ow t)-2.75 H
(he discount f).275 E(actors are used in calculating the a)-.11 E -.165
(ve)-.22 G(rage).165 E(loss interv)72 312.2 Q
(al, and then we describe later in this section ho)-.275 E 2.75(wt)-.275
G(he discount f)-2.75 E(actors are modi\214ed o)-.11 E -.165(ve)-.165 G
(r).165 E(time.)72 325.2 Q(As described in Section 5.4 the a)72 341.8 Q
-.165(ve)-.22 G(rage loss interv).165 E(al is calculated using the)-.275
E F2(n)2.75 E F0(pre)2.75 E(vious loss)-.275 E(interv)72 354.8 Q(als)
-.275 E F2(I_1, ..., I_n)2.75 E F0 2.75(,a)C(nd the interv)-2.75 E(al)
-.275 E F2(I_0)2.75 E F0(that represents the number of pack)2.75 E
(ets recei)-.11 E -.165(ve)-.275 G(d).165 E(since the last loss e)72
367.8 Q -.165(ve)-.275 G 2.75(nt. The).165 F(computation of the a)2.75 E
-.165(ve)-.22 G(rage loss interv).165 E(al using the discount f)-.275 E
(actors)-.11 E
(is a simple modi\214cation of the procedure in Section 5.4, as follo)72
380.8 Q(ws:)-.275 E F2(I_tot0 = I_0 * w_0)108 399.8 Q(I_tot1 = 0;)108
412.8 Q(W_tot0 = w_0)108 425.8 Q(W_tot1 = 0;)108 438.8 Q
(for \(i = 1 to n-1\) {)108 451.8 Q
(I_tot0 = I_tot0 + \(I_i * w_i * DF_i * DF\);)121.2 464.8 Q
(W_tot0 = W_tot0 + w_i * DF_i * DF;)121.2 477.8 Q(})108 490.8 Q
(for \(i = 1 to n\) {)108 503.8 Q
(I_tot1 = I_tot1 + \(I_i * w_\(i-1\) * DF_i\);)121.2 516.8 Q
(W_tot1 = W_tot1 + w_\(i-1\) * DF_i;)121.2 529.8 Q(})108 542.8 Q 6.6
(p=m)108 555.8 S(in\(W_tot0/I_tot0, W_tot1/I_tot1\);)-6.6 E F0
(The general discounting f)72 574.8 Q(actor)-.11 E(,)-.44 E F2(DF)2.75 E
F0(is updated on e)2.75 E -.165(ve)-.275 G(ry pack).165 E(et arri)-.11 E
-.275(va)-.275 G 2.75(la).275 G 2.75(sf)-2.75 G(ollo)-2.75 E
(ws. First, the)-.275 E(recei)72 587.8 Q -.165(ve)-.275 G 2.75(rc).165 G
(omputes the weighted a)-2.75 E -.165(ve)-.22 G(rage).165 E F2(I_mean)
2.75 E F0(of the loss interv)2.75 E(als)-.275 E F2(I_1, ..., I_n)2.75 E
F0(:)A(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E(ye/Flo)-.055 E(yd/W)-.11
E 247.343(idmer [P)-.44 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/F1 11/Courier@0 SF(I_tot = 0;)
108 85 Q(W_tot = 0;)108 98 Q(for \(i = 1 to n\) {)108 111 Q
(W_tot = W_tot + w_\(i-1\) * DF_i;)121.2 124 Q
(I_tot = I_tot + \(I_i * w_\(i-1\) * DF_i\);)121.2 137 Q(})108 150 Q
(I_mean = I_tot / W_tot;)108 163 Q F0(This weighted a)72 182 Q -.165(ve)
-.22 G(rage).165 E F1(I_mean)2.75 E F0(is compared to)2.75 E F1(I_0)2.75
E F0 2.75(,t)C(he number of pack)-2.75 E(ets recei)-.11 E -.165(ve)-.275
G 2.75(ds).165 G(ince the)-2.75 E(last loss e)72 195 Q -.165(ve)-.275 G
2.75(nt. If).165 F F1(I_0)2.75 E F0(is greater than twice)2.75 E F1
(I_mean)2.75 E F0 2.75(,t)C(hen the ne)-2.75 E 2.75(wl)-.275 G
(oss interv)-2.75 E(al is considerably)-.275 E(lar)72 208 Q
(ger than the old ones, and the general discount f)-.198 E(actor)-.11 E
F1(DF)2.75 E F0(is updated to decrease the relati)2.75 E -.165(ve)-.275
G(weight on the older interv)72 221 Q(als, as follo)-.275 E(ws:)-.275 E
F1(if \(I_0 > 2 * I_mean\) {)108 253 Q(DF = 2 * I_mean/I_0;)121.2 266 Q
(if \(DF < THRESHOLD\))121.2 279 Q(DF = THRESHOLD;)134.4 292 Q 6.6(}e)
108 305 S(lse)-6.6 E(DF = 1;)121.2 318 Q F0 2.75(An)72 337 S(onzero v)
-2.75 E(alue for)-.275 E F1(THRESHOLD)2.75 E F0
(ensures that older loss interv)2.75 E(als from an earlier time of high)
-.275 E(congestion are not discounted entirely)72 350 Q 5.5(.W)-.715 G
2.75(er)-6.38 G(ecommend a)-2.75 E F1(THRESHOLD)2.75 E F0(of 0.5.)2.75 E
(Note that with)5.5 E(each ne)72 363 Q 2.75(wp)-.275 G(ack)-2.75 E
(et arri)-.11 E -.275(va)-.275 G(l,).275 E F1(I_0)2.75 E F0
(will increase further)2.75 E 2.75(,a)-.44 G(nd the discount f)-2.75 E
(actor)-.11 E F1(DF)2.75 E F0(will be updated.)2.75 E(When a ne)72 379.6
Q 2.75(wl)-.275 G(oss e)-2.75 E -.165(ve)-.275 G
(nt occurs, the current interv).165 E(al shifts from)-.275 E F1(I_0)2.75
E F0(to)2.75 E F1(I_1)2.75 E F0 2.75(,l)C(oss interv)-2.75 E(al)-.275 E
F1(I_i)2.75 E F0(shifts to interv)72 392.6 Q(al)-.275 E F1(I_\(i+1\))
2.75 E F0 2.75(,a)C(nd the loss interv)-2.75 E(al)-.275 E F1(I_n)2.75 E
F0(is for)2.75 E 2.75(gotten. The)-.198 F(pre)2.75 E(vious discount f)
-.275 E(actor)-.11 E F1(DF)72 405.6 Q F0
(has to be incorporated into the discount array)2.75 E 5.5(.B)-.715 G
(ecause)-5.5 E F1(DF_i)2.75 E F0(carries the discount f)2.75 E(actor)
-.11 E(associated with loss interv)72 418.6 Q(al)-.275 E F1(I_i)2.75 E
F0 2.75(,t)C(he)-2.75 E F1(DF_i)2.75 E F0
(array has to be shifted as well. This is done as)2.75 E(follo)72 431.6
Q(ws:)-.275 E F1(for \(i = 1 to n\) {)108 450.6 Q(DF_i = DF * DF_i;)
121.2 463.6 Q(})108 476.6 Q(for \(i = n-1 to 0 step -1\) {)108 489.6 Q
(DF_\(i+1\) = DF_i;)121.2 502.6 Q(})108 515.6 Q(I_0 = 1;)108 528.6 Q
(DF_0 = 1;)108 541.6 Q(DF = 1;)108 554.6 Q F0(This completes the descri\
ption of the optional history discounting mechanism. W)72 577.2 Q 2.75
(ee)-.88 G(mphasize that)-2.75 E
(this is an optional mechanism whose sole purpose is to allo)72 590.2 Q
2.75(wT)-.275 G(FRC to response some)-2.75 E(what more)-.275 E(quickly \
to the sudden absence of congestion, as represented by a long current l\
oss interv)72 603.2 Q(al.)-.275 E(Handle)72 697 Q(y/P)-.165 E(adh)-.165
E(ye/Flo)-.055 E(yd/W)-.11 E 247.343(idmer [P)-.44 F(age 15])-.165 E EP
%%Page: 16 16
%%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
(6. Data)72 85 R(Recei)2.75 E -.11(ve)-.11 G 2.75(rP).11 G -.198(ro)
-2.75 G(tocol).198 E F0(The recei)72 101.6 Q -.165(ve)-.275 G 2.75(rp)
.165 G(eriodically sends feedback messages to the sender)-2.75 E 5.5(.F)
-.605 G(eedback pack)-5.5 E(ets should)-.11 E
(normally be sent at least once per R)72 114.6 Q(TT)-.66 E 2.75(,u)-.814
G(nless the sender is sending at a rate of less than one)-2.75 E(pack)72
127.6 Q(et per R)-.11 E(TT)-.66 E 2.75(,i)-.814 G 2.75(nw)-2.75 G
(hich case a feedback pack)-2.75 E(et should be send for e)-.11 E -.165
(ve)-.275 G(ry data pack).165 E(et recei)-.11 E -.165(ve)-.275 G(d.).165
E 2.75(Af)72 140.6 S(eedback pack)-2.75 E(et should also be sent whene)
-.11 E -.165(ve)-.275 G 2.75(ran).165 G .55 -.275(ew l)-2.75 H(oss e)
.275 E -.165(ve)-.275 G(nt is detected without w).165 E(aiting for)-.11
E(the end of an R)72 153.6 Q(TT)-.66 E 2.75(,a)-.814 G(nd whene)-2.75 E
-.165(ve)-.275 G 2.75(ra).165 G 2.75(no)-2.75 G(ut-of-order data pack)
-2.75 E(et is recei)-.11 E -.165(ve)-.275 G 2.75(dt).165 G(hat remo)
-2.75 E -.165(ve)-.165 G 2.75(sal).165 G(oss e)-2.75 E -.165(ve)-.275 G
(nt).165 E(from the history)72 166.6 Q(.)-.715 E
(If the sender is transmitting at a high rate \(man)72 183.2 Q 2.75(yp)
-.165 G(ack)-2.75 E(ets per R)-.11 E(TT\) there may be some adv)-.66 E
(antages)-.275 E
(to sending periodic feedback messages more than once per R)72 196.2 Q
(TT as this allo)-.66 E(ws f)-.275 E(aster response to)-.11 E
(changing R)72 209.2 Q
(TT measurements, and more resilience to feedback pack)-.66 E(et loss.)
-.11 E(Ho)5.5 E(we)-.275 E -.165(ve)-.275 G 2.75(rt).165 G
(here is little)-2.75 E -.055(ga)72 222.2 S(in from sending a lar).055 E
(ge number of feedback messages per R)-.198 E(TT)-.66 E(.)-.814 E F1
2.75(6.1. Recei)72 261.2 R -.11(ve)-.11 G 2.75(rb).11 G(eha)-2.75 E
(vior when a data pack)-.275 E(et is r)-.11 E(ecei)-.198 E -.11(ve)-.11
G(d).11 E F0(When a data pack)72 277.8 Q(et is recei)-.11 E -.165(ve)
-.275 G(d, the recei).165 E -.165(ve)-.275 G 2.75(rp).165 G
(erforms the follo)-2.75 E(wing steps:)-.275 E 13.087(1\) Add)72 294.4 R
(the pack)2.75 E(et to the pack)-.11 E(et history)-.11 E(.)-.715 E
13.087(2\) Let)72 311 R(the pre)2.75 E(vious v)-.275 E(alue of)-.275 E
/F2 11/Courier@0 SF(p)2.75 E F0(be)2.75 E F2(p_prev)2.75 E F0 5.5(.C)C
(alculate the ne)-5.5 E 2.75(wv)-.275 G(alue of)-3.025 E F2(p)2.75 E F0
(as described in)2.75 E(Section 5.)97 324 Q 13.087(3\) If)72 340.6 R F2
6.6(p>p)2.75 G(_prev)-6.6 E F0 2.75(,c)C(ause the feedback timer to e)
-2.75 E(xpire, and perform the actions described in)-.165 E(Section 6.2)
97 353.6 Q(If)97 370.2 Q F2 6.6(p<)2.75 G 6.6(=p)-6.6 G(_prev)-6.6 E F0
(no action need be performed.)2.75 E(Ho)97 386.8 Q(we)-.275 E -.165(ve)
-.275 G 2.75(ra).165 G 2.75(no)-2.75 G
(ptimization might check to see if the arri)-2.75 E -.275(va)-.275 G
2.75(lo).275 G 2.75(ft)-2.75 G(he pack)-2.75 E(et caused a hole in the)
-.11 E(pack)97 399.8 Q(et history to be \214lled and consequently tw)
-.11 E 2.75(ol)-.11 G(oss interv)-2.75 E(als were mer)-.275 E
(ged into one.)-.198 E(If this)5.5 E(is the case, the recei)97 412.8 Q
-.165(ve)-.275 G 2.75(rm).165 G(ight also send feedback immediately)
-2.75 E 5.5(.T)-.715 G(he ef)-5.5 E(fects of such an)-.275 E
(optimization are normally e)97 425.8 Q(xpected to be small.)-.165 E F1
2.75(6.2. Expiration)72 464.8 R(of feedback timer)2.75 E F0
(When the feedback timer at the recei)72 481.4 Q -.165(ve)-.275 G 2.75
(re).165 G(xpires, the action to be tak)-2.915 E
(en depends on whether data)-.11 E(pack)72 494.4 Q(ets ha)-.11 E .33
-.165(ve b)-.22 H(een recei).165 E -.165(ve)-.275 G 2.75(ds).165 G
(ince the last feedback w)-2.75 E(as sent.)-.11 E
(Let the maximum sequence number of a pack)72 511 Q(et at the recei)-.11
E -.165(ve)-.275 G 2.75(rs).165 G 2.75(of)-2.75 G(ar be)-2.86 E F2(S_m)
2.75 E F0 2.75(,a)C(nd the v)-2.75 E(alue of the)-.275 E -.66(RT)72 524
S 2.75(Tm).66 G(easurement included in pack)-2.75 E(et)-.11 E F2(S_m)
2.75 E F0(be R_m. If data pack)2.75 E(ets ha)-.11 E .33 -.165(ve b)-.22
H(een recei).165 E -.165(ve)-.275 G 2.75(ds).165 G(ince the)-2.75 E
(pervious feedback w)72 537 Q(as sent, the recei)-.11 E -.165(ve)-.275 G
2.75(rp).165 G(erforms the follo)-2.75 E(wing steps:)-.275 E 13.087
(1\) Calculate)72 553.6 R(the a)2.75 E -.165(ve)-.22 G(rage loss e).165
E -.165(ve)-.275 G(nt rate using the algorithm described abo).165 E
-.165(ve)-.165 G(.).165 E 13.087(2\) Calculate)72 570.2 R
(the measured recei)2.75 E .33 -.165(ve r)-.275 H(ate,).165 E F2(X_recv)
2.75 E F0 2.75(,b)C(ased on the pack)-2.75 E(ets recei)-.11 E -.165(ve)
-.275 G 2.75(dw).165 G(ithin the)-2.75 E(pre)97 583.2 Q(vious)-.275 E F2
(R_m)2.75 E F0(seconds.)2.75 E 13.087(3\) Prepare)72 599.8 R
(and send a feedback pack)2.75 E
(et containing the information described in Section 3.2.2)-.11 E 13.087
(4\) Restart)72 616.4 R(the feedback timer to e)2.75 E(xpire after)-.165
E F2(R_m)2.75 E F0(seconds.)2.75 E(Handle)72 697 Q(y/P)-.165 E(adh)-.165
E(ye/Flo)-.055 E(yd/W)-.11 E 247.343(idmer [P)-.44 F(age 16])-.165 E EP
%%Page: 17 17
%%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(If no data pack)72 85 Q
(ets ha)-.11 E .33 -.165(ve b)-.22 H(een recei).165 E -.165(ve)-.275 G
2.75(ds).165 G(ince the last feedback w)-2.75 E
(as sent, no feedback pack)-.11 E(et is sent,)-.11 E
(and the feedback timer is restarted to e)72 98 Q(xpire after)-.165 E/F1
11/Courier@0 SF(R_m)2.75 E F0(seconds.)2.75 E/F2 11/Times-Bold@0 SF 2.75
(6.3. Recei)72 140.6 R -.11(ve)-.11 G 2.75(ri).11 G(nitialization)-2.75
E F0(The recei)72 157.2 Q -.165(ve)-.275 G 2.75(ri).165 G 2.75(si)-2.75
G(nitialized by the \214rst pack)-2.75 E(et that arri)-.11 E -.165(ve)
-.275 G 2.75(sa).165 G 2.75(tt)-2.75 G(he recei)-2.75 E -.165(ve)-.275 G
1.21 -.605(r. L).165 H(et the sequence number).605 E(of this pack)72
170.2 Q(et be)-.11 E F1(i)2.75 E F0(.)A(When the \214rst pack)72 186.8 Q
(et is recei)-.11 E -.165(ve)-.275 G(d:).165 E 21.15<8353>72 203.4 S(et)
-21.15 E F1(p=0)2.75 E F0 21.15<8353>72 220 S(et)-21.15 E F1(X_recv = 0)
9.35 E F0(.)A 21.15<8350>72 236.6 S(repare and send a feedback pack)
-21.15 E(et.)-.11 E 21.15<8353>72 253.2 S(et the feedback timer to e)
-21.15 E(xpire after)-.165 E F1(R_i)2.75 E F0(seconds.)2.75 E F2 2.75
(6.3.1. Initializing)72 295.8 R
(the Loss History after the First Loss Ev)2.75 E(ent)-.11 E F0
(The number of pack)72 312.4 Q(ets until the \214rst loss can not be us\
ed to compute the sending rate directly)-.11 E 2.75(,a)-.715 G(s)-2.75 E
(the sending rate changes rapidly during this time.)72 325.4 Q
(TFRC assumes that the correct data rate after)5.5 E
(the \214rst loss is half of the sending rate when the loss occurred.)72
338.4 Q(TFRC approximates this tar)5.5 E(get)-.198 E(rate by)72 351.4 Q
F1(X_recv)2.75 E F0 2.75(,t)C(he recei)-2.75 E .33 -.165(ve r)-.275 H
(ate o).165 E -.165(ve)-.165 G 2.75(rt).165 G
(he most recent round-trip time.)-2.75 E
(After the \214rst loss, instead)5.5 E
(of initializing the \214rst loss interv)72 364.4 Q
(al to the number of pack)-.275 E
(ets sent until the \214rst loss, the TFRC)-.11 E(recei)72 377.4 Q -.165
(ve)-.275 G 2.75(rc).165 G(alculates the loss interv)-2.75 E(al that w)
-.275 E(ould be required to produce the data rate)-.11 E F1(X_recv)2.75
E F0 2.75(,a)C(nd)-2.75 E(uses this synthetic loss interv)72 390.4 Q
(al to seed the loss history mechanism.)-.275 E
(TFRC does this by \214nding some v)72 416.4 Q(alue)-.275 E F1(p)2.75 E
F0(for which the throughput equation in Section 3.1 gi)2.75 E -.165(ve)
-.275 G 2.75(sa).165 G(sending rate within 5% of)72 429.4 Q F1(X_recv)
2.75 E F0 2.75(,g)C -2.365 -.275(iv e)-2.75 H 2.75(nt).275 G
(he current pack)-2.75 E(et size)-.11 E F1(s)2.75 E F0
(and round-trip time)2.75 E F1(R)2.75 E F0 5.5(.T)C(he)-5.5 E
(\214rst loss interv)72 442.4 Q(al is then set to)-.275 E F1(1/p)2.75 E
F0 5.5(.\()C(The 5% tolerance is introduced simply because the)-5.5 E
(throughput equation is dif)72 455.4 Q(\214cult to in)-.275 E -.165(ve)
-.44 G(rt, and we w).165 E(ant to reduce the costs of calculating)-.11 E
F1(p)2.75 E F0(numerically)72 468.4 Q(.\))-.715 E F2 2.75(7. Sender)72
507.4 R(-based V)-.407 E(ariants)-1.012 E F0(It w)72 524 Q
(ould be possible to implement a sender)-.11 E(-based v)-.22 E
(ariant of TFRC, where the recei)-.275 E -.165(ve)-.275 G 2.75(ru).165 G
(ses)-2.75 E(reliable deli)72 537 Q -.165(ve)-.275 G
(ry to send information about pack).165 E(et losses to the sender)-.11 E
2.75(,a)-.44 G(nd the sender computes)-2.75 E(the pack)72 550 Q
(et loss rate and the acceptable transmit rate.)-.11 E(Ho)5.5 E(we)-.275
E -.165(ve)-.275 G .88 -.44(r, w).165 H 2.75(ed).44 G 2.75(on)-2.75 G
(ot specify the details of a)-2.75 E(sender)72 563 Q(-based v)-.22 E
(ariant in this document.)-.275 E(The main adv)72 589 Q
(antages of a sender)-.275 E(-based v)-.22 E(ariant of TFRC w)-.275 E
(ould be that the sender w)-.11 E(ould not ha)-.11 E -.165(ve)-.22 G
(to trust the recei)72 602 Q -.165(ve)-.275 G(r').165 E 2.75(sc)-.605 G
(alculation of the pack)-2.75 E(et loss rate.)-.11 E(Ho)5.5 E(we)-.275 E
-.165(ve)-.275 G .88 -.44(r, w).165 H(ith the requirement of).44 E
(reliable deli)72 615 Q -.165(ve)-.275 G
(ry of loss information from the recei).165 E -.165(ve)-.275 G 2.75(rt)
.165 G 2.75(ot)-2.75 G(he sender)-2.75 E 2.75(,as)-.44 G(ender)-2.75 E
(-based TFRC w)-.22 E(ould)-.11 E(ha)72 628 Q .33 -.165(ve m)-.22 H(uch\
 tighter constraints on the transport protocol in which it is embedded.)
.165 E(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E(ye/Flo)-.055 E(yd/W)-.11
E 247.343(idmer [P)-.44 F(age 17])-.165 E EP
%%Page: 18 18
%%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 contrast, the recei)72 85 Q
-.165(ve)-.275 G -.22(r-).165 G(based v).22 E
(ariant of TFRC speci\214ed in this document is rob)-.275 E
(ust to the loss of)-.22 E(feedback pack)72 98 Q
(ets, and therefore does not require the reliable deli)-.11 E -.165(ve)
-.275 G(ry of feedback pack).165 E 2.75(ets. It)-.11 F(is)2.75 E(also b\
etter suited for applications such as streaming media from web serv)72
111 Q(ers, where it is typically)-.165 E(desirable to of)72 124 Q
(\215oad w)-.275 E(ork from the serv)-.11 E
(er to the client as much as possible.)-.165 E(The sender)72 150 Q
(-based and recei)-.22 E -.165(ve)-.275 G -.22(r-).165 G(based v).22 E
(ariants also ha)-.275 E .33 -.165(ve d)-.22 H(if).165 E
(ferent properties in terms of upgrades.)-.275 E -.165(Fo)72 163 S 2.75
(re).165 G
(xample, for changes in the procedure for calculating the pack)-2.915 E
(et loss rate, the sender w)-.11 E(ould)-.11 E(ha)72 176 Q .33 -.165
(ve t)-.22 H 2.75(ob).165 G 2.75(eu)-2.75 G(pgraded in the sender)-2.75
E(-based v)-.22 E(ariant, and the recei)-.275 E -.165(ve)-.275 G 2.75
(rw).165 G(ould ha)-2.86 E .33 -.165(ve t)-.22 H 2.75(ob).165 G 2.75(eu)
-2.75 G(pgraded in)-2.75 E(the recei)72 189 Q -.165(ve)-.275 G -.22(r-)
.165 G(based v).22 E(ariant.)-.275 E/F1 11/Times-Bold@0 SF 2.75
(8. Implementation)72 228 R(Issues)2.75 E F0(This document has speci\
\214ed the TFRC congestion control mechanism, for use by applications)72
244.6 Q(and transport protocols.)72 257.6 Q
(This section mentions brie\215y some of the fe)5.5 E 2.75(wi)-.275 G
(mplementation issues.)-2.75 E -.165(Fo)72 283.6 S(r).165 E/F2 11
/Courier@0 SF(t_RTO = 4*R)2.75 E F0(and)2.75 E/F3 11/Times-Italic@0 SF
2.75(b=1)2.75 G F0 2.75(,t)-2.75 G
(he throughput equation in Section 3.1 can be e)-2.75 E(xpressed as)
-.165 E(follo)72 296.6 Q(ws:)-.275 E F3(X)108.869 331.812 Q/F4 11/Symbol
SF(=)4.114 E F3(s)22.22 -7.7 M(R)-21.406 15.4 M F0(*)2.717 E F3(f)4.587
E F0(\()2.156 E F3(p)1.375 E .44 LW 169.985 328.952 130.143 328.952 DL
F0(\))166.322 339.512 Q(for)74.75 356.939 Q F3(f)110.167 398.581 Q F0
(\()2.156 E F3(p)1.375 E F0(\)).209 E F4(=)3.08 E/F5 27/Symbol SF 11.12
-14.823(\326` `)3.08 6.847 P F0(2)15.742 -14.547 M F3(p)1.375 E 170.717
395.721 158.133 395.721 DL F0(3)161.675 406.281 Q F4(+)7.282 -7.7 M F0
(\(12)2.42 E F5 11.12 -14.823(\326` `)1.87 6.847 P F0(3)15.742 -14.547 M
F3(p)1.375 E 228.176 395.721 215.592 395.721 DL F0(8)219.134 406.281 Q
(\))4.862 -7.7 M F3(p)1.375 E F0(\(1).209 E F4(+)2.42 E F0(32)2.42 E F3
(p)1.375 E/F6 8/Times-Roman@0 SF(2).209 -4.62 M F0(\)).55 4.62 M 2.75
(At)74.75 421.604 S(able lookup could be used for the function f\(p\).)
-2.75 E(Man)72 447.604 Q 2.75(yo)-.165 G 2.75(ft)-2.75 G
(he multiplications \(e.g.,)-2.75 E F3(q)2.75 E F0(and)2.75 E F3(1-q)
2.75 E F0(for the round-trip time a)2.75 E -.165(ve)-.22 G(rage, a f)
.165 E(actor of 4 for the)-.11 E(timeout interv)72 460.604 Q
(al\) are or could be by po)-.275 E(wers of tw)-.275 E
(o, and therefore could be implemented as simple)-.11 E
(shift operations.)72 473.604 Q 1.76 -.88(We n)72 499.604 T
(ote that the optional sender mechanism for pre).88 E -.165(ve)-.275 G
(nting oscillations described in Section 4.5).165 E
(uses a square-root computation.)72 512.604 Q(The calculation of the a)
72 538.604 Q -.165(ve)-.22 G(rage loss interv).165 E
(al in Section 5.4 in)-.275 E -.22(vo)-.44 G(lv).22 E
(es multiplications by the weights)-.165 E F2(w_0)72 551.604 Q F0(to)
2.75 E F2(w_\(n-1\))2.75 E F0 2.75(,w)C(hich for n=8 are:)-2.75 E
(1.0, 1.0, 1.0, 1.0, 0.8, 0.6, 0.4, 0.2.)97 568.204 Q -.44(Wi)72 584.804
S(th a minor loss of smoothness, it w).44 E
(ould be possible to use weights that were po)-.11 E(wers of tw)-.275 E
2.75(oo)-.11 G(r)-2.75 E(sums of po)72 597.804 Q(wers of tw)-.275 E
(o, e.g.,)-.11 E(1.0, 1.0, 1.0, 1.0, 0.75, 0.5, 0.25, 0.25.)97 614.404 Q
(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E(ye/Flo)-.055 E(yd/W)-.11 E
247.343(idmer [P)-.44 F(age 18])-.165 E EP
%%Page: 19 19
%%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(The optional history discount\
ing mechanism described in Section 5.5 is used in the calculation of)72
85 Q(the a)72 98 Q -.165(ve)-.22 G(rage loss rate.).165 E
(The history discounting mechanism is in)5.5 E -.22(vo)-.44 G -.11(ke)
.22 G 2.75(do).11 G(nly when there has been an)-2.75 E
(unusually long interv)72 111 Q(al with no pack)-.275 E(et losses.)-.11
E -.165(Fo)5.5 G 2.75(ram).165 G(ore ef)-2.75 E
(\214cient operation, the discount f)-.275 E(actor)-.11 E/F1 11
/Courier@0 SF(DF_i)72 124 Q F0(could be restricted to be a po)2.75 E
(wer of tw)-.275 E(o.)-.11 E/F2 11/Times-Bold@0 SF 2.75(9. Security)72
163 R(Considerations)2.75 E F0
(TFRC is not a transport protocol in its o)72 179.6 Q(wn right, b)-.275
E(ut a congestion control mechanism that is)-.22 E
(intended to be used in conjunction with a transport protocol.)72 192.6
Q(Therefore security primarily needs)5.5 E
(to be considered in the conte)72 205.6 Q(xt of a speci\214c transport \
protocol and its authentication mechanisms.)-.165 E
(Congestion control mechanisms can potentially be e)72 222.2 Q
(xploited to create denial of service.)-.165 E(This may)5.5 E
(occur through spoofed feedback.)72 235.2 Q(Thus an)5.5 E 2.75(yt)-.165
G(ransport protocol that uses TFRC should tak)-2.75 E 2.75(ec)-.11 G
(are to)-2.75 E(ensure that feedback is only accepted from the recei)72
248.2 Q -.165(ve)-.275 G 2.75(ro).165 G 2.75(ft)-2.75 G(he data.)-2.75 E
(The precise mechanism to)5.5 E(achie)72 261.2 Q .33 -.165(ve t)-.275 H
(his will ho).165 E(we)-.275 E -.165(ve)-.275 G 2.75(rd).165 G
(epend on the transport protocol itself.)-2.75 E(In addition, congestio\
n control mechanisms may potentially be manipulated by a greedy recei)72
277.8 Q -.165(ve)-.275 G(r).165 E(that wishes to recei)72 290.8 Q .33
-.165(ve m)-.275 H(ore than its f).165 E(air share of netw)-.11 E
(ork bandwidth.)-.11 E 2.75(Ar)5.5 G(ecei)-2.75 E -.165(ve)-.275 G 2.75
(rm).165 G(ight do this by)-2.75 E(claiming to ha)72 303.8 Q .33 -.165
(ve r)-.22 H(ecei).165 E -.165(ve)-.275 G 2.75(dp).165 G(ack)-2.75 E
(ets that in f)-.11 E(act were lost due to congestion.)-.11 E
(Possible defenses)5.5 E(ag)72 316.8 Q(ainst such a recei)-.055 E -.165
(ve)-.275 G 2.75(rw).165 G
(ould normally include some form of nonce that the recei)-2.86 E -.165
(ve)-.275 G 2.75(rm).165 G(ust feed)-2.75 E(back to the sender to pro)72
329.8 Q .33 -.165(ve r)-.165 H 2.75(eceipt. Ho).165 F(we)-.275 E -.165
(ve)-.275 G .88 -.44(r, t).165 H(he details of such a nonce w).44 E
(ould depend on the)-.11 E(transport protocol, and in particular on whe\
ther the transport protocol is reliable or unreliable.)72 342.8 Q 1.76
-.88(We e)72 359.4 T
(xpect that protocols incorporating ECN with TFRC will also w).715 E
(ant to incorporate feedback)-.11 E(from the recei)72 372.4 Q -.165(ve)
-.275 G 2.75(rt).165 G 2.75(ot)-2.75 G
(he sender using the ECN nonce [WES02].)-2.75 E(The ECN nonce is a)8.25
E(modi\214cation to ECN that protects the sender from the accidental or\
 malicious concealment of)72 385.4 Q(mark)72 398.4 Q(ed pack)-.11 E 2.75
(ets. Ag)-.11 F(ain, the details of such a nonce w)-.055 E
(ould depend on the transport protocol, and)-.11 E
(are not addressed in this document.)72 411.4 Q F2 2.75(10. IAN)72 450.4
R 2.75(AC)-.22 G(onsiderations)-2.75 E F0(There are no IAN)72 467 Q 2.75
(Aa)-.385 G(ctions required for this document.)-2.75 E F2 2.75(11. A)72
506 R(uthors' Addr)-.55 E(esses)-.198 E F0(Handle)72 697 Q(y/P)-.165 E
(adh)-.165 E(ye/Flo)-.055 E(yd/W)-.11 E 247.343(idmer [P)-.44 F(age 19])
-.165 E EP
%%Page: 20 20
%%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(Mark Handle)108 85 Q 1.43
-.715(y, S)-.165 H(ally Flo).715 E(yd)-.11 E(ICIR/ICSI)108 98 Q
(1947 Center St, Suite 600)108 111 Q(Berk)108 124 Q(ele)-.11 E 1.43
-.715(y, C)-.165 H 2.75(A9).715 G(4708)-2.75 E(mjh@icir)108 137 Q(.or)
-.605 E(g, \215o)-.198 E(yd@icir)-.11 E(.or)-.605 E(g)-.198 E
(Jitendra P)108 163 Q(adh)-.165 E(ye)-.055 E(Microsoft Research)108 176
Q(padh)108 189 Q(ye@microsoft.com)-.055 E .918<4aa8>108 228 S(or)-5.499
E 2.75(gW)-.198 G(idmer)-3.19 E(Lehrstuhl Praktische Informatik IV)108
241 Q(Uni)108 254 Q -.165(ve)-.275 G -1.832(rsit \250).165 F
(at Mannheim)-4.581 E 2.75(L1)108 267 S(5, 16 - Room 415)-2.75 E
(D-68131 Mannheim)108 280 Q(German)108 293 Q(y)-.165 E
(widmer@informatik.uni-mannheim.de)108 306 Q/F1 11/Times-Bold@0 SF 2.75
(12. Ackno)72 338 R(wledgments)-.11 E F0 1.76 -.88(We w)72 354.6 T
(ould lik).77 E 2.75(et)-.11 G 2.75(oa)-2.75 G(ckno)-2.75 E
(wledge feedback and discussions on equation-based congestion control)
-.275 E(with a wide range of people, including members of the Reliable \
Multicast Research Group, the)72 367.6 Q(Reliable Multicast T)72 380.6 Q
(ransport W)-.385 E(orking Group, and the End-to-End Research Group.)
-.88 E 1.76 -.88(We w)8.25 H(ould).77 E(lik)72 393.6 Q 2.75(et)-.11 G
2.75(ot)-2.75 G(hank K)-2.75 E(en Lofgren, Mik)-.275 E 2.75(eL)-.11 G
(uby)-2.75 E 2.75(,E)-.715 G
(duardo Urzaiz, Vladica Stanisic, Randall Ste)-2.75 E -.11(wa)-.275 G
(rt,).11 E(Shushan W)72 406.6 Q(en, and W)-.88 E
(endy Lee \(lhh@zsu.edu.cn\) for feedback on earlier v)-.88 E
(ersions of this)-.165 E(document, and to thank Mark Allman for his e)72
419.6 Q(xtensi)-.165 E .33 -.165(ve f)-.275 H
(eedback from using the draft to produce a).165 E -.11(wo)72 432.6 S
(rking implementation.).11 E F1 2.75(13. Normati)72 458.6 R .22 -.11
(ve R)-.11 H(efer).11 E(ences)-.198 E 2.75(14. Non-normati)72 497.6 R
.22 -.11(ve R)-.11 H(efer).11 E(ences)-.198 E F0
([1] Balakrishnan, H., Rahul, H., and Seshan, S., "An Inte)72 514.2 Q
(grated Congestion Management)-.165 E
(Architecture for Internet Hosts," Proc. A)97 527.2 Q
(CM SIGCOMM, Cambridge, MA, September)-.44 E(1999.)97 540.2 Q
([2] S. Flo)72 556.8 Q(yd, M. Handle)-.11 E 1.43 -.715(y, J)-.165 H 2.75
(.P).715 G(adh)-2.915 E(ye, and J. W)-.055 E(idmer)-.44 E 2.75(,")-.44 G
(Equation-Based Congestion Control for)-2.75 E
(Unicast Applications", August 2000, Proc SIGCOMM 2000.)97 569.8 Q
([3] S. Flo)72 586.4 Q(yd, M. Handle)-.11 E 1.43 -.715(y, J)-.165 H 2.75
(.P).715 G(adh)-2.915 E(ye, and J. W)-.055 E(idmer)-.44 E 2.75(,")-.44 G
(Equation-Based Congestion Control for)-2.75 E
(Unicast Applications: the Extended V)97 599.4 Q
(ersion", ICSI tech report TR-00-03, March 2000.)-1.221 E([4] P)72 616 Q
(adh)-.165 E(ye, J. and)-.055 E(Firoiu, V)5.5 E 2.75(.a)-1.419 G(nd T)
-2.75 E -.275(ow)-.88 G(sle).275 E 1.43 -.715(y, D)-.165 H 2.75(.a).715
G(nd K)-2.75 E(urose, J., "Modeling TCP Throughput: A)-.165 E
(Simple Model and its Empirical V)97 629 Q(alidation", Proc A)-1.221 E
(CM SIGCOMM 1998.)-.44 E(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E(ye/Flo)
-.055 E(yd/W)-.11 E 247.343(idmer [P)-.44 F(age 20])-.165 E EP
%%Page: 21 21
%%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([5] V)72 85 Q 2.75(.P)-1.419 G
(axson and M. Allman, "Computing TCP')-2.915 E 2.75(sR)-.605 G
(etransmission T)-2.75 E(imer", RFC 2988, No)-.385 E -.165(ve)-.165 G
(mber).165 E(2000.)97 98 Q([6] K. Ramakrishnan and S. Flo)72 114.6 Q
(yd, "The Addition of Explicit Congestion Noti\214cation \(ECN\) to)-.11
E(IP", RFC 3168, September 2001.)97 127.6 Q
([7] H. Schulzrinne, S. Casner)72 144.2 Q 2.75(,R)-.44 G 2.75(.F)-2.75 G
(rederick, and V)-2.75 E 2.75(.J)-1.419 G(acobson, "R)-2.75 E(TP: A T)
-.66 E(ransport Protocol for)-.385 E(Real-T)97 157.2 Q
(ime Applications", RFC 1889, January 1996.)-.385 E([8] W)72 173.8 Q
(etherall, D., Ely)-.88 E 2.75(,D)-.715 G(., and Spring, N., "Rob)-2.75
E(ust ECN Signaling with Nonces", draft-ietf-tsvwg-)-.22 E
(tcp-nonce-03.txt, internet draft, w)97 186.8 Q
(ork in progress, April 2002.)-.11 E([9] W)72 203.4 Q(idmer)-.44 E 2.75
(,J)-.44 G(., "Equation-Based Congestion Control", Diploma Thesis, Uni)
-2.75 E -.165(ve)-.275 G(rsity of Mannheim,).165 E(February 2000.)97
216.4 Q(URL "http://www)5.5 E(.icir)-.715 E(.or)-.605 E(g/tfrc/".)-.198
E(Handle)72 697 Q(y/P)-.165 E(adh)-.165 E(ye/Flo)-.055 E(yd/W)-.11 E
247.343(idmer [P)-.44 F(age 21])-.165 E EP
%%Trailer
end
%%EOF

PAFTECH AB 2003-20262026-04-23 23:25:54