%!PS-Adobe-2.0 %%Creator: dvips(k) 5.86d Copyright 1999 Radical Eye Software %%Title: rfc3550.dvi %%Pages: 89 %%PageOrder: Ascend %%BoundingBox: 0 0 612 792 %%DocumentFonts: CMR10 CMBX12 CMBX10 CMTI10 CMSY10 CMCSC10 CMTT10 CMMI10 %%+ CMMI8 CMSY8 CMR6 CMR8 CMMI6 %%EndComments %DVIPSWebPage: (www.radicaleye.com) %DVIPSCommandLine: dvips -o rfc3550.ps rfc3550 %DVIPSParameters: dpi=600, compressed %DVIPSSource: TeX output 2003.07.21:1645 %%BeginProcSet: texc.pro %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{ landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[ matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{ statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0] N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin /FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array /BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2 array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get }B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub} B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr 1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3 1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{ rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B /chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{ /cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{ A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse} ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17 {2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{ 1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop} forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put }if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{ bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{ SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{ userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X 1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4 index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N /p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{ /Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT) (LaserWriter 16/600)]{A length product length le{A length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot} imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M} B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{ p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end %%EndProcSet %%BeginProcSet: texps.pro %! TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2 index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]/Metrics exch def dict begin Encoding{exch dup type/integertype ne{pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get div def} ifelse}forall Metrics/Metrics currentdict end def[2 index currentdict end definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{ dup sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[exch{dup CharStrings exch known not{pop/.notdef/Encoding true def} if}forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def} def end %%EndProcSet %%BeginProcSet: special.pro %! TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N /vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N /rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N /@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{ /hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B /@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{ /urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known {userdict/md get type/dicttype eq{userdict begin md length 10 add md maxlength ge{/md md dup length 20 add dict copy def}if end md begin /letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{ itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack} if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1 -1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{ noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop 90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr 1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr 2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4 -1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{ Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale }if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState save N userdict maxlength dict begin/magscale true def normalscale currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts /psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub TR/showpage{}N/erasepage{}N/copypage{}N/p 3 def @MacSetUp}N/doclip{ psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll S lineto S lineto S lineto closepath clip newpath moveto}N/endTexFig{end psf$SavedState restore}N/@beginspecial{SDict begin/SpecialSave save N gsave normalscale currentpoint TR @SpecialDefaults count/ocount X/dcount countdictstack N}N/@setspecial{ CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs neg 0 rlineto closepath clip}if ho vo TR hsc vsc scale ang rotate rwiSeen{rwi urx llx sub div rhiSeen{rhi ury lly sub div}{dup}ifelse scale llx neg lly neg TR }{rhiSeen{rhi ury lly sub div dup scale llx neg lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly moveto urx lly lineto urx ury lineto llx ury lineto closepath clip}if/showpage{}N/erasepage{}N/copypage{}N newpath}N /@endspecial{count ocount sub{pop}repeat countdictstack dcount sub{end} repeat grestore SpecialSave restore end}N/@defspecial{SDict begin}N /@fedspecial{end}B/li{lineto}B/rl{rlineto}B/rc{rcurveto}B/np{/SaveX currentpoint/SaveY X N 1 setlinecap newpath}N/st{stroke SaveX SaveY moveto}N/fil{fill SaveX SaveY moveto}N/ellipse{/endangle X/startangle X /yrad X/xrad X/savematrix matrix currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix}N end %%EndProcSet %%BeginFont: CMMI6 %!PS-AdobeFont-1.1: CMMI6 1.100 %%CreationDate: 1996 Jul 23 07:53:52 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.100) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMMI6) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.04 def /isFixedPitch false def end readonly def /FontName /CMMI6 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 76 /L put readonly def /FontBBox{11 -250 1241 750}readonly def /UniqueXX 5087381 def currentdict end currentfile eexec 80347982ab3942d930e069a70d0d48311d725e830d1c76fba12e12486e989c98 74c2b527f0925722787027f44470d484262c360cdfdddf3657533a57bb16f730 48bfbbfcb73a650484015441fdc837add94ac8fbd2022e3ec8f115d4b4bb7b7f 15388f22cc6198efe768bd9fceb3446ee4a8dc27d6cd152485384ef5f59381ff da43f2d20c8fb08aa27ab2015b774db10dacfdcd33e60f178c461553146ab427 bdd7da12534ba078ad3d780414930e72218b3075925ce1192f11fc8530fcd5e3 038e3a6a6db2dcfbae3b4653e7e02730314e02b54a1e296d2bef8a79411d9225 dad7b4e6d6f9cf0688b69ba21193bf1495807e7a1e67ed7e41cc25acc04702f6 8ef703e3d45722c1a91fdef7100a48631a02a6f02a08c6b1f9b4df8310385b86 8632718fd87119a233f219d9411383b7fa9f3e4780d8c27e2e89e0cae883d664 c3eac57a3aef8988a2e9f0f8c7f53e0a80bdfc4620e21287d0390e1975398544 7f3ea66401024bea75e1b4c4437b7bb188f76f96b918ac7c6ad7e8ae7f21d8c2 790f08cccec904fe48ef39e597ed4d4237c1d1f596f5906b19ea308020f7a35c 168e327ec3246b1dfabe912f6b6daac09974876d3996e57d180261110db05f15 e3e8eebba3d90b5764c03df3033a1ed678ebc679569a2fb297378b25434c0f20 5313ecb8a952f07242d3ee731b0cdc086a4481178a3d65129c47c09b22e9c431 e11b3747b94c26a757c38d06001798c6a568303d541385244b967d3b1786edea f65bb53c4c2fe75e4b1b15c2c78d930b4296c80f08bad86012451edc8e9f0854 c3b390a16e27b11b3d45a9f72eff8baded2242dc928a61685d79e09681c97425 5b90a498614cf560fa5b1718981388268ba206a96989e6d0b5d485d9aca5594a e67dd7b34d8a369adb06647f8aff8814d6d9cdc04a4835918e557174c5bc0f3f bcea9907a04cf93c12727ec40db3f2f77596dca477862747435bdedacd9b2311 6cc97fa47ffdd7d897fb6bdd5572e35d34e7e1cb5e7273a4ffd86525323ace4a 84e1297028c2bd5469baa2e75d19360c2c9042139d5e7dd4390a6a3935424711 de21910126d750ae279916ceb71da3591d60dc62db333c5021e2c1cd61ade51e 9391472f46a58f4d47b46f95c41dbec5e4518446482b2cf7257054b8ed9fc039 f2604291a45b247d99cb0878f90f1b339fd08009f8eaef466001a3beec98c845 c67fa565c1fa9b658fb0ae5c0e4cc659a8b0aa4574b8080ec22819944e68ce10 bcd29550875167d878eb136c3f5f38278d81abb827f25ae392f6815d40653ebd 04c9776a5870c18301728e48f842555c4dcf9153f0bd3e6ed94cb12b30a7563e 692f1893a063dcfa61b49a82881f7a322721924bb50b1b9b88ca091f8f0056c9 bdb6514b78308968c2ddc7697180adfa90d0af3a41fc0cac7835babb7af13016 b05f2d1ec8b66869ed73a514ae9c8f7acfacef5a6bdc35c13d9330110f0e8734 fe3759513cd6f1d3d6da2b528806fbcc390933219dbab8d72ca8a5525c710d48 b21f98a1c228c906f41f789aac2b310bb4ffdd41642dee33664f0fd414434a4a a25667279aac016b997c94 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR8 %!PS-AdobeFont-1.1: CMR8 1.0 %%CreationDate: 1991 Aug 20 16:39:40 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMR8) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR8 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 50 /two put dup 52 /four put dup 55 /seven put readonly def /FontBBox{-36 -250 1070 750}readonly def /UniqueXX 5000791 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0 0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3 79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3 2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8 b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d 823385fe55f3402d557fd3b4486858b2a4b5a0cc2e1bf4e2a4a0e748483c3bcf 5de47cc5260a3a967cac70a7a35b88b54315191d0423b4065c7a432987938c6b edad3b72ad63c2918b6e5a2017457e0d4ebc204b094541f345ec367ae85ca9bd 24568a01d3b9f8095f7420e6c423c414b3dcce6da48dd1c89a56d078e0d0e2f2 62a13640a06d17e44ee3866c3471fb58fedf5a3b77294517651c16bdd7267d39 a54e7171752dbde63ac19bb4b3021ce95eb5fe67390b09ae4d9ed4d704a67443 f55dce17acd996c1f5e023c9e5a18cbeecc3097f23763acb86cdd7cd13381ae7 4e48495ec7fa520539d87f8a8dcb3c826275469b6800876a457e7d1e5be867c7 b1ccad69742a8c9b0ad943482bf2a4ad0aed40baeb69a0233bad36b4ca2d2da7 322956c70375d152653500b2f22d2ab6990cadde2da14b4917f7515e64bc3d96 bf775258fc7dae4e42a4c9b6da8eddec4a800c8aadc8d75e48cae52137e05c03 677f5d6a82fa46d9f2fc7f56d62e5c605a1b7898b8d1401c2cac1a0122a2c8a7 aae09607f2c5f29293a09b9959399283be89051452898238b777db9830ff4318 a298b221c4a820c700ca964fc99e6b1d9eb0bafc39be9aa9dffa2fa326b2a466 1e67261bb3dbc85844e76f9313ab533ee16bcb478166de5502b68e6ec1ea6110 f53206cf1cfea419571b0243244b32ea38b828a01e62b03bcf476a32c2341cec b8a0fa2a3f3f339315d5f3aa7704408f6617d026ffee4925aa48537a4b2e556d 225be09392546ad561cd46cf766f0ba14c6854c5af1a528c3842b0c5aeefefcf 19f19cbce5d967153c4f88e51c776cfbe10d39328466f7a3b83d85601ef4d1ce 0cc136610fa6a74d9676e4e99291d565cad27b9eb2337b0eba4148efd0eb2866 ebf0a4209ba135ad1376cf9cc2d4110f36121055caa3f2e01780740eece6c18a 13a2dd210687a04dfffff582b4a206d6e8895b968401d1371966a502de68fd9f b8b1d2d9ec9948ad4f95e823f001a84f626e88fbf71c3e8d95f0308489fd4755 4ccc23d9ed0a2c1a8bcc16b3f3f90ecee83a69d1de64741d796d9861705317b9 afa60ed655664190f064fdeb7641915e5dc2376e5459b409a3e013245329c9d8 8827759e3a145255e233a58e1f138312516476858596b8cd70a68651435bf036 827b0dd1efd4eb0ded6bfb288e30e7f66ca4fc55064a9c9fbe43a9f8585bf99c 0650162a88d70c24dde0a5226052f0045fffaafdb76cb33c85b5db4400180a52 f01177e6efb029cf2ab4ea717367b65d24ec6945a65d70fa9f9fcbb0ed447ef9 aed6d0328a5936deb2d480622fda60887cdb4e6c9e4ca098a0929aab42c88902 198836034b4ae11aa7f7c0b85d31ada01764cf5e72a9f150ed5815ea27c1339c e376c80d775d5b0f07cd94c1663fafe1f20a9b4096526fdb4ba80aceceaeb522 cbbc5508d56781f06783ead47464b81b55b2711c7c3ea73517cec36697370be6 61b28b8465f43733ac11f025d1cdb69ac55565fe64fb57afa74d526c3f960c4e 5c45af88bdceea7543b21479e146b877854d7cdbad853d995b1d239243c2a059 252a585d65e5dfc50405060f731011829ced9474dea610767f6ee6aa50cd966d 78b699fd3757595a1b8031946dfd77ea73d0a9f0e5789f7b2c091b9eba601c61 bf55e1fa083b949cb75c7c77fdd277284cdf841fa00ca6ee1e0b81da7c9f6db0 2a7554efcd10ab2deeedb14c575ee69c5e888b9dc7 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR6 %!PS-AdobeFont-1.1: CMR6 1.0 %%CreationDate: 1991 Aug 20 16:39:02 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMR6) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR6 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 43 /plus put dup 49 /one put dup 50 /two put readonly def /FontBBox{-20 -250 1193 750}readonly def /UniqueXX 5000789 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0 0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3 79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3 2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8 b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d 823385fe55f3402d557fd3b4486858b2a4b5a0cc2e1bf4e2a4a0e748483c3bcf 5de47cc5260a3a967cac70a7a35b88b54315191d0423b4065c7a432987938c6b edad3b72ad63c2918b6e5a2017457e0d4ebc204b031f3fc6c13d7da7277a94ba 018e9998b3dd888011a5d7c4204989f30f908b95533bda845746b673ab71ea57 65a0d14f4350707e47c8276305b28513cbe1bb0dbd269a53719bda46e536685d df78ca0146b6b93e760256b74d939d4e35b5e77238f04c92298dfdd188feea30 e053eefbcbb52f2011772b3aae39f5805597bbc1e8bb75a446ce014030f4f2f0 f49f9e962ee4a1024a746fa92a3628db5270732b54e43fe5ecfa524f127e5fcc 788e77e66098336ad67fe4cccaf0253272d5df79864bf4b734cb9a5859d557d8 bc11b8e00221ebc12e97de4b1f466ead83a4c894709363bca9040410a52d592e 34ee40cc7e5efa920546b981aa659513a24b1b85c221a1875b62d0b89e57a368 321b8043a5b094e0379760a443d632892b14ad6d19dacc8c78093243ad67e6a3 08e56e6b68412ee690b10dac6e17708754a00d51fc957b500eb80175716eef4b 2ca1ef867614659bee3f2b7319e97b6fdf1efc847bf3cee3156f72f21751da8e 5fb6898919e6799820d3de0642d756e09d6fae4ff08dd3deda3173bff4bb11f7 9109c97ddc05897af709ea199a90fcee8ce4c7a3c15b18170c41c04de2d3fba8 f34296a95b8e1e8de3739b17273f8f2c85e914615e8eac5e8bd2387ba3b1edf4 7968f06e2067d836d0f9f3e085cdfd2de06a62c81d786b304326f7002e83160a 36598589228b4dddddc43c85e1d126f8fe81b828028e26317af5894aaccf4f69 6301e1a9fc45935d8a414957f08febebbc3a72ada80f101e47447d019ade56e9 f4fab969bba2b44e47399fedf5caa1bcea216d7ba713d523d98f2e44ef37ad46 282d7a587974734c2b1e24d85e2f81581a8e36a6bcfbfe9dd0920ea5cc7255dc 2040d88b37bf8afa1d04f1ec06a739f608b5fa14bac8a50bb50a12d6574847a7 cf42db3fb99524d4ac40eb874d5d228b557be3c5eede986279a04e0d5fff1fb6 72e8393e9db5a96a98000702512357b8978176cc69e6c3cf9747115422e28e80 b52f0cd73e33bfb799bbeb967ac7ed1bd961d7cd4fb14ecbfd341a322c4bebb0 aea969d33fd1cdff622d99f899dd9a21c8cb71f12cbf68997e5b9916192bedf0 c6021653ba33cd5b680d856f0863ce13a8c30889f1b00ffab149482da65a888c d570b5bd355ecc9f652c5682ffb5a87ba6c06483a78cb43fd27af7eaf14f137b c291b8e0d74a2dac9b8bb65455a2cbb9b05ca4e34f5f99fc44414c3749b9b049 6331024fb02f634ad14fc8909e01c08a7e0b3dc45e15dbdca67ab9b8b02bed02 4eb50746207b2b55517d95c8cbdcea55351544abe617130b040d22f3428f6ea0 5c10de237ed8f8a2a939304099e852a5c79065ea7bc951fb41abdd1d73629c13 8cfb1409060d9eb44121e62a086ad032d9b1de17ef1af57b5f3ce3711286a5ee f7101318e631e467f9bb5c1104762d609dcb4b72e787b68dbf4cb9a049237824 3991ce7507693804d4a0598766739c4749d2662a4495480912c7b6680b46c58f 6fbe523521ef3c3d9baca2ec31e24cf809cc37ec918fd9699aa477d7e2a26829 23d8496f7468c7a6398f2abc4ec9 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMSY8 %!PS-AdobeFont-1.1: CMSY8 1.0 %%CreationDate: 1991 Aug 15 07:22:10 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMSY8) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.035 def /isFixedPitch false def end readonly def /FontName /CMSY8 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /minus put readonly def /FontBBox{-30 -955 1185 779}readonly def /UniqueXX 5000818 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bac8ced9b09a275ab231194ecf829352 05826f4e975dcecec72b2cf3a18899ccde1fd935d09d813b096cc6b83cdf4f23 b9a60db41f9976ac333263c908dcefcdbd4c8402ed00a36e7487634d089fd45a f4a38a56a4412c3b0baffaeb717bf0de9ffb7a8460bf475a6718b0c73c571145 d026957276530530a2fbefc6c8f059084178f5ab59e11b66566ca5ba42b1911a 5d7f1bf343015eece988b7a93bce0c7aa61344d48aed9c92c8698d4b7c9951c8 7d103f2414b39e1437f9d2e50c4ee5f218f2e6716926a79ea978f13b1f855345 191dd7d31d8f82c2e3343c7a5894d95bdc492c28226834efcb5c12fea36ac5cc 430e0aa604961e34888adf6c1f3954cbc2498e225d953cf5685852162346f474 5a2a7087d5d7ad486de16d2ca8e15cee26e012671ba3bdc7d95cc8c98bb774f5 08625e968aee27ff7d1a06e63bcfb5aa4876c3f8f13b30ccccee73c3caf4e70d 98e6ed2f422dbb4950bf789680e064150995941a9f4dd68a575949847a7d012b b910bf03a7a227d51386469ec9ef415f3bb849d30411890d9c6f5b9ee172e351 8cba2ea47be683900e1c23554cfb193067c35d0813c4bc68f817ef9f0206f08d 1d8be63236cb2d08f42c4a0b73a147cc7baf1a212637a7b9c3243332a162b8d4 955e17a50b678c6a322c4eccd28fd709ccef5f4a0c7f542c5ee8fec88895af93 48d3cc99e31f083e3f3d6be883803f7d3f4c4519360fc6d925a31d854e764f79 403b30ae39e581fb941615aa3c86287f7cf79b84e95db76ec8f15c8b43029a6c e93ae76e0320d0daece8c62f7f4d189fefdbb7bbdb43cb87 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMMI8 %!PS-AdobeFont-1.1: CMMI8 1.100 %%CreationDate: 1996 Jul 23 07:53:54 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.100) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMMI8) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.04 def /isFixedPitch false def end readonly def /FontName /CMMI8 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 61 /slash put dup 76 /L put dup 78 /N put dup 105 /i put dup 106 /j put readonly def /FontBBox{-24 -250 1110 750}readonly def /UniqueXX 5087383 def currentdict end currentfile eexec 80347982ab3942d930e069a70d0d48311d725e830d1c76fba12e12486e989c98 74c2b527f0925722787027f44470d484262c360cdfdddf3657533a57bb16f730 48bfbbfcb73a650484015441fdc837add94ac8fbd2022e3ec8f115d4b4bb7b7f 15388f22cc6198efe768bd9fceb3446ee4a8dc27d6cd152485384ef5f59381ff da43f2d20c8fb08aa27ab2015b774db10dacfdcd33e60f178c461553146ab427 bdd7da12534ba078ad3d780414930e72218b3075925ce1192f11fc8530fcd5e3 038e3a6a6db2dcfbae3b4653e7e02730314e02b54a1e296d2bef8a79411d9225 dad7b4e6d6f9cf0688b69ba21193bf1495807e7a196cf14c95a4e02f9cd2da8c db2546c6df52e524745992e18d9ff87aa25e4e1800bbe4ebb357c6ef55ed6d03 6d3a00c1ee8073266c21d2f0ac85d656abf61d7e5a4fa87da8ec3b5329e434d0 d2adab706b42a2e5331be5295399d803ccac03f631f01f39a022fcdf63486b68 7d15ef284a77def7fde4898543e7b5f7ec267756103e477f547cfb8d2311c4b0 09deff56085f5d419697af1846c8b88c1bbbae149f0f19ca3c8dafe19cec48fe 6b38357246d8b5cef80b53bab4cbbbe8bc8318cc462a4158258f456e697f6058 86010493f252073ee4e4c9531f23485415ad6bc901bbaea659ef701f825f4b6d 5c9bed0dce7b63810f906b33ea4955531ca1ed1fc120cc56dc1e277a33222cc6 c3a97552607b865783faf0895cbeccd0df54f57bd162a88494768435eda71a39 69718c0c5912d3167bb0971546d733e735aa9bcd89f5aa154656031ab3f6fe41 94ec225ad03ab8b67a9da43ab365c4df17c23e79f685c3b6fd5b654e4a6f2603 6cec3a8641b0b57f93eb95f9e238832aeac2061f3153e0f375513c974f1c38f7 b59edcc94716f2862cf71c9a2be8430985da1cd813b1e1c1b9310564a2eb1aff 52c190f50fc981dccb64bb2c1f7a62c216f211c162c2ed1c554ef49fbaf12b31 aa3b2a80fee259dc0a2a4242869ddec7c29e2941792b28bba7f2c6f77ef69638 12b07d6843f33b51e01c8626b26edc34e1e0fffadede5fb468e8cd5de7e5a64c 366967578f415484d122834de4a647541d66989f7d8b25d1712d8d16729bd9a6 4729b84ffb21a57faf172aa6716b257bd42d15dd11426c7a341b875bca026cef 9c8eaeccf499700f21cd5d200775362b5b707a3ab6ff354267674898f6622233 c4cd9a36d1e59bb76d0cc065f08ab714dfcef064ea5bc02b8bf823945477b0f7 2b5db9702e81f8afc4d811099d0212ca05163a5f254ddcb386ae9c0dd5856b83 284fb9161a9907919f0d9df3f5175f447cd64d65e2011b7d0e5bb395a6e7bfa8 81b816baa855a4dfa484506e460fabec3b54a3a5f7a055e1915e3b22d1768f1c 71e60e24004188c88abeb0e163b89fbea0d679fe1ef938d32140d25c0e8b3c71 122ff2e541dc19da408925887c6894f7102df012cbd01c22e77397bfcc34d9bd 5f543f005d5f8135e38f6d38676677f45886a1be61bd23aaf2a82709b40acfd0 7e1ee7d11e79065ebc1203a6c68a980f0566560ff74b3a9760c958c8b5886950 db7c75ba60be2ebf68d7cba098e67af7a4478b8db3c95cd68d391b21d4cd1504 084a81e3a327c9356f271a1bfb71f95b2ba01ae75421ed19f33e9140db0a8a10 55529c1ed1e3ee494d41f9180ceeb7fcefd8b99d30085935e037e25edb1728eb d8bcda9a828a0366afd2591e5527118102c816f0101e6bfe8335493906a459bd 5e477c6c615b72e2910f669310a31148cec4fa54aafe6a665bd995f78b3b7a03 329fa73028479220ec5a2c2b2ad2b4da6614330a0af091167f854c752aa1d491 d329a6c5ff3f6f86d0babe412812eb8a61a3a0de9b5b91ba7d3a495ccccfe5cc 9b06834285a6958abfd836f1e7432f97edded2f3412020501bb0d5ac3d3e1119 cc245727dd3aab617943c2ee62daeeeed4672ced268f3e7161571cd1ff291f7c 48bbfb2550944572b9470635f1bc6fac9889ca146a28903fc34931c1e266c4cf d058025d9de36166d4cf908a72d07cd9390f581819030310d287ff92abd6f8a7 bef6ca59487b4a1b05515472eee69efe02afc773e27d82048d9afe070e547238 ae9db50e1636c0e126cd4846bbc0db20db540612943c7d19b2cb2199f475a1d4 f2cffd458a18ebded6017a5ffa4ef3760eb8be6e0c8ff87494e19170524ebcf4 8df9d608402ccb80f0ea0c9894a0f6309ef61277d477422f204dad500434658a fa27bfe6a1049ae9f933dcdb12987f8647aae1d7d0044fb85aa0de373a8f0ac7 f2dc15b544b4273b0a4bbe2d168bd32908029e71d0b71bbc24f6e131fbb77f88 e0d545ef8aac660eb9d71f3ccd2ff32fb349fe88ec57f246d2e4d4ad30904286 00b1a81fbf0d80bb4273a26224c342b02f7bc102a1a92206970a066f9ef01d16 77d6e2411e3e0ad17f92408dda40204431fc14bd42925fe08b309ff2d7810fdf fb31cdc1cf350e6f60f242ee210ce4783a6ded95550cef46d43e74840af469c3 c1657e789e2c9484a6eb0b32bce7f7ab21607a4072 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMTT10 %!PS-AdobeFont-1.1: CMTT10 1.00B %%CreationDate: 1992 Apr 26 10:42:42 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.00B) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMTT10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch true def end readonly def /FontName /CMTT10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 33 /exclam put dup 34 /quotedbl put dup 35 /numbersign put dup 38 /ampersand put dup 39 /quoteright put dup 40 /parenleft put dup 41 /parenright put dup 42 /asterisk put dup 43 /plus put dup 44 /comma put dup 45 /hyphen put dup 46 /period put dup 47 /slash put dup 48 /zero put dup 49 /one put dup 50 /two put dup 51 /three put dup 52 /four put dup 53 /five put dup 54 /six put dup 55 /seven put dup 56 /eight put dup 57 /nine put dup 58 /colon put dup 59 /semicolon put dup 60 /less put dup 61 /equal put dup 62 /greater put dup 64 /at put dup 65 /A put dup 66 /B put dup 67 /C put dup 68 /D put dup 69 /E put dup 70 /F put dup 71 /G put dup 72 /H put dup 73 /I put dup 75 /K put dup 76 /L put dup 77 /M put dup 78 /N put dup 79 /O put dup 80 /P put dup 81 /Q put dup 82 /R put dup 83 /S put dup 84 /T put dup 85 /U put dup 86 /V put dup 87 /W put dup 88 /X put dup 89 /Y put dup 91 /bracketleft put dup 93 /bracketright put dup 94 /asciicircum put dup 95 /underscore put dup 96 /quoteleft put dup 97 /a put dup 98 /b put dup 99 /c put dup 100 /d put dup 101 /e put dup 102 /f put dup 103 /g put dup 104 /h put dup 105 /i put dup 106 /j put dup 107 /k put dup 108 /l put dup 109 /m put dup 110 /n put dup 111 /o put dup 112 /p put dup 113 /q put dup 114 /r put dup 115 /s put dup 116 /t put dup 117 /u put dup 118 /v put dup 119 /w put dup 120 /x put dup 121 /y put dup 122 /z put dup 123 /braceleft put dup 124 /bar put dup 125 /braceright put readonly def /FontBBox{-4 -235 731 800}readonly def /UniqueXX 5000832 def currentdict end currentfile eexec 8053514d28ec28da1630165fab262882d3fca78881823c5537fe6c3dda8ee5b8 97e17cb027f5c73fdbb56b0a7c25fc3512b55fe8f3acfbffcc7f4a382d8299cc 8fd37d3cea49dabdca92847af0560b404ef71134b0f3d99934fc9d0b4e602011 b9cfb856c23f958f3c5a2fbe0ef8587d1f5774879c324e51fcb22888b74f2415 50d7401eb990d4f3a7af635198422283cac1b6cd446ddbcbd915db9bff88844e 784c6bf7389803d9450b0c21756a017306462c563d51ecefaacd079732f12c29 315e4b9623a5752c6f1d8145869e120d910b2644887cea7e30b15676a92537c2 9d3aa80dc30082aba94b40990b82fb1a877e805e0c8c48f61e9f2edac05b944e e4d8084ec1d5cc517aaeec5b3ea379dd011eeb454cecab3ad2443c887c582789 72355673e503affe0394fc7db31de364e4f56c24033c7df2265c56445ec63a1d 5695a6041ea1b94407e1cdb7c5635603a4fd047e6edcaeb2d0da6c9e0e9396d5 1a4a58e8fdc1578730f992435560a6e2d3e3687703ee2f78f5896389ac8470bc 806169eb01762e89b6dc9adf857ead656620e2589aae722c37a2ed7a2941c360 b067ee34d8d5ca3bf68db725614d936bcb207781f4d4ec2ac67b13a5ad161f3f 059add7b5e3d904831e31c20c04546fae83ca93a35989e65c201756888f727b9 7e5313c9870ec96e4cec3901ea03a5c744754485e7d169bbc98bf872d0796e18 9d43b712950c3786257d8be06ab6080b9d9392313298327549a8a41c00a2cea3 690b4a333e45aa815a64facae1c2b44640860b8b8687afbefdbd5b4a541a7251 4ee7d3e0752af3e96a88c95d31fa16d34ba2f02fdb0088b165844f02611c734a dbcc2037bf741fdea7e8bcdc130c70c33772f777d8bcddf4611db99001ccff14 d7af2bb05defc3480bdab312a0eff2f375afb4e0df2f803c594b7c93f71ca4af 861ae1711932fef19bfe2f9b7adb69d68e5a70ea4d1a3d5bd85231b16993f65e fb37a0a823f0542f8c2340a073dc1be4a8347f9d3068a6435cd8278b0db1809e 8af9664c2c989b9f16873c009449b6284b85da4dee11c96a05ba83292f0edbd9 2cf674aad6ac1a5ff966ffc37e88a66048deed053565b55ef6bdb8c2f2f67832 f8939a32442ea54f13d003494d6350a2864b427a9126a9c26a031909fe53fa84 63b80c3ffd536c9a5dd29ceb03148dbc24c0033ae3542e26551168a474b72c73 a7e2c34e90c8b7c4125d8657cd89e0449b5969f05212e64175cce0f9faa61069 ed82a8ef9276f14e2a08d8dc7e5a15f1707902c2b2f41cb1fafaa593385c2ea4 1499e485ac560bdf047680f9ce615f750000e1c30ff1b6ac44e0a4425d941622 24e74d9a481598245aa1a2b368da7c1f71bba518d1327a44d8b4770fa08ff5f9 1134098c0f6d7aa2c2270ca47c418152e453602628fa113422c703ec5648a554 91d86aaaaf1ac92fc3e64e0e403a73c84cb4fb0a0232e1a153b61bc15d3597ca d921e3b3b1d02a8dcb0bc8b62d67765e1fe4e78acce9ecb284f8c18225d324e2 6c1658f7cadabdb3e1231fb1c1ecc63492f3d3de4defdb9352f17f36e6053b33 88e75f0a1dd6ed1a29681d66f23e2d7744832623960d919d3d43568232ce9312 5977aacbb8fe7894283ff2841be77c1ad9b5543d6802d41ca0414284cbd3bb3d 354deff981aed4f443aae0c448baad6439ae88fd1946510e3b63c45b99b4a574 ecfb451d7bcb8b70d4351c23b4f629673c18471e0cf890df367c1964d97be3fc 7a748717b85a08861ba0b9b391fe883e5ca814d0a177ffd6254de8b52c5996e3 434de464afbfa04362cfc23593dae5f564a629e735bb6e9431f7f3a947466e47 66c853e76e0f70716dce014a67cfd57e1d7153a2a814504d96f7530917e21c54 4983c17fd20c4c3ba3ebcdb4f21fa6b601a721ed0cf863cd9df35492dcf9714d 9cc574ec0cfabd0ebbb8af259da4d6a3aa4917f2624856b3d812d8e1627f0f0f 77874df1a5c233740f66096e66d9e0645257a16c9b6a7b9cfdc0c3ecaa6ab87b 2186d732e1c6f13ec1b9e5873de31eb56bd8e34695e915c8df8ebda11f2be8f4 2867137d24ec7c10bb5f05e7ecc48613c2810f5b80411090719f0354742749cf 947d02cae376d3701d39ffae46389534af9c9e4bf5a4951816d1343e85718b27 4bf646ced8871c72ba2d0e911c7f03fed02d58a0898fac07822c9f4a597667fa 7fb89028464cde24310942b19c518f093ad8a2a9c209aab55a37a363309b0c76 8540cd8ed8dd6ebf8f3ea91af446bc9984899d4419e0b70bccc4f83c29229171 5990157098a13d5d64f3b9a564c6116db14e7b30ee6fa45869c1f9bcd8c42462 4893dc5113373d3a639a2d75c9fc161f25381290c795749a669a97aa2bf7de59 929614331e58564da4d4f21e74830947aaf2fc517d896b3353977ff4ee48e86d bdd95625110b5def2b70a5d23f03efb61cef9476464ab216831c93f72bb20fca efaf0cda31d49c548c31a64949851ad300270f08a48eb7a809e11b9b1a96fbfd 2dee0d11aa4d89925f2bcc7140e3a5972afc422b997b4d82df3cc42893fd2037 a7d017cb4afcd57da289b3a79a0b3b8954a29a1535ae7432060d78130a0bf69b 839bf2e347436184177d905b742923f532071b56addc5be91a15b23e59b6e254 3d29d7fada6e5214a538920817bab3d8c7f2a00ee2cf7c38c9c5a8428be5a531 a1ea03ecc9dd63e4aec8028bcb1e53cb9e06a0ca8faeb98d09f02a5934f695a0 2aded208613ff6597261551ba4bbd65c3cbb4ea8a71e02a2402b75af22379d2e 78cce3a62095b9a73e9c0b3b21b72f6b4402af77658881dbb4ab33e7dea86d3d 005339cd158c90586a204219cb7e1e8c9c4f9d75ff55f103ddef76cfcdc5412e 1a1ccb5184108b29351e5000ea5c8047416dcfc26489cd36148a63191f076ca6 7f0bc8db74bda98b798b8fd239b65fda7106300c058db7bc5883579e233dee70 cc69147855d0d3e365fee563ceb1d60f25139766a035d12f62a0e383c1b2d652 b9a86b58de8257c9489b0d34c8194163cc28f1f142770dcbdc2d53863314f7b7 d8b275a11f6da0c0f16627041ad6cbafe134373a7bf3e3fe23025664181a508f 435ca0bdeb4aa4983845c917ed92c9803727aeb3e9dd211d6249746f767a7ae8 54cbf1eddf82784c6b3c8460f969cd6385f803b49ab3ebda462a59581e9b199b de2408e99ed85279195e89d865847996534386ef4e2b8cc4d83fde98dca5c04c a31294189a528c780ce1749d17a730f7dfb735cf18afbfe6d582970792ef5e05 ce932f63cbc748b29400436cc39bf34440a4092abd410d04d5d14303b3620c3c 686679af64b47c88ec4fd7e4453768366d559a96a44a6895d344208d785b94f5 710dfefacd868bc7fe7471fe4822a6adf383a5247eb10203392167837e6aa1ff 82dc6ecb49174f196ea736378597a8bd0dbdecdca762ceae5f9182e934df1241 47458e1c7bffdd4e25fa2253c79a47fac72160932638e376764e147da6d68ea2 578f0c8b24740c9e1d32226539f89e42240462118ff12d8b199e0ea6c915fdb7 4ff08f5e48b1ea66f64ff82ccd1a03e2341c76a8c0eff349e4223739f9c658b0 57a79caad48d6527aca375095fbefed9e2c6c0c07cb80665fe4a2eb8653689a9 c7934d4b34f464410ee6ef621bea1684478266baac564772fd86fbb0b0ef61f6 5199c4fe625c6a4a9c67df59f54aebeb59dd5994e38fd0a9d80020002f9ee891 323134b42ecb41b913ffd293f0c9a6f06d0a2ca9f7e43e162ac9ee460faba078 3ad20328ad2d49a00742ec12334ef541012846e18b4734f7b7a1220733146fd6 c9e4e3695a507eecc769514cc6b0d5cec105d73aaac529e995688ca5aaf0b086 3868e4d9273c11b63c64b936266a326a20651427c8c855328dc3cbc1079bfa57 a969315652c3da0611833250024014d7fab169d5b293d9abbcfa962e422ef357 b4a7f44fb8fe25c0086ee9765130f0e9ea6b5c5e9ba5c7060425401b56dbc46c bb3e29f15632accfa350a926715d7a64cbdd0c0c837ef00ec0171b2fc69d3ddf c5ab9273fe071b3b32804c540e6afd6128b58079617f2b12cc821e94c6805821 b9bb18b14d56423f5720e9106b08f672b86204d99f2d1fa855aa3aff575bb9bf 77023c1bd34af03629e17b5f1714b12eebbccc404a6feab414e0151ffb935ad0 22817db8a6553b6c3fa548be22c8188f3b19b83f75b5c19d985abc9a431bbc60 2778b3a8c532719f2f63ac39ae840e04bd03ca24f8d2663928de5c4339e72223 625b6ee8abe64ddb3f7158cbad1f35c3fcfad3e4f487bb3af03baf42f8c78e6d 94d4fbada1cedee42377b7b70b378e2a0de1d1ed3cc91ef9a468b8ca9451af51 47dfd03f7b0caa4e2ab8d27290ecd7d7aae0f12849ab272ecaa949af3a3e2f55 b9e1a44e46d203bac92189859e734a572ec8f589e78f3487b1dae0352be6ba85 e0522d18345938cbd7f8c488f61cbe1d1cb763a951cf0033bc01a29ec26028c2 69a7d9370f11869dfc0c6ab802566a0a37d1acd2712341794aa313cc80a09be7 7e6f91573035050fc47eb9bb521bf7a16b6d5e36eabeb12d2e1112ce9bae5168 8746a02f4b9939e29752ca1e30d0dfcbe0a2a6d03bac8b3091c0980d9691f9c8 cef8f144d2142a15d79dbd6e5b271ef54293661d52484dac78c07f22af59b65d 7eb101d708f87f2551640d7480f491339604234450a2313ec4f5a3f695e6d635 8413286e53f190870a9e6d52ae32e0c91cc8b5167ade7787355208dba12ce5d1 c7757c60c1d4ea5262f262b8c1329630a14cb7ace7018c5844a932609b9e53bc 21c8efe41148d13fe70bbf7feb75000ff5ad6688d08c7b95e9ee88deb9471bf4 95742d233cef6c30cae30beef59c034bcd08787b8a4a33336d477576d49f2159 2e8f868f9431137f7e18262eac5a9298676538ebc80fe9336877f444fb328184 355148f77c6deb83e4f8cf3fdb7eea491bd9c62464d2b88c4fde3299ec89a875 6bb1e6e3081f736661d3381810055ad3e75db0bb17947145eee7b6d83648e747 ed65f82cd7c041c2eb588a2ff35cd37feab7e27068208e03b4ca1159a7efe593 1e8c8c01827c84f7c2301debe9496fce0df55cf4722e58862eb4db390cb26741 f1c3589198be01753c1d39ed4cf3615d6398ea589ba2cf05f27792ac0a6a8d64 db33827bc4a8734f8052dc120391f9b957bcc6259634edf88c46acd2762c5c6d b2e7f529b11fba65a8ab6da75b29e49ab8442dedc29ae4838e3d05d05c5d8d96 e275eb23baa2028cc844cec474a270cbd487ff0d830e9215a9ff44ec4ec1be82 65abeefeaaa6a9d22025265f77e070eed8caa0a19588104d33508867bfa671a0 f31ac8067c6a323882203cb1e98b173ab2911ef174da5976f43b231d007795ab 777843e6a230e37f1863b3e6bf39e751386ced6a41685c3350fe5f2c84ed1194 3c2e62c126cd63e8710fd87c092df137ee8445879f644b91a852ce7a08a567ac 008545622048f577e2fcfda9c0e0ade9dbf89465aa5e4bd07eac8fc6986de918 267657b6fb789ad817e8f849a5cd4ad16ba126119e8e26c269244e0e05ce8fc9 3b6154fcd3b1f6f9add0eafbea684acec416951996eaeffe454ccd2fe504f624 cefd09787e1de714867d873941bbaeeadcd94871ec45ff7449dd2e69e3969662 af38aaf2b087b36aaa8e565991bd80145c7a6edb13c14727c3f2bd9abcbc1a97 539a3dccdd96aa8a8b4faedbc57963fea83c3652af348fefd189b3206ff36263 ca6bd5d50ae9717a34c74176ae87d0f5a0a697c3f1eb2e465d2177b537b90284 a96aff2310278350c0473b021b63ae0b9e1e61235608830f92f13565783988e8 b4563c3e675351f22e2e09a8bb75e73bb53af0ba110ae531d992fe3791638158 7b27665cc7a27ac1a00d67656bb39340751e0d9509f66ec5f141d1f52967dae3 242df2303c52bbf18238e26541cb8bb733e4d3c220a97e01d98cde87518fe56a c3520fb30f1b62651a22fc14416d6912ea730fed0bd050a1729fc86aefffc1e0 96b332d5982b615a61c03ac600006428093ed1e3116bf1c5a7fc6ecfd515e971 f2a9ce4e8dd96d4e56d1f613e447d783973e8371b9de2890a9d0e4f2112de13e 8255a087f16d3f3e85a4a7b2ad2b8bd336d4df17b8c12488f7b151019a8cf9fa 84aeec86c56ce92faef095b2f31ec6db5f62bdfa746e9c21298a641af635ee04 295dc812ac09d43d8ec64d1c98c1dc67a83af057e13a57bcfae08bf95aca146d b2c6079581278d9442a5c8ad2eb2f12d5838102dd1d4a70a979a1367ddcccb4e 1314009f1127404693cfbf0dd4ef2df2961b0efaf55e4d847f8f4c89dbb725d9 56461e27809fa65ca261e24b7d831cc44ce47db3358b9e6fc943fbe90bbeb601 707943e19b50f55e21931434be39756bbed17d8f3358dbea2120dfd818e7503e ce1424e177278b649bfb03d986e31911ce8685ad083052a6d505a03e92558e96 b0c1008a54c9c69fa4b630ea21ea4d8fca0949ae7f4d958ae2658efe0d930b2e ee0ddb7e65d4b13ac7da7b9570af18c4acc2e2737cafc1710744b7a8964b7d4f 428aaedb9e4af84124b3dfc081bd8b24f9aafed9e2815f86aaf9fed69938fe9d 32ebcdcf3cdddcb7bd9bd5d0a317b6cf36165402c7a7322901e9159a99c422c1 d12d7f218c81fe00419ccdf3e218b5fbe7bafebdeab2a179d1891fe7ee6c3ad9 b4388359edfa0312bc5b0050ca004b3c5d5c1f62bd6adb7fb6c7deb44d818f11 012d3dad84c5011f3d17cda52c826b1ae01fd8ed2fe3d99761eae91266726b42 05dcde403f07ccb53ba4b9323f436bfff7f79be2eb1ba3c3796fa5e703834a94 5d4d0fa04a1a5918e2b81344a66c687061db52632a1055288d3c425f808abf3a 5a38aa49d6fae122cbb7cdf5df404dd9aa062a6d443a3f3e1d60c30e5a847b06 0f886fa5d6b40a4761d623968b2b216e27ffffd7f3772720c870bff6c9c68eca f32743284818df5d3f06dc8e6f52943fd0564f922fb5e3dd3239c5222f326d7a f487fbf655270ae7849cf9f74c2fc73050094650c860c88904597dc78e556b2a edfa66490642a58299ac9f99506a8bdaade9aa1005c4939a4a587ca328641a84 48eacee7975402bc6641334897644231feed77e41b03310d4347a94dca752f35 ac38b2850ab73231986a0cf323620ad1d7e2c3e2bbd41ea2a5bf72594f3a90f1 5a78d610ddb1e1da82948cbad6954763b9268348249a0f21f9192db72330ba83 6b1321f34f11221bb8e70e26ce97ef3b17970468687f1d5edc531abe18701c7a eed0cb9959634772d5bfb8bb03c337dae5867fb1adf95f650cf4b5c45b0d8733 cf0a7673941514d671feb634b41a847fae9a6e66c8188019ce350d8ef521a822 71c23d0453d246b78d42929a5ddf41e2476dcc04c9c73d212221e1ee394a32f6 75962e921995c30a35356e00187c140b691767b510ae8794cd56db1f98bc66f1 095a3b1501f6ad8711242201c643ec907ed355e354e0f6e6e9ccf18056032236 d50e10125c085b8da261ec9044532d1c82071b405b274ab54624ae47c3c14917 c76959c23f44d8f851a7868d733e9620a00592083375e4e422f4b3069d378596 ae4167914bd8f711ca030884649a0e2582f6ef8786931d8dbf83fe8cdc4c51a6 099f41f4099330a77dabbd85072aeb957e5741dfa54d7383f3326dc9c543a81e a16f649a3d982d87ee5328276826b3045848bb54278530ae5c44a65c9c8bb04e f20273de3091a5645437f083cdc19aff4d9544c73c2be09d1fc649b98d58a1ce 11fc1e30513803159b7b97fc238d3b5bf1e25aff7f341ee49d63cba8268d202a 7390a915ddc206ec81a3799ed3a5969eff0c61aae4695eed917c70648ccff769 69ac14cc19648b74601e3f2e919ef95cc306f127b16b98d9293eca094f54eed2 eefe661a86ddfb2325eaf94a6d005012cd2be79a8aec2dc343b1ac52dce6945c 59d43776c5c6afb025e7e47f34887ed9a76bf2814893cf797e2575c0508d9ae6 0ac8bb337d2518f9bc7b3744711da91ecb9ccf0e3b8d0f1b86b0f9ece4c3210d 5fc8de9ae2a2e037742b6e260d691472058bf65c8cc4f7da38da9119557e0146 da6b4d80a8bede5e984d80cbd1d6a067d97243a0cf1b63cff64cfc2982f04d17 12da57d8cc970374911046e64bb38f77b70f584b66e8fe0bbed6222899dda98e 6d7316e40506eae35d8c300f77f8ec1f192e46e7cd266c7ddc2fefbf5c008deb 4d8cea02c0ccae7ac993d6b0199c2f80bce16c2b76e6975994c2fc0552e499a6 819cc2da7bc99cc69706490052a6197e6d94cc5893f6ff5dbf564267c9ae39e5 3d9d590142ac7c4224d3199d7b6f9db372c34203d25d0794040167663fa97bee fef770872e3891251a3f5aa0a536e560d1580774d0c1edf6f808f465a2d53ea5 1a5774608819fa02e74b7ef34f925ab3143d1feb094e465a1c11735940692716 55dfc714f6af1bd01e8bb09405912650b0fa8b842883d4884d44f659a190cdbb f5c6484a586e446fe44559bc588a42bc0f4ae992795bcf49baaceef6b923eebc 86b72bd23b60aafae71a39579906f73e1a70285f4044fb82b0d8f2db0df273b2 403d1d5039965be9f816757d3118db88615d7322645e81c73dedf2502c0a85f8 e8154c6b2d127bce8c9c51055d1e45883a48b3c939eb456d304f82c0c3123143 5c8d055aa5cc04ce2c3a3c6cd132dc5b9d6372d015b84bb5b03e89b9738d1bd0 a014b92484e9decb8e0b83b91f7c15a06e34020a637228eab612a3edfafdc77e 1217322bb9a75f9a7ecb2f3c9f36bfe6fde3e4fe54e7da64fdddb66f8c68d7a5 671bb570096b6bbc9245334bf064f38485878e48ab86e8897728b64b847641a1 c6eb3c1e1b776b90e5b0acba42b10ff4e3a79862e7c32a29115032b0ab45b93a 2716cd02cfb8d5b7d0bffb17e9d848dca168ac23b7fa551b05228ac402f1168d 9ae3d050f838b6fc9924c53f50ee4ed4dd467f988024bcaa41dea6ea82a9f512 6bbff2362006e5060385325a9d881fb8976b8d17798fd5754adaf546415cb205 cc7e294aa6d6d5ef125e8a84d84363b562fec4e2c890718951272d7bcede4b7b 834d416ef93d6a6727f936c1c62f251c2b28ab0b3ce9f932d4b82334c1ebb069 d769a785733269a663a2ad2519e9f16de19a1afcf389487c4a6f8a4e24a3c2d3 fea704c0df65a4016a879f93fb6af31328eb832523ddde22f23c160337baaca2 bf40b6a7c478f40c717cf9368df0fefb3222a1fc1ba5de9ee47959f9baa1ba70 42efb6df19056cedd1420e36dbae23f57167364729172701fe71fad1296665a0 9924a40dbf8ce13c7420ce2c5b1c07c99a8c1049e877ec18ab8bbb7c3825bab0 1c41413c46688d3b34a3da1ccb34104a3fd0388cdaf68e061dfe10aebb65bda4 d69865064386539bb0927efbbe8cd8572b542f01f73d2b551edd3b2107250390 2ba80165e54d37b9128a4c929a3323b6e10f581b8ae6edca1e2e0acd84fb46f0 bb87afad41e21769fe0d5143283018c5b06ed0e3d57cccbdc4ae1f038e4a3c02 cb2082a1721b5d8879949da832b7ce9ae92499f8fde9dfc220a89957aa3fc926 c1d25ac5f5dfcaf32dd8ad484f7a073d865cd6ae7f343c9906b91a4803e5e77d 34d236eb2492d24fabd9171547a6d91b326fe3acac827fcc9099af3d17abf22c f5bab77f53f79bcd54fc51fc31dbd00db5ab2e480c38a91a63c506232267f91d f0391547ce83387221495d38bcad6433fea41ab84ea21f484ec41a748cb320e4 25f1325b777cf70d5c6c9e797adf7b8d8d33e3faffc3ee24cd3c2e4d5d52f12e aae75e2bfeb3bbda26286a6dda686ff66442f4cc06cf2ff10da863e151f1c253 25b975d9d1b5d01c42c30d72ddc126489462719bf3f3c353655c3e11ec7d5d32 0715a2fc2ef0cd7f617ec3b6ca666f2bf4b3b70456fc778209af72bb4344c6af 59e96070d384dcb0829434106fb23c661b19aad46df7137caa0cfcb6358c5c77 2b1573fdf3ff179f09d96c8e51f7f58d6344d285bda3458910db7d81c4f8070a 149ed9550411f23c7da426320877bf498f1c882d2227271f5f88e8cc86da1bd3 02efdd79ccf436964a76e7d2afa36b7ed263b23f7f08f57494a751aacb0d1c77 ad380033bf6a1f55f2d4a5a4e454d96448ab654768b184547d96f0c35938372b 20b2ac8d73544cabc7ffa47c43f6064b205fe5f82c24bb9a2699b58a7f3bd48e 975baada7bc622ad72001265cb7808445389618662017785f71fc1e69cc89724 90547b25430bae78d2aa3bb44b9209ca604f27190a865af1cf1073be5b9a37f4 10966f51a5bc7de7473e49b121a9d202ffe61c7d7c690e2963054f69b2f7a291 8d704ab5cdb537023bf9efe44ac69eb4a963fda334ca58062ff4ea2e268b0f0f 0a2f1e3af27ed12f959177e89e32b2c899652b6997e50370c121cb314fb222ae 5c8a185d93eb1398a069c9ed4c11eb3aaa0d78f1d8f52c3b5a2b5b7e78707254 65f8717a7dbf7fa04f4d600ddb82f1112eac3933a7830252a7ec1b8290a8b9e5 0ec16b44c700cc8b86b68d3adf52ec1be604e665248c967b30e61bd4834ac4c3 3e4802b88516da300d0f329d39c34c2f21e085bb01d990f3547f1112b45ff5c4 7bb9f989c96da7b85e16bdad2869603d8c9e3dbc2648ea16d4d1d86b015353e5 eb8843f2b9c7578800d5da567c5e5105049c8dac3470280444ed549f99db73c6 a7e1c02de7282ef7b952a574549259291609782cffe65823f1a0a53825e9146d a1c32a388be2ecf7406d1f7b1a8b36f275d0746548e0558ff8bcc026b827883f 1e1bf636e3f878dbbc7b43c92cdf853c8193b2eb716f835d9a708092518e43e8 d8a7289b1848fdc943862e4551f5a020aa28e40ceb8312dc64cf7379a0928c18 4f4a8903b99f81f718b591f47764528f5663ecd91539a65085389f9b5a761380 ac6330142f2f1187d5e257b684d7955ce71580376a55ab33377d211703996ade 530770454be5d692929a21d4618051173dbe27da931b14128fdf0c498b7bec96 f92d15a5d418990932e254f8ad249dd6d14dcf2b6afa2fb505e3501315f26d5d c7357023d33bc5fd232478b7d212c53f3e799784c2f8153b5cf6b1367f8fdf7b c77b944be8a3bf6ba917686c45c081b2acaac98f144ff9fd16a297a72aca43d7 2ddf054c940be19121820d165b1017875f6c3336bb8ac3264d3cb98edffe5ee7 7e8f93026e8db764ce3b7d4306ba8cc2c93dd5fbd01999e7c995d54abbc9907b 21b24acebef966987a27897234749d786e7b08108cf26db6707d5f2c19cd06e4 67372ef7c72376e0930116778d494833a5b2061dfdc433842d8b4ddd817df764 34cad6c0b19b8add77d1555c12df68b365368903a4d4f30f2b2ec9a7203f9332 8ca7f812ba8f5006fe9469bbd13e5053d5e9fd6ee896d98ef87f422db3c3464c 781c3e726f8588c557c83c39d5b903dd58141abc4cbc70c56c4a8681ff862e41 d0a422bf114020bbb1337bb91d48d87dd591f0ffdd3678e1163417d23f31c2b7 af2e196d38390309fdc76348e3a8c0e70449d2eb3eb9c399010280889a39f9c8 92966ab85f3583dd562e746c3ab71bc7974085bf874280117f7798f64bed83ec 154a6135b7659cfe29a521aa897e43cc122978237c946d9ff84c63fd0fe077d9 e5549760384fa105305162d1e151ad2cd152dbd4fac05a45480e691177fc347d 915f868455b5d29a66ce79d90af90caa7ca792255271245549ff5f640ee7df75 8ce839879cd641f15f112ef017b4ee5e11bbb7d3954da31eb5eb497b8e0760a6 98b17d59fd9e5a89eea1d74c9ce47b888ee309dbf787967497974a70fa379c6f cb42e371cbbb67136460c540266cb9f1421d1d49718b55f8662ac113fc99580c 8299ee8046d2855ea8985e551f197e107eac279604b43d8dd4ddad81d677dd4c 2caad5f7912faf94bc156312673d0898c245a0bcb7a614d8dd262fd93d56566f b7d88e2413810de4d5332fccf8319e867793c265f8e4d796b802d3cb4946c3e3 3a598440228f1a90c4f19a6ff4bdbd5e1ce428bd58e9092e110e2900c9d8d13b f0244ae5345c65ed9cb6c93c50e02b2e7cf1164549eb9077b1119ccbca761d9f 305f4edb3b2fe2c5af330cf18e17983162226c7d28575414fda8fd10b31bceec 72f1c1baf3005bfe872aad0956cdad59074288947851e9db0729689fd41dba61 5205f5a919b6b5a4015057765518d4e118fb14ca0515fdda2708e6ce975e179c da252012f9aa19eb634a72031b670182d4f467a31b431192dd314a2d650086be 46706c0b373c3ef26ae7bc4c93a7062701225d8670c40ab891f6e82dfdad5349 9a5e2e0d179c16fb17e6aecd91e8e505b62877445c27476b11ceb347408ca5f5 e44f6fe53464a26fa2ca571ad0e1340afe586ebcb89ce501281f6df4a0e8e139 e7f7d29834e1aaae09a118e2c983dd9390829f2cb20de6137962299f4cf4cf30 1c5233f30b2968a5a03e50031314ad4ada92e994f89688229bc77facc4d7f9b9 c5a45f753d2db58824c99d7628c453b6f2e0afdf632ead1f06e6402779d2e7f3 545e29eb457b26197886f83b540d3890291621ce20fcc3e50c4029e348c570c5 6bda2875f33cafa58dd4ae368c403df3e37b962581fad1072601d63a6b6b6144 8810e22edf12bc74571874bb90e12d25eb26025fb7da2230f918c2e1f749ce4c 9a0918d7a7390f1c02bb0de508282fe5256e2923a88e51bd7a4bb8aed9fe35b0 12129a104b7f72bd2c5249ff04e0aec2d5a85dc2e78c225f85198add020f9fd8 1844bc7e14c0ac7730b2a4194cec4a6625cf3422e79cd00c696bafdfd7b9b61b c57a5f70ac5d354c8f3fc8253ad12390f2b6690ff3c5a677c3d1f37e0abfc82f 1e1f4111a3bec94844432c8c906f531dd1b2865ba02af0df53f4db6568192d32 e0cc63a3973ba4eb5a6c80f111e60d24ca4f890c84f3030cd588656266707fbe 8d93710ae75ffa22b2a9cd28f52f7c3b67fe88960adffd91452bcae6ee45cfb0 39ab54dfa80d1248ae1a44578bd54ef3957fa678affc97ef20fa463e33316341 c87c26a40f82a600c3e829db76f316219dc518e0afec550955ceabcc1bbbfca5 bde2ce48e4016473e74219713cb15409abd8a65098a61894d989d2f674a561d7 6f120792631a500b121219505aa45b26a6067a1305da955d2ab0c93c4b927eef f3910fec8d7446c1546cf3c7556d655aa5ee1d56c6e053a486244d264bdf1401 71f5c3aa581dd2141698508c317a9faf09254d21ce0c15ee651851561b9100a8 205d23378b703bc3e029e1802d93b45296831184e6648a99a6dc4bf8704ede31 19c0d04252e93ec85e41dd53aaccc3eb6c201e5a4a12f99cc504a1e6d258ec94 167e13ba84b0f93b367cfd844566e465c615770003245437bcccf08234c8513c 5d0be4c1561b9ef5c699581f73846736da8c67a3a72404fa4192f9573cec4afb 0455e8bc8e6bad90fe92e27c76f7fbc212fbdfca2b115ec37c678e1466a43592 4a3759555d6aa9bde5276fdcefb880a2b1d3a139832722054c3bce0439b5f025 b6e1de4347dbd3c6258460319f85dc95a8b0db73de93de6ddcd3b10eee4579b7 b54642726eab964f9969b9909f168e93b9c393af777a9aa52cbc285c7ac93382 2adf83718fdaa5693aea83c6710b2d5930dfa5beb666d35afb67ac47d084eeb2 2a1249e7480743aeb72f48eb306b5b68cea1c0b77d1f08dd5d7847c13336f9b8 e8eb7973fb9231719fa80ce44ff828949330c01a479aa088aea13283400e6487 0428f304116361fd24b7230bd68fa317985c712a4d5256036d602cc0d564531d 24784cc6189cda3ba8397bbc9c9daf3eb881ed2890d104620caafe70bbc8a78c 5cc7c150572881c9a56084f51fb203180f9197d8adfddf3e5d649f6b3e4a10d6 40c1d6d30a466c7c4e86450b387677acf4adb4ba84a6b323f168770ddc1aabba c60fd723321fa218d68d292b041aa0367080e5a121161f2eeb604c9a7d1272ba a7508f46c10e6acf68d859ae9dc2ad20b52f1f251db99da405c51a730bb878a8 ea07e76b145eb386dffb462b9058b49b4310bb362c88baca3886c88bded328f2 7626dde15b913e60162bf9fda366595545744a6b0d365f4cf5c36f5f067af191 cc54927a872efd93927191c9dbea94cc0e3d8359a228bb63e536360447145737 ab25d1ff7557e22c74ba230826bf4cbb4ae62b95343cb2b888cec91767dd1076 5e35c8da53ad5df7796f9bf7173dd52f74506c071f4bc1fecc7afbd8031ba950 10e4ac0d52576c62daad240c90b5e23e095208f627bc10ffe980daeb8fe41aeb 11dd5b37e12b570e6311b2e5485cfb2fe1b4b895bc8ece3daf9a194642954b41 aaf298ec1de0e26335da605a52c399c4f8511e207b928d770a18170041a03715 2fa9b81c3b4388a1ce63b1b197973a6dd929c096c9fb84b56a54b92da34906dd 328a76e91adfff1ee223825d089be85eb3115e1f2a0a849805f4b4c2d7352d36 bd9682966ffc995ed79be7e6d72d2e6ec7984fd572a0ecad6890625a1950865a 388ce69ebc862e1f26c292329237ceebd9f1ae5274db27ebd0f43283bcc0a400 57f6dd8be13276ad6c083806236ea7e5fc0b2946f17769516adc6716a3db52e4 0735bfb9d1b0e48043a8838449cbba5e2c2a68656fcb94f3d7f91b22dd4944ad c631af09c3d2c416482aaaff5f8e3f021aa91690ed8963d97001620d3b4b4cd3 f7040baaa9e71ea747fd9d2a3bb9e501feaa1e1a2245052550fbdb580b4d066d 5cef9b85f72aa512f4f24d90ea342e4788cd3dfd215ce5c1f672f402cd2af23f 9de79c4282d1d087ef605a2897c7427c57b157c57f8abf637bd4bbade16e1cd4 c1f078cc8e57a5d234d8e30d56e62fc1ef804a905e6fa84f79e8aae2e72f818f b4b2d47634b45f0c538dc7151aef9bc6ae6069a653a3ab78c35856fe45020f72 4352b2b19a81238f21d37cd871f0b57d3c0bde02931486eb366cce40216891de 43dfa65bf9d3a4ae2389103e6b742c2243f090441d20b431e6a359d337d965b8 b3b51923426d5a69cf8dca5de22d32155bcd455d61a3830ead884ad528787ece 709600a55e65a48d0459738e7b732af6a06554a3b400ec06bdccee700fe5a0d8 e2cc0e67a03533c15c6a0b86d96ccbe6bf3a7f95f9b8d0859444c0d85cb438aa dcb3809c300e29ac6b993144259d7a89639839d48e340a6517d365214c90b385 7cc5a535641d3eababbed5a59958a29ecaba2055a22bfa67cf7336a3972e1c28 a52ce13d4fc9b4f762cde88c588e40375d3a12b5585cf5f45fb88b7f6095a1e2 569586f1a5667a3ba9c2d391b06532bf7f9c7cf1b3a30a393c9ac3627bfc9424 ba5bc03488fe9ade494686a5f61dda9c1c25b57f984d3a02adf5dac09b88f50c 2886fba6cc8df0725625d0775474c9d7e9554fb3a080943b60a53cd8389f32c0 4b08e8d92383af1232a5eb0b09175abdf68d58d332a09f8855a9518649ab3cac bcd3700941941502b990aabce900800c9cdacf128329c9c601989dbd1096db5c 0005cc68a99627da3322de9e80258c547d9e53064eafb0c69b20ad04d3b26540 e3c7a05c7a956f6bdace68117dc287a9185a7f15b44e1e5831fbb207858b0fa8 1553356cd51f5190f5f02edc021dac69fcdcd3437f50e80fe960db6292d5ca02 9b437ce90bb76bfb1190f654a39b94f3e761f9ac86168b6b20a005a29396c931 4928782773b90a489fc3e2725af4f76b4b65bd28426edfd8c5f18b0c60be6cae 0ecb0284c9f793625aae6e96fb3b167021a9ea79905795f7304d33575eae4ba7 0ef33c5ecc743ec348032e6bf44515f0e41c4b37262ca197efdcdc48de1caf1a 36da1432fbd3ab09eb327a440fbb92af8f5c8b70abce6fc8bf63c3bab31fac4d f6f5a9a617d5365e64e757bd4466083274d8118b6115c3aab9bee3f3824ea49e 70640f3d34b10809452b9d55554acb803830b6fc2e3c22ad8aa77b9457299a2d fc2d27350c0c39c5678d6b5007f1f4d2d39347d0a7e622038e3e3171993b5702 c5e6469b2ff52c69d4580198528910cc2a34c887de0bd10c0dd87b1e9894b534 a554ab840dd537922bec49248667059b5f8a82eee25c18a44a7890543d1e4841 79e29fb128b0da6c78b6684090851e450c3febb9843c0a4de4b9902a6ceea8e3 2023fbd97fb5a26cc429ea753f14d5441463276f18b542815f1e8a70610f574c 2e99f856599d9f62421c5e0a39a274a1ed03817167cf9e57e4126b26841862cf 8ccbcb6b3ecb48d065dce80b24be2f11b3372f0bfae34379460b13537a1fd77b dc762d47e8f567b4a014e854986a5ba780cba4a551bd40499d28c281363a892b 8ec85340d5ed2f887bad4d5406f410d2567b5a0f98cdef7d7638886d932e0c19 256ca030469c55fc69e222b34d7617c867cf56a4785dca4585dea1eca535adbc c1c143737d19eea2e7bcb39174a797cf21305f27da1246228d968d402b0346ec 41652c7ca915f7705748da0e5220f232eadc88a86813e3f4c740bfedd3a28576 764104201bb2aa1f8b48bfd6b2df86c577b18b2a6cd9cc7deefd450c0afc03e7 b8b8ebe2d73fc7350536793e841e1cfc9ae6f1a95518f4e193b1bf3c7a19194e 1916d30a9ac8264f6770e72f507b931f75812a97617e5a4112c119936f40f4e9 c8da010d56919c09f706af139118ba54474c4bbcb034edf39f949fea8a3e1cd3 0305f424ea3a9303910434baafb1283451170f3377b930085eab8638b5f0e8b7 093d19daad7201f57b353ec5d06bf035c6944a126101e6fcdd4a142b6ce52db9 0c5da7da6c349f43475100b5418b4fe2289e8ff9174a34840bf1c98d98f76e1d f414594421998551e0ef998557abd593f854d6e74d04b29024f13a686b2c53bd 448e8c6ce7ba29a8a859f5344e253685a7d5f44b6cc07cc7557471992360694b c62ffc476fddf7369dd0f9b2f1b8b5b230d629ca95913166250bfe276b701e85 52d67d3b8526868a850094327130972c989d0aaa51d6dcec6387e74ff2626538 911ee0b5c43766561c36ba6fc61d70f8ec4c353a1125ffd58593e5a2ef888ada 24554af14713154a0ff14f5fc15c1666dca9176a788fb85e2d4e6d2b0342e466 8b5c597e49edd6866d05032fcd830fd33f2029671187756ff61005ad329aa46b ef86365063560cedf8034e426197e103985ed544c3aeff6a749e0bf2296647a6 1d726132bb53e23d72c775d9ef99d26e3e878377668cb720a5bf4fbe1080aeac 894d44b13ced744b7a39ee9de332e7ac912f4c75d62f2e8a4927bc3f99c9f5b8 8d14020a57bff240ae54b8e26086bce9b478af73333e9dd63986b1f2c7d7d6f8 864567f88629697937d1ba07c44e3e7ad3f1847eec639eae5622544fa3299967 2fd99c5c75bc737ea4fefa852d1096ba4c78a2771f561a12f30eb3fcbcf7a9e6 f9e2ea625969fd8b15a3b5db6bd8a42cc395b4699ab142ce8e7784452009ddeb 67a5c729051de9f7371f002a1dd9d7597a163c789baf49f3e186a2a7b8d09b43 dbfc40e4dd8c3fc2c6c433b1c4d16539fde0a9fde88c2f2de8035e1912e64075 5a306118999faebb3626231928221e520eb143db656e566a0d8320a98dd4a454 f2af8e250dc44433e2c99847da2cb38387acb4242b32c0e6cf2e7d25bc83827f 7eeba644df7089a099b871d8e5d948366f5cbb77fbed46075f524570d28f90a5 054abf4339ea7cd012f625da83034bb7ad1ef195c59a774f9f1e416ab748deca c8fe1526c667be84b9a519432e8c37cfa140a5d015e428f9b647f7b6344d3d06 24d5c053427eefa4c1853492f6055be5f4ba5739fd7edbc7ecfde00d29060ab1 47c30159451370b7598b41960dcdc3e553b83dd44fa5d76ca1f646c92867f284 c51e7b4aa5772ae0db0eaa20494d4e077ee51b9af0c8d29e6549e299e0d42073 9df37ed0deb606e41ea7d4e3a807c29e3301a6aa0b57a0ee95bb90c7397f50c5 e086693778cddc1c49d67d8ad9a78ec57f07c4f3f9e3eb6a92b6438de93bce3d ad1e7497e312639d21064ce08257ead8615a7eb4e79f299c9c6113b511c0fb16 228f9645c3615850f157fd2611b521cb12008a37747ee33196affee3a4fb25fd c7563525cce63355f3619681a5d8a5074d71070b325ccc85f63daeda47992fe6 d085f0e800a5d74f874eb6baa69964ab0753c10114a1553c70dd8eed16b22805 4d8fdde7631d4151ede57ed912a23541ce51cac299f95cb0ee169d7c193ca550 f09a19d8515590015b6eff01cb13f83c6f9f1a7935591807d06101773525883b 32add0d91791578e26435c1e2d6be67f4894718adb3e4a327bd69fba4f69fad8 c2434ca0f062f69bf20c76aaed391d9d1026bedd486b3a9a6e87057e5eb20c59 5adbec5c231d5e543b1329c1fe4378e1bf52e439fa05c2a42adc6bd080683ddf 00a0c83aa5ba8b057f452af913a950b60f17c363a485991946bb65e012154ce2 456dc9184e61bc88f6362901ee148a5a6b6bf9da98488fdeaf6c8ee3584421d2 49de8eee104f8bb254a0b33cde70fe76bab46e83563f7d2e576141851dc68c29 6ab7fdd4283e963bd1d7cf8dc78835a788a2679f50ad3c369e9c9fa352b00c5a 00c44e4b88a4e55b3d4f54e33d3202ac1c10badf983552800f5063da1c0c8737 5b5c0172e82aa1339eba93f4842c718f4ecd838811efcf2e1362025313ee566f d4163529be88b78c78f4a1f65bf2bd64ec76435b412de58350e6413c7d3aa497 ea17bf6050904725e05c3909668a1be70f0b74ad0c8fc5d21a7fcf6ee82654af 4c5d88dc2a46110e22c4f1b294c0dfd35bb79a3201f04bab01e567a3184ea1df d043c8e6db9e8eb07066b3c4ea9a45fa6b240fcdc0610723882d89a56f48c30b 9a9ecc27df04e2b354aac2672acb34f8c8eec4e7e9513457dde0698989213f89 61c0e3ee8bc5c59dffa880976381350923ee75cf964724769532ad63c9b357be e32f562ea3bd6752bb850d85492700b5b2c35c10c72970b597d991a222e74c1e ddaa4c087c741e11d2c45029f36cd24028fb033ab4deb5a3ed280f07293332e7 f7dbc25bdf645df7ef91bcdb3c9a4cad2f1f7887116253287faa732ab3852c99 17e671818263a86f5e18552fc41e432b6e92ab2f74c5cb6df17bac5b1d69faf0 d3054ac2e3e944398cac1cbea76e2d8342978ece77862924345a1786361fdab1 664eb9720c3346cd162fac77fc5a3a9e4b3eb9625a35bb1125b3c66d646cb1b9 fdd17ec33e5f6fc5ec7cd0ad0569551af39cc1ec11c4b8c0c2eddf1be13cc042 a287ffe8e13b1fb2e7e5b512f5e2eb78c1f17f70cf4825ceb8f2d2f095c45e6b f1b436ac57dfdbf0aa069e00492e480259b6ded14a669076e271479131cd4d60 b106546e5c7456d4f527a1bb2023e9639c9d70cc5dfcda9c0c2081da8d5910a4 1b4dabcd2844227cecc13c1e51c306d78055e75ba1576ee81acd94b1bfcc8672 607c701578b02a8246fcc6932054f1e3475405f79882bc0cee161231a49841b5 2e24c7355b88fbac13ac36c73b97962b038d23d95efb8794016a09498f3bdece 71a5f9a8c98f72320b87600340db825082d1740316cde47554cb9cc8d58bf525 d74c3d90d5bb1ad6d638295d8f56c78c601a68b6fa2f2eda21e180faed8c9486 4390442ac425c1ecdd9b8a11c2e6e9b4c878ab32ae4c1d8969db67dd4df02fa8 1f06046614181a41fdcb22fddd536434436a821de1a46d2e24c8ce41106a2cf4 9a2d4211816e59a4aa3c863293c6e3ad55d12e34337ca8b8f0fea70656002c1e fdfa7e5e0eb5424a838ad1703d82e0d18b281594209646e263a0a89d18b9e70d 27712f20fb6f8aedad82d85eb68b2b9a8dbfa7910897f0f6ca97b1d8c93d505b 55a2cc368c8c0624b10b03f1996d32c6a9cea43ee1c36f53b09c37c5801de1bd f74c87a41290de84daeb6467899cb68527550b8ccbec7ad7ccb3bc7ddbcd30a8 56ab33e6d9de3dfc833fbac0fafaea845d0d70be88aa70a8f2446c900bc9b853 6ce20802d2d1908dbdcc5b47963c54d0 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMMI10 %!PS-AdobeFont-1.1: CMMI10 1.100 %%CreationDate: 1996 Jul 23 07:53:57 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.100) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMMI10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.04 def /isFixedPitch false def end readonly def /FontName /CMMI10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 58 /period put dup 59 /comma put dup 61 /slash put dup 65 /A put dup 68 /D put dup 74 /J put dup 76 /L put dup 78 /N put dup 82 /R put dup 83 /S put dup 101 /e put dup 105 /i put dup 106 /j put readonly def /FontBBox{-32 -250 1048 750}readonly def /UniqueXX 5087385 def currentdict end currentfile eexec 80347982ab3942d930e069a70d0d48311d725e830d1c76fba12e12486e989c98 74c2b527f0925722787027f44470d484262c360cdfdddf3657533a57bb16f730 48bfbbfcb73a650484015441fdc837add94ac8fbd2022e3ec8f115d4b4bb7b7f 15388f22cc6198efe768bd9fceb3446ee4a8dc27d6cd152485384ef5f59381ff da43f2d20c8fb08aa27ab2015b774db10dacfdcd33e60f178c461553146ab427 bdd7da12534ba078ad3d780414930da4f8d58abefd45db119b10eb409dd89792 3c6e705479464a4b310b58348c4b42393988fef4925cf984423aaf65fea9f0e6 4629953bcf50b919d968d99bd185f83112b2759cc411764e9bde677f57c5ee5a c555448d5f81a16259ded1e11bf4119d53e8ab07a802df900d3a2d5ccc1c6876 d29c5e9effb7af3ef83400b0910c07873a8c56fa7b1eb1ba426043b00cc95dbe dc6e136cbbbcb3f67509964f9f281ebf81fe5b018122eaf66c4a838487e82e18 6e006093042848a903efb3469ab6b4049767aadb95c30408dfd58d8a10f4cb22 168decd9f3ee100f07b49aa44c92139b669cc312ba20192454eb2375be6284b0 26659d964b96ae82d4942e758027fcf23c25ed01115af27ce7f20efe2a822bb6 84004f20243a49c9e93301fc21b80815c033c3e2ba58ef53da2157d524b395f2 b37abca13bc6a2f42e824ab7e47106176b0d6db267fbb795ac7425582df2e3dc 55863468a9200742bd7b552c48f8cf58bc21343bd3b95abfa140f33f37c6f3f7 8b0d8a5154eb7c1f62ec598267f13e841a3e64172663935ac8b665d86540d316 ddece329c008049c5e74b27d59022c5515059bc3b89370b1bc6a169c888bb325 e0b74282d6f053a50da4024ed1e433271a32ab8c17d41c632b41cf9f3ecd5fe1 24daf7aea7ce8a63047b245822930d517df7baaafa69d2d17f7d93cebd47deb8 5405d720de0bb4dcae731a8e27bdbb6e6be38d168b7daff815acfc32ce367374 bf9fd98c0ae5ba1bccdb84d94b5c173abc92f7d18e19a68f64a2241a0a163910 8dc46b8a04ead17662b7bbff3d3d9a95d5937698573bfac64973dc8d8b8d9f68 c52d0c133119eca4fae72f7553d276c817003234a98337d7c037c0f1bce8a804 57113bcd97515c002d20f836fa086a3277727873ec2b64a92bedb01193491134 b6692a08de4a201a3f11dbe070d797f7629ad487d2b8dbf89a0631956c93864a 44671f1f82b2829fbb640317673fef04170ef610131b958e0ffe14bbd553afe0 ed8c17c61b5f8099d84784ae8ca0200c9e663538f4d8a0181a964817784645ef 30099793f54f993e061c326c30625f4a0c7f1ed44f3ddb80bb99d037e7c7c0a8 353984fb92754aa8302e43a2ddbf01bd8c798f3afe2b906db2b4e1685b86ef28 1ca25ab3d632a0abee11372a4a65dbd3c30fdeb88883343439ab0c30873f832e a02eca2a8a6dd46e00c6adea52f8f8dc9be7599ce7446d6245d214c55200836b 0c31eb7b5d52341a2659a10e40ba0c0b1e4e92fac1f44c00eef44672db01495f 3d919e614b62385ba05223abbb4eedaa928786961025aad709abd17ac7e968f8 bd815c2d6f2ef04a49ad6a5fa6334543a675513354adc9bf68f1de8795ed22c5 d3c76be0b6b3bff185c7fff7cd0ec2b210ee8b58f80e47ec1128b441c8d79002 8067c79868e7c7769bce106803ad8d76da0a2f8e7935169407aae6088271c5e2 493f06c67cb48950c8472af23db037e4e443bb830db5f5440cfedd4ea733e4e7 836d00a2892c26e47c861dca125a5fad612270ee31ce5808f6d72a58b72ddca5 3740d81763f099409c8a8db6d341a08810e13425561a578884b3b4716c03afa4 2ae20b818348d83b20159852d06da45e3389305c640a28af14673e887b9fae2d 796248ece29b72dab52dc79f021cffdd36f1e2c1ffb8eaa30b7a85c598eba987 d2cf8123711f6eac83c5431cc0e6874c6deb83529e8a4f77d9b4ff95b1160df8 d2e076a93309c3bf7e75adca4a1c49d789ce4773d8d3888edf20bb7dff04be03 26f09bee6ee3e8bc8309c9dfd86677458d29b7796a80e57c0c00b73ba7443c27 82f326112495c389325b682fdf27ccad8a919c7ac5fea46ea01bf3633e5fea12 3ca2f1a989bb4304cfae36a08483e04d656c27d163eabd23755b525312979bab b968c6ca566ef84a090b390f802dd618575bc286948697f3ba497dde77bb2c88 f16ebc087e02ad96ad0faaa986c761232a99a8a619ea10a1feb106e87af2835a 062a60dcb5e50af58f5e527fa7996b7352603482036eaa5e527d2db62a067f68 971ce7471b5bfde2c4485651ca137029f7b82728772c4221d1906facf0359998 fcd15ee708b8877a47bd943131cd48d2faf0cc74065aa686aa110b4a433f1584 7932cb3ade251aff34be8d2fefa3cf220749421da4b54aab7a7a671126b29ea1 d57f847af389663288b260b2843bc74037e00ad8bd814df74146a069326d5452 dc5b4c4ae13123dbfcd11d0fbbd564db4b8df10508728ed383af134d2bccc9d1 f5c5a319f1b31a5bbc1219bf0321d8a3132796d5054dc7c1a43403b175ad9b9d dd442a7027a42370cbfe13c7d9b580bc9e2a009f290c7460faad9811f8b04dc8 8b424fdb9bd3696b7049c8d9de0ceb749dba81cb22867a3fc5c5906fc50ea9e5 86097a7158df348298bd226ba461e0c8cdf074138f5b930ee94b0883ff5dd3b4 624b7ae15e00ded7bfa63cdadbec653046a1cdcce43bcc60e5221137ec26c866 0f44cf78dba1141cb42d60215c557a1eb64baa0be91fc26c66b6ccdbdee71db5 69a6fa26d86427ffb49aa77beecce67127c61c4103a4e4ccf8dbbd258dd0551a 859f069d14f3f0557f9260ac2d350a3cd0579f5a2ec0ec78c203eabb27c56348 402ad1edc289d8a8a7ee87c58439b3d9fe0578c96a9841806f5058e44ff3ff3d 3b996b16b1c305466c9495c07154d188561d13ce6db409dc1617ac3b76637263 92b68f8d9d476d3933d7c117079990e541d581bb0a66fa3cd292bfbe873e79d1 0abe01be74715b46b40e960fedf265cc000061c03d55a0b12354e7e79c071448 90f5459b43f3f039c92600beaa867897cc5557ff6450621ca5971ae64576843b 160eb9b365f0ffce922ebdbc052a626100c341fd29892235c3ff3ab4a6e886cd d30488caa11fba00616a1a20af5193d8a22904485537690ac443594302cb8039 285dce42924c69dbf2ecdaf9b5e404e22169e2742ab84a420ee46e65c2a52099 049b1a19a7ad0d2b8373b0ef248d5c3e1c5dcee2e4638ae08034952a6c7b103b f7d98476637b13e3c657697b3cfe245b1b4d3342cfd54b13e6166acd287457f9 9dd247c00889687d84c6fed70bbec2358a3a33186d23f1c1a0ef20308e1c4650 50664900a23edc9cd68b49f9273852428363da09ac719165360e09e705053ef6 b19fa996ff2e0b2dc692d1d91e2ec744b201376976a71273585add463bb5ff67 3e6e688c682b9b9deca1c0939cef881dd4931501b245c737b658879d40d3bdf2 044dde13f376a16095e1fcf1e74f146e903078fe5caccd18746340798ed93c52 f226110b50a44777625a551f0ce484a85d688271ac4c921436fb7ff20fa723cb d1a372510ca6fe72b9a04a5a5952709b3dc50a8546648b254a0a89c7909ea807 32c7c538cb3208fc402093bc3826ec3418d0ddc73196517f04db7396e0c15c97 4dbd23c6904af95cfea0dd2f85c8dbb67f0884292ea79d0f44f0a393193a0369 44b766c2f2ba713a205142ea2339ae51d7039b9fbd1e9ad4a620824a6bbb8faf ec42e28a2b2d9e70cb636f97d76ffff57d15a6a32d2773fecd5a62e1aaa3a3a3 5b159c0f6942217a1f13ac2cc1c2868998f12b454c0485b339572dbcb03fc57a 0d56fdcb2c8118252474ffcde3dc1754245b7ba5e9bd1c57be37a7497632b5c4 3507c66e84323e477c248cd6526da3a238c851f877bf3bfe7b74549dd08f8093 5767157aaabd26825cc088045714b0138f6cab61257f2269b63bf371e71af2d6 116cfa35c19f1ca9d11638659eaaeeab0a6f23eb50c7bc7384bf77bb0641e24e 9af1027e1852f1da7359da572a4450e88f4c9f976c3d22db555c4384f5ebe5cc cdde5ffd1003aa52068fba00f17141556a3d2cc4390cd1f85f2e18cb2b0db930 def7f069b5d24263d97d41fbb1446439a7cc7be09fec389e0a36013780b49e4b 60dceeb3e165079051cceffeacd813d65e71ae6a3113a145d6001c333afeef5e fba814e537427e6339ead21dd3e61f5e618b799ab295f8c6f936f3ce79720178 879241b90ca3281a7d5c81dbced9baa2dfab84e8413cd983ee6cae2bc9be11ab c9665280a24fdf6247070e9427fdba120cc77ca6f5912ea5694630171c8030e9 ef8c855c630c0e7acfbd4fdb5b3c4c7ccd17573bf6895b428457af3cdbb78051 199cd9ef06ecd98d3319651e5a86b179ad58fe0f33df27d1a1a97fb33d9636d1 ea0f0f1f23416203e871b5ad07a5af30cc80937c3e2c10bf3c69d27cc98eeeb8 65305ee270c14addd560b580e4d4805be1445d37b49406c185d0cd5241720fb5 fca0ad9236be20cc9470d85ac1ad19b18fb864441b98ad4c 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMCSC10 %!PS-AdobeFont-1.1: CMCSC10 1.0 %%CreationDate: 1991 Aug 18 17:46:49 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMCSC10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMCSC10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 97 /a put dup 99 /c put dup 100 /d put dup 101 /e put dup 104 /h put dup 105 /i put dup 108 /l put dup 109 /m put dup 110 /n put dup 111 /o put dup 112 /p put dup 113 /q put dup 114 /r put dup 115 /s put dup 116 /t put dup 117 /u put dup 121 /y put readonly def /FontBBox{14 -250 1077 750}readonly def /UniqueXX 5000772 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacee583a5c939393e012707b47e0c1f a47d284a1edc9d01a497d772bca8c543388e6dc0d1e2c4944740470e0914f65e fb0737b0851b2ba713a9a00b36d07da6bcb52920b9b59efe587734027a3c5e65 66aad332fe6fbcced1417802822a3b81d6187875263d6bbda04bbcf6e4870fee ad60f104bb3c5a766610dd11aea64a6b107b0b04439fa2888b8cc39232bb83f7 695aba81f0260cd5248b9e649cd800bcb325468c79ffacb9cd3037a112066957 7889d67fff57549064b985d67ede2fb03272083723541051ebe936eff01a4ab3 cd845d565dfdf25d9ddd2792db17f52f894bea484480f06c832140fdd6c3af0e fef0584c6b78b5e2bbb9a752f10581fd1c48cb498a822afb18cddebba34695b9 b418010368fdfb7bf758d50f3af03360b81c776325c33c9c81130b1e1be840cf 68c71ffd091dccc0df7b507fe8953dc3836af0da08ff9ff3e9cf7288d9eb8baf ffac546a0fd987ae8e0bcf7b759f4408e13524f478de5896d816cb0ad2904271 cbec82a5ca50f0598502b434ecd94531b4a65181b5b3afcb650904b15157737a a4386f1a7f1252caf2adbd5c8162bf3b065c01ca471d520c884ebbe1b29f9549 134e285dea2fe158c15a08a744cdda00bb6c62158262e24702803d9e1dc1d3a3 1383085631154b077fc20488ee3aa03f47ed2766644330b94133f2f9389b99b8 96d3707d1c5bb227fd3bbdf3a6ff572bf07164107c7a1c0710a5c7cfb67282f9 c238100fa138b75c553d7cbef17e2292a320d3d86a6210e6e3a1e590b10dac6e 177094d5dd163db623d7b344478752f6f3d7d5b3fa92e6bc72dc6fc343d2f946 9153e3d14c5a6d6b1d9ca52947b789cb4cf6196a02973aff0b097333f8d615c0 a1726ab7e31c378eab77150faa28cce535afe3ae5798402ca51cbd18dedc2c43 5281d0781351df30f4d11761579676449ae4a47a10f677cdd31ca9120fc2606a 9025d3cc09d58856a9bbfb17669f706ff8c7efe37a3656c9b20609cccb58b309 0595ca5666833f2bbf884aac1cd632fce69b4e0ea2e0a25b9c4d471f0e322e09 4cefda321359fdbe0a82656d3ecaeb68b7e0c7e733d85066ed7474c22b67169a 1bf1bdf7dfd0ce0aaeef78ee393ce6ea65edc1fdcdf3f744f714005d8221a156 4e72505bdc2a7d3c82b910a9000bf82a2726fc8ce26483d27debc13bf3fe9d2d ef260408d23c7adc665f4f67a632da745870fe0f7c707c399eac563e47d4878d 59f2f981952bfa7c0df64974558f768061c889ab8d0ffd98bd9ba7a3d625d841 f4234e8ac93623f1f10d013b131d752419dcd2cebfde5126c13c479b7a9f99e6 994e79a213c9565ee91b29252642ffdd30fbbcf2a882f19e347e9f571889edb3 8beeaf7f283b36a1acceb7bffccab1d0f9da7f9b87dee548076a58e28a9f767e cb852c24a6e753c72e39aa03360b1b0fab0501713f0492000cfb571d09a524a1 128710a8bfb79ece2c185141d5d903727c401824cc18f2407328980edbe36f9d 53c778eb49762167a370b1dce78d415ce068bb82ef6f773c59df4a8f7caa10e8 73bbf418378736dd68d3dfbe648e6c8e56ee02b533011dcc1a162b183ecf23ba 8a540c451eb0f6a17d1459421bd24b64de240cd6179406e9abefd488caf2e914 0d7291a09db74841f209892ab3ae3423a089953b12f9489ef07f57723aeee5f1 24644d95ac3d2cee1b912caf23141e6cda690e6e1bc0583a5386a9e37a7eedbf 796eeea66c13a464359dfcebf91a287e6189c8e3d831f6079734ebd47245c817 f55b9ca2a3f44e2af3ebcd0479e527be68783b639a4bfd726ae3071acf4f6aa2 e0b395fafdf1a907389b03136218cbf786eea4e19aeca88b94bebd61051b8c30 ef516e4c4d260cfee53358c85ce6a2e1fa81989d9dd847b23841d848d5c9074d 4ad10a3a9a7fced87b148a02e98cf5f814507f3b576d57f12705d07d5d289857 cea4288a921f1ac2ecb6220b7cd6fbc45ed3558dde4e61f03c8676a31d027bb9 ea12cee1d6248169ac9311b0e4ef0aa735a5a24b83f929040d351624861b2d75 cbfcb8ea346eff77a87e374c627d0c8d52ef20a26318b94e0025117ba17a23aa 6faaebb5c8f04f37f6324b67be208a32f4cb25e650d3f46bd76290166f3c6d44 39408fd1ce817038093e2baaa87a90e6e87b1a434d1ec82884ecfaf2e84e8f71 af93855ad96c528514ef16ff0d5d5873d26defe752c1bdfd0eed5f4cd6aba7f6 b0bf92f94a207da51aa254152c6da80dc5f830a58f8d61abbbf0615d7aaaff6a 188f405bb3a1c29173103f58ec249aab4b740cf8a33770132bba908aeff0b317 c2e6bab42ae43ce617c1ee2b824b025756abafa05499f067a412a4ca2f940ff8 811533d2daa1060908b2cfd7ec4e1890a605cfd79195ab044897c57b02794786 3c99fa7b085cc0b43c1b86fdd298339faa7c6ae0b663af95288c24cb961d4cd7 db7f3ccbc964feeb6ee2db064c9eb037548ccca10aea2bb4a602774c0b8347b1 9d84d12059ab887c214daebff6fcf717befa4826272e6209d8f1764398c01d44 4eb8c4f37bbcf3deba3cd9b3617352fa12b26620bed4176661cbd31b69975072 d966aa82c288363b9a17be465fa4dbf8ed66e9a7c0ece98f0f369bb0f07c9bb5 8b520a46f3e1932a63801ef5d6ba643cc5c695e77c8b099994f5a2420844a382 3a5121a5166ece5b2aa3c02e0293b20b394c05ccc7b46fdc63ada8a270ae6fea 212951b464813c4ace04ceb8654a5e9dfaa83169848a592eadd7da2d17cf3805 cd8d204ade3224cdd60ed508c4491f73837c6920c341e57677e8a05aad50c9bb 9afea4b39f7cf1bc65d7e1199551a86f1b3e9ac9b21cafb43dcf6e3ea3e5948c 178d9e6ed7d0524fa2b9f8ad51e5b63711f4dde2ce2819b5ccda43ddbffe84ce 4bdbfc9f28b6c705d55c9f7787df23e2c03218d6223df78c4c7c6b471e05e525 58c98c99d207c69eea1f86d880285b760e6b5b678ea2e8c814bd3ca427038fe5 b4c5091b1fb07d96b0f4082470eb45b536a0e44f6a4ae76f5707ea255ea9f704 f4293d1d137e7cd0092c8c8b8d0b6e751021b81156d4c6a653e0a412e6e1a0b9 6062310697d505a25f3cb440aab5cfe552efdf886673b9492151858bd97fda52 fd3fc4c5715bc7aa70f61b7c6f324a3eee4107b3b6702d06eee6fee63c3ab9d1 621c436c8d336bcc80140785b47dbfbfc166e66efbb50775e57f6699b4e3bec9 bfd930a8c186f6404117fc11dc09749e2560e5bfce5b8c3bd874f3e4457a7e06 1e722773b2f474be17937f3b62379c81dd325b9b22c50af380b5b3115e256ba4 89b82d7552296c740e3dff725e94f3a222c425ac196e6fd04cf165973021c11c 283017c30bc5779bf373b0f555d5e59186e7ab8ecdf5c2b61a19e5876347a049 af609cacd0f0d0e5e9f3f7bf02ec58daf4cf1a898b3fd5d82ccf27a2db0b648a 02b3075c2d0b11360787ebf428dd0d517a4f84d4006c7e4fb937c3ba426de40d d73943fb974f830a0dd3a586ce22b9b090365bb7f256db104f213bc63da84e82 fa2ba778156bb9a19b83e15e375fcd8d8333aac7aaf8f488cde8d0a5c5814711 e6346e62a8a78060258222f8d41df9fffee450497cb29a26f895c214ea4d3787 6fb67e18687c2a358942d2f016af6bdea51f85f03681ace864c5853e2c2eec85 b54940198a049c5b292a8b29c275b864b18e8714eea287d926204aef7772fb30 d61559430c392b6c7dd1871cb0c0373b411e2734af3ddc2c086c0218fc6a7125 a6bcbfe6153953ab82a37b9e91b303af944599477e6e2c419ef55e4367146576 f02d4bf5463412c11f6fac747630834ceb32b64a5f921c3d40fb6bbfc6b2474b 450dc1a70db9ac92e6f73ac5f0f292e89647953c8576f320b8dfafee9bcf2beb e15dfa81f2fe37cef8806551c7d62253f381736f3771c60a70349dba576b0c68 f66bfb0e62074c8b0cbd408234d018ad9bc195c9f9c5445a64e1df6317f67b1f 1952e28f1d0f7d94ed9987efde577b83c44dc229ff080c5317fc54ed2ef47a92 b3828afcafef712354f70e04dd9a24fd2e8cd87f3bd4d1aa2e18465424650332 6ded29d3fb1f6d5ed888538922ca9c548d79ee23f78a4468bbfa7fbd1c561c1f 1112588252c7a2b90e187da4d1bb0510da75a43f6c739902076d5b9d69f70d78 2feafe34d5215b73eb3155cb838c1774b72d9609a3a600678e98abeb3bcdb1a7 d446932384399fd092bd2723b4db53f890075d775a603be5666062f05c3653da 9e912b979c7a2afe0a38c9289db5f231a3549cfaad4e49523d618eb0feb76a75 4bc8f2df0335bb9421a97f3f063ef097edda7e7fbbb11f449b962a9c8c730b81 97a10b5f122d4017d80dbbb7556f4c197f1ea796c6b287e264e37a964fb5fe61 9da74da633e98473d03b0f63bf6c0bf0275d3c4c45a4bd10deaf45c209a2a2ac 4cfdd5529b37ab3d1091a72447d06610253861ecdcdd48cd76d8568f40a4eeb6 987497c031e20a05f4ae345cde3bc64d7325288b3d314ffb14cd280e610396f3 3364675506ef70a4f4d118f1296715f8ce6383d7e96b0c60bfa4e8b1e6ae89c3 a7528241d5abf73a3060bde457e90f2f4a7d903b49309c1f4a465953ee8abf1b af825d9ec4fb602a0d063d4f077c3e2bfe62ff2c840a8de75796756fa6cfed60 2192aedf69acaca8700e738abf44aa9504f2a4b35b075198a6cdd64f321a82de c0ab728fc498e99fde68817c954239a4e509e271e87ac358d8653978acdc9a8e 19835b9c8cf756db890a9ea2c8a938524a99f38196701100665d6201d8b46d35 3e28174c6d4f8c05551c12d518bedd073dc851a9bc80031f982368cd0cdfdec1 691d9b32642bde7b3dfc7963ef3bd7d2c21c8e1eee64b17b9b1fffb4eb2ec694 5aad7c0eb46b2b4fdb9c9f04908702a5248c98db56da4fdb0e54c95e702aa997 c799270a0e7dbf261cb136b79171df7d20baf24d01202ce97796a0f18355112f a95022e101538ec7177aa9c81877895a227df020f0e73a12b0caa0e3242615b6 0dfb120f73c1afc8671f0ad5a2fed0fc4eff81752bf883bfba365964aec8b751 12aa8702bfb67c71d7db2c9b1877f5eeda089786277e6a2a50053209d15b6119 189723d27370a8584cd6ef58b950dba939e8a8c869fa105434 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMSY10 %!PS-AdobeFont-1.1: CMSY10 1.0 %%CreationDate: 1991 Aug 15 07:20:57 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMSY10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.035 def /isFixedPitch false def end readonly def /FontName /CMSY10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 0 /minus put dup 1 /periodcentered put dup 15 /bullet put dup 106 /bar put readonly def /FontBBox{-29 -960 1116 775}readonly def /UniqueXX 5000820 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bac8ced9b09a275ab231194ecf829352 05826f4e975dcecec72b2cf3a18899ccde1fd935d09d813b096cc6b83cdf4f23 b9a60db41f9976ac333263c908dcefcdbd4c8402ed00a36e7487634d089fd45a f4a38a56a4412c3b0baffaeb717bf0de9ffb7a8460bf475a6718b0c73c571145 d026957276530530a2fbefc6c8f67052788e6703bb5ee49533870bca1f113ad8 3750d597b842d8d96c423ba1273ddd32f3a54a912a443fcd44f7c3a6fe3956b0 aa1e784aaec6fce08dae0c76da9d0a3eba57b98a6233d9e9f0c3f00fcc6b2c6a 9ba23af389e6dfff4efec3de05d6276c6be417703ce508377f25960ef4ed83b4 9b01b873f3a639ce00f356229b6477a081933fef3bb80e2b9dffa7f75567b1fa 4d739b772f8d674e567534c6c5bbf1cf615372be20b18472f7aa58be8c216dbd df81cc0a86b6d8318ca68fe22c8af13b54d7576fe4ca5a7af9005ea5cc4edb79 c0ab668e4fec4b7f5a9eb5f0e4c088cd818ecc4feb4b40ec8bd2981bf2336074 b64c4306ccd830661fcf3c47ff3eae8fd094a16831b5180e7fcf99d711aedf95 5203c9e2245d503582b371386277fa03bee5aac0ac79f7406ce44b22a8ecaa62 7a9812812c59c09dd51613cf3d80309a72e62a22b025b67870b608dd76bc7cc5 75490c63df477b28d6f906e12fa31500447b97cd9a2c7e009de7daee9cd4e42f a8abdd7704e4de7dcbda421a40861a2ca92f80b8248d77c19d8cfab9971e2ac4 255e808b6f43b133f31660432a2305b02d4c03aa41a8c9f6d34772f29dc75b8d dffbd8d33a18be292483baeecfe1ae6278e656c1ede8f16187b5ac6d6e3f1fd8 b45ce03dcedaeb6cdb37a6ce20c9f233d8c7a122025a8714aacde7af3521d1cc 4eacf4e4788449127d39bf89986f985f4753edf59bbf1fd7e7f67b669b799818 97f5ae4d85aea6e7e067ed27a9735c28bba4280970d375ccfdb716786270e161 0e1882142dec0ca0063253bbab563d405650bf54384f81cd60bd3aad5b841cb9 7e6fce2d82240d7ebd29c3d20c0ee9218fae0337b0602db7df6c23c2e584b71f 7a659f7c886c8a83abcbbb7ad48a18472c991d8ce77556944aba710630026311 74e9b9da69ed67cb 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMTI10 %!PS-AdobeFont-1.1: CMTI10 1.00B %%CreationDate: 1992 Feb 19 19:56:16 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.00B) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMTI10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.04 def /isFixedPitch false def end readonly def /FontName /CMTI10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 12 /fi put dup 44 /comma put dup 45 /hyphen put dup 46 /period put dup 47 /slash put dup 49 /one put dup 54 /six put dup 65 /A put dup 67 /C put dup 68 /D put dup 69 /E put dup 70 /F put dup 71 /G put dup 73 /I put dup 77 /M put dup 78 /N put dup 79 /O put dup 80 /P put dup 82 /R put dup 83 /S put dup 84 /T put dup 97 /a put dup 98 /b put dup 99 /c put dup 100 /d put dup 101 /e put dup 102 /f put dup 103 /g put dup 104 /h put dup 105 /i put dup 107 /k put dup 108 /l put dup 109 /m put dup 110 /n put dup 111 /o put dup 112 /p put dup 114 /r put dup 115 /s put dup 116 /t put dup 117 /u put dup 118 /v put dup 119 /w put dup 120 /x put dup 121 /y put readonly def /FontBBox{-163 -250 1146 969}readonly def /UniqueXX 5000828 def currentdict end currentfile eexec 8053514d28ec28da1630165fab262882d3ffd20326947b1065649b533eb5e9e3 a88a87fe987918a687950b26f647d6e08bf14d983ed1d4a8ca1e2da8d985f944 2eb916f5b6ed0697ac7c33e1e36a3bf460d34ce45f1631871097cb04f18e3889 4cf4ac1538eb19481311d24fe3be7beaa4a3730e8b4831fe59d6d9ce2e46116b 629c7ba2f9ce3ecba2f43bc162a5a077ca1b2882a42afdcec3f4b75b5d63e0bc 8e5dc95257766d8ea467ad9cbaf47be60f797580cced6884b3a68f70c91f4fdf 80fd00ed9139e7f480dc3a76af72ad9b434187730bdfaefe4cbfe5c7edcaaf24 9204fd703011932e5a3c27be468b7dab69daa18dbbb6335ab8ddfdc607961c7c 02582763fa069d43563ba17704029945cf42fcb19cf78c51df0ec4d851086d43 c1ab38e865ef36865fff3a08b01cbcb070ba4893f7482dc7819ad03d337e520e 7d8cd83bb8ac7aff4df36751f4f12aaaea2b6d7260c09a26e987c904003e0723 7dbcc4a8e4e85cd3259f40d3caf55c742cbb40ad0db1044c20a4f122a63f7b81 1d945bfa69662189ce4d089464d2ead9f6ed60b581b04114d5d45e97be27a576 35154e9b8464f2a0df18da855eb51b8f64d3054b0b2e84621f025a0776d16fed b988a43d2d64c32768dd106b9f541ae8e68ac0bb7399e16f4d4ba074b2152d0a 4e9b5bfc21bfa0d531e28165e518ffc054dd4ed0d74eca079d20e79670419f92 e03bcbfeecf3554d661596f6f29e12170804d15a250d917ffe7a8b6e8fa53047 1ed97ba56481589a65ca13619129f1e26affe6c22f0c38540f8ce37efb6e9e9b 60b51a5a9cb4454fd7c7f92f2f9437159687ab590f35b946a54491a7739c9269 e0f1fb48b129811c82edb3171cbd5105fe65906974db8a7da92f4f43dc7f6b36 6981146d86d23613a0b38d9d6191db9fea0172e982cb1cc50e382f69da1b377c 1be9407f88a2a761b56f398467a057f35d18c01cc377e006182c891ec80272e2 2e3a5c7123cd27eccdc87392a9fdf63bb40f02b7649cfc53ef933c6518744cb8 9cbbd437830ef5b1d58b00b67bbcf4426dc1e6ef583b0b4ad3aebd741e3ff0f7 29ae271f032019b1e7268043fd215be590f9cf24da14a90f1683afcba8006cef 5d5632c2481fbc1bd8224e8952debb7c4596a237e5505ac143180956ca1f603e ec70cdb4a33e1c4ca1744adb40f9743167002abeff7b379d91065e5fbe232b2b 9b67fc2ba118438a603a1610d891e6d1911c604853d1e26de7640cb94b16482b 2fd8e1a0375f6cb08e9a695d433472363f5d7fbad693ad55f1d27fc4d52c0b86 c1f2f7856526af7cc8f32cc1ec116bef862215d4d5bae2dc2b015d4111288b07 48b26c9618bc18ebafef36b9ad3884e5daded46cfd1d7f6c7d08d810e4f829a1 bc025167407f5261a860602f77fc56f2e13df7c88ebe4727a431ea008e318314 0ec441b5c2fd8e318fa5964f4accc02dd94ba4f3954028d886e4d01091f8c6e6 58789bd48a4d08ce0c493c4e0ccbc1bc3699b18d7e3370dab0d639b4f03ea09c 9a74b69534d5ee18633c883b55dddf3c6407fd4e54dcab3477e801bbb2831c29 cba7587fa0e7cf47333679e07867d881efcfd4e1966f5898a180f1a26012cef7 b9cb13535ce1853145b1d114dc2dbfac1fd392d1a071efba1d2787448ab100ee 33174a6df88a649c3a840238b45273803d6f0ef160fbcdf94b789a740d2f10f5 7d201e1ceefebbf5a0c74cb0c51700c000b752b9297bf73d399a925e143e3ccd 4b9275f45faea88e0afb5313c951de5b8f4223373ca9ea670c4a01ddba061c14 672ab13fa1ef662da881aedb892e6b4d3cf2ae5ed314fabd044a94fe4714b4f4 344ddb43caddaa0dcf2c11467ad650b641502803cbde47aaf0da8cfb0f430321 5b1d23de02ddbbca50ddd298664fbda21da24f99ed04cc6d5d3ae294bdf40255 e6e36e9b8ebfa870b17d5ea3f8563380386ac625a25a4a6dca072579a1c91f4d 859da64a9d52ac11d963f6d4768e2185f7911b58b309cf386f4d6d91422f2428 215cd4e692f03641d4f5ff4cf7e25a598cba610652ddc3b2d6a024cc1c0829c4 5c80105b55337ad4eb5ba359da7753832e71a38093c7e2f843cb196d32e4dad8 2dab624ab58b580d936f294fb9e48ab328fa415083012477ec38fe4334aae4e2 73eb23ebeed0e1075dfaa701f555a33d8a8e45d3fdf105a994281fd32a3f6cb8 4e5605c63a257f35a0b8ca6b2c2bbfab09ec277502747d0e24ac5a6ca6297092 a3f9ee21739c5320ccf51ae1c3e222de5a5c9e42f392ac4c9e2d630dd6a21b02 f0758bfb9255b6c0a0df8bbdafdeecaeb845c514830dfad7c78e147ebaff845c aae4ee1a612381fd076fb76f8ff7da6293c4f78973306830af63782721e5fbb5 2c03698934504cfd3d92a29e9c72887531fb5ba3809879176df7e1b6e57d1051 1ec83c1b3a03b3c016f790c205fe14e620571fecb349c6b947a7599db04dec29 1f28716987600fdea65fe5ad37a83684ce623e24cebb9683e93bd4be0cd2b265 b553ba854ba2d3e50a4c118b828198de7ecaed217a87e3446b7f4a44226af107 fdee55558c7646274f3673e0379aa1b2af9314673fbd92dc4eda30f287f89da7 8fa3b1ff264bc0c3d8e54f92315bae85f69487079ac5cd69087ab4c681193c82 73fd1238b3c57c0755e036e8e4963cfd7442858b46bf83e137a1ec1f953bbf3c 634fa3bcdfd40ed6145f58278a425caa9042d96bb907a2e86277b2368e518f90 e531e67e90a2307f68d37978defa1b214a48475b62e76eee3ae42a5d725a84c5 1e84e19f4ac2228b837eba49d5702ec946df9a05951a1afb1a41d26c3e4a7b38 8247082732795cfbae2fe70b905610951dd14bbf98d2ccd6c701baa9014ddc42 cfc7db4edeb27b15f1faee48479a7cd615ae4db8afb6fce37cb969d1fb5fdbcb 8cc14181aaba0a9a25be85ab6e52581ce9d0f1ce4f30a836f387a82efcfe3b57 7bc7da81e4b720affdcf7656bba344bb905a50397df761143231a062a0b15d74 4ea640b49380b23460b850476c136f65aec96b5198df484928e0ca83e5be799f bc25e3072bd7684637824fd32ed65f51dd240f0af0f9622549b013dd761b954c b69884f82822f150d91ef8a00d4f35d544b9dda86d69a3f27a86ab0c983a7cfd 3f9036653fb0ec18eb697a65eb04eeb582531fe81d0e22e16b0f59e5e78845a5 254a0640acc080dfeaef1a7452eeac70e6a0671dbfbc97e9cdb0eb0e05d042a7 5d81e33b7c5869f8b4c4399d6e3044e958ab16e698d34d869791ec673e67722d b3d4e05d5de6871c62629eb462ea730ef2b0a2610a531eed29ccf2d1d2f67b8e a2d84ae59a8957706bde9c1b7d95adbce281051b56d0e75313632ae42234c368 1e8efffac978c8b89b167b0d56441747e5b26f4809e480f0117f49fb8ebec994 0aaa13d2e24824f5134915099701513d5dcc6b5ec1ea4cfad8f2e404e241bc42 d309dde6256a736b3f73c399067905d3bd7f3d08f62bd41fb00e6c0765c981a1 ea3bb6d68c9c9260a56a7f917ae6b9933779bd104f85431b75bea3682001ecae 6f29eda94e3f267c0e2b82dbdcdd841dfb69779790cd7f723fb40b0791049618 258fee73146c3110c31bfdbf145ce62cec30eab4d8ba0271bcfd1a8c34f8a511 a22ae3cb7d2ddfbb93dfc0efce0697792afb1b4fc7e96a67917f0bfedc358b5f d03e4e07f80910277e2062d44242ed303de734c9fc58bc8a4936baf1f3d65503 6787e9cb4f3ddf1b87554016b99e8dc32fc1372b787c3f52d8b9d9faf989c410 c2b07a270b6a87d70caee3e9d1907c7b1cb436a024da001dda023beb21c169d5 beb96669b471bcacf87ce29cf07fe53252babc8048ffca2972a24ed7877bd32a 34efba71cc0a70de3f03d6078a6940fc6238b96884d7552649c69fa62fd2a5c0 7c3f39f2bad6674b14ae2e987a82f51c12502d43fbb047989ebc5cafcb76dbd4 b89cc506043d7d0441c80c12c1d27cc6d4f6035990048aae76d95e08386b1b2e 5e4868046e8f2c94f1722ffaa24db845355677b3f9589b235cf06123300727e4 046a0b879fef24d0ffbfe1dd491df01e50534b80c5118a827bbf8f3ef9a14326 e60b301d6ded76ad7cc0e9c619d7cf1d83d93f169b9bfb7047ba21e8b42d3459 3e09da1e25ff06db9209c8c7edb4af13dcb265d3997624c8abef4648340390c5 2616a613801159f7d1dd5182e5eecf7e9f6edba0d75d8bd6b2a9e4c6a7891244 72757f0b6b2642678b0576159dcaabccd01b2f27c56efe6f5614c0cb0798788e f898d5d8ba3e69e704504db4b0c8c5d462d89745da8a92ce0f752b901a43b20d ee90c457ebfad799913f4072011d06e7664bd5184b013e9b375df7a9efb47440 37373d1906ea770b6c19a9326f848ac3c67ff492f7586f0f89bd028c474ddc13 cb0ae29711385b163b79dff549badeec03f2c8d8f2da58e387ca5d11b6b5d497 841e292463878afe3fb6607c01bf50c4b0292d30c22de33303cede67d36dcb31 6bc1d70a35f75352ee0b6a13d1abf348b0f47bdb80d7344f3abc9a81ea2b5db3 63a43cc5cfb5c13249eb5e9a21e3ee6fd3d1df34eeaeb562498ee11d1ed1f4f9 e054c5adae1c631f825d0b7e07ef40bd1e7d65dde6fcf441551f9563dbec9595 f27fca559d59423a684e383699454bf86971c6e27eae2359f521e4a89ae9c1ea 268d25940c973878800dd54412c4ac1bcb71e5e4f900ca68789fb2e7470b9716 56c45272998fb559887e1474556cf908e8ad86e85d24b5d5366768780902580d c72a5b402cb227cdcce8512868cb2c77f530e254ed8c4975465d856de416606a 20035468fd14ee6b5d35727c24064e9035f1c0a4b665961f2a61f95d5c7ad48a 9a4b0709c32f8ff843a82152fa79738d99dd86c4ebfbcc7638d753eab69fe32f b0fdf759225629748cabe1d7e90c990dc9bddc090f90903268fdc72b0c911bdd 8d4676eb1c631a8a931ec59b1b70fcbb75f15bf5e49f05ff24fde98630e3508b 17030609c0fab202df9befabb0ead640863b06ac7f432d275f7b7ac77e912c7c f2135c7fbd28c4f5f5fd6e2d3bd3f6c5e655ad42b08fde09fac4582e5c44016c 53459b3f23ec7643701716e88ee30c6efe206eeb900821766a927ac988cfcb47 55b90357541d0e2f1270b2238b1143a8baafead8081dd2fa03ca135dc618af88 6195793ec97df6721c31d43584b045b9c9c39663f30791ed2a6389fcfcaddac4 1120510105bfaa0ae13ef44c327f815c173c932cf0285e145e631223e2dc6cd8 a3e6945155819d47783b3754fe9dc4c64fbfa3cc40b4b7ef2f92835a79c3fd05 fd4ecf47c780df3f0511fbc049b34d1c5dd2029eb361c70cdf139e8e9a4bc306 be3390b9b8fea0e37bf567e13b12cd8063f45ccb887da452d8946a97b3be19da 10561b516e65a812bd716a40033ed9c9e095f1377775c8699758be8ae2ccfa3b 30fe03bcbe4af4b74d85abd235751228f94c0ad58d29f8b32bc5551e79d5c6a8 fda3a022aaf28c6bbc637315c92ce85d9ffbfd3219fe84778e93b8d004a2a46e 8d635353b8ddc8cebb702f07b74eedc674b17df8f9ad4109e01ad770f75fcdae 6159714e7bb18924808b160682ba20caccfd505fd3af32598cbe90ea0e5c2aa2 741a3ef977de201b0dfb8d13d12f821a4ed139a67da467db3c8b528d62860552 0a17cd286001f8da5c0d143434e6231dfc51f4c49600d8529446dc3f9996267d 6c6b6e2042e2f0288ca1276d8e8d39de1e52a50543ac9d25c400a64c6c295713 98d28588ceb7daf7fb4171a441a56565148f773d1df2a2bb024336fb54a9b411 6ce9d0e2777a23cde3fabac191b89cf1c451cdeab79f3858ae8c43984957a46c 42615be4873ab7af30ccda6c638733ebda5527eb8ff9c93019981dd2c1368cb6 636a4f9368726143699d1ffa2b75fcdc216aa2328e42f79886458761aa104f25 41fbb582470f54fb8587642c6f11c0e8dccaf6837442c6e59343d8bac9ae2088 ee569a3ca3722134270039f1875270341e0d15e464803a5a1b27073f7e795cc2 f76ee18d855dc8e4200122545cfe6ba223c48bd8ab9f1645f1d5631c01ff6ed8 0b08e8b6824f8d23469e60ec217762732294e875e8e6ef3b882d265c4edd128a acbd2662b5f6bd00f65cc4916492ea67fec315880f99a33a48230c155c5a7dc7 ed80f2628a10eb6fced5da400f1788d8559002fd59310e2c99cb31237489557e 632cf526070c39320ba6f37d0314d181df50c5aec7c3d3ac132bd94f57a08f0b 8ae223841963f01d37705da17f60f4fb7c6fcccc89db324762ed7fd9589d5836 f4dcb05ae9d4cf35978774a90893be1a5d51b7547a573f2478e328d6261ef7d7 9201f5b49a55b39b67f11744d74171a0714eae13501c36886fa9692df1016181 417352a9d1b3d4733788fdd728f5cd1ceb230b07472ab2c2ee95973f54a5cb71 f49bebad4b678fe9a65d0dc95fac14b459b4d9335cadbcd84251f7493b175285 fa9ccd4168cbdc932488ac40a75f638e13143b067894be48622d4acc05d2ad86 2a06e85d110bcb550628b599529fa3086dc7b67dac98befebc85db2030e0f7e3 3b88c6946db0ecb95c478ea3108f1bbddf1697ddd442b557780bdee4e85c13c1 6b4e9fd3eb193505d01f33a4f3c09cd394bfa455b00a0c83958c6b89464dcca4 5c32419375497989d0f15822dd06cb4cddc3821de665ec8e758ca76b00b823b2 4ee3a20c057980195ded2cc7cd9a1d45e9098e467c584bc92ce15d3e0596f975 7efad63eb7cb6d941f04309a9683df1ee6a2a75d59096dc4576702a0f396409a cf36780964c395ac1d797d35b111add716237036458f22d8286fca2effa14139 baae01eac3881f3c6283dd8387a2edf6975f3dad1e0eb97a907e9c825605f3d4 c1ef869036c74eb1b542761519ebb2c1ab4abe66ffd3ff19ab9453f0f2d17dfd cdde042b33ae6a4079c91eca6392f818fd2d74b7e248297854f763d417921570 fecfb065ef91ee4e89e86d8395f30706359e02e92e3775369efaa1b73e764740 0ab8acd84cd8bb28d5bc09c0b5d295473a92ebfb74365b54586f1977d757dc72 9740f8f8ce10d2c77a6677958ecdc114449e689f2c98df0a01686743452ac536 894612c2a619b5692f14ae9cbabbb82a3aa9532c41bcc14e1c9f2a34ab4e69d6 baf779fa5f240679694565d3398499090e77cb3edf4cb1b6efd695269f2a8053 19526fa690544b10e383b21556dd3dd6c8defb3cb99bc902938a5cfeb622ce7c 7d393a710be43a82b9f24f1163d7e5caf0de89b638304716de754288d0673c4c 60c4516b6faf1e0a7c70fc24f1263aca92f8c8b328d80c0bee502397ae2f2205 d57d48f911e2ec39533beec81efc09292157ec00af9c0df04e7d25d43d23c317 4fd28a2f65d22578da1d9dc020aceccb3eeccec9655a98591ee9835faa0562d9 f66f1c00d76adfdec1b1a206ba754595e3fd08867fcfc71b80ccb665e6243dfd 80b7444805263ede060f235031f450b21ed8ae31ed8cbc7dc8d2216d92687641 09e6c889c2454d353723ded109d06ad25ad551a6dae95e3d739da30f64f56d4a ad3889c7b25305a2027a01bd418350b6c4bcb940720c95c3ce766a9a684728cb a252d9b36af90c7f0a1ae8e4e4c6ece9ddf010ade6932d342402a0de95871139 c0e435295c5163224251de610050c87acaa8d81be466df5252b74c9bc23327a3 5966ad020f9e58b17fef7b89fffeb1c62e62499c6488260c58baa059f872f871 d092fcc1180c5f690b0e31a1361950687942ecbff4445f271d12921b730e7049 0abf176345f07701df8d0a6b4bba345cd5d352649dc00c5368ed878d739a40a2 d341c1aef18de769b337af4212a2365263cd8cc55e6404ebd017d1ef46f55a5b 6ee96d15a28624847fc9b51dc8baf64253a6b59188cf7b9985aae320b4d443dc a5278ab5bc1a1a2d70912f57272bec64410420ea423887e7401e4c56ea72696d 90aaf2c2126d824fc572ee29884f16bdbbb0b499c71561783dc25b9dead0d29a 9194154300c99f97177a2f4d8ba9fe314db351bec6ee34788020d65a78e54796 0e39970953239e6fce73ebf0402b6aac24641baed1b2ee0359217eb2cb8eb99d b80e36819b1ff2e63d739dad78ab3b650a7dd23163c059407b9df35c028bd08f c18ccbf6da487f53053fc17fe6ad391d2a9644c625b37cf8fa91df6c817a4b84 e33ad11206f0f621385d8cbf0c4e5022cb5204b43216d1592bac304bec5a6942 782b9bf8f59bf7776bdb849a896c67170428782ece7a72c0c95bf6f67407ab15 3be7282cef940e537509bde10c1c860b5fc304252245f04f811b2c09fb67c161 e92c687f9265472a3ba62af01b56f20d8c2d00cfb41605eff2eaa9526345d95d 7012056154511c02b6b18625821e2630b16aa23044059952d1eabbbe5548cf8c 571014c90c11c4b4b423eb3af65c510f6af9af0fa74efd53332696aeca064ebd aba0e66ab014d7c9dc54a9f8ddab1e27b904bb411993a8efc2f4d9501a19a8c5 b0e2102f4c960c6a977b89dec33d4d75380eb51f399f7493a89a6694fd651235 0e0c4a0c892a5f5469738d4e178af9d290207a963ba889570c0cb924601c6476 7fc00db29d30419e8cee84948d09478726f8d0c924b040c4695336d3d3b6dd8f bf40c9d3fa359cd605d12998511ac4670145f89ec9e58c1608cfca79c6b38115 e50f931c006540cf3a5a5af90f842a40ca121b96ab5ba7e2b7f2df70e3fa4b72 f135b4da9675989284f89c61b6d8673bb07392d6a8da686d8a4b4dec71a19229 d59e8075501482f816f8d044df28793e4d5f439328bdcd2ae5d74f386d781e15 025801c065802f684bbfe802dbd982b55ed15c10cd29f61d3cb0107b866a7705 ca5f7955d95a020983b5a36564113f050379ca47b570001bde9f37f429c5d2e0 db573183209778ae968571d48756a8abc52e9dbbf77394498962b4e048aa70dc f3d9934c27585daed5259cb01b6b124611007efe6ef730061b5e1b4cb306bc96 4994dc1bf09f47d131aecfb4127b962e8ff52fc388755637771f8670d5577e11 846c98bfce20ee900248afcc546708ca643796e82db19e9ebc5ad951ea96160a f0045f2c7c7107c8e9878d61f5a8c1092335f217400c9d7442f9d1cf9434ce11 ba994416671bb26f99cbba3e82c82c8dbb6fd0e8b2b25505a9c590452b669a27 97859f9213b32067768be1d00e5308a6e0c873af0afe3d38faa7d95079274048 31fc2cd93c0720dc2e136904169e54e52c3e788b82688863fd2bfdbc3165c37a 4f4530a35a7ad7d15637e9f497aa9d442243eae79123b674aab60d198ecb497c dbd06f6496fda0718471c30c2cd6f875fb66f869e17e0caed21775f004c1a268 f23cc75130b15e39c95e9bc1378c31f951a79c93805efb2bd1a8428807e86142 decb9c7040b2a7b4e4038ac3892e14c4db96dc2b51a00c0a5c46e0b83a595949 4160737e583c9214025ba30ecbadd7566c9e4970a4c726a9bddd711552867bf7 cbd970ebb63c1c98fa348e6f870025959c189ab79efa55a3aa54887cb2e7857a 4f67e7a55149832e2616f52376e03fe2134929f90f3816579931340144e4c1dc 3cc550499112920e8bbf491b335a115e0b116f5671307c79a734b943dca8f92d 5f27d83a53c7ae841a363f6b9801baf2efd52014f526699dc9895b6ebc26bec9 723c32d25e6c2edbfa0dbcaba55c30aa34f79d6af0a9d3b293a766ffee29e70b c677687af62ca84e111ff39432863fe8f963714db1654911bf499332768582c9 d67337a786fad0675c7b317b80c34a16ddf4708f122f4688668256a0965cbde8 a1b957eb700723f686b3af5849957fcffbe8d44d7994886deef1d9494bba106f 206305442f5b3f5c8007059655df1cb56a509bbf2722d81a903239b0c30de964 c35ad1e369ed76275be4d32950d642f14dc962ea530efeb1afa535d45e572c25 388c7c662874958f4445943d82ee7e814cff99314b3c97146f87b3a7f0c3ccfa e6cf525184de2e825d881e7916bd95b02c0d59f7bc174faf9e4698e922e71fa3 eeb351a0fdd2096905bd67a2a3f83a246b4d5069f46182194e4c52a864f4d34d d3cbe506035d571fc21bd7c7d42c22f10016180b51b632fc55151d95865d52be c53a9569ae61c16d8bdbacf0b2e33b209381a8de61acf30571422791b90c33a0 ce04afc123a61b5202b0800b0c1d33011fa3d0f1b05a308013758adbb648cf51 78eef0ef219f5da8c2dae4415efd1b32b5d064eff1bcc8ff823308f6d3939e93 6c409266924bafca2408a728a4739a6dd0538c51a2521cb51f4d7baba3cdad10 ceb30a91bd6178cc7b0eadc735185f9406f1a236e586c03469ce29af096b6104 15db67ee43fdccda4b737a1cb5772bfd26ed20bbae35ae3098b27a427053d7e6 34e6c7d7667adbec09d250fb342319b502e094c6e1f65fffda121c55bb49694f f4e03600c1708e8334ac2832aefdc5168f678d9bb6982519a434425f1453afb6 5f89d5eb050d8bb5807bddae0ce91a1757d0de8905b3f14436637645196c9a79 8be50ff8af5156b46162cc955be2701a3307c43fb52c293f71bbabb98a5d6335 d6fb3938bdbf398491e5c64bb94a8394f41a5534c6df13f6bd444f014c77654b ca35659b6f7da14976c8d47b6f076f33d18d0121a9ac81d465b5402210c5420a 341972950680d355ed0505e2628cee41bbe01e19d06495d73220427bbad6ca27 0672028f6921cdaf27c9ea8810f5945d8e7ecc455deefd6d0f0f728841adf278 0c13ecea7ed53f9e93953b388ee121a432cf5d9c0c6d0ee10a184ef1af894161 bbc4858306e644578c1b625df5f7c4094e6c012e070d23599005efb727f077e3 fd672b9e02d09a8fbfc28d9b0eef28329cad424780a8e59a1fd5cc35241ac80d a4b771f2ec2cbf2614dc9664e2eaf1bc145a2dbd1f0cd6277dbc14f9df83291e a3230c0dcc91003e4a6a8e32f4dd4e8206ba2574aa872661c52fb0739b2679d1 4d5e446281c8238a871aa8739638534ba8743d00f74a6a919e58bd63b349c31f 4585b04d114899e08501e8639cad98b55d12f0ecb888d7dd4f594f2222bfd3e1 a557d725d0762e8896613e7929b5856a6b9adf47101252d0f0587f9666ddfb90 e2b337e3152edcf8a2cb8d731d596f3fdc518dc0b515a503bbb00138bfffb4ea a138d9e5ca1b9d142000a626c1335050e6dad91717cb392242b395da6fb3fa3a 328edb2d318966f33d5ac6014a62d31386f6816db38a1c619eb3e3e9c18d9fc6 702eef47a4e0f9dc267180aab8488873754690ee83f9b771509b4f2475c63d1b 49808295a2ee4b4e871b839adc2e57944a102b95974535ee08a41ba118ab3b05 c9d5df432899ffc70d9e5cdb37dc329c8cc9a2de396cd5b61674394dea0ad364 32e35c90516571d010f66077c7892a49240c6c39970a416e4e56f2f4b826bc1c 0f55a3e640ccc187e9efa021adab1ff0ce4edbc9128fb07dcfd4569a9f15704d b888371d8ab3cf7eeb111acc6122411b42f67f41639424daf7cfbbac3fd5c192 a6da125827ce829d2b2080341d2788180e81d69ab98576b3328f1690d9c062d4 055b2fddfbe21f0e7d8f3e7ce516617141f3cc1654852e52fc0e7c7b20841dd9 e4edb4e63d62de6a291d4243102dfd64d30e45851c7314ddbdc5152c9039d43f 1eac57ed01fed41981184214f91a296aae662fb871b5cd72c81c660861f99119 3a85d44ba54d809044e58e8054637ffc6d02b7b57bed7fb9dbce8d0c33d3ac3c ca664e18a0e52374abb2ef1672f44f658270692b9e29240e09e42c69798000f9 7cd9a2055d63ddcef97618c92eb3ba6f80b8abe373b2d5806d6df96bca726c4f f0f2eb42396bcc301feffcfeed8f79a16d2558c0ba759ffc3f83279cbf02e1ee 2d690657fb97c5282ba97e309740c4dd786f49c1cc022507313288539ec44297 7b1e315d01e7737047283c626fc0391af571109cfe20842ed4651ed858fa1db0 a492a142823c05a548bf99ae15fb24c5152ae436b6427913d60a65979292fe99 740ff6dced29d655a135c05534ac95d83a3520fe0276f348c5a95d541a5088db fd1270ecc8fdd7dd851a7285540bc145cc50fe4109d6a5692c1fafdf7af94e80 5402a299d4a982a844f26fe9a3e913d18f5c8d852f33cdfb90af3d0eaae634b3 7b3a4a2edf7a9f16d5383c43249be3c24a506b8e88b7b008466e5fc24f81d17b d60faad122e8b949b1c073e72337290ddf82db4d1c8a3ee1dcc4409a0a603df0 6e693b51dcdad201d5398ef965d0f31b57c483c980d3fe825c23e9f4af35f62a 2c517100afacab97d7bf3287e857a48ba23cd8782265fd54dd80e1668382b2f6 5dbb7e9371e8b769cbcfe1fdd84d357d62541c8b6fa9ca3c66feaa8baec6656d aed14f4cb8a5b98eb6be65889ee99495f9f3919c908fc3f0b3038ea81469fe66 0b0c9d5f7ecf8da252c2de5f794e9e5c6064dc2f16abffc6e263d4791927e457 a386ee4ba2951d39e8209600d7dccc11104afa3daaeaefeec7f49bc2447f3d39 a03a2272923fa002eed71fbae9d3911316c227e3535c5c546922455e4faec9aa c720bf90ca4606dc600cbe0fa9d2d8ef5da7533c5bc0afd2e895fb78e76ce47a a0746d7ef0bfa8a27067aa288376cea9a622430e644565bd1e0515dbfa06d7c6 db2822c82f3ed36b2de81fe7cec7e1e0887eed55965bf4c7655b50e710240dfd c36a25a426d51ae6a409057fa79e1a744b6945b858e102e824a5e539e7559c38 a866f1033849b86830e21f47fc147a8003a43cb1e90e6ca412fb54de7acd2c2d 00bf525fa6e2784d57877fcfc6a5fd5f174439ac1b37b8f1658edf9ace3831d2 30393aa0c01cd685ac9e98519b5dbeaf8f843d5a2166420726f1e13138b71e58 b1da6f44efe6c6122efab142f7f4a730af5b54848c32d60e94ca9d9a5b17b978 ab36fc9b862a407b954f761e0c0907313c871d53a3011459b52cc40aea1b97bd 81233d0f4e38b4e5543fb75d360b9fe6ee700d8e2e11d3447c53b5fdd83a3437 897ee542124d2c00de881450b88309a5b7912707d1cc57079d6fd94396ebf1a1 dfb5b45761194b8d5f071c183a7e2b7a11a6ebf1a3e27d1ff72558a8173ccbe4 67a54cb60a7601cd8372a3d37322535ea0f27ba0c6a1b61fe2cdda15ac215879 380ba416da9651a42b402f8fbf841317a35b630c8bfea6ee0b1d18ca028c6a33 9dc7728174374ec40ef281cad6a6f10e72a972ed9127a0d96bb87348b3417ef8 95b1ba1189d551117b904779ceb492ce89c104a77a0a6b05c2d48c01a0b62700 f430012a9891b4a41a0981553adf23e756e0367abc9b07b3a5baba4a881adea5 2e055c8c5d93df26466ae735d71de3e1ea97db9037a13f26830f203747e14ea3 6212da3d5ef1b854a4aaaec209269725df9b1c584e0a08e6fa770edcbfad5c3f 3ecb7cde22c8be457943224ae484a28ea62e2ea340a3c225a47f0be06a3d6efe c670523b3e1b4501ea6bd6d97629c1d5e1094fdb05c9cd8f927541845da17cd0 211d0437d5e50efac0d55b66378a69de4b24cd0d4991caa322e028a79670010e 26e98cf8d9cef363cb45732231788d90010a24502489c816de79c72818dcf27f 7c6212c94a889d993f8d25a31a54edc3c7fbe3c3c5d8520a1c1aa205af2d1be7 73a91f6451859eae649deda8218811ba16b612fa119b16c9c02cb4051a4a41c3 71e0d720844c9d22dc55a34d2105216b0d1b5c1ceb76ccc3b6dded37ec0a9bcf 9d5202d6acf91d1e347d1820f6dee9f8d1b2344529583ad95fbc74c8a019d64e f50c7f170d57b750c8c27b426651f458085dcbf5c583ad6967f1140ebf958927 d9bc 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMBX10 %!PS-AdobeFont-1.1: CMBX10 1.00B %%CreationDate: 1992 Feb 19 19:54:06 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.00B) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMBX10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Bold) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMBX10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 12 /fi put dup 39 /quoteright put dup 40 /parenleft put dup 41 /parenright put dup 44 /comma put dup 45 /hyphen put dup 46 /period put dup 47 /slash put dup 48 /zero put dup 49 /one put dup 50 /two put dup 51 /three put dup 52 /four put dup 53 /five put dup 54 /six put dup 55 /seven put dup 56 /eight put dup 57 /nine put dup 58 /colon put dup 65 /A put dup 66 /B put dup 67 /C put dup 68 /D put dup 69 /E put dup 70 /F put dup 71 /G put dup 72 /H put dup 73 /I put dup 76 /L put dup 77 /M put dup 78 /N put dup 79 /O put dup 80 /P put dup 82 /R put dup 83 /S put dup 84 /T put dup 85 /U put dup 86 /V put dup 88 /X put dup 89 /Y put dup 97 /a put dup 98 /b put dup 99 /c put dup 100 /d put dup 101 /e put dup 102 /f put dup 103 /g put dup 104 /h put dup 105 /i put dup 106 /j put dup 107 /k put dup 108 /l put dup 109 /m put dup 110 /n put dup 111 /o put dup 112 /p put dup 113 /q put dup 114 /r put dup 115 /s put dup 116 /t put dup 117 /u put dup 118 /v put dup 119 /w put dup 120 /x put dup 121 /y put dup 122 /z put dup 123 /endash put dup 124 /emdash put readonly def /FontBBox{-301 -250 1164 946}readonly def /UniqueXX 5000768 def currentdict end currentfile eexec 8053514d28ec28da1630165fab262882d3fca78881823c5537fe6c3dda8ee5b8 97e17cb027f5c73fdbb56b0a7c25fc3512b55fe8f3acfbffcc7f4a382d8299cc 8fd37d3cea49dabdca92847af0560b404ef71134b0f3d99934fc9d0b4e602011 b9cfb856c23f958f3c5a2fbe0ef8587d1f5774879c324e51fcb22888b74f2415 50d7401eb990d4f3a7af635198422283cac1b6cd446ddbcbd915db9bff88844e 784c6bf7389803d9450b0c21756a017306462c563d51ece66fcc9c831843ecae 1fefc1a232e2724f7baee428ae03aadb95c3035345c15e9922fe49e1f2cfc980 237316572dbc57064edac9b0db8913a5e2d45e97e19a91435ccf8adfc835b585 48e74b291446d689c7f2f8c4325e8356e974ae30c3e2977477baeaa33d141fb7 80f59351e84bfc88c87b3a4a1d25e168b9d134554f6a581378c7d2d6eca8ac09 045cc3a5e0ed86f147133f094029e3483bebc81cfde69942cf645ea20d0a2b64 5140ccc2f9cb4a3d969f4b0a79cd3329b440dfcff5285494406f3dd08d804c86 df191e57232f6f1f83df6430f214e03fa5412b1e13d83c60c52a698bc9a38159 19a64162af7b83a9468fae9507c6cb55ea80df8c696dfbc3296c663902d77e89 a181502627281181ac8624f65be9de5fb32f056cc7dd7cbc7366a91717b5892a 34ef6b441871c6993da3a81afc9bf70ff3842a21a29c0e49da1ccba37dd6b920 2702db510b8b1109acf4c27ee8d676bdbd16abe189f34a9b61532eb777457698 cee0561838eaab2d3939c5093afbb215bac433d1918c739b62566906bb2187f3 378521fb52e70c18886e1aa15f53a1f8a169528cf2ddd54c203613ff88e619f2 6c9c50c2c3b8b8c868a88afab1dc8472e7b6f3f992a161723a3c0904865a7c42 3281601eee91f35222c4a71f343739f102eb43145a47e4fac3bd666e4c114a90 5950618ecb1bdc29f90f6ebed1d8325fe6b52e14a8870e9b4bb088e585c71b91 493c12845a101937e3473ac5e9ae24f7c358f06d590d7618e1a1d5834d87621f e3f5432b655eebd4ca61a7b00dde0aa740796ce88a43d1c6952f8d2ca63d30b6 dcbadbb0dadf13150a442714675dbe51ff838f2e47ebe8cd44f1eac6ae5b6ceb 0b07af03f5d3896ff935a198aa635e337e367e1e128d15e31afe3ffca8245e41 a3e17011340e49d52fa1e322b435b4f7f2f49ae01f6a319f68d3d786c24be810 1e1c975a8feb5dd7e4922e00e3a08cacae5a945e1e8f8a20f1fe9534153307aa 5ac7424759743e08af90b9bcca7447375222a66934e1e47f97f8985b0c694a87 1ee7eea9e0d7928e555a83f7456ba5f235a1b5ef8bad622dea313825a43446bf 0b300d86f38133965120d1dc43eb1118d1fbb2112412711a576c4cbbe90ca05a 8865da40d9bca6bf94a9dee1596b6ce5af218492f0f13797305d5ce027a15f62 e97b1a96f52bfdb35d7fb3291fc270beede6eefa93e4979c0133bf56ae6ba3f1 5780cd62e482645875d638a9a3452665b2f8c9428faf9fa1530a7f486ddeb242 d6b88dee354fe924ab2f20bf5c8b3c55d4b01ee47fc61d6de927cf6b293311c8 25941c35ba0064d3467c5dfb92a474a142800f1e823aa6803f498d0a84509eca 0a647b5bc98d591c2e10895888f13aaceee95af56243c8df4131bdb1d7676296 7822c2b6f25b1f0471f995dfb9177fe3731671a4796ab1ef1ca8251aa4defb2c 1b6e6549e399009c8a83711ae45c4822eaf0f96d3d7b0799fe7ab9544f9992fc c34802a21f0adc9b53ea6cc4eff7caaecbcd465a1d2e8d121e4ed99eaa0ac035 3c1df112cad17ec8e1ab31f303a461112b806da6c08dc2f450aa787b0dbb5cf9 99b512a80563dd34aa240c096e8feed2046550079df84c12c44ca7c3e0de96fe caff1ec43798da864e7688865d3dea1d690e0261fa46e64a81b8cf0636396826 10b445d5a2f9f3831bc311e8d3dc51a9f6913cb12c553cfb252f812a95acc3d6 e2ac2c23f61650c42ddec2341376a8fe3ab8c19af465dd8c55f513a4d6efb72d ffe4d82e847b6ac6496a5ae7a4837b4031e56fc6f10fda33814c90d912649155 e7613cf7d2076f3ef6afaa6406ed2ddc54a686487c2944d33b4d9717219ece80 b7a2d037dfd39c50a87a216d2c24b08be11212b92cc8670eb6567bf7df3b1115 629711b41ed372956dc93858f859e66f13e40ced75810d2971f4c202a7b01fd5 d5c8c58329e5512f04c6576b96f20f522b84484ea73140ed68506ba5467f3603 c665252f60cc83868aa08eb1e54c80d2ce7ae883e6c903f54e228ce7caf97bb9 2292e339bfa699e20747c612f6959fa8d1f9d6a0676cb393a75860e50d01df05 4f538eefba15b299df0af505849062425134faf4184abddcd881541575923a05 4bb979c1d897bab7912a1a40e942ea931e53e3bcee550fc2fba8781e069dc04c c705c4cbee545e393188f02449b2b06cc57758c5f9aab27aa9ddde75b7b8b8d9 d8766a22dcac3b93444d53f79ba1043dbe4acdbabf60cf4fc8dd995e6e205049 845fb6ecb672aee6b3446c3094908a37ab11daaefaecad3babbace6d0d000fb3 3b8e47240f6f236a3beb58426e4b17d2f35f4ea36d828e673f29af844195fe59 91bd1b2283621d7d5b4f4af487676370fcfeda36895a8ccd288cf6705506d51a 10716d064f6b271825a12979b5ca8c2be32607a0187cc47a239dfded1c7f6ea5 5127a1733d299b029aa4327964002fd3b25f1edef91fe60124b33de798ef7ad9 7d60bb4cd6a313f8ff1146e8d3fee469a0446c1bb749b42980c2e1362ea9fe48 7600cb5dcaa237c1daa5ef82d21b5c7eb4534bf2fe74f49a5daf4d3abd01323b 3d3fe1e6c3c73c7799f78af7c6836487792f7d02f659a15b4a80d8732065004e 4ab9103cba1718c2ffc9fc904c401d04c5f9fc9d8e97f33a1e0797b297fdb15d d850ffc06eb5b2128f4ea97577077570cac27f1a9bfcc95410d93135a80aebdf cc8c652db93a9cade33629873d33987b3607f501afaf28c8e6b13b726586a04a 26322a9c3acf33b93938ccf0a75e6ecc90c07c0d5ff8ac932e9a499299566d80 161759e9969537969c0aff8e0cad05f617fe31156e385ce14c046a43ed4fb0fd c0db6e4ac150f4a9c85f2b2c05e7777310ba77f1a8d2b111eee9d52896297154 2b786760c709075f234306108c794771cb192456b6cff96243c18e139b62af7c 72198fe53303054af4b3e4ac6edfade8f1de90374ea6fe32999cc0c2f34a8075 57844c20b8ca650b5f64875e81f0d37ce4ddbc34c6c5f84291a190d3548cf185 5c7a86b84897f70ac004a55c45f989244100001fcc29786bab80bb7cdc869948 5ef10af61188c25dd5ffd34605ba688ba52523ad2ec84eac4c75441b38bb82e3 02dc7cee4575d33ac37edffa162ae2972be760f665488b74e1ec4c77c231d264 a390afc571f3b411f203aafe271bd7064a087626d7a2c1c3da3b3e5b2d4ca189 8ccc75c224af8c146d0c786775acaa47c57951ea54e8ff9550a59e4636d7798f 77e349ee0ed49a130ef9b4dec26b03fabdc23d680d2ae73b41c83824ae6d93c1 212d2efd62bbc8aa7441e0c893c5bc61d28f21890f1fb1ae0152f6801922fab2 47b0a76a091e928bee65feb567c0a17ef8e2022ab5c5c10d42ede2fe2f9d84b8 daed29b9c63eedf586854fbac9c91645a0848e60b268fdd917437f91b3c38087 bc1921e382cc84f46c731ea56cd12fccfcd3a312e2a4f6d3ba69c85aeb296546 f08520b68a83b2c90dbfb435eb9bc268b03f3c8b4f2ea5a318c59287ca016375 4294478b28d2d427b368fb4ca60154f2a6e201a6ab9e6c1ee4efb879aca80599 8a75b48c32b27acb18b2b158edf1823c65f7507415cdcc6bfbb82bf70e3b039f 55fdfcc71afd3d5c6b8d1fc661518e09b05336c41d6121593f0fb58ac2797442 3c77759d6ec9d00a248613c91c92ed7b1e6848448ffce73ec5fd13b24e1096e8 6e015122e34ae8367a1981eb2862485db0ce1af91f5d7b88f6d7adc0d6dfd52c 73ed945cf15282f9b7730cf996ae901101f92ffd32cfa5d3df59fb79a2a85af4 eddc8e113985d220127ad84ec46c163adda90cb8157e2ed538a2dd182a73fc72 0d00eb10f50908dd916f1bbdfb6f5b1d5564be3a6f9d531c9ed7d90827a3707c 7e6b43e92353510aaf819db02d54426a31f23b80362ef0fe6c4b810a49cba4db 5775e41756be22d476a04fab61262b577f5535b6e1e2a3620ebebd8a9469f4a6 17866c83cee5545f937f47fe2c9ca592e7e97abf0ef1a6bedbf19f96e42b8caa 5947e3306967ebc66e5c7c2cbccdcd0a081011bd570708d1d064925dad470a82 09f0b3e1bac858cc6ce6e6b25179a2c85d18ebc84e8fa616e84b6c3b99315d81 64a9d6b43aa3fb2038c195b7d1551f5053a57886d8bc98fb4c7da09e645f0da4 b27bd381f9968bc77bc90ed52d9d0e830297e2615357e3946593d155d713a68c 942be15afcea1d195598bd58717cf4d6ee04eb488c3a06379ff4c17088aa3ef1 cbe3df46db6a5093b822d0da2cc5e88cdedf11346e9b6e9e2f8ff10788dd109d 849d21110c230234087ecc11f535601ca10e4073e6a378788064d2d50baf6bb2 f407e1c1d7b29eacdc8edc8d162d327ddca0232bd8ae66b8721b8bf7d3e28e60 1099802252d8356d0054d7ecc87ff6ddbcda63dfb97ae44648dcdfc183672f75 1f677838c7f055efb4fff2b7eac3ceaec7c28490f0af06148a52ec91abc8fd16 1c0997be12667d017565468243387fedfa2d1be64026191a5043be4a64f8b849 922acb101e93f5f3b6fe39651083240dc8a92a438cec8c2b6c204e7aac3da0a0 643541fc7cd7cc48186d6bcaf9e0090ff4fcc7e40218ae2fab00ed47f2a9dbec 6ad8427f8ad92ca1b476395b3e36dec37e8bdd3e2b4e8cbeea3a96c33b0b7e4f 67e7e8eef674e58241a58e7dd31a0e1d109b7e6788fd0c648243cfcf94abc753 0d43d6ba1e821a66f81f58f176a06e1b7caade7339981b8b9fd2125cfaff7e0a d1dea92cd963e6a5f0a31f3769f37f24415eb1cde2c4ef93eeb887219a9c9894 6455f9e38befd552bf7e5d94094743478f671bb28d0cde52a61fd96d6c750532 bca1842615a7fe334473a8eb48c9f8478a193dd739a29a0ae434564de20250ff b80728dbce4471abbea40ff9d45490c1627593364b3eb818d0c97676680459ab cd6ab0cbb95410d66220c64e5412beb6f0ed0e9cbb132d497676be69a5a3c943 9ad5321b349d3befcdadd09ff5f529dd2d26c57f5b8d149d8d7bf0e85d7c18fd 55bac7fd2ebc459c04a447ea6ee96eb17266836963a71fc4a76288a96896169f c4add2d0c770164a7f17048fafd142cd7910fc9220667c965b1a4702e91e343e cf93a13911e80cc6d395af13aa43f0ee13d72e9a236820eaf2c0557a70978ee4 72b4d8bd4b67783cb5bd1e1b3ecbd31dd0578d4e7f1849b0f1c31e8d6478a061 23b34b8c145b1e78bf8608e6f735ec6ee81e2aa44e116b9ab753c3a421287f2b 0f7813603f6997085fb5d7775e392839fe76275624e5ae1294842aca6e957a4a d93e06b059a0ff8603c4dacbac537e023b73859ecfd07e82d96c6bfba3a1ee28 6cce138b41c269d147d37356f4d499131b29b7366d5d9be5f98969795ad0044e 9b17463d65603025f731099af2802f42764a5790d777e4a9304d08670fc3a0da 17a04b5fb854f0de301678cbd15058bd2509a98595ce3967d04d0375afdd30a0 560b8ab02978481115a2b017e297dbed540062e1c0dfa21c034835b1acc2f3f6 c6155f9eeb4034fa5c8590e38425d0f978fd807f9fce87bb17aabd04d3973ea4 6067377ce785f13939ace47bbb1442cc01c751af4f352444b9db90b5f772c37c 18aae135d46188746f2f49fd9e39b011d71dda6e780268a833e622a425ca4b6a 382ea24c962e3c2ee111354159c921bd7d582e15dbd93e0ea80e29a8994a5760 c0c1704d58749ad903a1ea4d7dca031cd1ef90a6ace49be623435eeee4d54e3c 9964f72309bee63033a577c060ce5ae0f40a8ca4d7cd9a649c22c35e97dd3c0f 2d7a220ca89021ee76417af40579cbb9c7bbc19cadb621ee7fff35046a64152a df3bd6878c33992a5a5271dec09431e64a054ceaa12190a62125040ab4d8d165 bce66c8a64d19d4d58673fe39551ad3b8d1ebbe1186a39bd579c0fa51422b758 84bd0b9bf4288742234527018e930bdc0c9a7dca7d7a16a39b93124f42640460 8760a33c6350b1d3baf904581619741123f6b6500e606a9fa8d352ead0e6f726 598523e1136d87e5f261a0594c3aad2d41d8a17588f78b5276109f345d84e84e 69c5ebe2aeeaed082d594a4cbf8b08f68412c4f11adf8fb6b95eacac5b74633e 193b9d7405cdb6ed9221a64ca28a64cd4e4494f017fe2e37bf6492bf7951c169 b7c079b7139d2ac3c6d86897c01f8c1e56a31cad86f36ed1a1fcdd3f2a5151c6 f1889007298810843acabc1479b07278685c204ed312e3f09730357630959152 5149d1cc397b84dc7c366aef2a73f5201923bdb7101e5cb849d58c412564546b abfe200d5284f48fc78dc290cd5bd696a32bdff50a44741d08b07650db3a135b 0cc819ad459a6a70b0ae5913455d749e8eaa9d56cc775af7b10f36536dbffc31 8a0dcbaac2bf1d7fb05207ac63fca9f2f174a98ace6091e68dbe4e1ded04ebae 5de5572dd91eb76013179d1a93feaae9393ea7bcb60081abfd7cc97d388fb7cd c5df76bdd887a45213f039c31b26b330af5072338106ba5405163d58fccd3f0c f98faf1fde84a2d455da6e21a78cf7210c112c843c3e04d9d2538386d3cb2bca 8fd6ad4faf6a7f2a8a64d54fb6da110f9e0174ec2191c0b66e2c2dc784e66402 9ec402b282a1f5e650052edb907a5042898252aa0f609f0c081fc0f6d1ab959a 4c760773515b5b52e4a8d4aa4736f7763a4499d9fa3d1c307e7746d23f56bce1 0380989a75bf3684d1eafebb50f080fbe5091cce89b52944e076c3731dd16563 f136f31f89071378f648e123ea393e1bcf9796c5a7b121bd8b81fcfec9751080 05dcdadd80a8ecd915aad46df7137caa0cfcd616a2cf181d9fe9cb17c92396b3 75ad5851fdda79a2fcca284aa18e0fa64e77a3c16b882f7f07e991c6889fdfa3 876e174e90e92da33670c0f1a8fb3a4066c543538617f9a5b00e5f0d3c008600 df1f94b8c20b3328fa0a1b7675d149d447cefeebaf79f8951056a30c87d65691 34d711808b91712dd1e21a159ca047ab4d9d8d60e670c2f10b94fd6a11a77b47 3ea60e12c7ccfd8355af3f5fa3bc48886de41dd3623d94a36b0f752997257d9f 4f8720b80d5368e171c6b4c22df8bdb4cb82498955200886457b10d458973aa8 e3f2b0de3cbf96daee731c1903587bcd9603ceb33c24a201a5340803e6482384 f5277e630c1d2ec9fb3d04042fdbe2eac33b3fd39e1fb41eb8aa48e9a638c20f 47349a3b66547ab3c9f163b7738f9a87347825f8fdc45331c32d815c5f70377c ae0d0569d70592b56f9d01434faad5e2f9140774e56de8cdefea2eda5fb07c1b b4cf74c236c7b52ffa1af789ba08b2829e318175666d5996915ba6733319e92c 1a879f3159ee59dd025cdafbde7fdbd3c0417705e437e3ef3476d01a2edb5003 8a0fae4ebc808696e588ddf30d425f3bc1f56cb9724482657a4e24699fd4a5df f2e974c53e6706cdc567ec1f78b2d9dd28262a5415e39b7fdf55260db397c5e0 b632e86ab9af6fdd7c9c9f23b245d37439963ef54a0791d38fb9067951283617 e5157e0a73be46d54e8fb4d4d0077de28da10383194f2a9b409b9102922e2699 9907ef2417cc5a0c9e34f0761daaf464a173d5438ac82c84870566ea9cf946a8 13dacc19ce9e442679753406ba8e75a7e919e904893fc1f82bcb8a1e9d1d2f0f bfa2242a5f901ccf06a042791a89790a250b9ff44005b3fde17112289404f6f6 c6f31cdbf235a527091c98c79d7e0557a64aa83615a158241af51c92327415a2 f3c5e094e119a87d6d9a8ca276bea17169b9f98c9455cfd8d7f663d7d19c9ee6 7f71e11fc8884ace9222f5f1096fee4ab96f2d1df05eb6bf9d94c10d382e4c56 82d819f19d2653cb2d02848a262030ba1546302676f449a983025cdecfeb06c9 c40a403904d6d8cdc7c976bb2b7b2c1a70f84b1f1be07484e514f5e436391d51 d313628da908eb4e88f36aaec69e407c25eb4b34fa7f74aeca5d3d7b68e77d16 b0c8ec0c64ca5bad81775caa68d4de8fbdf2de0bd2c7ba4efb0277dfe44ad43c 2764707df8ce89b84ecb8273a2395e88c3c55796e614e21c2e48da936b20f0fe 7040725a60f50c898af54b689e016f2c6605d03068a7e8dbc6ca3ba2f7d1530b 2e645b82e0dd7be965cdafecb764045cfc205cca33e50d115b1950b070a89a42 5caa28a13a1b46c8bc2e216b2252906c63d672befc996f6f731d0fcb77fc5d40 931354d41c4aa1f88c7375ce80e0428a27fd6acdf50f47f564a4f3533c459452 0f56465711c26434f4e51d01b44d0eced6976feff1f522c205ad9c49f893330c c74d81d8dd8dbda4edc9ccabd3d7bbfc298be25412107f83602a56d7e5ee4da3 e14f99117011e9d6b94872f5b7c5db03c1121f8491a827e996986066bb2b6c05 0fc128f69e95c905da115062398bed6b1a96c5bf413d99453fb9ff7e28fbfba2 d863b5491372c01aa6a18c8ba1c277bb8640080756f86e89049ea2a41aacc38f 09767f6a831790b57536502bb31c46453bd49e0d629a0f8e0a58cda2452e7d8e 9813910842fd6c649c8ad1d044d294c2615c7d1465b3c1b3a892c5950cfeba71 be488e421a862ce004305a71fa93f6d092737186bf41030f422ef48f06a0c92e a13375ca05ac994b4b679912ea81c4ff3ebe0face4cf744e5534821cba111093 9e1fce13e2c70f6582184198151e02675bc62d133acd1220db456d8f61498b48 f9d264396674c2dfff7c78946b91608bfccdc0f19ce30334d44aa242f39af4f1 87c0b7b7574b544385787632657f83e73b81ee6f2c60b0acf8d43d62b4f66190 8e85bd4ff893bf086269d3dde9352dce5aa32ef63306b4f8a3f08df694684553 510a3e806d76d28fdb7b92f3f5fd698ce58557bb99558c30985970a5bfddde39 4631fab3a501b5d139ca74c368f25653d331b04089455423a026dc89de8f52ce 327ae817fc79b4e6a14bd1077472a8ecc9c2bd2d77d248aa99d2379d9a9c6073 6951fc576a6f2823dbf9beee6eaab60faf8b2a02d5962889e6822f1c2fd052ff 3fce251399e66a31846c525eda85ff6e96ee4ee9254581d585753c3a75f9d89f c5c96e0d22cd79365c33386d760a93250fa7f66bb473829b8331c27dac29894d 27d31a7d7742f006a4e693bb74e2b26dee35bca7b308bf27166f8678a7dd3095 e8d9ca30bc42e8eed177d381db602846091b268aa2b5ca06ef61bfb168ddc9ad a46df12874c1ab21c6154a44ec772a97385b7f7c0db1c3c66d729c306bf11742 1be0593cba6deddfa1ebb4f8ac8fe1f4b73ea78dcb523c70cce140e72e9ea138 dc9d8378774de3eac086cc7cb4ca403182238ab3c83f2394f437535c04d2feae 4d843338e466439ab4bd03424fc5bd539f798b0fd2037a707cc9d071827452b2 73e708bc0654ed6ca6de1a222b656690ac32e915ef78f8be365caf693e4fed0e 24a15141d0ac9ef68721bada2803c37ce7b7a1cce35e37ff985a6f2309fc9dda 79074ff6e914299287ce688a4830b566d3daf5ed9c0252109ad8bd033c5d3fb8 fbe20c8afcd6ed16015f9bae9ef7e1ee8fd8a816c09216b5670bdc9485e1f74b dffdc88c2b5a209ef95f1bafbd62479da381b02e21092518feb7640e6efdb1d4 36943c9a9f3a0733c934137fb9342b3d8e357cc7ca98b8c0c4e4de28b9c4fd92 0d7f6ce4468b9272c149f1d3a762d5a2fbb0e2695576036efb142fee9218b6f9 5e1df479ed8c696fa090bb9513336162cdb7bd77be7b1f6b5db758d78092115f a6f7018b8a733eed6ba2348637a9e9ecd1cbabf5827749735d9892ff8cf1ca05 f25ad8be63c60226b5577372795a73eec4895e534359485655a0e60b47ba833b 75c0f5abf508714fe9df39a8678680898bc4a4aa4ced8db2ee850b377a1a51e9 281db443decc725b90d17561f5707c1e1ba41d0018dc67ea47b8f1ef3679edd1 41c70515b1319636f414ad5c24c7b045ed79a4d5ee57265e87ec0c67bbb49aed 0c66766a6ba6f31a6dd224809c0d69127c90a9f0aad62ab5d60c666db6d98d7e 543984c590d21de0182380c5b1ad36f3ae5977ba654b109307ea6179b0257ef7 1c29efda2d3d25cb71ef699d5a46df738112176673ec9eb46cff6fa89f719082 9821184a0db4acb15cc1af4f4144d9a808a7c2f06d553ae5526d75f8ceaaf706 a981cd8477a881236496c3863189095eb9f38f17d1d7a2b88308e011e7eac930 6a4f3ae1edabded3c2a23567085070f3b22579262d13fc120d55da8c6792a5c3 58c63a1714bd76ac0522332d91f3491235c87e775272a064154146eb9ce9a773 4d8f3b10171f0792a44831da79b20eb6ac4f72c45fab6b79f83e2b64cc660719 7d99ced41139125b6edb5d35adcbe4deb2a452465339ffdbc3b7af3f9669d49d c8d6daaafdcf17b1cc44947c8c993dbdfdf3a5581efce6301c60981dea5a3a70 5ddf16f3fe65d82265c11df66c47613848486eeaa94b7107d7be18a950aad1fc f1bf1deab9c61b375253f02c1d0b0046f570b0518ff2e400933df70700b509a0 2501ad0bbd9bfa611b9890e99a3d717a30728b6bd4ffb13e15d93f6237bf9d0c 7cf012e8047466d7969f7b6e2da96a6cb1bbf119869361d6d3e7bc90e15bfe19 1c6b509e67c59cbf1c314717a88601a4e412b64da330a7fc2f4b1361e6f85b68 ca2b495b97f665e08ce44e5e7a9c2f2de640b691c40ef6c2c1d7b5a8f1f459d0 7b5053e3e43a515318f71773ad06c81e5ba3c18f4c7f88aa41f0b87807cbf0c8 a362c42f21a461c7e6cc12ece3b77345f35d30cf9090120e052254f87d9a8083 5b37e6a94665e4f2486f645828e7d980cad6694f0940fd6e6065ac280ebcf42e 36ce2f2c8e378afb9acd43a9993e601f0b4901c333392c5e0c7ca74bf701b1fc 42ee8ffece1b923953962ab6247b121e8c2bb5150788677fb6ba629f5806f1d7 f06390b78ff2da0d206e3b69df5265f6ea7220a4f8a93d58a293f44047860462 d3b38f0a2dca5c69769bb1e3a9c426f861683f4c277fbb5a0830abf04d8bb776 3d8beaf49b4dfa999a23628bb206fac73194472350512ade25c7b21187aaab45 31416e2358dbe038d1a12ffc524d6d31280da5dfebb1edc6e0eb759d1abed05b d423678326b9c34608a258bdd2e6087bc93bc0611a1efcc09c77cbb9509f2bec 59cc5484ad030bec3cc2bfcc5931e5bca71f81563d188c99be92438fb629a0d1 e1476f29a0142e73858bf5ac03fe2af25eb4835334cb18bc5e0b12897f25a2b1 2e1431519237f303b77ada4269cc7ab506bdc5e374019f2061a0cd9d131b62f7 a34a912fd66d93299ba18e81fdb6e91ff9813ad8d1fab7ed28561b2c8e4c9509 2fcc3795ac782819cacfd8c77be26e9300b04c2057e3477872b187a5fa899e81 5cde7c027252270f6c877227813813cdbc2aa6b1363c0c06e72e5537ff6fff83 18b3933e75918e2b2b7d04db38b9018818946af7b3cfd50cf20abc805396d838 1a1e54885d9bdbb24c07bc124bc47cda019bdc980db30e355340fe815e324aac 46c76983c7a4920a9d780f8840caa31ea19dd51bcb89a3fd93ccecee0fbec863 36c8daf3a355f754d8045da691d1af5d00bb20495a7ba6850062ff29520d7139 d9559b0b1d92353b1d4e8953c5cb3e471690d1a824a00a5c6027f41a818d281b ee951ece8d94a0c2e2f1514cf624653fc725f18c8394b8b6cbc9d4d18b3f5617 fa656c8864840d0fbdb6e34150b514892ffac8bd8e15d9f31c50a47794b6e103 e214e1167c61a27c76e5e5cfca358d5724c7eb2b4c2dd49c4c1ba92261a43ab8 585b9b464d80ca5d95334eb4bcd9cb13cec6c9152a9d3b53718cb8ff475455d3 1e3c224690b805afaafaa1ad83f8f394f10102351f839b2cabaf823cce7d4b78 7a79b94d31620668b985b4a2936c6a12a53ba2ea0eeeeff4f497288280ce93d2 05bfe2342954fa57cfdf3c1a2f29b5216b1f9483371fc0a26769d982fa8bfc40 b35c4b13b28dff0512bd3263609ca0d5bdc0e182e5a0b6ca78bc50f625c2d36c 5c2e23bacbc27f3b3f095dd504f5cd7d33683b7c64508357c0645f003b002902 0e3c35f32b2469ce66b312f7e4e3c8fb36b2d2cb2f3e7dfe5014d210ca8222f5 377085a39343a69355f1ade21f8e58d6d5d15acc8a0f788df2182a21645d0a0a 01b1ad44b6b17514ce8fb5ace80c25ebccd6217010539b932fafd3b6124919be 3bf241244073218a503de5846f8e772c965c2b411dd6158067c0cd15641040f1 bfceded799d9a7011e44f7dca3802feb0935634bb88b7895ca79bb52ad1bc120 f9de3fdcab6196c4cbd950d12cbf9499ed8f43222e77f4fdbb909f2bfc4d2906 fb8559b30dc0a7d4114b35c338e6d24c5f1e79d8891c10a06133d2bad7876cb5 68b7a864213af0ac34eac70bb242caa433f66126f159f4657b06768ac0f1ddb8 e40ad94998e00aa75a5e6429c21d2b4c16c81e123fb8765582c7bfa4ac14467b f28e4a691fadd433bfd5af88ad8e7fca0241a30a14b0285f7a2cbc9610d45688 6a978e6d0ad5040ef9d2e07f1ccfcdc3c92f727f81be3f6b6fd3a5f758f5ba03 b21a4f5188b3a462279fc33630228c9ae179664361dfd7749f0c7efa1158e9f0 e7c32aeeeee22cf28a752a4d4133b0fc188a84920192d21b2c1442fe97d1a465 f64b0e89bb5481f98b727989f1b072a9b2506362684a44971dfd52a319faef4c 1cadc78d13022286f58bba293f30c3f5ba56901bada43c30f97e3a3bd4f19304 ad7359459b438fee2c2d7a885848c2a512e7ad6e6ac0c905cc133d11172be430 5e97e79498a515d5098458c56764a269b4cf9dc63295ff27d7b9383ab41350c0 59fb2080b1ee1b83dc0e4c5b7ef37d33e65dd294c6d3e4233a02481f8afd0f6f c3be9521dc99b784f8101001a308619f67ab73f4e0694a68b24fdbd8153f823b 3f3c9a4c7fa0d57433c20b18abe2b264918c66c40b267ab9dcea7badb4290be2 190fa96d998015933340567b2304ddeb6f45727d457c94cbe00e64944a9601a9 a60b91cf09c4c01a000262125a62479761b1223907788adf4b74ba5a11bbe613 91844edbbff952a592d6f193fd4b372f32d37fdd61ec26fc490a7502d4305775 5f8ad916ed367520fc9ccbb84c30f818d287ce6eef13a1599069e4467c7bfb5e e88e7310a0f118ece3fef6fdbc6035c416f335f9b39c7aaa95e22f1517bb18f8 5974acac9106865912941198cd566819fa7e61d95cd30745763467fe4e247031 da6db3556e65fd453f98df16a1f3cfb06718aa04b0587e8e27a10294d4098357 8f45556b8ccb96b34ea0de807af20eb36e3a94c340b9282d08f8c9add037bf04 79719fe331b019278b71ed921ec7e6d9a0a90eaaaed1bffa1bf1bd82192abe8d 14542b2c498baecc4abbc494d85dc4f2a892ea0c3e398447382be19b90573e28 a06b09c22c399ddbae27765304625d8bf888396eb10606c21f4c2009801c70be 41df5e629cf43cded14d85ae8f157722cee6067bbcef9bfe6404b10e93210335 7c31ec835cdee029759fb79a7e3c9d797647710392040939fa2d190ec21007a2 f492e3a3c2b0f331c9b6ae628b3388b79be36a44f6bc286fdc4916a00f83bc9a 06894bd0ec72f1edd98183032025417fc14be3bd65be9a4a4dfa37fe58b6f33c 5b3c93059900deef2a3d3748b5c0f98eee5c832a238916824e459553b7aa8d60 f7e479d9316283769823fc7c023e5ce615d6d2ad49690c45306b790435fbd9c4 4272c004003f6426ad811b7f9f7008426e51681d7b4adc5315219874df802e2e 0f369118dd79dbe320c5604c70b5a90932da760817c9375b00777c4c30dd5591 36dccafa11ea6ceb916de118aceec2cc1a67a3850491359f0e8cfccd05303eeb cf1eba4f025cb0ec508bc4f3e356c8871fe27d40d9d7896331993f8464da648e a3b892e669d7c826cdf322bc263bf3719a26f63020e77fe16aee1090edd4757d a6d877795b60c26f35ca8f497ab9131c6e171d07948143248f1cdf77454a45a3 9c7edeaf8f777da8ec9cf3e8289684990be6ccbb9f68e2b4814e372fa4a45860 3a44621e1c1dfffc3948c499bf40228cfb6e79d3b2d6535e7b1b4dfb9cbf8b10 b6070c4f812ccde9be364c642f54b5ac37de2577c7fbe5e4f9d4c150ccc572c4 141259bbb61964fc93391083154f73404c3ee1b7e789e7800e674a6ba55d1d3e f8d8e40c509860761398e73d10f19a6ccc7e15b273434288c57e20cd4a3359b0 00acaa451828e1e0081daee668314e7ac2401a208392858bef7817a48470c1a5 cdd616dd7841442dcc66b28f727c9d605e58983a74d737a40a4f2257257b396c 1e600182a38701a88b6077abc0ee21a69e9a28f795fc0bbcafb0bced98ba64fd 150ecee392ca5cee08fbb52d39e092c8d7b5d7ae7ea2145a884745e06bbe4e5b dc47ca49151a9938d04d0093919357b4a956eaae0a0065e28060f63714e20bd5 bbcd594dd29cae90ab9cea0b0d428db1a1a4714db6119ce42008b71919f332c0 be5f61fb2579a40b6be3d98840679d6ac3efe1c62cb9c74462d1f388e40fb55b 17dc9bb0c610a3ec486cc50923230a48de75897019765b8bbe5001f877752760 21b479959873de67f8f95ebd4400f01c985c58401bf0fccffe993f693688a851 adbf5cc6421316238a0c285b92d5496357a8b9f7eed8ce69468f0ff902c006b6 740f864688065024cd4abd4080dcb4feb88fdbe0fecb98c6ec32cccdcc291cc4 f5f12c1f641a2b8d3eb2f38429ccfe97610a3ae7ef6303b81431e3504ad65fbc b83f637aea89a7f2bd76276c9e51e8c3fe73d826d9ee8af09bf8d542444345fe ed66ded257d47fd632ad373024ed5a527e6d0ea4f05ea9f2e5c09a525d0978ab 150a2748cd9219218b00776d071260cd377528f594d99f93b6d0fe9e6b837012 5edef9e9977b58fb46e5642803add34e6ccae5a4191a34bc6cf5e32950052499 049ed1e338c92df26a906469346b3a0e12c2e75f36cdcf11d599ef53b93406e5 f94514faa0ea435065829e509a0e9433b222d2400649f62b58d4d88870977e23 8e6979b12e9f42ca3da3ac3280b7f52fa18d59550e28b742af706403dca850f5 dc6500c04e17eacf76159fae17c78e9cd6f996e310f1bc547ebe35ff3da9a82a 126572d5b14aeb9215324f45c4a4197aca296e6b656d6768cce9a5bfc938fbba c9c3134bb249a9fcf7cb285cc5a2ab50065c62996f89b32d78221e34f7e3adec 565b0124bc9a824581bcfc221bb4e0c9f066c57ff53676585386f17f59f5bed6 cf3df552f5f6f8d8bf76605fff55487a06bd72a1ad11f8c835ef60bff0577964 b9dbec3716a281dcedcabd0b69daa9dacd8e3f5c04352f8a9292314e8f59dedd a82b7e6c4dc06b6444012309fff17e42509d626483598d8408a1d58fee8e2459 aaeddeff685d6f081a6bf2269d917eb8c1f87b9c9e70a2e1a1c1efda8cbaef02 faedd156bccf7c0c8749cbcfd8e2deb9790de68bad783c023277f7b118c4623f bef55e5914db739f8ca3de26d957ea2e4ac1a30b0e004065c00e43324f374c87 1864f0ac54b883953e16bac7d49c39e0eedc3c59086f3e68f83b521dc80dcd93 011124f6a28ec0d1bef1513a570d3bce5ae5f4333f0ee11bc9e672d818a6f271 04d4aaf43290526a67449145d63d1586eb446d4dfcd0911c7cb5a150c024550e dd4e8bc369dda7860bd51f95f5b4636504e29e65bd8b1b5afe4b7018eded6f24 bd451614a46c61bea3b1564cc5d230d7a6bd0e340be9a2fcaea719a57d5eb626 b90e0555a90333acc37b30a7d9b4cae328bb13eba38be48f0325680a4316fdc6 776fc8c2951bf64ba97247d3f1e700dc41a9f5d861978c9dc190d122e033473b 3936b0857ed09d482057c0eb2af7fa6c89723941db7cb642081ae8b690db443d 3e5d35f0fdff086e83353e4a1df4bffdebe62ef842bd0ecd587e1b9b36244987 728180551aa1f9cd8dc920e70917e4e7ce5f6e29f2219525ccc4709132c8cd03 bcf5eb7606f1d1d0d09506df08fc0c2c576648ddb3199e981bc7ec5aaaa65c19 b42fcecdd8f497fb17e8e936918e8f93208d8c9791156f34d94e5d4a9a1d3a59 f3dde39d4c504bb68c142030d9fe269decba4245a088186a22e7ec814de77183 1150f922ea33fe7cffbc0df7b63a50f4a2333409e23887a60dd2c8c95cae8308 f6adc629673093892d3f4d57caf14b5b91985abb9aa4e8a312968d1a956206ac 8db14b27b8ab36606c2a89bf5f3aad8194b0f67f2805b5e267c7194b98e2e935 8decdead7571398b7c36594f6c3d69351f546b84e6de4b3a22b5b25c1e7fc3ee 8fe6c0fd91ab7424e1fa616539f4ff1553cd4c22ba9098292727bb595d71be3c ad64c0842eaa3009e00d84f208e350d3cc28fa23225bc279b8d7b0c82446a5a4 bc03525e72323331ad4ae77ea4c95853d0d73bf8b6cf2ff869404498c430efa8 c3c5fc59712d6b5635a9fa731ec4ec7405bcd3ae63068a019137b3eff1730066 9c0cd42a9614287e5d747545f7f520e7ec99efdb5a987101d34c5570aa7dea2d e26b1fb79611023c6d688fde86c26618c33afbc649bce0a21dd2dc561553cbe2 b909ecf32d49df7be9ad7400705d64362d9326745478ec7b66f021d59a1a2a30 6f16503972fd5502b815e84104f8f6ffa408169030b1cd2ee8446cba226d4672 71c60397bd2683890c8c629e99b0d02bb3154bcbb5e81f58121feedc5e793b69 13059468ba6d97b26f1cf2ac9853fbb2ce4107790152e4ce558980364757b37a 0eb3e28be0c830f9ab90a761fc2cf0f775875baea9a3b4028438808aa9a24e27 de2bd67ad3f62818bb15cd1e9ceb9f8c730ad438bb6519bc6259f5e81518504f 849d8b514c16d30d01a12fb4e2f36ed2f1843380f60008e85168c12b3258451e 39e180342f3c9916e577f764ed45cc9ea34cebcc2effb22f5154e082abb33bf2 c33db61982de0a71309c484a0241aaa8570aca05229353959b7b0bfd2ebadda5 61cbf6aa35890fd330bbd9884218233317393a227f0f5a8cb5671be5124aff65 9ede83b69f7e5c06bbabdd2f99d90efcf8836dba897519750d53a72e3f65cb33 cdba449615ad93b9babfcad0216c70e405fa3d64263189e276f57974dcdfc2d8 4373832bdea806e9f12981baa384bd8f20602e52cb870868a49fdd520891a12c cdea1e202cbcbc73e357afa956797e9e7eb555b90391b7e4623d5d7929 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMBX12 %!PS-AdobeFont-1.1: CMBX12 1.0 %%CreationDate: 1991 Aug 20 16:34:54 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.0) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMBX12) readonly def /FamilyName (Computer Modern) readonly def /Weight (Bold) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMBX12 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 12 /fi put dup 39 /quoteright put dup 44 /comma put dup 45 /hyphen put dup 46 /period put dup 48 /zero put dup 49 /one put dup 50 /two put dup 51 /three put dup 52 /four put dup 53 /five put dup 54 /six put dup 55 /seven put dup 56 /eight put dup 57 /nine put dup 58 /colon put dup 65 /A put dup 66 /B put dup 67 /C put dup 68 /D put dup 69 /E put dup 70 /F put dup 71 /G put dup 72 /H put dup 73 /I put dup 74 /J put dup 76 /L put dup 77 /M put dup 78 /N put dup 79 /O put dup 80 /P put dup 82 /R put dup 83 /S put dup 84 /T put dup 85 /U put dup 86 /V put dup 89 /Y put dup 97 /a put dup 98 /b put dup 99 /c put dup 100 /d put dup 101 /e put dup 102 /f put dup 103 /g put dup 104 /h put dup 105 /i put dup 107 /k put dup 108 /l put dup 109 /m put dup 110 /n put dup 111 /o put dup 112 /p put dup 114 /r put dup 115 /s put dup 116 /t put dup 117 /u put dup 118 /v put dup 119 /w put dup 120 /x put dup 121 /y put dup 124 /emdash put readonly def /FontBBox{-53 -251 1139 750}readonly def /UniqueXX 5000769 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0 0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3 79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3 2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8 b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d 823385fe55f3402d557fd3b4486be79011d1f5bfae5c1f476ee6f05eb1d2caeb 269958b194521197b312fcced4867f3c8fbd030bd715d8ffda1dcd454b174e7a 1a97b59fe770e67702519d9d9b23d61ac08424d555242a8ca08c49aef300945d 99b999a79ce74804ae6bfde623f4463371442f6523a5f6ce19c839a708c02513 2e22c696c8ccade45680e5197189d0f98e7f0d5f955e353970b392cf530a68cc 56b0035ddfbf206c3074beeb0739dcbca272a6e629fb7aea2c5ba7bae50c7b4c a595df78200c352997ec3ee564df229fbb5473f5e8ccb1cc0153e9a7e299a8ea a29b69d1b622b1f0cffc58291248759607d91150cb0651120970dc9f743bebef 44f6ae92facec57658999c8bf01f60611560043962c0695e1bb87d090e0fdaab 659d6557208a660be9aeef8ae55f71b8bc76394d792967e41bd8023b6e7f8c3d 9987d5e54c53bf2bbb32855b946473b44833bd78873df8e4c7e668ffff25aabb 8da4148f744b9d0524d6cb8281247b3052cc5d66f3f1bcf8a56a3fb446ea587b d8be30257652cee035628aeddfd8283b5ad21b8b1480ad24d898970ac8a1e33e 543ce4e3c48f9ee621c5ce3e8ae930f890011b630866c988606068d9e92396eb f51bb3db204505fc3d09d4701ac703a14d92bbfe27bd7411b363a88e33a8e9a8 025ac31f21e73dc52b333b918d0b1270c54873a490222d041a66e0192612be6d 2c88958a8f70c10390146ee5091df020ab97675e8e6acf98b28b539cd0a20d24 a42f535ae44b8f5e9290b38fc6b02e1bbbdf1aca96558c2dd5afbec53f03ab51 fbce958ed4a65b17fbc03f9defd4aea4a15229f3c320876235f2d8b69bda5f48 03a2798790d35b394c63295997dd487bc603cdd10d18f3e3fcc7f17d2a6afc77 f1d7f6cf69d2a86b104b9d3b260e4a78716927a485ad8a650d610e68378f4514 3610b087981f0a0655090163dd2dd4d0030faf6a953896a9cb2cd033ec9b2fcf aeca8afb720baec98100ca9f2d69d91d823d4d3055c72ccd05a3ed632692e7b0 066580eae283be51277e7842185598a80af5b1b9e22f9112673d64ae750bcca1 00e448a3e6ac6d9b6d66c5837de5f7c75806f52c37d697e14029a2e7a820ff0b d300e967bab0d6b285aa3efc264f5a82c85c2f305cda3f3ce0155f3de7c69490 2e798ec6e6596b33a446234ca1cd42f4c223357b1d3f572625430014e9266b13 6f36a297882220e5f2a4eb329c7e1553c5d01053439005201247709ef8289494 27391a39da6fe8dba2af4282eff895bfaa79223b2cc1dfcb600dc24c96e3d602 2faccdb0cb79e9ea7117fd6d576c32ddcf5d8a005fea4167bc1e429fad59a2d6 7604c9680b4f14c53f7d155ac231fcba3ed825fe4a29b590cb833a8a90f288f6 611d96c052a71b70f6c2c19c9f4cb0c0c91865dd46df74b3aff47a3e76e6d49d 41d12e9fc698bd02685a39c6c464203aaf73f859f452b22b8601306a3b4f1ea8 ec2e3222a3a4107ae31b58bccd5e962d1c8076734bc4ed595bac17ce2fa5e355 07e97e8ace2c3d4e7f6838b3dc17e5d562970742dc472caadb14d0df6d81d525 4cf473f949a43e5dd40d467c08058cdbe692eae3d0ef922a34b67b1bd4221301 6d53bb9751f713ed2086d6ef1f19668e8d01fca6688d4670c0261f15e6c683c7 383ad0b71bb522c3cbec92757c3a0f9e78543319c09803c5ba4e3387805e5128 bb218c91d20efbf11d18ae64304e2262859c183c6319489d2774aa113a73fe29 30dfd7584c71afafe0a87f834411730681a575cacb58386f3070b590e24b155e b377b9c951366cd271809260b8ca229f9e2ac981c982de182f1dc9f1605eb5f9 95a73c4ae9aabcaebbd6d9c9575976f217493f466fe1bf57a00a9940a081ed6a 68cdebe6bbba60e131edff845fae7c59ba9ab576fa6a2a25f6d8c2df0fff3047 d727ed4b78ea0839384e4a4a778ade233803ec23d2f3773fe8f3f9d4814b7dfd 5af5817958246f4f56b9455b3cf241c2a0c6694764519c70daedb1b40afa0902 9dbef2a8c972a62a4ffd854588b113a3e3353b6f0174ed3f8bf7b70a18ec786d 6eda4d902460248960de5d48a4a6b882da86d5eeee5c7a247ac387fd745b21a5 69231de230b2b0c05eff82c10ad72e7e34299b3564e3d00b235b8ef5c3f8545f 5b2c13fc01637153874481a61565e20ef1de5f30c19e0afb01cdb01f266ad0e1 fc0b1ff3caba746b6d068b6ed0882054a7e3e19d0eb62f333290e1bace653a06 0ba4b7df439d82e08910b32bff3fa49ee0a145b7cc6710c30cc1a20c2b5a933b 20f6d2bef82af4b8bf40d1005dd8a88d07b5838a3191417cdbe56f2a3efda6fe e8be0f981ec202ae9a5cfd6348b60791466259ab4d16b3e31e041d565b907814 c6936e5a4929c28848069cdbe54ea7afbf8e5da629442189f614c271c3c229c3 467681753c942e91361856ab2e8c4ae47c050ecf48d5ec32cb2c6b6770f36615 b6ae0bb585acd664603cd2722692d08039707db497b1c3de37301f5b69a11650 082ec0e07bbf22c5cce9e08754831d97b3e83c45dd3f3dc137aeefa3a5b359d9 8cff8a5edf218393f7db443eeb414937eabb169461f19fe62f5c27e68eaf88ba 3c86e94ed911064911f63cc1896806682e7992925d8b0fd7e6a7b0243751704e b59c6dc9d9540244b590ec4267ec7e1fa5dca1c6309e4ef33239d633dcba0555 98d90765e72c9f443ca81ccd06a8f09f888981daeb43ae3db0686a0a2acae163 e4b7d62631f5f7103e91af15132c51a5b47ed857ccfa739eaa82a7736b9b4885 942423b62522ac8c597626a7dce303a6166fd45e8feef8dd2f1d4f5f03b1d00f 72b2d8c73dcecd2e1e2461b9ddfd03199222a62cfbe4eea5a26b355d4c8e3ae1 b24c948d59127ebbdba58db4cad1f0cd74f4c5f7b7920de5d47d12d6a33e0cf3 02c15391bf4de12a7c8905871c16767db147d427cef5c5a6d320f5666ac91c86 0a8905218bbf964c0c24c6863356f566cdfcfc891bbab0377090e167d51a4ca8 f36a324355027a3db054a36440b1c2acd30aa9a3cfed450c162fb126b714b72e 0b8cea323cb5eb9acab64d8ebf7c62d9bfd63f7de2044b87cc5c488d8102153a c28f4634bcc0e9b377af3165796f20085a4b04ecf05d336bca91eeaa74b705a5 8f74ae4284e0c454dec851f966590be567977927e40d79f858598dc8783ac8e7 2f40c7cc2de74e73b679d88bc61ad3fbf203ff4d58ba60821be1b21cd0c4bf88 35e36082e9eeed0bab630492629d04094ea6e996098cbb6ce53d08b41bba7a02 efd14eb180be081675f7facaba1a216328bcbd2423fcb955ea314386b0c12181 6237e4bb3a4e5c320e73f5fb918b29558acdf04d0d6e3fdc92a078ff4f42acbb 3b34e591b4381514666b0c8684a0ad870529d7bca991dda67066d6bdbe0a830c 04ae17554770682dfe9e8566ba03a20f0e2f2695a9d00a0e131e4d87e40183e6 5384b330311de3cfce047a6690b9203236069a033450e4ab7c3f139adb5d37bc d15bf1d96782d39750532fe0d9f6a7f9d2146a14a4407dae0e5c4bcf5d5f942a 31d7311125ae5839e4d06a71ce49676ef2ec368ec2db2debd4e8c2b2599e0ebe bea6195e1e3477b4a974e2634d38e31821bad7e8c841d2240075b24fbf116290 5e4fb5b6fd59d59c42777887860d365ef7620049e3e7080a08fd2bcda0e458c4 e30d30deba66259caac598d7ecae4fd2a89bcf3ac059cba85385f1435a8dad67 b8d5aebb7ad79c10c45753b74786c131eb7d163bd6b6f97f06b83cde38e483da 833cd070822f2e71170288cbfe05b4298fbdf05ab4bc0c89e05e83583f1389ac c0077279e29f0030aa6116d716095a0c5b4ad052a8691774fb518a86a425f57a 93f738965ed35f8383eb75717c966ae42fc6200b496b8c1041a465b1631c2511 288bc9f33ae0056d7a24478e4442cd7434941d4a26b3b74ae81d942be90e895b e8b6b3cbf34e1b631de8db1c521ce5eb4bb463fbd5bf2eb6cdf9e86723f1add4 55874a0a9a325e02de53af8085c016512aa92944ca4218266dd90b82cd495382 433a9534a81ecf39e7de9081edde552cb31b1295e49292c564d0fdb5bd43a83d 5414160d336127b4ed53e516abc4a6613bc3a86ec3f693029512ff297674836f 577760ab732a65df1e50f5ea8d4ed983815b6ca878cecf38f4d852bde98658ee 50ec9b9c8f590d82b911ddb48f4304ef565b50d1ebf249be4be59000ed1c6968 72d2d72795544dd439d8451451df23df26ec4de5166afe1811db660e6a46ff87 b5a8b68a977f82a0c7a79ca59a78e77ce2e13b1254d6596b033facedb72621fc 8304b8dbb1cdc3eb6994292d60652db5e45bc5194cac6accd5e36652644f2c42 a7daee02cc0bc7d6a129efe5f8427c106416853fc94018b48b8c2cc797bd8e2a eac3d55747ea78020d76fc7d5305512adcf1d37f20248cb222d8630c7421ec1e 510a1adfc6d5d7379b20182595ca448573e4bfe039654cd15b0dc42d1b3b437c c9bfe52a1fde344649c2c7552ae08896a59dbc5f8602594dea586f5b05656a71 a1a773ba400051b7702f2e86dee1a5b4ad092e54ad2614e7e973475af6b177fa 12f7b0ee35a3647c7d57acce2a370ea34494c95139df253fcc6706bea6e1e454 de53bdce128120929795fbe062a7afd9423920416ab111d8c21a954f56115cf3 c8be22458a69670d9e54dbb12cf2326d0a30b64ce7853ce0cc2c4ae5f0c3c7a7 d20f63709cf8c28f0e9f3bc789f9857e6eaaa03afdb2c494ddb384e5b00e0cda c99773fe391a729e7bdbba232ddfefb5ad858e69e58b7706435179b8fc15d6fe 580c7bb8ceaa0e8a532443d324bb1d53d4f82d74a81fe172f92ce48460f02311 bb7ae244d0a594101fc09c90e9ea929da404b851de56aa420ce15840316f89f3 076b40b69fdaf435ccadb8e48fa7beb27f63a36943c9b7f479dfdc4034443e59 125baab766a0a43212be68461ca75427868f3eaaae708b3925eac709bf191d10 3436103d03447671eb0e30ceae7748d7f400b469225f59e78e0f989f81488222 f16fb0a01d384d0e01f5223abe4cd374b4057e055a091f702ed8c757a5a79720 f5db6437fdc8310bf02b860e0598b199f27c27338a49b6786a3ff929f3ebbe76 062dc8045f98914dfa93f199d13bbc193a5ac74c010ae04e748afee989e19a53 e24c73de832cdc2289cbe77a4d182c73db59702e41cd5421b672b47ae3b668c5 017312efa0ad0f54aab333f9f8f5e1138265c58dffc946d82a2f95ac338c57c5 fb747a487e09fb313086b01212b1d8272f2db5ba1c21ccbcd5eb15f2d19e751f 42fd8874632a828f15a12073da2da2604832bfa5bad616549eb529265646e222 c542dabef73f40b3fe40b4aec35ff88968777330f7c085284bc81504491cf9af 0edc7e16d3c08c4e27bd588dc1da54bdd2abc6b171740c965eb5eb3266b55a08 a0f24b1c20e98d383366df91bb96a76e221da684119a30c04112aa4ef895806f e153c14ce59d69281305fe34935338af492a48cf227265b56248931d4b9561d5 eabc229bfdd875dbe3124428b294fca3a5911b490066ed7a77acd1757852c11d 1e66cb8a9cb8c3b7d1dd8fb32f51fdba843d57c4f8b26012495d5aaadf584c78 20d38a17f46b02ece4335b2230e751e71fcd5beedb0c91ea36005c7bf946858e a4c223e484b8010475cfe5de1dd7658523f65da94d08ff45bdb2a4de620aae48 a653c3e5a4bd9660598e3e1e4d32ea30bd7955ff27feca0b386d18ef31e4399d e19768cafbc3c36287649bfca343d1b206190fe898bf66ee1a9c99eb6107af18 7add5a7d8cee239bcd33256190f777c3f3db3898377123c9b5d641d7ac9a1b7a 31101a2cdcfb8ea93fc5855127df9ade0fa96ecce98100994f4f886324b9a8b7 a28ab7084c221144c3092fc8975c89f947679090b0e7b51b19459a1b2c1edc91 2fb8b1b04e08652f8f9f549f53e9191460d3432bac640548c805ee1465f543c8 f178e3400294d45ee116d0ae5229ca46b7bb0c7adaf660965dded6e1740bd943 83c2b5782bb8db5e99a3904a6cef84f86968636b9746f597ff73627c9d01350b b98d32b744867a7bbcd9eab042ea58c158c4df7446ff24f34f0083bdd624d0c6 8e644297d6d36f253f442913f62d062bf65567d7f8bedb58eff2457ff28a0a38 d1ffbf73dd93c51ed0f1eed49facd4b2d2b0919d8c3e88d16595c448e7fa09bd b8699653d53454e8ff02884ba6ea58be6fb8537fd8b48da49c839504cf432f41 ccd8399d99e5064b3808392fb1c96498f6da56cc422ae1b0721f8ceee8d84831 16da62d7fad3c3808327be17d537d4029b2451c5c792f83602e07c82f6ee70db 1049baf53346c630e24a63c612ece9a793bf01129e733f2d8bd2a0d11917fa68 6a02b74f6bf04da61922a84e3e821e7b1100435e732064485f63c04d22b42ad1 548a08d2f1a0c16f364cc71d457dba6aecba511a0dd686a03d5b84e2ff1d12c9 39d3bc8e8749626dd484eaaa1c3deb462d9511bc3f76c58af358e5de3e218091 bc9c473a93983aa22c26f09d4f0f36594eb083a842d3128d7f02a61a13f58f3d 1884e06874111f5aa0569fc93dc9343a151bf1a32616b3558e93345960412cc8 d328d846bd105ce4a0abe7294d34821af7ad4c031dc1e061ca97c2ca2f507f81 d199736237c502a3d284d93a23e196dc570f8dc70e081fe1492df2f057c5f6ac 633173c5b8fae01d62d9c7b9cf72e0c220246d2c767be6b1d447cdaa37beaedf f1f1dad85cd1755801081d1aa5d45a6944cdea0934e8d892ef6412364e7a8862 1591bacd6dd127826eaaf163e5a1cb0ddc7ca512ea9b850408185e8a6a170586 acd577c7d1b2f90df7b3e61404dfbf5bf713450ce79c6927a84439184f6eacb0 74185913f883b91ae9b90789279be56c1a6f093432d9cf3062b74a35a9db49de d168e1350bc791ab9970b61ff960a5122567f4f1b99e50a1120f8f3aa8ce4518 65324c43715fcc55faed3a41f477b45e3f6388bb40608f8659454496836cb82f 8d5b299651a3ebcc8403c08ac92a1eaf7233ff9bdb8963737a70b54281791be9 79312671a682b8a283ea91c4f626fb40ed025ca70ea9380448b0e341b4452efe 287e4f310a583545253fe67560e8286cfa1c7ec6664907379d3a46f8967949fa a03591be76df37fb1e9d4c61a3aa3e03f2c05e25af8fa6610083aa093fa3940b 77688270b7efb7bc78787cb6a47c85f2c211f2cbc16612ad99cc2445904a06c5 2aa452c8c3b8df46627239a48d30bd99f6637409acaddeb7b85108b69624102d f8b60dc6d0a516190101d3d0a3ebf748a5160b5c74b5b0557b86c69213390dc6 558432a5643fcf51c9abb4c8f91d5ea1c21db461308fd51b56094a8362c20599 e09980325f327817b3b90258ed15a29123cfc4b4bb36a6782d89f13ec0be31ea 5e7911fa271c400ebebb376d91282b917e62ffd39d37e2797741bc53a2cf362d 8d9db908ab6634c772ee5ddfb82ee69ab9558928e95fcbfd4574e423e9d19b8c cf6aa2806d92db4205bdadda13d575aebb00b9e401c551a9580e42dc09305fd9 9f01fb3d44f68179d65caafa35d446929463b910b818045abada4c91a6d9e415 5e9febdcfbe5bbd4831bd248e3416cdb93d826ce6881005db9bf05825064dc76 4209aa5d757bf64b58dd13e198e614bd836ff2346c6e793c69b71454c8f58c2b 307f8422c053d220c28a6a4051cf1e98b56cd3c8207a293fc1362d159e1a6e03 4cea74cfba2c1f064dd7579533b741eb3d967307b72b31fe42f34b7197a84edc 801b4f2ca7d450079d4526e02fc5761fda8d323a5fa9238fd1fdecc9f0848eff 96b797a99272aa529fcc97911f6752e5c07ce71ef4332fc22f4196e3c54dc4d5 a5b2a56b2c78e828f3a4ecd1010a6fb92eb84de7b6a7bda40bcc4e9fe44d9928 b112ea10049e50039963502936be5ffed93bbe6b6864680070945dc5cd065dcd 903abab0df9940781dc7f49161c7e821ac3e9b23ef61478549a45b89a5ea2d19 f8378af3b05a25ee59160c3e46b9ec6a0e653a39427ca09a8c841393340d97d6 44a20b1f14b161d6445bb3c1db7f8cf1ff75fa34fd29f9d6bcdec02899c05791 f3e056f6f36d1219bb1fdd569daaf4d206a9088da425831be292db6212f25749 3501da10127b2d1bfdd68bb0ddafdaa29cc37549bc4a75d04559c0eb1d565f03 87ba5d361f758cefa861c854fb072761f60e2ab8521ffc8e00d2017bb36b6586 c26b3e495e3c42455110ecefecf0deb34f3ecacf7ba59e5efef0cb6317a9b153 7d2b8bb3d2ac24c04cc6ba09709bd9b2f5dfdf2b33d1e8508dd9625e4b43bc01 48a3f30e1d8e0848e0d4f6fdd416249b4c960e685eceb5d843cce9ada75c96ec a6a7c7799402e42050644006586a93e105c79f5b89e735f7c08034c510496943 24fde4d19b007d5da7cf1cccbb03cc48e591e1614112cb68b31db4c7828e42e0 64d024a5dac7e09165e85c3f12efa5d7051fd89f5a55988fee5cc117e268a724 864502aa727daeba59054b1e1034d8f448b98013450b50145fc0531d20fa87ce 8b23d11a23523ce29f89d85c0fabf4c4de498d6a0053507e05212db353eb1f61 b5a8843c26553baf0e06fd01339533009f7be37136a6d90edc20e99db4e59254 6fa7f351db1f34c1ec5781b83d4ef56f846919a567ae099b986e5f883cea0c6d 58df283b207073dad1038234a52659d45a8660a157feebb1443fbd85840398a5 e23cc2ce7b714e25525caa2ed1be520004cdc67bff45487ede1163fcfd7a7667 dfc4f9b45d3b50bdf429a592513ba8bcffdfb4bb01b053f6fc81282f017d15aa 6c9bcf1875bf87c828e6943f771b03345a170dc286da296090f7cc9f0645b0a5 134357857d65e774b3fa17bbdb818da2b862def6c09adac1a5721b7a84c1c954 f4049d70dfc0a9dbcadd11f7c3bb74fa9b59e185c27d14a43744e00bc37604cc 0287076c3efb850d2f9ea8e93fdba7c0b2ba42dac5e57f874644c20c4c41e0d9 4636d8c108bbb3af59706ed0fc79f4f5a687a0e14ded83b31ecd66f46e6020fa 0c193d62a5ba3ec2d8df74f97ac65674d91a1f4f3a88a31b261c47ff7f2890ff 348f69dd3129305c640a288f4718b2e3604e9706c4ab5e49826b3d5528f0f813 28351e002541794e87614da7bbf8949727780dfb3c2e53cc203f1b0bb017fbc4 1857ad6947120575d1fb981f7d97b2c98181263da695520f2f5f031fc9ed4aa2 103c2c6704c2a24513f50f76f3ae2b431a3242d312aa8567841714d8452df29f 1bcc78410a39b0866d26ae522f0b9dedf16b2f59a368e3d5d7c2ea4808be92d7 f4308068da204e346d8c13f781802074d9050d30833e03935a4596313a23ddf4 c6af7518043069b2633d0bac0f8fc2cc075494fbfa5b17f627c8d0be8e807eab 5ebf5b3775e0dc8f26eda3b51a32f15b13584711302713d7773990b0e5998308 93001234a0ae425fe3aafac5514404e1c4a74dff3c788c050b149047f7ee4765 ba52b66b7da54039269a8b104f424c4358ea016a7879dbcc9bceb77ad9b5ec77 44b67ca0b5a1745b669a81d3037da4e976733c6654495e90a42f54545c2fd2d8 f5f19bd22538129182b77ef81304a66edc51f24995c6da4bca7c97e34f26ad6c fa1fa746b0fdf9d400a7ae8555ffe0199a3979ecb8ea93aed0af3df549653d94 3838d00c11054cc17973cb89ae117051ddf88e7965c7cdd37b7bd7394877ad3e c7588cd92387ad557612abd0f9a3b49c36f0f57fa50eae51a4699a8bcc87838d 123b09fb0468b0aae50e920e5f0d1d4e552c44cee54a760c3707c51b943dcb04 78036cfa4fc806efe408a898be84d163df9c499c657734a533bee760318bd4e4 a0cd8b733b59902c87438f5406b4cf55ed63b1a6e91645dff95d74cc7f7884ea 2b6dbec0400256647987dd3b40759d21ebe59665e1e72a6521b8f59c083b5ec9 6d6b57e6f7ec9abaf3bb7639d599ea84f9bfe766050ac7c5cb036290f843e869 7b8ec66fcb190d05c83f53e25e4fd359ad5266ec0fb7f8c3e601fc7ea7719ae9 74fe15f38a46407417cb70aebcacde987ed57c5ee64f8d2f2ec86293e5ee5c30 de1556fa05aae7efaf7e8014d5f65245dd35c06251c59929f2b6cc6946e35dbd db88bb7f1f91c46bbf5f90ad62934997463c60117f1eeb6511b3c12769018b05 74f4277efc10e3689ed66105c239605c841564761774e4135acf6efe2eb600af bc8823799589a7f0ddcd3f0b4ac4acc8797c3648d651f81ffdb25fc7ddf2ddd5 5daf0ab26e3dcf1c22f83dc49f30b508b0009d001756b2398138a0805097771c 4a336dcd7394c0390817008418ee4f0b69498c90332b3fe28a35b37790fec3a9 89b5714866fd918d65f8bbbb576535083ff81e6b21ed39f32ed81cda36cdb0b5 ef4dbd6c5265c3b07a84b680a19e6f79eeb62758d8c9710e442b3f452b654f88 cf017a2361b9b8381c695a9b3ef5fc3144bbe481fcb60601a9e5cb5358dc592f 74c735628df93161fb2bc9f7c40732434729c0f4fe1c460e9565a7bf7b30385f 916bf45ef8812af8add373e556ae5cebc9e6ce6d4b85e43b752b12956dd9dcfc a26ff606fd99e4a6b2064a53ab9f0fb9fb12f3ef86c6318343b58a6cbffeffdd ce7fcbb4bb92a99fe45e219816883b00436ebe3bdf82702f0fd082d0465e2c71 313295b12923d218e09873c54d7d1578e5fc057517d21a2b860b9200b550137f 7fbfbc6691d6a92c718c84d838d0da70452a6c44b930fd98703715c42719b95f ef9bc6936a4f7e8450cc6e3c0b7d9f0dc925c04c4d7445e56ad96b1e82002c50 ffce26886d00484181dcde69130f1eefda954d3b9d4d0a811ecafd9689918b72 dbf712e5f12f4bfb8f34c933704064f680e21d9574c1aadc0ced85f38c5d328c 09e29cddd593db16dc15c9e2eb410379ef5e9bd188ed88cadb4d0ac8c54cd5e5 cf8dd15884fcb64cadf15fadf6969a0545f4dc240ed1a5152f012febee6708de 19846371d0d9336f01a62a9d5fe27dd066e8d3739a91bbfb5d9944301cbeb0ec 52825ffa86d3e04c6cd7a71bb72125bc5b0692d9046ead4b94e1e2c8983f6000 a3a7ea737910d8b7c2b712411bdb47256920d50b239ad9ecbf932b2c4a90b0a2 6216eeb91e2aa3f157b8e5716b1b8fcaf47343660b98ba0b87cab741645b8d1f 3a1948a981dc9645dc336b2cb7cccf2a6dd904113e9c385f0cab27ac670b860e 861b9ce247f4263a80d702295c3125a814220fb9bf4402e99b7da87fe56ec39d 7d446a6e6c262713e50a38ca9d4591589dc71841657a2a5e8f8ec0af69e18b23 c61b1e800318c2cca0daaa72f28bb2aa1dcfe8d3059f1ab1e8ea353476c32834 737975fb96975cc4791f9ef7af2ceb09673b6c2b4e098e591e1b302741e6b3aa d5b739a10f38c0a39d2fab1c11078c024d7b12d59a33ecc8911fde7150e07523 e4c86fd1a82c44f51b03149b239f366fb172530185ddd900e595d3a33a513d3c aeda52771fedef68bf691f61e66b56badcbc90984c6c6fb2172da4f707723dd6 f777a23d39563d2fba382d477fdff9c8e2729dc2d37eb90d93722ac6b4465f01 5ca66be47cc45075feffd2af6f1e88422e196d178f984814c0e4d715e9ca9788 31674c54e7fea36fe2b7bc48088658fc9a851f51824648d008941e1ab6608717 d9b9df27e73a3f69e391b0eeed1ff3d5737305c67d56a9301dbc4778250d9df1 3fc8a761e0a2037d12e91325501424cc2b8fbda22505ebe1fb093a365b9adf8e 9ca7017e4a01e5c901df73b16b6d80f348bd66e96528cb9326c3ea7e3046ca1f 422570ca2fc93881aafec9af76f842582805f7a5c90fa0f12500f77a95403e83 8d6763c4a9cc50fb3bba6b4b1a5086f1de5e514c97eb8704f621a0a2d67482e3 ba42ac331a10de70d2d1c9d4a3fe9da64cae66b8e591351adcf6fa97c27d40b4 6eea4697bee0d89bd640601091c0d0034802ecbf6f62b11f45cfe47df5101cfe f2d71b2da5b6ae7dd00551740be7725422be23347969ce7b7c61e5bc0f856c96 a8e2f35a267d9ea7e17d104c88fc3bc7cfc9c4bd2c6a803ab71fc0c42132852c 61de8400c712344708fbb12c7e5382e3794dc1e07646fe48d8945fa80ff5f88c efd1919936fdeeae5b8b87ad1d815abb7a8703e3a87b91ad760f6aff983932ee f65896029f70dda9a1f0186ebed5a96efe5a8100e8b1af5177cebcc86cd18204 40444296a7eb67f4da9e2b338b8923fdc21cc593f042232338095eec25c7e0e0 38afb9aef17e853526f948947ff035d2518348a5a65a71af680f1222de7581f0 f2eb39f6a05b8d46b2c03d14673d5d01a39283b88d2910efad5c21b07615925f d6ff05007d126217613d1b8706616851fe19dfad05d322d1299d4893a7d005f5 f09cc2882c3c564205b13b1a92caae37337029e6a500992b33d1bb318f1c2b7e ca4940e38846ba128afda097fc6bc7bbbf164c4f2c1bb596b6fea5c86a4fa01f aed42f0e89b3506c5a6205a5ac910018f91356c8e641bf7bc37fdcb8bf4fd1bb 94ccb1f9d0adccd09fce38134d7e14177ecd8eba2ee241daa7f5fe5b22e450fd 922fb514ad314f5f6b08e2eee0eef948dc6a9c672f14eb1dc5419dfc1df62839 b4f16a19d48c3ff60af928d6419a0cb66c697f23073f78abe7f8e7ffb9ae1f10 bf5f627456a38eb3e42eab644774bbb44d094b8541035536d3e4d854aae047fc a962817628ccf3015d52307f320beb7f428423ccfb80cfa12c74b302b113d096 85062070837cdd2ab395d3bd2110aa00c1e6913f039aa16e17cf76e2046ff996 6788b8507698a1dd49765746c05605018cd5eb3ade32c241c6f36ed688df4d01 b097f0f53a1e3034bd03bfac22f4113e41ca70005958843761a1eabf4d3d522b 66675130dc5d88f647449538a6cf2e52ee18eb904e4e0596b2cb0bca01c2a871 45939a4615ec2e1365d18b3739f5c58532c541509a4621cb786ca8bc810c3300 237033132e97c5fb2825e4243c30aacda665b1214fc91380404252b10ba1b6fd a87c4426858c73911a52fbed288fe91dec8a1da90e08cc3992a6ac08a4f5c54e 869f78a665f76e3afce198d52c48c870ae035d5a7605819614d86a05f645b7f4 6f6060f8e1178047116106ee04a65a947cedc5e8400f992fdab5b01c44edf952 8c48405a081a2aecc5dd8f67eed2b0c698d1cbd476bafad270fed439ecca8e89 fe735cc57376b00088f3cfeee4f8836b7585e97442f8b01eaf98193aa67f8c6a 377d38332edb82b2bfdf9c010b58ad0ef21bdbcbd733961f07904d7c4d4e81e5 550df3e14e6c90a82b31f99f3859978c262c520b4eac24da3da15bbd1b24bfce 306f928cd515da905a1e726977ae96d5422ffe14ac0b957e2bca41fd9450f080 92d0c714687a87abaf01c2330059059262cdc36f804432205b051c03e103de3e 4bd723b96c11579155cdd6a2f96c01dbc8eb32b6b09a1a816285046f1c17bca1 4e3e1943be10299490b7823ce7a9fc36a7c2fe2eae26fb9513de063f00a8fd93 e481acc2b631c8468bd217443c753e176adb33ff87a35bf0e6706cc778f7c6b3 b3659382b80c9f0be89e45a7fc00fa1a92f131c7b16428965404161bd0d94b88 cba177bb8974fdcca8b7d475ea2a9fd87e644f3e2874900ea1570c5a6cd83630 4853 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR10 %!PS-AdobeFont-1.1: CMR10 1.00B %%CreationDate: 1992 Feb 19 19:54:52 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved. 11 dict begin /FontInfo 7 dict dup begin /version (1.00B) readonly def /Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def /FullName (CMR10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR10 def /PaintType 0 def /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 11 /ff put dup 12 /fi put dup 13 /fl put dup 14 /ffi put dup 34 /quotedblright put dup 37 /percent put dup 38 /ampersand put dup 39 /quoteright put dup 40 /parenleft put dup 41 /parenright put dup 42 /asterisk put dup 43 /plus put dup 44 /comma put dup 45 /hyphen put dup 46 /period put dup 47 /slash put dup 48 /zero put dup 49 /one put dup 50 /two put dup 51 /three put dup 52 /four put dup 53 /five put dup 54 /six put dup 55 /seven put dup 56 /eight put dup 57 /nine put dup 58 /colon put dup 59 /semicolon put dup 61 /equal put dup 64 /at put dup 65 /A put dup 66 /B put dup 67 /C put dup 68 /D put dup 69 /E put dup 70 /F put dup 71 /G put dup 72 /H put dup 73 /I put dup 74 /J put dup 75 /K put dup 76 /L put dup 77 /M put dup 78 /N put dup 79 /O put dup 80 /P put dup 81 /Q put dup 82 /R put dup 83 /S put dup 84 /T put dup 85 /U put dup 86 /V put dup 87 /W put dup 88 /X put dup 89 /Y put dup 90 /Z put dup 91 /bracketleft put dup 92 /quotedblleft put dup 93 /bracketright put dup 97 /a put dup 98 /b put dup 99 /c put dup 100 /d put dup 101 /e put dup 102 /f put dup 103 /g put dup 104 /h put dup 105 /i put dup 106 /j put dup 107 /k put dup 108 /l put dup 109 /m put dup 110 /n put dup 111 /o put dup 112 /p put dup 113 /q put dup 114 /r put dup 115 /s put dup 116 /t put dup 117 /u put dup 118 /v put dup 119 /w put dup 120 /x put dup 121 /y put dup 122 /z put dup 123 /endash put dup 124 /emdash put readonly def /FontBBox{-251 -250 1009 969}readonly def /UniqueXX 5000793 def currentdict end currentfile eexec 8053514d28ec28da1630165fab262882d3fca78881823c5537fe6c3dda8ee5b8 97e17cb027f5c73fdbb56b0a7c25fc3512b55fe8f3acfbffcc7f4a382d8299cc 8fd37d3cea49dabdca92847af0560b404ef71134b0f3d99934fc9d0b4e602011 b9cfb856c23f958f3c5a2fbe0ef8587d1f5774879c324e51fcb22888b74f2415 50d7401eb990d4f3a7af635198422283cac1b6cd446ddbcbd915db9bff88844e 784c6bf7389803d9450b0c21756a017306457c7e62c1d269f306bd3402e266de fc3b5e7d8a8d2f5bf0fe6ddd40d07391df4fad4a6018dce29a2b8f692b29f202 3a7c0e66de8ed85c14f1f8492167357f51a7e84cc5d92e0fee4d81cf7fbc8de5 2d2e7bb57142033993f9c08c315abade8dbc4a732e84e142d3bee51557910e12 cd8aa37c459a5e6b7f5269f59078aba3be4641a11ac48d0b625c8325b38ec08e 4c9e5e7fed976a5650d99d82114f449b9ca14c4ec957702295a39a93ef93f618 99b8ea06b092c3c1e503e6e436e0a9fa22576c8930ab3dc8c20f5d82b69cddf8 ff4dacfa9c54bed5a3aa3ea5b129fe96be632843b9b6bc91b615581a985db56b 1e01ca60ee69ca92cf5c0882ece62edad3e106d835348822400f0b66af658f2a e56ed08f8b0010571807009b73ab12a8cf14ca6c71f03c2a48c500f9d62266af 154a6375ff600d9bac3f05ce34142d6867a79581c533176bb2f3117336671e2e 44638a97167e2ea9644e31ea16c2ad2990ea33c54001e0c8156e6de8ab6a4d40 a7137ba275f39589fea2e2db8256adc103d6f9cc038037a47e8fd469c5f98a5e 3c15bd4ace40d340018b1cff7d1ed8abb0ac57b5b5a2c20a51957b96c453edb7 dae5affd91a46d938fe0a13363001d844ded4323f1ee6d30012aea19b024a552 315505535c85dc26bad31e09c50e6512802976d298c4e90d0044c362e6bf3ab3 62a454ee93de25ce54411090c29e9d75c80ce26a84404bd9de3aee0e3f921ac5 87f907572b8354a5c3165eea7e8b2ba4e333802132f760b41a900c698eb3d273 8bea0aaf7aae96a558f08b61aec7c7d65b2889bb7b99800cffee5ba19ac90fce 11437be1ddfcf0bca5670b543b9644a71c8726d0c1005abdb96f6e0cf7caaa31 95017ca81519151c2c0b04f81e717c0691b63a76e9b25329ce2625b711cb7bf9 9d23ec2bb5ec8aefb8c1a3b422ad617b3da4d49685fd44cc21a1fe5e1541163a b3e1594601d63c7e98801d7746474377ce93f81404f3570afbd5dbfe77578605 917ab96963987e6efc2d3f99fa56ecae6422579852567f90cc90e4ef6d6f71d1 858270205477e221018a375ca83c572b3f972c5181d18643cecb04909d84cf76 7174b3c0c8ec69bf1e9fdfbc0fc7ed97ec67d878ea4ddac8caa522fdc6932df7 21b81af837a20746149853bc21c8aa153268bc9f571cc720ce3022c671ed4b4b 31098b69196bd97dc2fcf16183a08cef4906fab3a91557a70c45422bb24fcd3d ad6839c1dcd08420e1ffdd3408e83a3d08ab8b427be7c6bcf9fcde93d88fce21 8c2b2ee017a2e4f46b82a1c856a5a0e19403b190e296dc141f4551af02bf658a ae6bbac0c7bdd39b61ad2f1013d1c476aeb59e868ba40f2ce6ff05059f8b851d a0636dd3562200ed900c7359edcba3d4279c0d1ede7866bed987edece0e8bd8f 84bfce5cd42ec03795e489962ecf5b1ce78c181e4d6c3087d5164caeca11175f df4747dcd3cc34d701b543adccf9a58a579575e956be8407f88a1e0489f5a251 52fce947fcaf2e57cc60644efa8870776ea70890a6dc46095f63dd71d32ce604 53783f48c31ba61f9eadeb313a5bada892c4aea6846d0d888c14fd6e83d9c06c 3450cfa517c37ef4f388773a92b419b49082c2d45a4fd6ef7f5980c26d0a38d6 cd497b7676146f01c713a89b28115e32f75418e66e8b522c281412fd8d468035 f692439e62f271418f83adadbf729a02744224b7821f31db537d8f7be14e5db8 fd5fb976746db35aa58577f64ab06f6388cf44a565679de2124c2c8f4a10611e e4b59170619fc35dcf70531ded912089104ad418f50894333084fd79c2a7ac28 a6ff2dca78abce8402bd9856935792091aaf7a7cd8a2d1dc761985576ca7fee8 ec2075a71eb4e85b3064b8d96647b984fc189b592a5c325dd5c7781980a9533a d84dfcf243216b13a62a18992d5484a73116cc18e115b087babda64022b120a6 cc777cd3b0112e780a9517e7ae8ca96b060fe1a7ca44f5f8648e2741377b43f5 dd01647b95376888e13f911e2c019203269e41fe043ad9e55aebdafd29d6a2b1 0b66e63032dc3dccfbe431431c3c81b051c4477edd3885aab1e0e6f2d7c5e660 c1912946ab3df0b6a3cb8b5519f33d674b1f964d3e11d2782886ee1b6ac107f3 c7dfe5a0caa052cb192d2e20a87fb03e4772410b1844c3ef0f9d81eb75faa5f1 6d106caeccb3a51f6912db200e5aaf04bd5c04755bb51e9591b5b2beb2205d04 15d034de088e02941b59c58b51b35dee75a92548e29d6dddaf1be14855eb222f 3016f20e7eaaae6a2bbbbde41bcc77126df2d801717b3e0cc6a59ccdd7c566a7 620b173177513b83574b909027d0c3000eae9f494b50d4cadf235862ae832683 3369b8ad85be1bb365f99ecbc2ce27e2984cea1d67a8dd2624551031489745ba 1fc040af05501634877e4fb07ebcfd9e907e1491cfbb6bc1c4099720c692cd6b 6f3957462ac98eaf239ffd698486e899bdc2fae6bee58d9ba2f545c53c61fd2a 9d31025869c9ef09fc24ab6b22f93b1edfec70936e6a2c2bfa56636b78823b35 5784b62b60a04078f457afe3ed8033fd1fafdf9651d4c7def5bf7c69428a7093 320525b046afd6dd47b79fab98bd0395e62dd64bdf57d09b3c6cbb40c820cec6 4d6f81fd6770be722369aeec7110f9a8dd2485521f737be4888612e2dad2b30d a1cd25bf9115e5c2dfc32782200b9873f6176ee6abc066ada4bf96f0b7e19e39 629686dfcdedbb3ddd41fdb6b88fabd0f4845346652812bff62be49099ee9350 1fe6243d45951ab62a48fb07a5ccc372b2231d05bd7d07d998954a3ee3498614 3698a5fc94f92168811860c529974831aaa6466cc73e69025aa522454cb788a8 dcefe75071f6886c595593ed37ecea5c3f395cb55d32c04159828f58d003427c 382778987b35d8a4d2613c2fd1751ce461f181f60b3154efdf2ddfc356b3897d d8d62075e2f2bc150c02b54ff74019c765452e97f48b405cc4a4b9511ebd7c2a 48baf517ff2c7f90033719f5cb055fba56761276f1f2eb4b545a8769a3468e84 1e8cba18c61d6f1c8a5cc9d216f7d02e6046c27d7ed81e92bcfbb138c1beff56 a526d345171de7fad9405ed93eb1b8c577d32ac5e72608b0cbd6f120d1c20d99 f55b9bcdfa5ba53de289a1de710ecfda0065a30acf8ab948e4c80ba555d4128b 7d5c18fb16d1fc43b35d84a6e3f815cdb73f2f450323eb8f097bdbc52aa06e0c b056035d7c3fdfb0622ce4fce3ff00e95ae052e73c9494c4d79c6cd40040dcb5 c284193045b10444ced5e0418e16531f1cc7a0bbb7fb599978330f15066bb32d 88dc6b2be152a2deea9ea1153fe36e2f083801d906fe5fdaf1d1a2b52eabae50 23f8ec03b0d02f898428516344edf2e501f7c83ca15518b87463c5f0849eaee9 208234aa29dd93e8f5625a5efcf843f8fb7d517c18c04a3eeb5c168fa56afd38 ec41dfbdfe0707c3e152abeac1b51afa8527fe914d40a152cef2c141c92b97eb ed18ef9086841c4ef1580db5faa8700f798033070d7771ded1a4048d30d30565 c16158ed9dad7270636e331b03ba73870e99eea633d4457749c13c400c8c3a34 6fa87225ea00a3ced9b082086c86dd24f3871ea808b08c0464044580f14d557a 54983c94e1db56ca3d82b3e71e098a1e3d13a6474af937b0e9e718dbe5a127ba b45d794cecccf12ebb2f0401640abb7556d781d595e9af3e4f14688179dc221d dd13507c47221dd178045986191c7b9085ef3916294f1822751d9a0cc3094971 52319b895633e1f355a3a9e3753c24b0c3c0b662716052543d897d31198d24aa 31e8b735d791a890d84c210dadf61134a98e526a914e982b2fe8ce043d2fcd84 339613a17ad87f99910171ce4fbf16a18c9bc276d467768abe2a9036057c81af cd4fb9ca0b1c4e001b24a509f73b07aad8a093d0b1dc6cd755425f3079cea239 b7df68835a2fbdbfc0a8b8712f7826b19fcd77cddb979fc111c1c208b4fff809 08955d54a02267e5373c76dd70b9353783145a05c6e2be20df9930251fa99aba 31415a42a293837d00ce1cb939c681840aa1c09e036634e86b1629a087cfe497 b64e7c7b7f434210c121a93c94aa6c55fd175f1023964fe17c41fd797dc115e2 59b195f24703571d3461a77a3343fe2ee9bf1396ccd8c44ddd48d10a287e5fdf 7485bf9a82908ae20e679b5921f5d93364a84f68badc772697c4bd3bd160f8de 6b9710de2f775e03002fd550ed5d76ac436a08bea08dc970af451e2673d2b154 b71f2c29132dc9d67c21a053ef285089f0f7fdccd275835203d47a67cceaa0c1 dad4dde0374da8e206c75f6273ff199033491a4d4f9a9fa11fcc65591838ce21 0ede1e0628f3236141a5a0fd1d7db7a292a81475f0f55a29fa5547da6b163486 e181f8ec08df36d9d8da767867503ac99d9c4efca27a5b414448c0d22e59cc55 d82df8622e629881a5897021b9fda5c7e08992d291fd19fc7d386241094919cb 59d8489747842443658a629b4f52034344bb5c34b0d3be2eaa0f71155a813c5b d7b5b417502385ca7a12587ea98fe1c39e42850b3873f16a734e68c928208f31 e476748ad7567e57b1817b8bc676a59b09b553193d2341b5ed135f9b38ab360c b5ab5938af4a117b932db97177d2c2e46a1a4e937490317ff7846a57d9fba145 6e78809e4eae9146d90f253d71674227f1fc7248c858321d264cd6452714adb4 9ffa9eb19e94d31b02423c1f9dadff4bb408c7ac4476af21b6d158df92d9d760 1b090a41c036a493a8015459d88053e75887a72d0c695a4787876e4a07359c9a 82c9f5dc77f99c4b5cd06a6e23e084016caf7ebbf3655b5331dd41a7cb0fb6d4 4daf3ad81af539b8db198b2f76026e63b19b416bed3d4a04b60801c4c50fde86 770496b782ef759196df90bea230dd9e0ab62273a59eebfd61c1c550e3a04b58 04a263e13b2893f3c92bac0cd1e135ec1807df34b947e51539188e03f7e27edb d3336cf4a4221a62e8193f7aa50705a293f92fb54edce5b365706574bdc5a176 b306fe7b7bba7fbe2a301be873ed3c6276373bdd1cd6cc06d15d0544e633d10a 8e87f94cda26e22d3d1fc0dbd0d8bf1ca07325881d69eda1be9e9f06ae7a2ca5 3bef7b13bc9d265fa8120c56060a645e70da6d55cc2916898920467ab7adec1b 8ae8b4ff305fcb3a869f6808b85cbf7511267d3e87182dd72a5103ed68ca5265 516c837d6c6deb57ee350f4da4eb19c01af3c97449f0004e6bc05b77835d5221 28e470fe4caff291e5861bd11f6ba9e106ba88d7853040635edf2e5eb5c51190 685e46c8596fecdd25d3117f138f330b9c07fc15173e99104f0560b71d0b5578 846c4eb43f6b8ba3049dac8d1e182f4ecd990270e2ad0858813ff1d01c8850cb 2d45db4c4bda4e914e570fc4bcce22fff1b9605a72de35082bca2aa42a326840 2cc1bbde4c9cdaccf80f59ccd25820c429042515618d6a1892dc1b170e863633 d2f3a30e5585560b1793c73911beaf6492110072e2ce730007a2413779751ff6 7c35e931089110293cc5edd376a6ebf644bbbb8bf813eb011aabf555114502f1 0878ced8e09e31df69f6472a8ca18d26198f50d408f082857e470163879533e6 3fa5885f2db0e20afe4a7173989caae872763bd6be22a5c965ec9655535c1f83 db827f16e75140cdb2fa6df399c137a163747b7630a1a97598f4c90e74f21a47 a58b71c7ba5b1eee79e617488eed7550d4f8ff42d3c1a39650c843b503242950 4fbe9498539451f6b5fe729d8db4f4deecbf67624d2a3c47ac97d243af57da13 b830b6a9480e6b2bd525c277665a6197ceffd4b7a54a1a7b268011300b8ff057 fb7c13777551e7de0f4036bde00f4a4148ab2c656a2b36aa6de800a7a5b77e29 3494889d23a7129953dd2e88176f2390c685f4ef258cfe1e6cb847b8933679e1 96f9c54a60a5f852b1b931ad5d3e248ec08a7bba3f33c7671f1020077374a1ed c737729878819cb6688e1e8ac771a1da40b6a25fd259b9099b8252bf5e1c2e93 ef2a857aeb39b781acf8f6d20c165509000c155a9eeb6f5c2a9ef2b9455ada36 26fc303cd21871a8d5c2ea9132fd04f7311c2cd566cd713be9da6b2f512d0567 6622e332323c6551a6e1d45d9be59d79f8bf16f57c4df4a500a519b58634c493 160c6ec98d8e136ea39f72f8a9bddba3858da56afc935c69adcda5971b19a226 85e3adf611f154312d06123a9dc47c13436403adfb5754cf26f096a463d58538 14d0a93fdc030ca67a7a2058ec281d83320624e2b4e513da1958c93c67e65ce3 4377458c1ac6acd3efb6e50f85a894ad7be6e0e9dfeb159d91d79204010d2625 d5061283b3ffbcc1a7db7e6c28bcdc59f32acccf48a1459dd9fe149fe2c07d2b dd47b99269bfd36d155847ef9f4c17fd47b3ececc3593475a586028a3db045cb 66c6d473702f625b07e9c75cb2fe1c0846a936435d5bf0faff2ccdc0396529b6 20bf8d57fac21dc0cb4c27731a49f0901fd9d935b7cb1f8f527d71470961b740 08194307755f1dde90a85226548d7ec13e35925d4095a432b4e102e0b4f4aa3f 95ec67a81ad94db259ed7f77fe6aba4f2cc68212db3b12e78a5c041329d814da 9f673cee998c14c189ad233b3899d8b665d630ec7ce0092a7969c4a4ea204577 76bb0659bca27e947e47a0c39a017f5420358a1d29a2448ef3944b0081591d90 4a841b488a83f1797631d95102c898f4105960d3eac85c17a9807e15c5e14532 026a5870ca8701dbd4e5d92f15cbee7e5c2638967350383a7414bcdaf7f03efe 2fc311f8704c4aace50d35edea1199fffeace941a9be3932f259cac8e979380a d9066e8a2ec0d2b664136828f2b33c69af50e6716ce6547d38f88a8000f72d21 0b1874801feb32b76323bad8464bcfd54c491ff3cffa53a38dd65eb094ee4be1 9407655ed0654da0af3cd1a3ea89d8dee3755c025d9eb941617de22e095155c5 35de36aecd470d3ef0556a1ee2fcaad13b75e50e31790817c2afca077535a802 380ea81b69a472f835d8c915a15184f1aaf644889042a2c8bf6295776d4b156d 889ad32e94c90165ed7cb06d38d0c86d47f2d8ab87d802a961ecfc18bd10bdc8 738d5560d35e28b5d398b271d3446123d7965d6cc0557641c5973774c37c5a11 36fc8ee93e414224701fb969efde77585d33e59a3ceb2a0a8d9ac0a55f52ae50 a4e523a336500ae5e13513325f7638a5444b87096be73101b26f7261baa8da18 dd7cdf54b9e2e2611ee104377f8fb4c760bdfffb260ba57603ece2d624cf2473 9c273907d739f893e5b7ca172143b8a67f75c00dbaa741f7a120fccb4da8f362 3335dd9bfa0e988458653dd1b698a3d8f3bfcb9209fa1779f6c70ca7e34f9e8a 56fa35a5e5595abc97b02c470b11ce77b2630adc8ceeed9fc6cca1fcbdf7e1cb 2785ea6bb22cac7ad36fd4bf58ee3ceab5508b39db11ccd3c188f0e8fc54c7e0 2c47202eae27ff10d97d0567771c1178f4edf28e9b0ff3ee45404f3abaa92c3a cf92ea01d36a8d6a2e9153c72deb6600710854c03c3a538b55ef04df3a730552 3bea8d9d5c990f897e2f9968c0b9f3e581f8c21834cb4b3d54e53207dfb2a259 310204a7b0705f5bc84eddc521a9264fa7198fd99fa7c59b04a7bc38051d9a3c 5a0cab6504c4df4f6c04bbd71500477bce976f55403d290f851ad2b66aa8efbf 7b0b3edd32aaaa159ae489a0f806aab9885d322e8fac37266fba40d66ea26892 f4bded9e6304191e95f104c45737d5e0fe565ddba7599d5d91bf5bddf86414c7 99723f45c51e222053ea9f0ddff5dffab86418207d394a91b9a607b15f070504 c7173cea7bfa794c182265e65ffdea54e8d858cf0a1d71ce8eee60e8e2c1173e 48024344faddf8b13eeb8667b7df51330c954c0eed7e405aa9352f6e7bcb4a9c 13c104f5f4b80ae93e6b6d0649ea2c55497ca52eeaa36d4a7653f44ca621e55b 9d6dfed700e8b53cdf1a91467e56fe39751d599c586378cac9df9db2c417b418 981a6c476226f33509c70f69ae9d51f7f097076506a893c0094906fbf6afd092 9cb13d12d36f2ac0a88e3c9e0c17efc40ee1cfd773c1209c388a9d15406d31dd 253c45ddd64baef28a0b405aa9ebf69b8410c9505a8bd65ee76877a2f17f8625 c3a3bfa5dd427cc356b8cd5b03c8b6dcf9486fba849daf79fcfceba225f41ce2 2ec2af0726a2156d41525bb0aed5b97e300e3f267ea5e56feebd3ee2f1aaad60 8b9465a7253e7488bd6c9655c96fbab3c7fb39bf63bab9afef5c826bb3324420 30d076e3860600b22eab9967492c95cf1440f2d8bd84727017b2b0b12f2f0ed2 ba781f0012c0a21110683e5d44584e21884491ce49dcd3dd8ba272555ce9bfea bcb3747f297c337d13cb295f320964e84cc3e8890e9e0684bd3360a039d3ae88 10bdd65a1ae2769cde50ade72984517984d16a110a757cb4968905f71c308f3d c05012e1aa0ffee64b6e6a7c4df874d63bce45074b380f7397de95d5dd725ef7 e8c98043e840cc2b76845e93e299cb74b3c9d5b9700381bdd95483abf26fd4db 3319fdf9ddfa2f08b3547b24cbd8445e74ca309636ef84097544a18ff3480230 9094212012c2fa11779774b0ea726cd20c3673d33c5722fdf0d5b3d0ffd2e8f2 e6db8585a50f948165b821193844e5337a2f522969dd3d01e57fe65ff7dee5d3 bc82c8feba041c5c938666a0b977af540c433165e92bddf2156b6afc5421d151 cfd2506ca866e724deae97843761e0687dba4bf8d058757fd0b3dd84c05a1c5c fbe226d514c0b79cf4b99085f1bfc9f438527c873a9701a3ff9133cc2f45ba2c f5135f4ea1ddd50c19d6c92e6fc84056ce75fa4a5cea19c2ec4bd96ab050d58f a431ab50968e192db16b5c49f84c93de652bab26bf417a8b9a823893081593e2 bee141d6eb615c06a2e11b97baac575fdd5fc9ee3a819ea91e67779c9cfff654 d48f52ad7daae334a3907a7e9dd1b84613e06c57530fdc7ec0d505fea99d4132 9b6aa7149d5ba2e50a0bee7277fd7d4b3403a79bdb2c17648185aea23e32dd35 2cc111d455e565c15730e33003ada3a3a818c3bc7c5bea23db532788c212611d 5170f24f5d455328c58a00eb76ed485e110538647d0e3eb1e33c1d5340d18c7f ed9c0a36be6e50aacd698b6ff3409bc1684abfe97ff526ebff25a6cfe7a2d4de 13b378b20089d4c1fdfd21c48e5c374fa1e0a6f11fc5dcd634fa4beb2dc23e21 903edadcbd22f240499b1336ff6f1216d526a3b58014ae140fed993b142bf751 1069891d7c67e2890046ab308981be5ce754c9cc3eec77698361934d166bf4a0 c0193408ecdfb05fc50226a44d1709957d75acbf0081dc4e1cd533446b689930 b36f74de19390bf4d6915fda5609fad1e16a517dfb734b7048af90e392515e26 d436ee3770196bd707b7e39312ab2b7ea78eae8df639172ad065b82dd22abb4c 05ffe692a1d239b6d559898158540ce814277452c74d8fa8cc41b2195fb6f648 0c13337d153d1c9ad72f4396c609176a8b3e29d7e5c8cbecc27708d2d41464c5 9ce7dcc1eecb983df8d84feb24db2e732dfa062525642e97bf71d758d8f0bb5c 6058380c05d1d8a6f9a68e8b8070c67a76d4956563c0dd4b3349b8016ff68caa ace9be7b52b083c131c07640ed1abfe74ead18ed8157d392a781595148bd2318 ab4592a19dfeefb68ac49a7a2ff480d55d8217ef67185f5562a05921780f004b 16d8eaeaa59693c20f9973157f886906bcf4d2fdf9d84daf44c7034ac9883da6 9ce6dd5e14c665c1f13dd3a1ecfb4a62240b2766289e861171f12be15121b545 7b66a2200d32adf62e16252cf75d5ddd8463ce892ce6018ff6a9870bfb4e19fb b05f964dc1f6cfda2be690ea53b7fa9cdc88966b6bb6c1826d2cc849052214d8 ca21e5459c3bec75943b8c821a3317e4786431d401eabe0ca8fd2eeefa41003c 35e46e09791f7c300b05a17c89f97d48379b06bfb671dd8fad1711aa16ccd6ae b5593e80d816125084e0092de45397399c7c722f10bd939f9e9653513b80d69a f867fc42e3c40d4c524605445c65568f9d6c4d0ebe2a0a2603cc0bb33d213d93 08e67bd65753526e8dde6508fcf661810d83a5345e83ae836a927229d4c86f4d 4d5254be23c82f081d764e636e57ec8977058e83e66722c1e8eb846eaa6b86db e42fd1c1ff08885e8f6a7d994b8ab195d854590243ef97c3756dad190f950bd4 9f119dbce3de48ad0501f2b6f33d53da98a2b5e24f51f397aa265a6a5c5f6395 0df0625b5ad0975fa4142265309be5d13f5567f4c4d4b971f929bc7e55e891ff 67071832528f7ad8f1272b26b86a717ec6c8a62b6b9af607d2a04bb2049037c3 11920fbaac6593a97f96cf013f6cadfb3271f499bd35f27635c481d4cbf613ee 6db5a654f771c0729de5ce09f1015b68453a5a92e0cbe9eadb2b55167042e5ba 7802c38e90821fc67be6192acc0cd569e5d20c5b3faad2a3ce4cddf68d230b67 fdfc3d324fc99d37c9824048ffb42427c3dab6bb89fcebe5291cd2821d4f0c5a d18d98d1db87ae7ee36bc357fd87f8092bb6c46d834a3bf7b6d14dd4f8e84a32 bfa84a6e20e42dc8a32d84c7d101cb398f4d7515b8e1d193efc256b322356389 85c8dd39773ca8683a39127b5e79a77a7e01ef372f119b88b00b425b3775a55c 751c196fe9a62d25a8e7b8a8e334fdf1173bcda6f144966ac83566ee8c246524 bf8bfaf1a1d76d87f50c845aad8849a434cccee5fc813ac8c3258e042325bc91 7645c6a2cc293b3c857a310c7f74d8252fcecfbeb35d8234087df440df14913d 5bebeec9868b7930aab53663d43223ce61660737d92cacd5ff3d601889c062a9 528acf49c7eafd1c1b00fe99dce62459602f17933daf5e2c58f6cd4058a87ceb 526a7c7e33c5a265a437680e72a910e2bb45dfebbf0a3c3b450ca094837003a2 8d87266b5e592e0a92f4d0129c111b89d72ae2f5407ffb01d009f52721847d70 e31693c691aba2cb0534cab383c8bd9183ea2fc59b98c5e920f127136693391b 1a77b004a578e72ed0219476d935e708d243e57ff0ff46cd1d93afb199d7dc74 639f3df2a7607cd45f572e810d20455a6d8f8eff04230b4440b8732d90dcf68b 0deb3230269f6a5ec1fe65dcebb30ad9a7b358d0229649f6985d83ee679c75fc 9ecb5f6667c81cb700563342665750940cf0b57b2e328ed97e66cf01389b4451 48b6e271ed0eecfc3374bafa099141005cde11c14126111a68b843e524e867a3 916be8e5ad34fe78a9ebbafacdfdbf86220f3ac485ca89809316c7816662f368 24c090fab286ca99cd1f134afb4ccd423466ab46e339295614b3bfccefc48243 7543015f6ffc32c5a5b9c503036ac8cfa402df446f6e18392c4f314b1d9430eb daaa3fff76bbab1f9c7e7f7c93d530c9f86763a6444a5fa8d31b46bf5b721c7e b23c75d61a6bf9374c4e65684cb25e54e4e1ec010ce7fb958087bf814cbb7c08 230d968c055b0cb66b36f957cd3660a45554774f59413690b45081e60252a994 0e23441818648b1089e2a782a099c87ed8357f5bd9d7c419d0aa00fee7fdb642 314b3410cb2f040970687fc3e333ecd12039f2488051615df2725207f1339cbd ce56dbba1e7bbfac25425b205c814a803d86afc677fc93ae191de6312d917cdd 5f346bc9d38ce03c5fca2dd9ec216b2c8f0844522fdad5608d9d9dadab06d310 785136d6fc5786367f8c5175e40cbe5d2843abd9a69789b1aac0c3989b72f2c9 0a14015426106f18f51eb7aeabf11a3a83f007a84cef32efa13e8383580cf718 4422bdcce9530862369e58ee2aef7e1ac11d0673c78efc88d557a6b5877cae84 8e5a1f849142f67274181a37a6814e9c7047de27ac687896f0ba9d66d8f47bda 4310c256270c34c8b92e495a43315ecf18df1c204d427f4f007de4bde3b1f516 7565728710fdbcb10693b613ae614556de84fed95f919b2359eff7ee79c0f826 9d63adc2639fe8dd6b733bd771f806083841a2f5c58d17ecad7785900dbfedb2 eb21a0fbf46edafc455da8d67a96f20136f68ec56e3c00d6db84332c2e1af5de d5396f58c68a2051ca7c1e5a8db288cc166e816d14c11eb29714bb476f6bb9c4 54a617a06f61fd656a093aeea1314dde17b9e4aca6219c05a092858e553f19f9 ba587e7e3077ebb933b62f3d2b60e17bd342b490b175ca093542c30abafcdf3d 5116b32ae1238d3b0877ac447c610cf6c86a8508ededab19ef38faac8c5c304d 407931f4fcd6c485b0ba918268225a8965514b30df973977e68979322e27a51a c46f2fb434b819c395089ad5931e3d72c0f5e94915ad049bc82c1d2bccb5860e 696531b2b596315c2a04c507c5e4a818780ea3b53ca902d76db2f4f141c3ae05 3af2562c256ae62bd92496809d766c6addb9e4e769e11051d5f9325b20e42276 c9697d174de7fae9ee3717f8d832582ab0c36e75612958b0dd57532e053fac9f 87dc331a6e4a0f68144c42dd7277a8b97ca7d1873508ec56fb16527fa45e7ea5 94a3f3515a558f6b88526e0824c10d33696bc2d151410905463d91b2ca5a815a 3da40ed8c795e6292e2c2932318270fbf94f03502ab6aff49defa6061bdcf06c e5591a63af48423aea2a85dbec04ebb84df4b7a09412c025dd8086c77db0acc9 3897f67d87160b7e9d568853b47b59f1bddca065979da16632b76246ebbd1ca2 f032f05ae275a9f4bed819fa197c4138c5f22449134d41bc18adaa2ef193c432 5a9a64e757b6c85b06524b59a6b35e968d416490cc7a8258dd13a10fbe08e778 d74d048d62635a8d0c7b43a1957ff84e4ac53bd2e95bd0916809f04266f71e2c 34e631f09c3dc75a9ebc282df8bc7cd4160b43bc42328549fc8ff0dc2aa3988c 2446426530fda5dd61b35569f0db4737bb278c82c0afbf62d8d8f1dce0790265 39f211debaae237cdb255025fc66381ffc22b042b5c99b91ee42a96b19d8b0b4 34324b3352bcc885fa7ee89de54313fd36fedf51528a73761cfd1d8e28d95d00 b3fe046062f0744e6ed920173c2f84e7b54c1f92cd346b49012487f3948423f2 62c4c44e710d4b2326ba116cb08312aa1832adcda47a5584f8a14944920207d1 e3152603fdc5da62603b23e4b5f3acf812b3191c45f824ac1fc7538fcb5b93f2 15e79ecb30f004d2cf7f197baf208e0fbc37188c22f42c9850d5b9cf8df48844 5500afba0632207b700041dfdecf292184338a10350ea2e25b6e983b4d966a64 41c2d1ad7a8927e8195372b80c81854612d3b2b2259dc4efdb8bda7d4aaea553 5b3a6617e6a7602a04751d8bdd3cf5fcba32667117b07b08b619ba87c9973240 8bbd1f72133cf932a82e696d3fd5d8273950527b31793ec6d424f893616841c9 7987f5cb24559664d95bb8fa683d1fcda8d9a40989bce065aa3cbeecd18def9f a775adba0e8cb9b5bb3816577baaf1e85a959d6d2b9fb0593faff8d7fb18051d 203781db5c1ed5ab8cc11bbc8b9d249c6e4589e02a59e13c10bfcf5aa9eac26b 6e0da8167b40357d258ab2bae5cb5e7976c9fcce5e097799b2d73323b49bfbb8 068cb3305109f84947174e9dba41dfd7dbf20e46aeab28d9b33612961078d8c8 1694ad5df8b8f89176d73228871ed6cee164139fb4d87bcc27efbf12d7392f90 3fe53bbc1936a92c7448d7e4665163d8a34f0c4e086b50bdccc6b4eca53a3e78 fe9200923db2592ec1f2af78292751179460297bf678e9484cea0df432414b3b 43907f8a71b4118bedc4e8d5412192475ab90ebb9819ceb947653bf6e5f6cef3 855b16d12b9988fe957f1d66a2ee6e868ab5d74f6831eb54ab6e5d4277475651 f4f66d00c3d362ed8c0a36c411c65057a2a4295bbaf6631decfb6c4c02825bc3 86cbd5cd44e366de27cc8b06e515373634750e0c1efb786fc7cf57bdb1ef34f7 8fbf3e6b515bb5051ba6762c1fc5224b20fe282088e434f52b0811a52b8253d8 39feea5c47dbb0aa9e5b3fa94a161a272200622b9b4b885ba75514f3e603082d dce812349926ee578acd14851f394b1a961d1a5a19d54d10885b49bded4a7681 1377e398024f5eee89566dcf0b4908b067a787f9e66a0823c6bfa04eb156b51b 249f4843642bd49092a7508becedf1cf04dbdaa94f1c75657c7238ab5137d188 79ab3372dc1c0af8a9c30f49274a161f15491a2d68626a00abc2b102225dc584 2e1d166cea4d1992c2da2aebbb4469ad8efc24a74168e0c1a2c4903997050004 2ca18b10d4d9f67877e034ce5833ee41973fa8fe5d4fbabe701e545af977106a 7599b34bbdd9aa66ccd2b653831d9b3f6a136ff27cbdc9d6edccc411d72c087c acc6c7cbea4115736a9d4b52037c569cc343211cb6e1a7e2737f4eda2de53290 1c463a4ad8e57ba163b615d457ba121d11fda43a9f4c23f594904dab8131b059 17fe42b965b9e57b1638e1762e335c2620e06888294dea01623ed11db14c359e b3755b54afefe17ef4696bf593d6fe770b12090ecfb33f53107bcd95580591a3 2c05def477eaf23336d19f4ac4700ba3e62be085545c0296f9d94abe3b3bdf20 75555e028be39269cf5ebc2e3efb1e617d988090e613d34c48e33577e5a15ec4 2c0e6d381356d09b8d2746ac270e330c5c1028a570af6e88869fb5fa38990eff cc1d6e99f08c0eef9958fcb8fa96c6a6c6b762513b9be92dbfd23f79bf1b6db5 cb18a903799a89d61d16bb949132b1e681330d7901497012041df3c897da590b 90ed45565391a596d4585fb63b64eaa9e22863e5fde450063018de89d6940103 8d1019779c8cfc9bbe5e0f0f6036fb4c689086c4c9fe7335f24be6ff3b6e4b5b e99b202dd9f93e7cc3e1507d65e961fc494cf8117bab011f41bb2db8377f8f61 2dd64e1f19fb2c0c871bb427a54ffe6ea6722993b38dd52d3d4828a8b768e65d 3fcc3242a31b9ee8b36426e11f4b20c7d3e195770acbe0aa9bd3cc4f2aea3ab4 b4aae1533e6266474a037e9cb432a21fc9e9679489c41aa06a41c5086c58751e d19f57360958a1cf0e5f6c1fcbc898d70764ded2c3f62f14c77019385098b362 9cb78fc6442773109d414ff398f1a15dba75d876576687e7da3ab74a63459365 2ba8dc17b74c4ffdb8d7f557bda8996b4ac1923c4a9d32cd5500c44a7ef0fc78 59ab536a6f7330c5c0a2d4b187f29192338f8d42b00aaab5fba2e0d59335ed62 8c254a0fc5b567c4f25200d5a6e3c338d40e60d7e2c8f067f6a782b98a0185af cf979a637271d9ddfcc4cb179f1b9e275c107c6bddda1ddbd880cdf97233399c b47c0a223afa19464a7db6ce0581eb6c5443268202c128b0d4b243c7a4e210d2 d8e44ce985c16fb635fe375fffd8e7dff1b001bf5dd5487322182633c41ffb4a f7869089d13d60f0e75d0a78a604f57a085950dde27c2d9a44eae575405a2f56 91c41433b80a5fa07cbc45c4e637acfab828a59d1dab16887a96eaa2fde68934 9ee3444f3657bec4c9f8c1d3ad9261c316dee1f2db601bf96b02408067cd3321 7a60af088184ebf5696a7d59b1f3faa35810b434f302112afc168b4a0dec7f1c b00cd0e9bf169cd10fd93f957d9ce501bc40af3d1fce1f30b195fe6368359f5a 34191e4bcf6a5c6a96af3f036a7c9c872dd53d5d14b2fb9c3b2a1ceeb18dab0c ea1c7ecd112fef2becd7f60d6bf8882a16af3737c5409091e7a6ede06f4274f7 442d221efe25f0c0c37a514e24a1d9b3e6b8c560e258c2f131b804a6860b517f 809e2a2330ff4a6514ab0780af76d137a5b8d60a4d4e5d9c462c870e3bc2cb7d 3491b65d999673d05959c9e4febf9f4fc003eca9a31e687729df0054843bb548 d35d3aed8b0ef5f89fbfd6a286cf981a3e726a7655283eb4bb03a1e7066948f2 5cde6b8103e5d967b69ccd7936fd61694aea6d948082e3ac2160e7f2663f11b9 8e648d0501c1002e4d8c0783c523ee8611cf1ee8feb478d0ffc71670bbd8fab8 b301601c861c8760dfbe6429425bbb399275464ff9325cc6cae41cb320454ffb 4fae04d6bb3e77b42f31c912536fe3c3b9251d4b49841888f94960ff9e71ac2a a02cdfd30238ac78185189a5366ed1199fe632ce2f9d8aa4271d0fa335a1b797 63f5e0dad068c1410798b634c5fc2cbb1d916fc7956df0d23f9b819ded43929b ec9c0da3273977ddb94f33605e30521bc688b91354bea5f3119a325d813f2c4e 1153aef4bdbe79f33ed31cc704d19f6e77bfe2ead1343a75213cc4541f0bc007 be5a2c96a4142f1776b93abf8b4213ad834b0713239ac13ad3a19e086936366c 1e6785810810fc2f694b7b4cac5a9c156f790ded041d6e21f795e53fbda84559 34628f1633a008cc377e6b3c98917184be6b448488a3ba50353fd0e1afedf075 0a4f17cc0e13a362aba090c20a0aba7970831baecfdacd60e3dc459517800c89 f732057997c23350d66a5aae6adb7513f76920835ac9d596b2d07da604e21db6 59935e680f541d88799d06460275ee2cb5df01fd82813e3f443ba2a941a58a93 3b057ae04c69e4668075bff357002f5644b073ee8722251d05df6605582fb07f 9d2daf6aa1d94ea86c418f0f6a5e3fc65f4958262bcd394f3d7b1925c788df5f 980ced7742087fbe246d0b7e050a02a0371b38bab3e022b2f9fd1937d91608b5 e543f9e4ceaeb0a59ee86a570c33996d360271b6b115ee2344ecd1b445ca6f02 e31e53f8d3f5a08d4610d7e421af1a6da1090d5b38fe1526b606fa9cce4d3d1f b349d997c911b0da0be1cbffd28bf7a4da9d2a1caea47df17c11a7f2df7881f9 92a794fd2d2707cc7ee6bc011e3a6f04dedf7d812005846d03ed981e266c0330 2cc4c78b747bd118c39da5ced951fe6ec07b2d7de8d0ac0e8cfaf4f4fa2e46aa 6065d1001cbd57dfe10966e21521b8ff8cf9dffc1afb7170e3c2df3d0e237239 22c4c90ca6083edcad5e8b17a3c134234573199fa4193b3e6cbd245ba3da0dfd 3e7f6ea79aedb777b72f39f13ab8f08e85aa7c4947ca26f48ad1295e3105344e fab60dd274a593b75360bd2beaa5915da2fca9b67b207b36a5bb7661c9ca5c85 514a84b39b9d15a8dc536231255bb1642117bcba82830fd5227d84e6b796201f da75f8d9b28706eb0f2fdd906732d34b934ea8e9bce6d5c2fd9b5b5da0ea97ab 4beddeba6d217c3bd101374c085225c30c66f94ddfbafe8cb1f2470a95ad9672 4c564eae19c7c120073ef7007019180b4625f60bba6ecf6cdd0fe852aa28fa0e 04113659eb3f02c413417bd4f7a527d27d478a21557dac21834a9487f0e70a68 169bfe11516277262f38821fa250a5ccb3a7b2bea0c08af5a84b22c84cf1cb73 fcea338571494eff618d68f602f122b9f9846399b3c6f4d146209a69866dec4f 382e1b1cce8661f3bb52daaf36840f89b6ba6ece8c043bf10275ba0bf24b58c6 0af4c6b771a0bae1ff03808fb9bf0d94ec2609e852d31a8ff1abdc324c3a2beb 900a91943896d742ad120d09078e3d3c1bb24ee5a36c4f48c606970424d978d7 e56556c53dc2c6f5dfe2ea65abd74490830450edcad3bb6cf0be2f07aafff374 385e70f3ca7d9f0f72c3b36481ab9ab70bbfaffe1d53d83cd27ace2705e19bbc 31814623b20d7e73b2fae1c96eba0897b596145158c156d9d0be8d5f51a737d4 d189178bcaf76ed59115846c602690d7028b08e25a617e8b3d092036774440cd fd4b528cec3b55569eef875bb6e327aa62b536c6bb2fe2da7bf97e311aaa7c94 fde8f366e841cf3185690d2cf94109596431b3910c0d020a25855098cfdaed62 a332a10893ab577aa84b560edd74835d6a625c90c7a14c942ea1023afef0e511 79091091868496c0be5c3a1a40f46afb69448bc20050d11b5611b886ab1b11c2 f26b518711bd20764a41da4af24bcdb9a33b9c0c9b55221565ec61244f31f2d5 85e8102b6fda6a7acf5dd57cd83ac47e99a528ab582da9f0badd36c882ff92ab 772750a4eef7d6e7fbb8a79871f7651f7930db5d0e79b0d9563d92313c395f05 59056d47f7ca747222d8c41bb63b1aa7f374501a2a4c300df4e57c680aa001f7 5ad9d08a8cee9484c3c0e34135914311282ad7995a905859a21c7d324cb91c03 bcdd20e789dbffa61e10ba074a342101bfaef9c17110638753a7747d2a8a9f17 85c23c853e2feaeb053c1023fddf5fd90d2b557c2fa9ca7a67022e7e28594c20 79f3da777f6d5c2c665ffec9130318bd0a491c301f7edb1ec44443e46e04231e 90ef7bd18d68d9fc9bf56a6ed3367b5c1bc56472e281fdddbeee21191673e2ec 6e38ad9c4185f4aeed0027957b7f0296442cb3a73d69ed02b4f062043e8a9ae1 2a47776a814ab96915d1210d5934cd358eeb86af793cf6ece986b0bc349bde45 b75744fc72ecdce0d6f261ec508ae25867cb11667921327cc3b80388374d482a 380bbaa1ab64a432041d3ddce12a7808c583117b86fbfa243f8c082a192e8250 72a560770e341ca94109344077835a26bad3c00469f38926c0f0157858276fe3 9dc11008c81e9ac1e06c3136760438f788e7b191066f3dfd78aa4965e933a042 61003a17192867cf12663076adaf29112452f3a8b6768dfbca687a25497eb408 1e6457bd92a8f654647bfaca33e68b3a9a9e762472e45864794fe671c7d2c40e 6244c322a310c62d6bda9445dca902cb071159557a579b6df13f10fbba5305ff 11d0e082a2631ec8112b8073a1773e3b1ef519a788a9523ed9adada98a281d40 5cd48cec41a9fd7847ab9dcc209afbeb1a381f2a86012105ee06fcbe30c9edfe 228ea5eaf2eea1d954b10fa776249f93545a35733e84eb0fc123bcf5e0c6c1ee 8814e76b08668dfcc21bcbb1a8294ca9d438df6452de6b7316d651b230c1216e d9021c598f1fc076e7ab967858dabc2478906b50fa5942cc4ac3cb6aa7690e9e 4d0816b3ba739511b7f2d5b56cb1ac823f68e0531764b23258c5e4d8a8ca668f 2a0d2cc8f78d01b67aa8a26d90cce6ac0b67da88c85f9edb7cb975a82c5a3f43 716f05441db067a755b0bb0688cb7ea04a71facde20e29c8d066c957e64428d1 a3fb34d64352f3f6a8df46d4ef6ad44e1358551434614225b9bfb217600cf86a 68b283de9e65ec3cc69228ad55ef17c2b2121e3640db5a69ab2f4a9402528465 0822e1e5c48fad86ff7dba2c4dc6952a678ee4b7c6e0503ea32eb2e4da278ef0 d3fcefe7a07869ca2934149b5791474e7c96ad888ece24a80543fee76169c74b 6c0cb539b6c5ba42f2a20a73904a913f8ba740ab929840a8baa4ca54fe7c1442 883cf337de3ff64b193e85a8bd7dac69584c96e026ee794db0552c2c7e7574a5 9c9a2018fbbefa7ea11846393d3813fdc52e9aec6c5a4990c0ea93c24f144b3c 561725684c7412a6a667bffd69e29aad829ad2bd18e594ad0e2469ac62aa41ed e6b4fde7fd92a308ebc8699dfe75cffb613ce8c65a2f79c43c08dfa2d76fc3ea 706f2f3c8f462d60cc6b2a64597fcc9b95458fb52797d1300f90fa3d338e6c19 a92bb6600078b83087944c3f433f6b85d0379d2e30833ca8de968acd402dcf38 1512a3f6a7ead7c73268a567abdb24e0d70b81231f9b9be7f413e20f37cb4bd5 0654d4a6381c4d1fd05ec9eb40c83232b1f4ed15891c38f7b120b00654f05ec9 9558dd04eb3002b66a232299292cf1b90c40929dcf542f877f8c2b9bf63a2aba 597bbcb7c31e900899282e74c47d03d6a1b2c172fab9cee6a7f5c9dd80e0bba1 66b880a237f052c653d0a4c9050aaa554860898aa03280fd4bb2e3d3605f88ba 9a391eed63d07411a579bd50eb7816b01a338913c2a52df049f288dea0018073 968299bf0cc05b84bdb560687272e02885d8409e1457c6f2f8429a4413b3617e 8c6c78fe8295aacf1b2f03828a690c992f2a76f0df3a2f5b563e6122c4ce26d1 93531cd8466f8ef64228373bfd8ba751e448fab16f19ec6e02af0dde20051ed2 7e78061c6fc7436817962c72d856ee36b447123343b8cb8684ca1aaee1866d03 017f45cbd2e1666281bae0f270a11c88a3ed467772e7b59844225e246673d8f6 d96ff7ffe3ffc371da46c5acbfc688bfcff6e2980b57c2c0d8332c2a541ff7ea eadf5686d4d78b5fa626b915f28943e297f53a356017d5ddfdfeefb5fc4dea88 1cef0600a57f4d42c5677bbb8b5497b1e066ae0c2b0834e3c6d27e63fa4f80b5 54ab086a6ce9e02d1e0e17e1df23c600a435c3949ad91f473aed09a8828652ce 9406bfd35354bcf219df78f6ddc98480ff35ab4e343a210bf543b20c7278ccc3 bad067966e9651d559a43b44336835ffa3120a1d5d36433d5131597372a27821 0bea2f097ead56adf4e6c753fd54935105118e10e6d045113b9ba54f9dcf59c1 78c5c32c4124327e804917e904fae3d7bcb1e56523927a2d6ecd50ec86142ef5 69e465baf37069de3756619a9b8e9a1b7997658e60b7ad0d6b6ab6cf2d5dcd1e 0c01598b4c0029380866f5fbf6ecb6b9a33da40cf9dfabdd185a4125cb39f473 c49243856f975804dd5247d5499c6ea13b55b909a7a2b0a67713dd4fcf51b86d 167ba0c764922594735c8983ce5c2e675b0bed3ce495bf37b239d0d5d7caa653 af46c2502aba0c3724946740342bf806eba6862af13b9e9e00ef49a344cc6a97 12e931214bc93d39556b9344dcd875ca58cff0c9771cfd5e09f1838cda67e288 48e6aa29120574a23b8fe7b3a5d5cfc53b714a81eb8841100dec55bccce84f57 ae729105680966e979cc1c94c4b76f9fc0c6242456b44d81b4a5eb928295c847 5763a86b30da8f34105cc3e70af7206ce340b6e9a8b95e528e395ad16f4e1792 ce2dc4f8f745785d0dc5a80a71fd3c61c269871782e39a53a7a8fddf53282a7b 2b322d263a5641f2d405dbf5aba897507f155fa4baae569ec3a12a2e06158a41 69a471df988784bf9091d34a13f15b88e271283bb55cb86e03e78e81aa6548b6 6748d8bd67c52b61c4423d3234ec9e68049233058e9208a7436da9986af7d80a 84577aa05d9eb66060fae1951f96fb56997d70427b93f09856effd0dd403c794 23e7b2c9b03a3561712900a05cd123e4c35c275d2e44dd77842bc894da0da078 b156a0197bcbc7156f080374c5036e2798a35696903021b692355b7688a60c01 8af4dfedf73c8900839b42be3c303d41192bbe835405e329d8e0b4a29a78d5f6 ed00ed9ba6ddce9525b720d38d56c542618e3f85eb5da3c70d1c85a1d0c63487 100686985b084fd8727b449e03b5857bcc64724edbaa0c67ff77331460d034c2 64be226ee75782d87a24297836d0864611726e9b26d93f84fec7adfe9e3dccae b7d6b29d61efe94117550ffd243f7ed88a286cab343823f4d0bfab94ed9f5161 7e4525ed7f6761200a39e0750fd3c6c19b78ecf589e6989846de2eb9fab9d712 1b181c5eb35c2e2b3b7ee1e1b4514ddda544c776dcedd6c822b346af168a5d73 cf38bc10c551eeab3747d4facc5710e2bcedb666b1f23ac2062547404da15fe5 e316b5003ea46a0a7459ec1bd3c68eb924b1f8b1e419c09b78d466da7062406f 74bb4cce6218097d282f67573664ae5a0126acf2d770ed04587c890d9d1469f5 de3a8d862db6a42799f0f674861442bb407ba0ca18d9d80a33b13f7e045ea3be 8fc32a6c077543c06039a2ed1e97f31713f470002c8536d99908ece09ba2173c 4dc76cf2fe385ef222d4726af48abd0e62f70aaf725f81a6697d0041ae58057b c30a8c6185427a46d4abc22e63b8b39b154134f4e2f6dc612b87b7699e1a44e5 bd796fd2806956539f05bb0a7acb2160f14d2c5acfeee1016abc73fea2372f56 c1851e3b49f446c4f2acbc1fc3c41a112c04a6b661fde0500dbb5401ad7a0d23 868e621e40ccf3bd62a4168b419d9dd58953b005748d30f4cfc9dec5a2920497 7afc76541d2cf2ecd10284c6cd6bc7ed3d003982fbbb5b5ab35aac5bdfece1a7 8809eaea41b9e0d40baf0be6bda67db4e6a51ca64fddf96634227d2d2951e043 537622450d62021f166ddd15b917afd61a701f0eeef28c246c9c2de6dd8c8a26 b2c2a97cdb8d21ab793b807b86f1e1966e127836f871397b06057add4ff4c6b7 d6609262d2911e5bdd6c63717da68c9345e6c1104e21b03459c1dd221d6dc3d6 56f96577ba87fbd74f875b5167411f1b16fcd158ceb8525c097bc30b11105114 9f29de13c1e9c6dd70332cb684025bc7568098c9a799d13087b813642f60f6c6 d94cba8018c3b129127d175e40ebd9c18870921120ab82d69944b3c08fbdec58 0031c0d6d57add7bed791968a860add087403685dc9c0257ab5d1fc32e0f8ae3 6fc0e6cbe0c6b04a6f0e008954153eda7a0da84154ec76f43e2d79e198b3e6c1 e93f0ee629cefb07af5ebced6a02936031b37d0db37f0d257c7014a3df09cae8 ccd001b18762484514de1e67db1c3c4f7d159bda8f52c37c4946c51b3fe800a7 88a5695a77e0652c68fe77661e529d31595f017f3374ec3d909346bc09baca2f fe357692da3f60df14cfddbb82331a8b22ccac3987a73ccbf1deca333e62c13e 3f422486be8a997c4158ef183ed088a57a135af79b782f216c6657886e91c41d 40d2745981633535923c454ef473264491bf4c932c20a40454d3ae5a79080527 ebd453b0814dc1c67408512e90dbeb1bde1f052fd5b1f0fd4cc777a63d786331 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont TeXDict begin 40258431 52099146 1000 600 600 (rfc3550.dvi) @start /Fa 179[42 76[{}1 49.8132 /CMMI6 rf /Fb 200[35 2[35 1[35 50[{}3 66.4176 /CMR8 rf /Fc 205[30 30 5[47 43[{}3 49.8132 /CMR6 rf /Fd 255[55{}1 66.4176 /CMSY8 rf /Fe 149[29 24 26[56 1[48 14[35 61[{}5 66.4176 /CMMI8 rf /Ff 131[44 2[44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 1[44 5[44 2[44 1[44 44 44 1[44 44 44 44 44 2[44 44 2[44 44 44 44 44 3[44 2[44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 1[44 44 44 39[{}64 83.022 /CMTT10 rf /Fg 149[37 31 3[42 17[56 69 3[73 1[62 1[50 5[75 2[68 3[45 1[25 25 58[{}13 90.9091 /CMMI10 rf /Fh 130[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 1[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 48 48 48 48 48 48 48 48 48 1[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 2[48 48 48 33[{}87 90.9091 /CMTT10 rf /Fi 134[56 3[56 54 42 55 58 51 58 56 68 47 2[27 56 2[51 57 54 1[56 97[{}17 90.9091 /CMCSC10 rf /Fj 149[25 90[45 13[25 71{}4 90.9091 /CMSY10 rf /Fk 134[44 42 60 42 49 30 37 38 1[46 46 51 74 23 42 1[28 46 42 28 42 46 42 42 46 12[65 51 66 1[62 70 68 82 3[35 1[70 59 62 69 65 1[68 10[46 4[46 1[46 28 33 28 31[51 12[{}44 90.9091 /CMTI10 rf /Fl 131[105 52 46 55 55 76 55 58 41 41 43 55 58 52 58 87 29 55 32 29 58 52 32 48 58 46 58 51 7[79 79 1[79 80 73 58 78 1[71 79 82 99 63 2[40 82 82 66 69 80 76 74 79 6[29 52 52 52 52 52 52 52 52 52 52 52 29 35 29 2[41 41 29 26[58 12[{}68 90.9091 /CMBX10 rf /Fm 131[134 2[71 71 97 71 75 52 53 55 1[75 67 75 112 37 71 1[37 75 67 41 61 75 60 75 65 11[103 94 75 100 1[92 101 105 128 3[50 2[85 1[103 97 96 102 7[67 67 67 67 67 67 67 67 67 67 1[37 1[37 4[37 26[75 12[{}52 119.552 /CMBX12 rf /Fn 134[59 59 81 59 62 44 44 46 1[62 56 62 93 31 59 1[31 62 56 34 51 62 50 62 54 7[85 2[85 86 78 62 84 1[77 1[88 106 67 1[58 42 88 88 70 74 86 81 80 85 6[31 56 56 56 56 56 56 56 56 56 2[31 37 32[62 12[{}56 99.6264 /CMBX12 rf /Fo 131[91 45 40 48 48 66 48 51 35 36 36 48 51 45 51 76 25 48 28 25 51 45 28 40 51 40 51 45 3[25 45 25 56 68 68 93 68 68 66 51 67 71 62 71 68 83 57 71 47 33 68 71 59 62 69 66 64 68 71 2[71 1[25 25 45 45 45 45 45 45 45 45 45 45 45 25 30 25 71 45 35 35 25 71 76 2[45 19[76 51 51 53 11[{}87 90.9091 /CMR10 rf end %%EndProlog %%BeginSetup %%Feature: *Resolution 600dpi TeXDict begin %%EndSetup %%Page: 1 1 1 0 bop 0 525 a Fo(Net)m(w)m(ork)32 b(W)-8 b(orking)31 b(Group)2337 b(H.)31 b(Sc)m(h)m(ulzrinne)0 638 y(Request)g(for)f (Commen)m(ts:)h(3550)1936 b(Colum)m(bia)31 b(Univ)m(ersit)m(y)0 751 y(Obsoletes:)41 b(1889)2895 b(S.)31 b(Casner)0 864 y(Category:)42 b(Standards)29 b(T)-8 b(rac)m(k)2258 b(P)m(ac)m(k)m(et) 33 b(Design)3412 977 y(R.)e(F)-8 b(rederic)m(k)2966 1090 y(Blue)31 b(Coat)g(Systems)f(Inc.)3416 1202 y(V.)h(Jacobson)3339 1315 y(P)m(ac)m(k)m(et)i(Design)3517 1428 y(July)d(2003)583 1766 y Fn(R)-9 b(TP:)37 b(A)g(T)-9 b(ransp)s(ort)37 b(Proto)s(col)g (for)g(Real-Time)i(Applications)0 2049 y(Status)f(of)f(this)h(Memo)0 2260 y Fo(This)43 b(do)s(cumen)m(t)g(sp)s(eci\014es)g(an)h(In)m(ternet) g(standards)e(trac)m(k)j(proto)s(col)f(for)g(the)f(In)m(ternet)h(comm)m (unit)m(y)-8 b(,)49 b(and)0 2373 y(requests)37 b(discussion)g(and)g (suggestions)h(for)g(impro)m(v)m(emen)m(ts.)63 b(Please)39 b(refer)e(to)h(the)g(curren)m(t)f(edition)h(of)g(the)0 2486 y(\\In)m(ternet)j(O\016cial)g(Proto)s(col)g(Standards")e(\(STD)h (1\))h(for)f(the)g(standardization)h(state)g(and)e(status)i(of)f(this)0 2598 y(proto)s(col.)i(Distribution)30 b(of)h(this)f(memo)h(is)f (unlimited.)0 2881 y Fn(Cop)m(yrigh)m(t)37 b(Notice)0 3092 y Fo(Cop)m(yrigh)m(t)31 b(\(C\))g(The)f(In)m(ternet)g(So)s(ciet)m (y)i(\(2003\).)43 b(All)31 b(Righ)m(ts)g(Reserv)m(ed.)0 3374 y Fn(Abstract)0 3585 y Fo(This)43 b(memorandum)f(describ)s(es)h(R) -8 b(TP)g(,)44 b(the)g(real-time)h(transp)s(ort)e(proto)s(col.)81 b(R)-8 b(TP)43 b(pro)m(vides)h(end-to-end)0 3698 y(net)m(w)m(ork)38 b(transp)s(ort)e(functions)g(suitable)i(for)f(applications)h (transmitting)f(real-time)i(data,)h(suc)m(h)c(as)i(audio,)0 3811 y(video)24 b(or)g(sim)m(ulation)g(data,)i(o)m(v)m(er)f(m)m (ulticast)g(or)f(unicast)g(net)m(w)m(ork)g(services.)40 b(R)-8 b(TP)23 b(do)s(es)g(not)h(address)f(resource)0 3924 y(reserv)-5 b(ation)33 b(and)e(do)s(es)h(not)g(guaran)m(tee)i (qualit)m(y-of-service)h(for)c(real-time)j(services.)46 b(The)32 b(data)h(transp)s(ort)e(is)0 4037 y(augmen)m(ted)39 b(b)m(y)g(a)f(con)m(trol)i(proto)s(col)g(\(R)-8 b(TCP\))38 b(to)h(allo)m(w)h(monitoring)f(of)g(the)f(data)i(deliv)m(ery)f(in)f(a)h (manner)0 4150 y(scalable)24 b(to)f(large)h(m)m(ulticast)g(net)m(w)m (orks,)h(and)d(to)h(pro)m(vide)g(minimal)g(con)m(trol)h(and)e(iden)m (ti\014cation)i(functionalit)m(y)-8 b(.)0 4263 y(R)g(TP)35 b(and)f(R)-8 b(TCP)34 b(are)i(designed)e(to)i(b)s(e)e(indep)s(enden)m (t)g(of)h(the)g(underlying)f(transp)s(ort)g(and)g(net)m(w)m(ork)i(la)m (y)m(ers.)0 4376 y(The)30 b(proto)s(col)h(supp)s(orts)e(the)h(use)g(of) h(R)-8 b(TP-lev)m(el)32 b(translators)f(and)f(mixers.)0 4528 y(Most)35 b(of)g(the)g(text)g(in)g(this)f(memorandum)f(is)i(iden)m (tical)h(to)f(RF)m(C)g(1889)h(whic)m(h)e(it)i(obsoletes.)54 b(There)34 b(are)h(no)0 4640 y(c)m(hanges)29 b(in)e(the)h(pac)m(k)m(et) i(formats)e(on)g(the)g(wire,)g(only)g(c)m(hanges)h(to)f(the)g(rules)g (and)f(algorithms)i(go)m(v)m(erning)g(ho)m(w)0 4753 y(the)38 b(proto)s(col)g(is)f(used.)61 b(The)37 b(biggest)i(c)m(hange)f(is)f(an) h(enhancemen)m(t)g(to)g(the)f(scalable)i(timer)f(algorithm)g(for)0 4866 y(calculating)28 b(when)d(to)h(send)f(R)-8 b(TCP)26 b(pac)m(k)m(ets)h(in)f(order)f(to)h(minimize)h(transmission)e(in)h (excess)g(of)g(the)g(in)m(tended)0 4979 y(rate)31 b(when)e(man)m(y)i (participan)m(ts)g(join)g(a)f(session)h(sim)m(ultaneously)-8 b(.)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1109 b(Standards)29 b(T)-8 b(rac)m(k)1109 b([P)m(age)32 b(1])p eop %%Page: 2 2 2 1 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 724 y Fm(T)-11 b(able)45 b(of)g(Con)l(ten)l(ts)0 967 y Fl(1.)101 b(In)m(tro)s(duction)3090 b(5)182 1119 y Fo(1.1)94 b(T)-8 b(erminology)57 b(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g(.)g (.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.) f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)131 b(6)0 1362 y Fl(2.)101 b(R)-9 b(TP)36 b(Use)f(Scenarios)2787 b(6)182 1514 y Fo(2.1)94 b(Simple)30 b(Multicast)i(Audio)e(Conference) 58 b(.)46 b(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f (.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)131 b(6)182 1666 y(2.2)94 b(Audio)30 b(and)g(Video)h(Conference)43 b(.)j(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f (.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)131 b(7)182 1818 y(2.3)94 b(Mixers)31 b(and)e(T)-8 b(ranslators)52 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.) h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)131 b(7)182 1970 y(2.4)94 b(La)m(y)m(ered)31 b(Enco)s(dings)83 b(.)45 b(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.) g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g (.)f(.)131 b(8)0 2213 y Fl(3.)101 b(De\014nitions)3172 b(8)0 2456 y(4.)101 b(Byte)35 b(Order,)f(Alignmen)m(t,)i(and)e(Time)h (F)-9 b(ormat)1679 b(11)0 2699 y(5.)101 b(R)-9 b(TP)36 b(Data)e(T)-9 b(ransfer)35 b(Proto)s(col)2303 b(12)182 2851 y Fo(5.1)94 b(R)-8 b(TP)30 b(Fixed)h(Header)g(Fields)d(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g (.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(12)182 3003 y(5.2)94 b(Multiplexing)31 b(R)-8 b(TP)30 b(Sessions)45 b(.)g(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f (.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.) 85 b(15)182 3155 y(5.3)94 b(Pro\014le-Sp)s(eci\014c)30 b(Mo)s(di\014cations)h(to)g(the)g(R)-8 b(TP)30 b(Header)85 b(.)45 b(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.) g(.)f(.)85 b(15)391 3307 y(5.3.1)106 b(R)-8 b(TP)30 b(Header)h (Extension)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g (.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(16)0 3550 y Fl(6.)101 b(R)-9 b(TP)36 b(Con)m(trol)e(Proto)s(col)j(|)d (R)-9 b(TCP)2128 b(17)182 3702 y Fo(6.1)94 b(R)-8 b(TCP)30 b(P)m(ac)m(k)m(et)j(F)-8 b(ormat)39 b(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.) h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h (.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(18)182 3854 y(6.2)94 b(R)-8 b(TCP)30 b(T)-8 b(ransmission)29 b(In)m(terv)-5 b(al)50 b(.)c(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g (.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(20)391 4006 y(6.2.1)106 b(Main)m(taining)32 b(the)e(Num)m(b)s(er)g (of)g(Session)g(Mem)m(b)s(ers)89 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g (.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(23)182 4159 y(6.3)94 b(R)-8 b(TCP)30 b(P)m(ac)m(k)m(et)j(Send)c(and)h(Receiv)m(e)i(Rules)87 b(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.) g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(24)391 4311 y(6.3.1)106 b(Computing)30 b(the)g(R)-8 b(TCP)30 b(T)-8 b(ransmission)30 b(In)m(terv)-5 b(al)46 b(.)g(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.) h(.)g(.)f(.)h(.)g(.)f(.)85 b(25)391 4463 y(6.3.2)106 b(Initialization)38 b(.)45 b(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.) h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f (.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(25)391 4615 y(6.3.3)106 b(Receiving)32 b(an)e(R)-8 b(TP)30 b(or)g(Non-BYE)i(R)-8 b(TCP)30 b(P)m(ac)m(k)m(et)55 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g (.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(26)391 4767 y(6.3.4)106 b(Receiving)32 b(an)e(R)-8 b(TCP)30 b(BYE)h(P)m(ac)m(k)m(et)83 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.) f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(26)391 4919 y(6.3.5)106 b(Timing)30 b(Out)g(an)g(SSR)m(C)j(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g (.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.) g(.)f(.)h(.)g(.)f(.)85 b(27)391 5071 y(6.3.6)106 b(Expiration)30 b(of)h(T)-8 b(ransmission)30 b(Timer)41 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.) h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(27)391 5223 y(6.3.7)106 b(T)-8 b(ransmitting)31 b(a)f(BYE)h(P)m(ac)m (k)m(et)69 b(.)46 b(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h (.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(27)391 5375 y(6.3.8)106 b(Up)s(dating)30 b(w)m(e)p 1194 5375 28 4 v 33 w(sen)m(t)56 b(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g(.)f (.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.) f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(28)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1109 b(Standards)29 b(T)-8 b(rac)m(k)1109 b([P)m(age)32 b(2])p eop %%Page: 3 3 3 2 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)391 399 y(6.3.9)106 b(Allo)s(cation)32 b(of)f(Source)f(Description)h(Bandwidth)56 b(.)46 b(.)g(.)g(.)f(.)h(.)g (.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(28)182 551 y(6.4)94 b(Sender)29 b(and)h(Receiv)m(er)i(Rep)s(orts)i(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h (.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(29)391 703 y(6.4.1)106 b(SR:)30 b(Sender)f(Rep)s(ort)h(R)-8 b(TCP)30 b(P)m(ac)m(k)m(et)69 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g (.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(30)391 855 y(6.4.2)106 b(RR:)30 b(Receiv)m(er)i(Rep)s(ort)e(R)-8 b(TCP)30 b(P)m(ac)m(k)m(et)57 b(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f (.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(35)391 1007 y(6.4.3)106 b(Extending)30 b(the)h(Sender)e(and)h(Receiv) m(er)i(Rep)s(orts)67 b(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f (.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(35)391 1159 y(6.4.4)106 b(Analyzing)31 b(Sender)e(and)h(Receiv)m(er)i(Rep)s(orts)92 b(.)46 b(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.) h(.)g(.)f(.)85 b(36)182 1311 y(6.5)94 b(SDES:)30 b(Source)g (Description)h(R)-8 b(TCP)30 b(P)m(ac)m(k)m(et)73 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h (.)g(.)f(.)h(.)g(.)f(.)85 b(37)391 1463 y(6.5.1)106 b(CNAME:)31 b(Canonical)g(End-P)m(oin)m(t)g(Iden)m(ti\014er)f(SDES)f(Item)70 b(.)46 b(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(38)391 1615 y(6.5.2)106 b(NAME:)31 b(User)f(Name)h(SDES)f(Item)66 b(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.) g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(40)391 1767 y(6.5.3)106 b(EMAIL:)30 b(Electronic)i(Mail)g(Address)d(SDES)h(Item)93 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.) 85 b(40)391 1919 y(6.5.4)106 b(PHONE:)30 b(Phone)g(Num)m(b)s(er)f(SDES) h(Item)70 b(.)45 b(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g (.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(40)391 2071 y(6.5.5)106 b(LOC:)30 b(Geographic)h(User)g(Lo)s(cation)g(SDES)f(Item)51 b(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.) f(.)85 b(41)391 2223 y(6.5.6)106 b(TOOL:)29 b(Application)j(or)e(T)-8 b(o)s(ol)31 b(Name)g(SDES)f(Item)49 b(.)d(.)g(.)f(.)h(.)g(.)f(.)h(.)g (.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(41)391 2375 y(6.5.7)106 b(NOTE:)30 b(Notice/Status)j(SDES)c(Item)39 b(.)46 b(.)g(.)f(.)h(.)g(.) f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f (.)85 b(41)391 2527 y(6.5.8)106 b(PRIV:)30 b(Priv)-5 b(ate)31 b(Extensions)g(SDES)e(Item)c(.)45 b(.)h(.)g(.)f(.)h(.)g(.)g(.) f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(42)182 2679 y(6.6)94 b(BYE:)31 b(Go)s(o)s(db)m(y)m(e)g(R)-8 b(TCP)30 b(P)m(ac)m(k)m(et)82 b(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f (.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.) h(.)g(.)f(.)85 b(43)182 2831 y(6.7)94 b(APP:)30 b (Application-De\014ned)i(R)-8 b(TCP)30 b(P)m(ac)m(k)m(et)66 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.) f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(44)0 3074 y Fl(7.)101 b(R)-9 b(TP)36 b(T)-9 b(ranslators)35 b(and)g(Mixers)2298 b(45)182 3226 y Fo(7.1)94 b(General)31 b(Description)42 b(.)j(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g (.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.) f(.)85 b(45)182 3378 y(7.2)94 b(R)-8 b(TCP)30 b(Pro)s(cessing)g(in)g(T) -8 b(ranslators)43 b(.)i(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.) g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(46)182 3530 y(7.3)94 b(R)-8 b(TCP)30 b(Pro)s(cessing)g(in)g(Mixers)81 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.) f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(48)182 3682 y(7.4)94 b(Cascaded)30 b(Mixers)91 b(.)46 b(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g (.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.) f(.)85 b(49)0 3925 y Fl(8.)101 b(SSR)m(C)35 b(Iden)m(ti\014er)f(Allo)s (cation)i(and)f(Use)1981 b(49)182 4078 y Fo(8.1)94 b(Probabilit)m(y)31 b(of)g(Collision)52 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.) g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g (.)f(.)h(.)g(.)f(.)85 b(49)182 4230 y(8.2)94 b(Collision)31 b(Resolution)g(and)f(Lo)s(op)g(Detection)69 b(.)46 b(.)g(.)f(.)h(.)g(.) f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f (.)85 b(50)182 4382 y(8.3)94 b(Use)31 b(with)f(La)m(y)m(ered)h(Enco)s (dings)54 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h (.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(54)0 4625 y Fl(9.)101 b(Securit)m(y)3238 b(54)182 4777 y Fo(9.1)94 b(Con\014den)m(tialit)m(y)35 b(.)45 b(.)h(.)g(.)f(.)h(.)g (.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.) g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(54)182 4929 y(9.2)94 b(Authen)m(tication)32 b(and)e(Message)i(In)m (tegrit)m(y)39 b(.)45 b(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h (.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(56)0 5172 y Fl(10.)49 b(Congestion)35 b(Con)m(trol)2723 b(56)0 5656 y Fo(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1109 b(Standards)29 b(T)-8 b(rac)m(k)1109 b([P)m(age)32 b(3])p eop %%Page: 4 4 4 3 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fl(11.)49 b(R)-9 b(TP)36 b(o)m(v)m(er)f(Net)m (w)m(ork)f(and)h(T)-9 b(ransp)s(ort)35 b(Proto)s(cols)1591 b(56)0 641 y(12.)49 b(Summary)35 b(of)g(Proto)s(col)h(Constan)m(ts)2139 b(58)182 794 y Fo(12.1)49 b(R)-8 b(TCP)30 b(P)m(ac)m(k)m(et)j(T)m(yp)s (es)86 b(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h (.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.) g(.)f(.)85 b(58)182 946 y(12.2)49 b(SDES)30 b(T)m(yp)s(es)47 b(.)f(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g (.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.) g(.)f(.)h(.)g(.)f(.)85 b(58)0 1189 y Fl(13.)49 b(R)-9 b(TP)36 b(Pro\014les)f(and)g(P)m(a)m(yload)h(F)-9 b(ormat)35 b(Sp)s(eci\014cations)1404 b(59)0 1431 y(14.)49 b(Securit)m(y)35 b(Considerations)2526 b(60)0 1674 y(15.)49 b(IANA)34 b(Considerations)2622 b(61)0 1917 y(16.)49 b(In)m(tellectual)34 b(Prop)s(ert)m(y)i(Righ)m(ts)f(Statemen)m(t)1816 b(61)0 2160 y(17.)49 b(Ac)m(kno)m(wledgmen)m(ts)2794 b(61)0 2403 y(App)s(endix)24 b(A.)43 b(Algorithms)2663 b(62)182 2555 y Fo(A.1)71 b(R)-8 b(TP)30 b(Data)i(Header)f(V)-8 b(alidit)m(y)32 b(Chec)m(ks)24 b(.)46 b(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g (.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.) f(.)85 b(65)182 2707 y(A.2)71 b(R)-8 b(TCP)30 b(Header)h(V)-8 b(alidit)m(y)32 b(Chec)m(ks)43 b(.)j(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.) h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h (.)g(.)f(.)85 b(69)182 2859 y(A.3)71 b(Determining)31 b(Num)m(b)s(er)e(of)i(P)m(ac)m(k)m(ets)i(Exp)s(ected)d(and)g(Lost)47 b(.)f(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f (.)85 b(69)182 3012 y(A.4)71 b(Generating)31 b(R)-8 b(TCP)30 b(SDES)g(P)m(ac)m(k)m(ets)86 b(.)46 b(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g (.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.) f(.)85 b(70)182 3164 y(A.5)71 b(P)m(arsing)31 b(R)-8 b(TCP)30 b(SDES)f(P)m(ac)m(k)m(ets)88 b(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g (.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.) g(.)f(.)h(.)g(.)f(.)85 b(71)182 3316 y(A.6)71 b(Generating)31 b(a)g(Random)f(32-bit)i(Iden)m(ti\014er)78 b(.)46 b(.)g(.)g(.)f(.)h(.)g (.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.) f(.)85 b(72)182 3468 y(A.7)71 b(Computing)30 b(the)g(R)-8 b(TCP)30 b(T)-8 b(ransmission)30 b(In)m(terv)-5 b(al)55 b(.)45 b(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.) g(.)f(.)h(.)g(.)f(.)85 b(74)182 3620 y(A.8)71 b(Estimating)31 b(the)g(In)m(terarriv)-5 b(al)31 b(Jitter)80 b(.)46 b(.)g(.)f(.)h(.)g (.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.) g(.)f(.)h(.)g(.)f(.)85 b(80)0 3863 y Fl(App)s(endix)24 b(B.)48 b(Changes)35 b(from)g(RF)m(C)g(1889)2046 b(81)0 4106 y(References)3305 b(85)182 4258 y Fo(Normativ)m(e)32 b(References)k(.)46 b(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f (.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.) f(.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(85)182 4410 y(Informativ)m(e)31 b(References)64 b(.)46 b(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.) h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f (.)h(.)g(.)f(.)h(.)g(.)f(.)85 b(85)0 4653 y Fl(Authors')35 b(Addresses)2902 b(88)0 4896 y(F)-9 b(ull)35 b(Cop)m(yrigh)m(t)g (Statemen)m(t)2624 b(89)0 5656 y Fo(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1109 b(Standards)29 b(T)-8 b(rac)m(k)1109 b([P)m(age)32 b(4])p eop %%Page: 5 5 5 4 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fm(1.)135 b(In)l(tro)t(duction)0 641 y Fo(This)40 b(memorandum)g(sp)s(eci\014es)h(the)g(real-time)i (transp)s(ort)e(proto)s(col)h(\(R)-8 b(TP\),)42 b(whic)m(h)f(pro)m (vides)g(end-to-end)0 753 y(deliv)m(ery)29 b(services)f(for)f(data)i (with)e(real-time)j(c)m(haracteristics,)h(suc)m(h)c(as)h(in)m(teractiv) m(e)j(audio)d(and)f(video.)40 b(Those)0 866 y(services)30 b(include)g(pa)m(yload)g(t)m(yp)s(e)g(iden)m(ti\014cation,)i(sequence)e (n)m(um)m(b)s(ering,)f(timestamping)h(and)g(deliv)m(ery)g(mon-)0 979 y(itoring.)41 b(Applications)30 b(t)m(ypically)i(run)27 b(R)-8 b(TP)30 b(on)f(top)g(of)h(UDP)g(to)g(mak)m(e)g(use)f(of)g(its)h (m)m(ultiplexing)g(and)f(c)m(hec)m(k-)0 1092 y(sum)39 b(services;)46 b(b)s(oth)40 b(proto)s(cols)h(con)m(tribute)g(parts)e (of)i(the)f(transp)s(ort)g(proto)s(col)h(functionalit)m(y)-8 b(.)72 b(Ho)m(w)m(ev)m(er,)0 1205 y(R)-8 b(TP)31 b(ma)m(y)h(b)s(e)f (used)g(with)g(other)g(suitable)h(underlying)f(net)m(w)m(ork)h(or)f (transp)s(ort)g(proto)s(cols)h(\(see)g(Section)g(11\).)0 1318 y(R)-8 b(TP)27 b(supp)s(orts)d(data)k(transfer)e(to)i(m)m(ultiple) f(destinations)g(using)g(m)m(ulticast)h(distribution)e(if)h(pro)m (vided)f(b)m(y)h(the)0 1431 y(underlying)i(net)m(w)m(ork.)0 1583 y(Note)36 b(that)e(R)-8 b(TP)34 b(itself)i(do)s(es)d(not)i(pro)m (vide)f(an)m(y)h(mec)m(hanism)f(to)h(ensure)f(timely)h(deliv)m(ery)g (or)f(pro)m(vide)h(other)0 1696 y(qualit)m(y-of-service)44 b(guaran)m(tees,)i(but)41 b(relies)h(on)f(lo)m(w)m(er-la)m(y)m(er)k (services)d(to)g(do)g(so.)74 b(It)41 b(do)s(es)g Fk(not)h Fo(guaran)m(tee)0 1809 y(deliv)m(ery)28 b(or)f(prev)m(en)m(t)h (out-of-order)g(deliv)m(ery)-8 b(,)29 b(nor)e(do)s(es)g(it)g(assume)g (that)h(the)g(underlying)e(net)m(w)m(ork)i(is)f(reliable)0 1922 y(and)38 b(deliv)m(ers)h(pac)m(k)m(ets)i(in)d(sequence.)66 b(The)38 b(sequence)h(n)m(um)m(b)s(ers)e(included)h(in)g(R)-8 b(TP)38 b(allo)m(w)i(the)f(receiv)m(er)h(to)0 2035 y(reconstruct)34 b(the)g(sender's)f(pac)m(k)m(et)j(sequence,)g(but)d(sequence)h(n)m(um)m (b)s(ers)f(migh)m(t)h(also)h(b)s(e)e(used)g(to)i(determine)0 2148 y(the)24 b(prop)s(er)e(lo)s(cation)i(of)g(a)g(pac)m(k)m(et,)j(for) c(example)h(in)f(video)h(deco)s(ding,)h(without)e(necessarily)i(deco)s (ding)e(pac)m(k)m(ets)0 2260 y(in)30 b(sequence.)0 2413 y(While)h(R)-8 b(TP)30 b(is)h(primarily)f(designed)g(to)h(satisfy)g (the)f(needs)g(of)h(m)m(ulti-participan)m(t)h(m)m(ultimedia)f (conferences,)0 2525 y(it)h(is)f(not)h(limited)g(to)g(that)f (particular)h(application.)45 b(Storage)32 b(of)f(con)m(tin)m(uous)h (data,)h(in)m(teractiv)m(e)h(distributed)0 2638 y(sim)m(ulation,)29 b(activ)m(e)g(badge,)f(and)f(con)m(trol)h(and)f(measuremen)m(t)g (applications)h(ma)m(y)g(also)g(\014nd)d(R)-8 b(TP)27 b(applicable.)0 2790 y(This)j(do)s(cumen)m(t)g(de\014nes)f(R)-8 b(TP)g(,)31 b(consisting)g(of)g(t)m(w)m(o)h(closely-link)m(ed)g(parts:) 136 3042 y Fj(\017)46 b Fo(the)31 b(real-time)h(transp)s(ort)d(proto)s (col)j(\(R)-8 b(TP\),)31 b(to)g(carry)f(data)h(that)g(has)g(real-time)h (prop)s(erties.)136 3230 y Fj(\017)46 b Fo(the)23 b(R)-8 b(TP)23 b(con)m(trol)h(proto)s(col)g(\(R)-8 b(TCP\),)23 b(to)g(monitor)g(the)g(qualit)m(y)h(of)f(service)h(and)e(to)h(con)m(v)m (ey)i(information)227 3343 y(ab)s(out)f(the)g(participan)m(ts)g(in)f (an)h(on-going)h(session.)39 b(The)23 b(latter)i(asp)s(ect)f(of)g(R)-8 b(TCP)23 b(ma)m(y)h(b)s(e)f(su\016cien)m(t)h(for)227 3456 y(\\lo)s(osely)35 b(con)m(trolled")g(sessions,)f(i.e.,)h(where)e (there)g(is)g(no)g(explicit)h(mem)m(b)s(ership)e(con)m(trol)i(and)f (set-up,)227 3568 y(but)k(it)h(is)g(not)g(necessarily)g(in)m(tended)g (to)g(supp)s(ort)e(all)i(of)g(an)f(application's)i(con)m(trol)g(comm)m (unication)227 3681 y(requiremen)m(ts.)62 b(This)37 b(functionalit)m(y) i(ma)m(y)f(b)s(e)f(fully)g(or)g(partially)i(subsumed)c(b)m(y)j(a)f (separate)i(session)227 3794 y(con)m(trol)32 b(proto)s(col,)g(whic)m(h) e(is)g(b)s(ey)m(ond)g(the)g(scop)s(e)h(of)f(this)h(do)s(cumen)m(t.)0 4046 y(R)-8 b(TP)38 b(represen)m(ts)g(a)g(new)f(st)m(yle)j(of)e(proto)s (col)h(follo)m(wing)g(the)f(principles)g(of)g(application)h(lev)m(el)h (framing)e(and)0 4159 y(in)m(tegrated)i(la)m(y)m(er)g(pro)s(cessing)f (prop)s(osed)e(b)m(y)i(Clark)f(and)g(T)-8 b(ennenhouse)38 b([10)q(].)66 b(That)38 b(is,)j(R)-8 b(TP)38 b(is)h(in)m(tended)0 4272 y(to)44 b(b)s(e)f(malleable)i(to)f(pro)m(vide)f(the)h(information) f(required)g(b)m(y)g(a)h(particular)f(application)i(and)e(will)h(often) 0 4385 y(b)s(e)35 b(in)m(tegrated)i(in)m(to)f(the)g(application)h(pro)s (cessing)e(rather)g(than)g(b)s(eing)g(implemen)m(ted)h(as)g(a)g (separate)g(la)m(y)m(er.)0 4498 y(R)-8 b(TP)41 b(is)g(a)h(proto)s(col)g (framew)m(ork)f(that)h(is)f(delib)s(erately)h(not)f(complete.)74 b(This)41 b(do)s(cumen)m(t)g(sp)s(eci\014es)f(those)0 4610 y(functions)29 b(exp)s(ected)g(to)h(b)s(e)f(common)g(across)h(all) g(the)f(applications)h(for)f(whic)m(h)g(R)-8 b(TP)29 b(w)m(ould)g(b)s(e)g(appropriate.)0 4723 y(Unlik)m(e)39 b(con)m(v)m(en)m(tional)i(proto)s(cols)e(in)f(whic)m(h)g(additional)h (functions)f(migh)m(t)h(b)s(e)e(accommo)s(dated)j(b)m(y)e(making)0 4836 y(the)33 b(proto)s(col)i(more)e(general)h(or)f(b)m(y)g(adding)g (an)g(option)h(mec)m(hanism)f(that)h(w)m(ould)f(require)g(parsing,)h(R) -8 b(TP)33 b(is)0 4949 y(in)m(tended)25 b(to)g(b)s(e)f(tailored)i (through)e(mo)s(di\014cations)h(and/or)g(additions)g(to)g(the)g (headers)f(as)h(needed.)39 b(Examples)0 5062 y(are)31 b(giv)m(en)g(in)f(Sections)h(5.3)h(and)d(6.4.3.)0 5214 y(Therefore,)24 b(in)e(addition)h(to)g(this)g(do)s(cumen)m(t,)h(a)f (complete)g(sp)s(eci\014cation)h(of)e(R)-8 b(TP)23 b(for)f(a)h (particular)g(application)0 5327 y(will)31 b(require)f(one)g(or)h(more) f(companion)h(do)s(cumen)m(ts)f(\(see)h(Section)g(13\):)0 5656 y(Sc)m(h)m(ulzrinne,)f(et)h(al.)1109 b(Standards)29 b(T)-8 b(rac)m(k)1109 b([P)m(age)32 b(5])p eop %%Page: 6 6 6 5 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)136 399 y Fj(\017)46 b Fo(a)28 b Fk(pr)-5 b(o\014le)29 b Fo(sp)s(eci\014cation)f(do)s(cumen)m(t,)f(whic)m(h)g (de\014nes)g(a)g(set)h(of)f(pa)m(yload)h(t)m(yp)s(e)g(co)s(des)f(and)f (their)i(mapping)227 511 y(to)h(pa)m(yload)h(formats)e(\(e.g.,)j(media) d(enco)s(dings\).)41 b(A)28 b(pro\014le)g(ma)m(y)h(also)g(de\014ne)f (extensions)h(or)f(mo)s(di\014ca-)227 624 y(tions)33 b(to)f(R)-8 b(TP)32 b(that)h(are)f(sp)s(eci\014c)g(to)g(a)h(particular) f(class)h(of)f(applications.)47 b(T)m(ypically)33 b(an)f(application) 227 737 y(will)h(op)s(erate)g(under)f(only)g(one)h(pro\014le.)47 b(A)33 b(pro\014le)f(for)h(audio)f(and)g(video)i(data)f(ma)m(y)g(b)s(e) f(found)f(in)i(the)227 850 y(companion)e(RF)m(C)g(3551)h([1].)136 1038 y Fj(\017)46 b Fk(p)-5 b(aylo)g(ad)42 b(format)c Fo(sp)s(eci\014cation)f(do)s(cumen)m(ts,)g(whic)m(h)f(de\014ne)g(ho)m (w)g(a)h(particular)g(pa)m(yload,)i(suc)m(h)d(as)g(an)227 1151 y(audio)31 b(or)f(video)h(enco)s(ding,)g(is)f(to)h(b)s(e)f (carried)g(in)g(R)-8 b(TP.)0 1402 y(A)35 b(discussion)f(of)h(real-time) h(services)f(and)g(algorithms)g(for)g(their)f(implemen)m(tation)j(as)e (w)m(ell)g(as)g(bac)m(kground)0 1515 y(discussion)30 b(on)g(some)h(of)f(the)h(R)-8 b(TP)30 b(design)g(decisions)h(can)g(b)s (e)f(found)f(in)h([11)q(].)0 1798 y Fn(1.1)112 b(T)-9 b(erminology)0 2009 y Fo(The)29 b(k)m(ey)h(w)m(ords)g(\\)p Fi(must)p Fo(",)f(\\)p Fi(must)k(not)p Fo(",)d(\\)p Fi(required)p Fo(",)g(\\)p Fi(shall)p Fo(",)f(\\)p Fi(shall)j(not)p Fo(",)e(\\)p Fi(should)p Fo(",)f(\\)p Fi(should)0 2122 y(not)p Fo(",)35 b(\\)p Fi(recommended)p Fo(",)e(\\)p Fi(ma)-6 b(y)r Fo(",)35 b(and)e(\\)p Fi(optional)p Fo(")g(in)h(this)f (do)s(cumen)m(t)h(are)g(to)h(b)s(e)e(in)m(terpreted)h(as)g(de-)0 2234 y(scrib)s(ed)d(in)g(BCP)g(14,)i(RF)m(C)f(2119)h([2)q(])f(and)f (indicate)h(requiremen)m(t)g(lev)m(els)h(for)e(complian)m(t)i(R)-8 b(TP)32 b(implemen)m(ta-)0 2347 y(tions.)0 2673 y Fm(2.)135 b(R)-11 b(TP)44 b(Use)i(Scenarios)0 2915 y Fo(The)39 b(follo)m(wing)j(sections)e(describ)s(e)g(some)g(asp)s(ects)g(of)g(the) g(use)f(of)h(R)-8 b(TP.)69 b(The)39 b(examples)i(w)m(ere)f(c)m(hosen)g (to)0 3028 y(illustrate)34 b(the)g(basic)g(op)s(eration)f(of)h (applications)g(using)f(R)-8 b(TP)g(,)33 b(not)h(to)g(limit)g(what)f(R) -8 b(TP)33 b(ma)m(y)h(b)s(e)e(used)h(for.)0 3141 y(In)e(these)i (examples,)g(R)-8 b(TP)32 b(is)g(carried)g(on)g(top)g(of)g(IP)g(and)f (UDP)-8 b(,)33 b(and)e(follo)m(ws)i(the)g(con)m(v)m(en)m(tions)h (established)0 3254 y(b)m(y)c(the)h(pro\014le)f(for)g(audio)g(and)g (video)h(sp)s(eci\014ed)f(in)g(the)g(companion)h(RF)m(C)g(3551.)0 3536 y Fn(2.1)112 b(Simple)39 b(Multicast)f(Audio)g(Conference)0 3747 y Fo(A)26 b(w)m(orking)g(group)f(of)g(the)h(IETF)g(meets)g(to)g (discuss)f(the)h(latest)h(proto)s(col)g(do)s(cumen)m(t,)f(using)f(the)h (IP)f(m)m(ulticast)0 3860 y(services)g(of)g(the)f(In)m(ternet)h(for)f (v)m(oice)i(comm)m(unications.)40 b(Through)23 b(some)i(allo)s(cation)h (mec)m(hanism)f(the)g(w)m(orking)0 3973 y(group)31 b(c)m(hair)i (obtains)f(a)g(m)m(ulticast)h(group)e(address)g(and)g(pair)h(of)g(p)s (orts.)44 b(One)31 b(p)s(ort)g(is)h(used)f(for)g(audio)h(data,)0 4086 y(and)26 b(the)h(other)g(is)g(used)f(for)g(con)m(trol)i(\(R)-8 b(TCP\))27 b(pac)m(k)m(ets.)41 b(This)26 b(address)g(and)g(p)s(ort)g (information)h(is)g(distributed)0 4199 y(to)32 b(the)f(in)m(tended)f (participan)m(ts.)43 b(If)31 b(priv)-5 b(acy)30 b(is)h(desired,)g(the)g (data)h(and)e(con)m(trol)i(pac)m(k)m(ets)h(ma)m(y)e(b)s(e)f(encrypted)0 4312 y(as)d(sp)s(eci\014ed)f(in)g(Section)i(9.1,)h(in)d(whic)m(h)g (case)i(an)f(encryption)f(k)m(ey)i(m)m(ust)e(also)i(b)s(e)e(generated)i (and)e(distributed.)0 4425 y(The)k(exact)i(details)f(of)g(these)g(allo) s(cation)h(and)e(distribution)g(mec)m(hanisms)g(are)h(b)s(ey)m(ond)f (the)g(scop)s(e)h(of)f(R)-8 b(TP.)0 4577 y(The)31 b(audio)g (conferencing)h(application)h(used)e(b)m(y)g(eac)m(h)i(conference)f (participan)m(t)g(sends)f(audio)g(data)h(in)f(small)0 4689 y(c)m(h)m(unks)37 b(of,)i(sa)m(y)-8 b(,)40 b(20)e(ms)e(duration.) 61 b(Eac)m(h)37 b(c)m(h)m(unk)g(of)g(audio)g(data)h(is)f(preceded)g(b)m (y)g(an)g(R)-8 b(TP)37 b(header;)j(R)-8 b(TP)0 4802 y(header)32 b(and)g(data)h(are)g(in)f(turn)f(con)m(tained)j(in)e(a)g(UDP)h(pac)m(k) m(et.)49 b(The)31 b(R)-8 b(TP)33 b(header)f(indicates)h(what)f(t)m(yp)s (e)h(of)0 4915 y(audio)h(enco)s(ding)f(\(suc)m(h)g(as)h(PCM,)g(ADPCM)f (or)h(LPC\))f(is)g(con)m(tained)i(in)e(eac)m(h)i(pac)m(k)m(et)g(so)f (that)g(senders)f(can)0 5028 y(c)m(hange)h(the)f(enco)s(ding)g(during)f (a)h(conference,)i(for)e(example,)h(to)g(accommo)s(date)h(a)e(new)f (participan)m(t)i(that)g(is)0 5141 y(connected)d(through)f(a)h(lo)m (w-bandwidth)e(link)i(or)f(react)i(to)f(indications)g(of)f(net)m(w)m (ork)i(congestion.)0 5293 y(The)g(In)m(ternet,)h(lik)m(e)g(other)g(pac) m(k)m(et)h(net)m(w)m(orks,)f(o)s(ccasionally)i(loses)d(and)g(reorders)f (pac)m(k)m(ets)j(and)e(dela)m(ys)h(them)0 5406 y(b)m(y)k(v)-5 b(ariable)38 b(amoun)m(ts)f(of)g(time.)61 b(T)-8 b(o)37 b(cop)s(e)h(with)e(these)i(impairmen)m(ts,)h(the)e(R)-8 b(TP)37 b(header)f(con)m(tains)i(timing)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1109 b(Standards)29 b(T)-8 b(rac)m(k)1109 b([P)m(age)32 b(6])p eop %%Page: 7 7 7 6 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(information)e(and)f(a)i(sequence)f(n)m(um)m(b) s(er)e(that)j(allo)m(w)g(the)f(receiv)m(ers)i(to)e(reconstruct)g(the)g (timing)h(pro)s(duced)d(b)m(y)0 511 y(the)k(source,)h(so)f(that)h(in)f (this)g(example,)h(c)m(h)m(unks)f(of)g(audio)h(are)f(con)m(tiguously)i (pla)m(y)m(ed)f(out)f(the)h(sp)s(eak)m(er)f(ev)m(ery)0 624 y(20)k(ms.)50 b(This)33 b(timing)h(reconstruction)g(is)g(p)s (erformed)e(separately)i(for)g(eac)m(h)g(source)g(of)g(R)-8 b(TP)33 b(pac)m(k)m(ets)j(in)d(the)0 737 y(conference.)46 b(The)32 b(sequence)g(n)m(um)m(b)s(er)f(can)h(also)h(b)s(e)f(used)f(b)m (y)h(the)g(receiv)m(er)h(to)g(estimate)h(ho)m(w)e(man)m(y)g(pac)m(k)m (ets)0 850 y(are)f(b)s(eing)f(lost.)0 1002 y(Since)f(mem)m(b)s(ers)e (of)i(the)g(w)m(orking)g(group)f(join)h(and)f(lea)m(v)m(e)j(during)c (the)i(conference,)h(it)f(is)g(useful)e(to)j(kno)m(w)e(who)0 1115 y(is)j(participating)g(at)h(an)m(y)e(momen)m(t)i(and)e(ho)m(w)g(w) m(ell)i(they)e(are)h(receiving)h(the)f(audio)f(data.)42 b(F)-8 b(or)31 b(that)g(purp)s(ose,)0 1228 y(eac)m(h)i(instance)f(of)g (the)g(audio)g(application)h(in)f(the)g(conference)g(p)s(erio)s (dically)h(m)m(ulticasts)g(a)f(reception)h(rep)s(ort)0 1341 y(plus)28 b(the)h(name)f(of)h(its)g(user)f(on)h(the)g(R)-8 b(TCP)28 b(\(con)m(trol\))j(p)s(ort.)39 b(The)28 b(reception)i(rep)s (ort)e(indicates)h(ho)m(w)g(w)m(ell)h(the)0 1454 y(curren)m(t)35 b(sp)s(eak)m(er)g(is)g(b)s(eing)f(receiv)m(ed)i(and)e(ma)m(y)i(b)s(e)e (used)g(to)i(con)m(trol)g(adaptiv)m(e)g(enco)s(dings.)54 b(In)34 b(addition)h(to)0 1567 y(the)h(user)g(name,)i(other)e(iden)m (tifying)h(information)f(ma)m(y)h(also)g(b)s(e)f(included)f(sub)5 b(ject)36 b(to)h(con)m(trol)h(bandwidth)0 1680 y(limits.)j(A)31 b(site)g(sends)e(the)i(R)-8 b(TCP)30 b(BYE)h(pac)m(k)m(et)h(\(Section)g (6.6\))f(when)f(it)h(lea)m(v)m(es)h(the)f(conference.)0 1962 y Fn(2.2)112 b(Audio)38 b(and)g(Video)g(Conference)0 2173 y Fo(If)h(b)s(oth)f(audio)i(and)e(video)i(media)g(are)g(used)e(in) h(a)h(conference,)i(they)e(are)g(transmitted)f(as)h(separate)g Fk(R)-7 b(TP)0 2286 y(sessions.)59 b Fo(That)36 b(is,)i(separate)f(R)-8 b(TP)36 b(and)g(R)-8 b(TCP)36 b(pac)m(k)m(ets)i(are)e(transmitted)h (for)f(eac)m(h)h(medium)f(using)g(t)m(w)m(o)0 2399 y(di\013eren)m(t)30 b(UDP)g(p)s(ort)f(pairs)g(and/or)h(m)m(ulticast)h(addresses.)40 b(There)29 b(is)g(no)h(direct)g(coupling)g(at)g(the)g(R)-8 b(TP)29 b(lev)m(el)0 2512 y(b)s(et)m(w)m(een)i(the)g(audio)g(and)f (video)h(sessions,)g(except)h(that)f(a)g(user)f(participating)i(in)f(b) s(oth)f(sessions)h(should)e(use)0 2625 y(the)g(same)g(distinguished)e (\(canonical\))k(name)e(in)f(the)h(R)-8 b(TCP)28 b(pac)m(k)m(ets)i(for) f(b)s(oth)e(so)i(that)g(the)g(sessions)g(can)g(b)s(e)0 2738 y(asso)s(ciated.)0 2890 y(One)k(motiv)-5 b(ation)35 b(for)e(this)g(separation)h(is)f(to)h(allo)m(w)h(some)e(participan)m (ts)h(in)f(the)h(conference)g(to)g(receiv)m(e)h(only)0 3003 y(one)h(medium)f(if)h(they)g(c)m(ho)s(ose.)57 b(F)-8 b(urther)36 b(explanation)h(is)e(giv)m(en)i(in)f(Section)g(5.2.)58 b(Despite)37 b(the)f(separation,)0 3115 y(sync)m(hronized)42 b(pla)m(ybac)m(k)h(of)g(a)f(source's)g(audio)h(and)e(video)i(can)f(b)s (e)g(ac)m(hiev)m(ed)h(using)f(timing)h(information)0 3228 y(carried)31 b(in)f(the)g(R)-8 b(TCP)30 b(pac)m(k)m(ets)i(for)e(b) s(oth)g(sessions.)0 3511 y Fn(2.3)112 b(Mixers)38 b(and)h(T)-9 b(ranslators)0 3722 y Fo(So)25 b(far,)h(w)m(e)f(ha)m(v)m(e)i(assumed)d (that)h(all)h(sites)g(w)m(an)m(t)g(to)f(receiv)m(e)i(media)f(data)f(in) g(the)g(same)g(format.)40 b(Ho)m(w)m(ev)m(er,)28 b(this)0 3835 y(ma)m(y)37 b(not)f(alw)m(a)m(ys)h(b)s(e)f(appropriate.)58 b(Consider)35 b(the)h(case)h(where)f(participan)m(ts)h(in)e(one)i(area) g(are)f(connected)0 3947 y(through)30 b(a)h(lo)m(w-sp)s(eed)f(link)h (to)g(the)f(ma)5 b(jorit)m(y)32 b(of)f(the)f(conference)i(participan)m (ts)f(who)f(enjo)m(y)h(high-sp)s(eed)e(net-)0 4060 y(w)m(ork)d(access.) 40 b(Instead)25 b(of)h(forcing)f(ev)m(ery)m(one)j(to)e(use)f(a)h(lo)m (w)m(er-bandwidth,)g(reduced-qualit)m(y)g(audio)g(enco)s(ding,)0 4173 y(an)32 b(R)-8 b(TP-lev)m(el)33 b(rela)m(y)g(called)g(a)f Fk(mixer)g Fo(ma)m(y)g(b)s(e)f(placed)h(near)g(the)g(lo)m(w-bandwidth)f (area.)45 b(This)31 b(mixer)g(resyn-)0 4286 y(c)m(hronizes)22 b(incoming)h(audio)e(pac)m(k)m(ets)j(to)e(reconstruct)g(the)g(constan)m (t)h(20)f(ms)f(spacing)h(generated)h(b)m(y)f(the)f(sender,)0 4399 y(mixes)35 b(these)h(reconstructed)f(audio)h(streams)f(in)m(to)h (a)g(single)g(stream,)h(translates)f(the)f(audio)h(enco)s(ding)f(to)h (a)0 4512 y(lo)m(w)m(er-bandwidth)e(one)h(and)g(forw)m(ards)f(the)g(lo) m(w)m(er-bandwidth)h(pac)m(k)m(et)i(stream)e(across)g(the)g(lo)m(w-sp)s (eed)g(link.)0 4625 y(These)29 b(pac)m(k)m(ets)h(migh)m(t)g(b)s(e)e (unicast)h(to)h(a)f(single)h(recipien)m(t)g(or)f(m)m(ulticast)h(on)f(a) g(di\013eren)m(t)h(address)e(to)h(m)m(ultiple)0 4738 y(recipien)m(ts.)53 b(The)33 b(R)-8 b(TP)34 b(header)g(includes)g(a)g (means)g(for)g(mixers)g(to)h(iden)m(tify)g(the)f(sources)g(that)h(con)m (tributed)0 4851 y(to)c(a)g(mixed)f(pac)m(k)m(et)i(so)f(that)g(correct) h(talk)m(er)f(indication)h(can)e(b)s(e)g(pro)m(vided)g(at)h(the)g (receiv)m(ers.)0 5003 y(Some)f(of)g(the)g(in)m(tended)g(participan)m (ts)g(in)g(the)g(audio)g(conference)g(ma)m(y)h(b)s(e)e(connected)i (with)e(high)h(bandwidth)0 5116 y(links)38 b(but)f(migh)m(t)i(not)f(b)s (e)f(directly)i(reac)m(hable)g(via)g(IP)e(m)m(ulticast.)65 b(F)-8 b(or)39 b(example,)i(they)d(migh)m(t)g(b)s(e)g(b)s(ehind)0 5229 y(an)j(application-lev)m(el)j(\014rew)m(all)d(that)g(will)g(not)g (let)g(an)m(y)g(IP)f(pac)m(k)m(ets)j(pass.)71 b(F)-8 b(or)41 b(these)g(sites,)k(mixing)40 b(ma)m(y)0 5342 y(not)35 b(b)s(e)g(necessary)-8 b(,)37 b(in)e(whic)m(h)g(case)h (another)f(t)m(yp)s(e)h(of)f(R)-8 b(TP-lev)m(el)37 b(rela)m(y)f(called) g(a)g Fk(tr)-5 b(anslator)38 b Fo(ma)m(y)e(b)s(e)e(used.)0 5656 y(Sc)m(h)m(ulzrinne,)c(et)h(al.)1109 b(Standards)29 b(T)-8 b(rac)m(k)1109 b([P)m(age)32 b(7])p eop %%Page: 8 8 8 7 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(Tw)m(o)i(translators)h(are)f(installed,)i(one) e(on)g(either)h(side)f(of)g(the)g(\014rew)m(all,)h(with)f(the)g (outside)h(one)f(funneling)f(all)0 511 y(m)m(ulticast)37 b(pac)m(k)m(ets)g(receiv)m(ed)g(through)e(a)g(secure)h(connection)h(to) f(the)f(translator)h(inside)g(the)f(\014rew)m(all.)56 b(The)0 624 y(translator)30 b(inside)f(the)h(\014rew)m(all)f(sends)g (them)g(again)h(as)g(m)m(ulticast)h(pac)m(k)m(ets)g(to)f(a)g(m)m (ulticast)h(group)d(restricted)0 737 y(to)j(the)g(site's)g(in)m(ternal) g(net)m(w)m(ork.)0 889 y(Mixers)25 b(and)g(translators)g(ma)m(y)h(b)s (e)e(designed)h(for)g(a)g(v)-5 b(ariet)m(y)27 b(of)e(purp)s(oses.)37 b(An)25 b(example)g(is)g(a)h(video)f(mixer)g(that)0 1002 y(scales)g(the)f(images)h(of)f(individual)g(p)s(eople)f(in)h(separate)h (video)f(streams)g(and)g(comp)s(osites)g(them)g(in)m(to)h(one)f(video)0 1115 y(stream)29 b(to)g(sim)m(ulate)h(a)e(group)g(scene.)41 b(Other)28 b(examples)h(of)f(translation)i(include)e(the)h(connection)g (of)g(a)f(group)0 1228 y(of)k(hosts)f(sp)s(eaking)g(only)h(IP/UDP)g(to) g(a)f(group)g(of)h(hosts)f(that)h(understand)e(only)h(ST-I)s(I,)f(or)i (the)f(pac)m(k)m(et-b)m(y-)0 1341 y(pac)m(k)m(et)h(enco)s(ding)d (translation)i(of)e(video)h(streams)g(from)f(individual)g(sources)h (without)f(resync)m(hronization)i(or)0 1454 y(mixing.)41 b(Details)32 b(of)f(the)f(op)s(eration)h(of)g(mixers)f(and)g (translators)h(are)f(giv)m(en)i(in)e(Section)h(7.)0 1736 y Fn(2.4)112 b(La)m(y)m(ered)39 b(Enco)s(dings)0 1947 y Fo(Multimedia)d(applications)h(should)d(b)s(e)h(able)h(to)g(adjust)f (the)h(transmission)f(rate)h(to)g(matc)m(h)h(the)e(capacit)m(y)j(of)0 2060 y(the)33 b(receiv)m(er)g(or)g(to)g(adapt)g(to)g(net)m(w)m(ork)g (congestion.)48 b(Man)m(y)34 b(implemen)m(tations)f(place)h(the)e(resp) s(onsibilit)m(y)h(of)0 2173 y(rate-adaptivit)m(y)h(at)e(the)g(source.) 44 b(This)30 b(do)s(es)h(not)h(w)m(ork)f(w)m(ell)i(with)e(m)m(ulticast) i(transmission)e(b)s(ecause)g(of)h(the)0 2286 y(con\015icting)e (bandwidth)d(requiremen)m(ts)i(of)h(heterogeneous)g(receiv)m(ers.)42 b(The)28 b(result)h(is)g(often)h(a)f(least-common)0 2399 y(denominator)d(scenario,)h(where)f(the)f(smallest)i(pip)s(e)e(in)g (the)h(net)m(w)m(ork)g(mesh)g(dictates)h(the)e(qualit)m(y)i(and)e (\014delit)m(y)0 2512 y(of)31 b(the)f(o)m(v)m(erall)j(liv)m(e)e(m)m (ultimedia)h(\\broadcast".)0 2664 y(Instead,)38 b(resp)s(onsibilit)m(y) e(for)g(rate-adaptation)j(can)d(b)s(e)g(placed)h(at)g(the)f(receiv)m (ers)i(b)m(y)e(com)m(bining)h(a)f(la)m(y)m(ered)0 2777 y(enco)s(ding)30 b(with)g(a)h(la)m(y)m(ered)h(transmission)e(system.)41 b(In)30 b(the)g(con)m(text)i(of)f(R)-8 b(TP)30 b(o)m(v)m(er)i(IP)e(m)m (ulticast,)i(the)f(source)0 2890 y(can)d(strip)s(e)g(the)g(progressiv)m (e)h(la)m(y)m(ers)g(of)g(a)f(hierarc)m(hically)i(represen)m(ted)e (signal)h(across)f(m)m(ultiple)h(R)-8 b(TP)28 b(sessions)0 3003 y(eac)m(h)35 b(carried)g(on)f(its)h(o)m(wn)f(m)m(ulticast)i (group.)52 b(Receiv)m(ers)36 b(can)e(then)g(adapt)h(to)g(net)m(w)m(ork) g(heterogeneit)m(y)i(and)0 3115 y(con)m(trol)32 b(their)e(reception)h (bandwidth)e(b)m(y)h(joining)h(only)f(the)h(appropriate)f(subset)g(of)h (the)f(m)m(ulticast)i(groups.)0 3267 y(Details)g(of)f(the)f(use)g(of)h (R)-8 b(TP)30 b(with)g(la)m(y)m(ered)i(enco)s(dings)e(are)h(giv)m(en)g (in)g(Sections)g(6.3.9,)h(8.3)f(and)f(11.)0 3593 y Fm(3.)135 b(De\014nitions)0 3835 y Fl(R)-9 b(TP)36 b(pa)m(yload:)46 b Fo(The)38 b(data)i(transp)s(orted)e(b)m(y)i(R)-8 b(TP)38 b(in)h(a)h(pac)m(k)m(et,)k(for)39 b(example)g(audio)h(samples)f(or)g (com-)227 3948 y(pressed)i(video)i(data.)76 b(The)42 b(pa)m(yload)h(format)f(and)f(in)m(terpretation)j(are)e(b)s(ey)m(ond)g (the)g(scop)s(e)g(of)g(this)227 4061 y(do)s(cumen)m(t.)0 4249 y Fl(R)-9 b(TP)36 b(pac)m(k)m(et:)46 b Fo(A)23 b(data)h(pac)m(k)m (et)h(consisting)f(of)g(the)f(\014xed)g(R)-8 b(TP)23 b(header,)h(a)g(p)s(ossibly)e(empt)m(y)i(list)g(of)f(con)m(tribut-)227 4361 y(ing)38 b(sources)f(\(see)h(b)s(elo)m(w\),)i(and)d(the)h(pa)m (yload)g(data.)62 b(Some)38 b(underlying)e(proto)s(cols)i(ma)m(y)g (require)f(an)227 4474 y(encapsulation)c(of)f(the)h(R)-8 b(TP)32 b(pac)m(k)m(et)i(to)f(b)s(e)e(de\014ned.)45 b(T)m(ypically)33 b(one)f(pac)m(k)m(et)j(of)d(the)g(underlying)f(pro-)227 4587 y(to)s(col)i(con)m(tains)g(a)f(single)g(R)-8 b(TP)31 b(pac)m(k)m(et,)j(but)d(sev)m(eral)h(R)-8 b(TP)32 b(pac)m(k)m(ets)h Fi(ma)-6 b(y)32 b Fo(b)s(e)f(con)m(tained)i(if)e(p)s(ermitted)227 4700 y(b)m(y)g(the)f(encapsulation)h(metho)s(d)f(\(see)h(Section)h (11\).)0 4888 y Fl(R)-9 b(TCP)35 b(pac)m(k)m(et:)46 b Fo(A)38 b(con)m(trol)h(pac)m(k)m(et)h(consisting)f(of)f(a)g(\014xed)f (header)h(part)f(similar)i(to)f(that)h(of)f(R)-8 b(TP)37 b(data)227 5001 y(pac)m(k)m(ets,)h(follo)m(w)m(ed)d(b)m(y)f(structured) g(elemen)m(ts)h(that)g(v)-5 b(ary)34 b(dep)s(ending)f(up)s(on)f(the)j (R)-8 b(TCP)33 b(pac)m(k)m(et)k(t)m(yp)s(e.)227 5114 y(The)30 b(formats)g(are)g(de\014ned)e(in)i(Section)h(6.)41 b(T)m(ypically)-8 b(,)31 b(m)m(ultiple)g(R)-8 b(TCP)29 b(pac)m(k)m(ets)j(are)e(sen)m(t)g(together)i(as)227 5227 y(a)k(comp)s(ound)e(R)-8 b(TCP)34 b(pac)m(k)m(et)j(in)e(a)h(single)g (pac)m(k)m(et)h(of)e(the)h(underlying)e(proto)s(col;)39 b(this)c(is)g(enabled)g(b)m(y)227 5339 y(the)c(length)g(\014eld)f(in)g (the)g(\014xed)g(header)g(of)h(eac)m(h)g(R)-8 b(TCP)30 b(pac)m(k)m(et.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1109 b(Standards)29 b(T)-8 b(rac)m(k)1109 b([P)m(age)32 b(8])p eop %%Page: 9 9 9 8 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fl(P)m(ort:)46 b Fo(The)37 b(\\abstraction)h (that)g(transp)s(ort)f(proto)s(cols)g(use)g(to)h(distinguish)f(among)g (m)m(ultiple)h(destinations)227 511 y(within)24 b(a)g(giv)m(en)h(host)f (computer.)39 b(TCP/IP)23 b(proto)s(cols)i(iden)m(tify)g(p)s(orts)e (using)g(small)i(p)s(ositiv)m(e)g(in)m(tegers.")227 624 y([12)q(])30 b(The)f(transp)s(ort)g(selectors)i(\(TSEL\))e(used)g(b)m (y)g(the)h(OSI)e(transp)s(ort)h(la)m(y)m(er)i(are)f(equiv)-5 b(alen)m(t)31 b(to)f(p)s(orts.)227 737 y(R)-8 b(TP)41 b(dep)s(ends)f(up)s(on)f(the)j(lo)m(w)m(er-la)m(y)m(er)i(proto)s(col)e (to)g(pro)m(vide)f(some)h(mec)m(hanism)f(suc)m(h)g(as)h(p)s(orts)e(to) 227 850 y(m)m(ultiplex)31 b(the)g(R)-8 b(TP)30 b(and)g(R)-8 b(TCP)30 b(pac)m(k)m(ets)i(of)e(a)h(session.)0 1038 y Fl(T)-9 b(ransp)s(ort)35 b(address:)46 b Fo(The)31 b(com)m(bination)h (of)f(a)h(net)m(w)m(ork)g(address)e(and)g(p)s(ort)h(that)g(iden)m (ti\014es)h(a)f(transp)s(ort-)227 1151 y(lev)m(el)j(endp)s(oin)m(t,)f (for)f(example)h(an)g(IP)f(address)f(and)h(a)h(UDP)g(p)s(ort.)46 b(P)m(ac)m(k)m(ets)35 b(are)e(transmitted)g(from)f(a)227 1264 y(source)f(transp)s(ort)e(address)h(to)h(a)g(destination)g(transp) s(ort)e(address.)0 1451 y Fl(R)-9 b(TP)36 b(media)f(t)m(yp)s(e:)45 b Fo(An)35 b(R)-8 b(TP)36 b(media)g(t)m(yp)s(e)g(is)g(the)g(collection) i(of)e(pa)m(yload)h(t)m(yp)s(es)f(whic)m(h)f(can)i(b)s(e)e(carried)227 1564 y(within)k(a)i(single)f(R)-8 b(TP)39 b(session.)69 b(The)40 b(R)-8 b(TP)39 b(Pro\014le)h(assigns)g(R)-8 b(TP)39 b(media)h(t)m(yp)s(es)g(to)g(R)-8 b(TP)40 b(pa)m(yload)227 1677 y(t)m(yp)s(es.)0 1865 y Fl(Multimedia)35 b(session:)46 b Fo(A)32 b(set)g(of)f(concurren)m(t)g(R)-8 b(TP)31 b(sessions)h(among) f(a)h(common)g(group)e(of)i(participan)m(ts.)227 1978 y(F)-8 b(or)35 b(example,)g(a)g(video)s(conference)f(\(whic)m(h)g(is)g (a)g(m)m(ultimedia)h(session\))f(ma)m(y)g(con)m(tain)i(an)d(audio)h(R) -8 b(TP)227 2090 y(session)31 b(and)f(a)g(video)h(R)-8 b(TP)30 b(session.)0 2278 y Fl(R)-9 b(TP)36 b(session:)46 b Fo(An)21 b(asso)s(ciation)i(among)f(a)g(set)g(of)g(participan)m(ts)g (comm)m(unicating)h(with)e(R)-8 b(TP.)37 b(A)22 b(participan)m(t)227 2391 y(ma)m(y)36 b(b)s(e)e(in)m(v)m(olv)m(ed)j(in)d(m)m(ultiple)i(R)-8 b(TP)34 b(sessions)h(at)h(the)f(same)g(time.)55 b(In)34 b(a)i(m)m(ultimedia)f(session,)i(eac)m(h)227 2504 y(medium)i(is)h(t)m (ypically)i(carried)e(in)g(a)g(separate)h(R)-8 b(TP)40 b(session)g(with)g(its)g(o)m(wn)g(R)-8 b(TCP)40 b(pac)m(k)m(ets)i (unless)227 2617 y(the)35 b(the)g(enco)s(ding)g(itself)g(m)m (ultiplexes)h(m)m(ultiple)f(media)g(in)m(to)h(a)f(single)g(data)g (stream.)54 b(A)35 b(participan)m(t)227 2730 y(distinguishes)c(m)m (ultiple)i(R)-8 b(TP)31 b(sessions)h(b)m(y)g(reception)g(of)g (di\013eren)m(t)g(sessions)g(using)f(di\013eren)m(t)h(pairs)g(of)227 2843 y(destination)j(transp)s(ort)f(addresses,)h(where)e(a)i(pair)f(of) g(transp)s(ort)g(addresses)f(comprises)i(one)f(net)m(w)m(ork)227 2956 y(address)j(plus)g(a)h(pair)g(of)g(p)s(orts)f(for)h(R)-8 b(TP)37 b(and)h(R)-8 b(TCP.)62 b(All)39 b(participan)m(ts)f(in)g(an)g (R)-8 b(TP)37 b(session)h(ma)m(y)227 3068 y(share)24 b(a)h(common)g(destination)g(transp)s(ort)f(address)f(pair,)j(as)f(in)f (the)h(case)g(of)g(IP)f(m)m(ulticast,)j(or)e(the)f(pairs)227 3181 y(ma)m(y)33 b(b)s(e)f(di\013eren)m(t)h(for)f(eac)m(h)i(participan) m(t,)g(as)f(in)f(the)h(case)g(of)g(individual)f(unicast)g(net)m(w)m (ork)i(addresses)227 3294 y(and)e(p)s(ort)g(pairs.)48 b(In)32 b(the)h(unicast)g(case,)h(a)f(participan)m(t)h(ma)m(y)f(receiv) m(e)i(from)d(all)i(other)f(participan)m(ts)g(in)227 3407 y(the)e(session)f(using)g(the)h(same)g(pair)f(of)g(p)s(orts,)g(or)g(ma) m(y)h(use)f(a)h(distinct)g(pair)f(of)h(p)s(orts)e(for)h(eac)m(h.)227 3557 y(The)h(distinguishing)f(feature)h(of)g(an)g(R)-8 b(TP)30 b(session)h(is)g(that)g(eac)m(h)h(main)m(tains)g(a)f(full,)g (separate)g(space)h(of)227 3670 y(SSR)m(C)c(iden)m(ti\014ers)g (\(de\014ned)g(next\).)41 b(The)28 b(set)h(of)f(participan)m(ts)i (included)e(in)g(one)h(R)-8 b(TP)28 b(session)g(consists)227 3783 y(of)f(those)h(that)f(can)h(receiv)m(e)h(an)d(SSR)m(C)g(iden)m (ti\014er)i(transmitted)f(b)m(y)g(an)m(y)g(one)g(of)g(the)h(participan) m(ts)f(either)227 3896 y(in)33 b(R)-8 b(TP)33 b(as)g(the)h(SSR)m(C)e (or)h(a)g(CSR)m(C)g(\(also)h(de\014ned)e(b)s(elo)m(w\))i(or)f(in)f(R)-8 b(TCP.)49 b(F)-8 b(or)34 b(example,)h(consider)e(a)227 4009 y(three-part)m(y)e(conference)f(implemen)m(ted)g(using)f(unicast)h (UDP)f(with)h(eac)m(h)g(participan)m(t)h(receiving)f(from)227 4122 y(the)35 b(other)g(t)m(w)m(o)h(on)e(separate)h(p)s(ort)f(pairs.)53 b(If)34 b(eac)m(h)i(participan)m(t)f(sends)f(R)-8 b(TCP)34 b(feedbac)m(k)h(ab)s(out)f(data)227 4235 y(receiv)m(ed)44 b(from)e(one)g(other)h(participan)m(t)g(only)g(bac)m(k)g(to)g(that)g (participan)m(t,)j(then)c(the)h(conference)g(is)227 4348 y(comp)s(osed)31 b(of)h(three)f(separate)h(p)s(oin)m(t-to-p)s(oin)m(t)h (R)-8 b(TP)31 b(sessions.)44 b(If)30 b(eac)m(h)j(participan)m(t)f(pro)m (vides)f(R)-8 b(TCP)227 4461 y(feedbac)m(k)33 b(ab)s(out)e(its)h (reception)g(of)g(one)g(other)f(participan)m(t)i(to)f(b)s(oth)f(of)h (the)f(other)h(participan)m(ts,)h(then)227 4574 y(the)38 b(conference)h(is)e(comp)s(osed)h(of)g(one)g(m)m(ulti-part)m(y)h(R)-8 b(TP)37 b(session.)63 b(The)37 b(latter)i(case)g(sim)m(ulates)g(the)227 4687 y(b)s(eha)m(vior)31 b(that)g(w)m(ould)f(o)s(ccur)g(with)g(IP)g(m)m (ulticast)i(comm)m(unication)g(among)f(the)f(three)h(participan)m(ts.) 227 4837 y(The)i(R)-8 b(TP)33 b(framew)m(ork)g(allo)m(ws)h(the)f(v)-5 b(ariations)35 b(de\014ned)c(here,)j(but)f(a)g(particular)g(con)m(trol) i(proto)s(col)f(or)227 4950 y(application)e(design)e(will)h(usually)f (imp)s(ose)g(constrain)m(ts)i(on)e(these)h(v)-5 b(ariations.)0 5137 y Fl(Sync)m(hronization)37 b(source)e(\(SSR)m(C\):)45 b Fo(The)25 b(source)h(of)f(a)g(stream)h(of)f(R)-8 b(TP)25 b(pac)m(k)m(ets,)k(iden)m(ti\014ed)c(b)m(y)g(a)h(32-bit)227 5250 y(n)m(umeric)21 b(SSR)m(C)f(iden)m(ti\014er)g(carried)h(in)g(the)g (R)-8 b(TP)20 b(header)h(so)g(as)g(not)g(to)g(b)s(e)f(dep)s(enden)m(t)g (up)s(on)f(the)i(net)m(w)m(ork)227 5363 y(address.)38 b(All)24 b(pac)m(k)m(ets)i(from)d(a)h(sync)m(hronization)g(source)g (form)f(part)h(of)g(the)f(same)h(timing)h(and)e(sequence)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1109 b(Standards)29 b(T)-8 b(rac)m(k)1109 b([P)m(age)32 b(9])p eop %%Page: 10 10 10 9 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(n)m(um)m(b)s(er)24 b(space,)j(so)f(a)g (receiv)m(er)h(groups)d(pac)m(k)m(ets)j(b)m(y)f(sync)m(hronization)g (source)f(for)g(pla)m(ybac)m(k.)41 b(Examples)227 511 y(of)e(sync)m(hronization)g(sources)f(include)g(the)g(sender)g(of)g(a)h (stream)f(of)h(pac)m(k)m(ets)h(deriv)m(ed)e(from)g(a)g(signal)227 624 y(source)33 b(suc)m(h)g(as)g(a)h(microphone)e(or)h(a)h(camera,)h (or)d(an)h(R)-8 b(TP)33 b(mixer)g(\(see)h(b)s(elo)m(w\).)49 b(A)33 b(sync)m(hronization)227 737 y(source)i(ma)m(y)g(c)m(hange)g (its)g(data)g(format,)h(e.g.,)h(audio)e(enco)s(ding,)h(o)m(v)m(er)f (time.)54 b(The)34 b(SSR)m(C)f(iden)m(ti\014er)i(is)227 850 y(a)h(randomly)f(c)m(hosen)h(v)-5 b(alue)36 b(mean)m(t)g(to)g(b)s (e)f(globally)i(unique)e(within)g(a)g(particular)h(R)-8 b(TP)35 b(session)h(\(see)227 963 y(Section)k(8\).)66 b(A)39 b(participan)m(t)g(need)g(not)f(use)h(the)g(same)g(SSR)m(C)e (iden)m(ti\014er)i(for)f(all)i(the)f(R)-8 b(TP)38 b(sessions)227 1076 y(in)32 b(a)g(m)m(ultimedia)h(session;)g(the)f(binding)e(of)i(the) g(SSR)m(C)f(iden)m(ti\014ers)h(is)g(pro)m(vided)g(through)f(R)-8 b(TCP)31 b(\(see)227 1189 y(Section)36 b(6.5.1\).)55 b(If)34 b(a)h(participan)m(t)g(generates)h(m)m(ultiple)f(streams)g(in)f (one)h(R)-8 b(TP)34 b(session,)i(for)e(example)227 1302 y(from)c(separate)i(video)e(cameras,)i(eac)m(h)f Fi(must)f Fo(b)s(e)f(iden)m(ti\014ed)i(as)g(a)f(di\013eren)m(t)h(SSR)m(C.)0 1489 y Fl(Con)m(tributing)k(source)h(\(CSR)m(C\):)44 b Fo(A)38 b(source)g(of)h(a)f(stream)g(of)h(R)-8 b(TP)38 b(pac)m(k)m(ets)h(that)g(has)f(con)m(tributed)g(to)227 1602 y(the)30 b(com)m(bined)g(stream)g(pro)s(duced)e(b)m(y)i(an)f(R)-8 b(TP)30 b(mixer)f(\(see)i(b)s(elo)m(w\).)41 b(The)29 b(mixer)h(inserts)f(a)i(list)f(of)g(the)227 1715 y(SSR)m(C)e(iden)m (ti\014ers)i(of)f(the)h(sources)f(that)h(con)m(tributed)f(to)h(the)g (generation)g(of)g(a)f(particular)h(pac)m(k)m(et)h(in)m(to)227 1828 y(the)37 b(R)-8 b(TP)36 b(header)g(of)g(that)h(pac)m(k)m(et.)60 b(This)36 b(list)g(is)h(called)g(the)g(CSR)m(C)e(list.)59 b(An)36 b(example)h(application)227 1941 y(is)d(audio)f(conferencing)h (where)f(a)h(mixer)f(indicates)i(all)f(the)f(talk)m(ers)i(whose)e(sp)s (eec)m(h)h(w)m(as)g(com)m(bined)f(to)227 2054 y(pro)s(duce)25 b(the)h(outgoing)h(pac)m(k)m(et,)i(allo)m(wing)f(the)e(receiv)m(er)i (to)e(indicate)h(the)f(curren)m(t)g(talk)m(er,)j(ev)m(en)d(though)227 2167 y(all)32 b(the)e(audio)h(pac)m(k)m(ets)h(con)m(tain)f(the)g(same)g (SSR)m(C)e(iden)m(ti\014er)i(\(that)g(of)g(the)f(mixer\).)0 2355 y Fl(End)35 b(system:)46 b Fo(An)34 b(application)i(that)g (generates)g(the)f(con)m(ten)m(t)i(to)e(b)s(e)f(sen)m(t)i(in)e(R)-8 b(TP)35 b(pac)m(k)m(ets)i(and/or)d(con-)227 2467 y(sumes)c(the)h(con)m (ten)m(t)i(of)e(receiv)m(ed)h(R)-8 b(TP)30 b(pac)m(k)m(ets.)44 b(An)30 b(end)g(system)h(can)g(act)h(as)f(one)g(or)g(more)g(sync)m (hro-)227 2580 y(nization)h(sources)e(in)g(a)h(particular)g(R)-8 b(TP)30 b(session,)h(but)e(t)m(ypically)j(only)f(one.)0 2768 y Fl(Mixer:)46 b Fo(An)40 b(in)m(termediate)i(system)f(that)g (receiv)m(es)h(R)-8 b(TP)40 b(pac)m(k)m(ets)j(from)d(one)g(or)h(more)g (sources,)i(p)s(ossibly)227 2881 y(c)m(hanges)26 b(the)f(data)g (format,)i(com)m(bines)e(the)g(pac)m(k)m(ets)i(in)d(some)h(manner)f (and)g(then)h(forw)m(ards)f(a)h(new)f(R)-8 b(TP)227 2994 y(pac)m(k)m(et.)61 b(Since)37 b(the)f(timing)h(among)g(m)m(ultiple)g (input)f(sources)g(will)h(not)f(generally)i(b)s(e)e(sync)m(hronized,) 227 3107 y(the)c(mixer)f(will)h(mak)m(e)h(timing)f(adjustmen)m(ts)f (among)h(the)f(streams)h(and)f(generate)i(its)f(o)m(wn)f(timing)h(for) 227 3220 y(the)k(com)m(bined)g(stream.)57 b(Th)m(us,)36 b(all)h(data)f(pac)m(k)m(ets)i(originating)f(from)e(a)h(mixer)g(will)g (b)s(e)f(iden)m(ti\014ed)h(as)227 3333 y(ha)m(ving)31 b(the)g(mixer)f(as)h(their)f(sync)m(hronization)h(source.)0 3520 y Fl(T)-9 b(ranslator:)46 b Fo(An)24 b(in)m(termediate)i(system)f (that)h(forw)m(ards)e(R)-8 b(TP)24 b(pac)m(k)m(ets)j(with)d(their)h (sync)m(hronization)h(source)227 3633 y(iden)m(ti\014er)44 b(in)m(tact.)81 b(Examples)43 b(of)h(translators)g(include)f(devices)h (that)g(con)m(v)m(ert)h(enco)s(dings)e(without)227 3746 y(mixing,)31 b(replicators)g(from)f(m)m(ulticast)i(to)f(unicast,)g(and) f(application-lev)m(el)k(\014lters)c(in)g(\014rew)m(alls.)0 3934 y Fl(Monitor:)46 b Fo(An)32 b(application)i(that)f(receiv)m(es)h (R)-8 b(TCP)32 b(pac)m(k)m(ets)i(sen)m(t)f(b)m(y)g(participan)m(ts)g (in)f(an)h(R)-8 b(TP)32 b(session,)h(in)227 4046 y(particular)e(the)h (reception)f(rep)s(orts,)g(and)f(estimates)i(the)g(curren)m(t)e(qualit) m(y)i(of)f(service)h(for)f(distribution)227 4159 y(monitoring,)c(fault) e(diagnosis)g(and)f(long-term)i(statistics.)41 b(The)24 b(monitor)h(function)g(is)f(lik)m(ely)j(to)e(b)s(e)f(built)227 4272 y(in)m(to)38 b(the)f(application\(s\))h(participating)g(in)f(the)f (session,)j(but)d(ma)m(y)h(also)h(b)s(e)e(a)h(separate)h(application) 227 4385 y(that)28 b(do)s(es)f(not)h(otherwise)f(participate)i(and)e (do)s(es)g(not)g(send)g(or)g(receiv)m(e)i(the)f(R)-8 b(TP)27 b(data)h(pac)m(k)m(ets)h(\(since)227 4498 y(they)e(are)g(on)g (a)g(separate)h(p)s(ort\).)39 b(These)27 b(are)g(called)h Fk(thir)-5 b(d-p)g(arty)30 b Fo(monitors.)40 b(It)27 b(is)f(also)i(acceptable)h(for)e(a)227 4611 y(third-part)m(y)e(monitor) g(to)h(receiv)m(e)g(the)f(R)-8 b(TP)25 b(data)g(pac)m(k)m(ets)i(but)d (not)h(send)f(R)-8 b(TCP)24 b(pac)m(k)m(ets)j(or)e(otherwise)227 4724 y(b)s(e)30 b(coun)m(ted)h(in)f(the)h(session.)0 4912 y Fl(Non-R)-9 b(TP)36 b(means:)45 b Fo(Proto)s(cols)29 b(and)e(mec)m(hanisms)g(that)h(ma)m(y)g(b)s(e)e(needed)h(in)g(addition) h(to)g(R)-8 b(TP)27 b(to)h(pro)m(vide)227 5024 y(a)i(usable)f(service.) 42 b(In)28 b(particular,)i(for)g(m)m(ultimedia)g(conferences,)g(a)g (con)m(trol)h(proto)s(col)f(ma)m(y)g(distribute)227 5137 y(m)m(ulticast)k(addresses)e(and)g(k)m(eys)i(for)e(encryption,)h (negotiate)i(the)e(encryption)g(algorithm)g(to)h(b)s(e)d(used,)227 5250 y(and)22 b(de\014ne)g(dynamic)g(mappings)g(b)s(et)m(w)m(een)h(R)-8 b(TP)23 b(pa)m(yload)g(t)m(yp)s(e)g(v)-5 b(alues)23 b(and)f(the)g(pa)m (yload)i(formats)f(they)227 5363 y(represen)m(t)37 b(for)f(formats)g (that)h(do)f(not)h(ha)m(v)m(e)g(a)g(prede\014ned)e(pa)m(yload)i(t)m(yp) s(e)f(v)-5 b(alue.)59 b(Examples)37 b(of)f(suc)m(h)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(10])p eop %%Page: 11 11 11 10 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(proto)s(cols)22 b(include)e(the)h(Session)g (Initiation)h(Proto)s(col)g(\(SIP\))f(\(RF)m(C)g(3261)i([13)q(]\),)g (ITU)e(Recommendation)227 511 y(H.323)43 b([14)q(])f(and)f (applications)h(using)f(SDP)g(\(RF)m(C)h(2327)h([15)q(]\),)i(suc)m(h)c (as)g(R)-8 b(TSP)41 b(\(RF)m(C)h(2326)h([16)q(]\).)227 624 y(F)-8 b(or)43 b(simple)e(applications,)46 b(electronic)e(mail)e (or)g(a)g(conference)h(database)f(ma)m(y)h(also)f(b)s(e)f(used.)74 b(The)227 737 y(sp)s(eci\014cation)31 b(of)g(suc)m(h)f(proto)s(cols)h (and)f(mec)m(hanisms)h(is)f(outside)h(the)f(scop)s(e)h(of)f(this)g(do)s (cumen)m(t.)0 1063 y Fm(4.)135 b(Byte)45 b(Order,)g(Alignmen)l(t,)i (and)d(Time)h(F)-11 b(ormat)0 1305 y Fo(All)29 b(in)m(teger)h(\014elds) e(are)h(carried)g(in)f(net)m(w)m(ork)i(b)m(yte)f(order,)g(that)g(is,)g (most)g(signi\014can)m(t)g(b)m(yte)h(\(o)s(ctet\))g(\014rst.)40 b(This)0 1418 y(b)m(yte)34 b(order)e(is)i(commonly)f(kno)m(wn)g(as)g (big-endian.)49 b(The)33 b(transmission)f(order)h(is)g(describ)s(ed)f (in)h(detail)h(in)f([3)q(,)0 1531 y(App)s(endix)c(A].)i(Unless)f (otherwise)h(noted,)g(n)m(umeric)f(constan)m(ts)h(are)g(in)f(decimal)h (\(base)g(10\).)0 1683 y(All)f(header)g(data)g(is)g(aligned)g(to)g(its) g(natural)g(length,)g(i.e.,)i(16-bit)e(\014elds)g(are)g(aligned)g(on)f (ev)m(en)i(o\013sets,)g(32-bit)0 1796 y(\014elds)26 b(are)i(aligned)g (at)f(o\013sets)h(divisible)f(b)m(y)g(four,)g(etc.)41 b(Octets)28 b(designated)g(as)f(padding)f(ha)m(v)m(e)i(the)f(v)-5 b(alue)28 b(zero.)0 1948 y(W)-8 b(allclo)s(c)m(k)29 b(time)d (\(absolute)g(date)h(and)50 b(time\))26 b(is)g(represen)m(ted)f(using)g (the)h(timestamp)g(format)g(of)g(the)f(Net)m(w)m(ork)0 2061 y(Time)38 b(Proto)s(col)i(\(NTP\),)f(whic)m(h)g(is)f(in)g(seconds) h(relativ)m(e)h(to)f(0h)g(UTC)f(on)g(1)h(Jan)m(uary)f(1900)i([4)q(].)65 b(The)38 b(full)0 2174 y(resolution)h(NTP)f(timestamp)h(is)g(a)f (64-bit)i(unsigned)d(\014xed-p)s(oin)m(t)i(n)m(um)m(b)s(er)e(with)h (the)h(in)m(teger)g(part)g(in)f(the)0 2286 y(\014rst)j(32)i(bits)f(and) g(the)g(fractional)h(part)f(in)g(the)g(last)h(32)g(bits.)76 b(In)41 b(some)i(\014elds)e(where)h(a)g(more)h(compact)0 2399 y(represen)m(tation)f(is)g(appropriate,)i(only)e(the)g(middle)f (32)h(bits)f(are)h(used;)k(that)c(is,)j(the)c(lo)m(w)i(16)f(bits)f(of)h (the)0 2512 y(in)m(teger)33 b(part)f(and)f(the)h(high)f(16)i(bits)e(of) h(the)g(fractional)h(part.)45 b(The)31 b(high)g(16)i(bits)f(of)f(the)h (in)m(teger)h(part)f(m)m(ust)0 2625 y(b)s(e)e(determined)g(indep)s (enden)m(tly)-8 b(.)0 2777 y(An)29 b(implemen)m(tation)j(is)e(not)g (required)f(to)h(run)f(the)h(Net)m(w)m(ork)h(Time)f(Proto)s(col)h(in)f (order)f(to)i(use)e(R)-8 b(TP.)40 b(Other)0 2890 y(time)26 b(sources,)g(or)f(none)f(at)i(all,)h(ma)m(y)e(b)s(e)f(used)h(\(see)g (the)g(description)g(of)g(the)g(NTP)g(timestamp)g(\014eld)g(in)f (Section)0 3003 y(6.4.1\).)43 b(Ho)m(w)m(ev)m(er,)31 b(running)d(NTP)h(ma)m(y)h(b)s(e)f(useful)g(for)g(sync)m(hronizing)h (streams)f(transmitted)h(from)f(separate)0 3116 y(hosts.)0 3268 y(The)h(NTP)g(timestamp)h(will)f(wrap)g(around)f(to)i(zero)g(some) g(time)g(in)f(the)g(y)m(ear)h(2036,)i(but)c(for)h(R)-8 b(TP)31 b(purp)s(oses,)0 3381 y(only)36 b(di\013erences)h(b)s(et)m(w)m (een)g(pairs)f(of)g(NTP)g(timestamps)h(are)g(used.)57 b(So)36 b(long)h(as)g(the)f(pairs)g(of)g(timestamps)0 3494 y(can)28 b(b)s(e)f(assumed)h(to)g(b)s(e)g(within)f(68)i(y)m(ears)f (of)g(eac)m(h)h(other,)g(using)f(mo)s(dular)f(arithmetic)i(for)f (subtractions)g(and)0 3607 y(comparisons)i(mak)m(es)i(the)e(wraparound) f(irrelev)-5 b(an)m(t.)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(11])p eop %%Page: 12 12 12 11 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fm(5.)135 b(R)-11 b(TP)44 b(Data)i(T)-11 b(ransfer)45 b(Proto)t(col)0 644 y Fn(5.1)112 b(R)-9 b(TP)36 b(Fixed)j(Header)f(Fields)0 855 y Fo(The)30 b(R)-8 b(TP)30 b(header)g(has)g(the)h(follo)m(wing)h(format:)382 1081 y Fh(0)906 b(1)h(2)f(3)382 1194 y(0)47 b(1)h(2)f(3)h(4)f(5)h(6)f (7)g(8)h(9)f(0)h(1)f(2)h(3)f(4)h(5)f(6)h(7)f(8)g(9)h(0)f(1)h(2)f(3)h(4) f(5)h(6)f(7)h(8)f(9)g(0)h(1)334 1307 y(+-+-+-+-+-+-+-+-+-+-+-+-+)o(-+-) o(+-+-)o(+-+-)o(+-+)o(-+-+)o(-+-+)o(-+-)o(+-+-)o(+-+-)o(+-+)o(-+-+)334 1420 y(|V=2|P|X|)93 b(CC)143 b(|M|)238 b(PT)285 b(|)334 b(sequence)46 b(number)428 b(|)334 1533 y(+-+-+-+-+-+-+-+-+-+-+-+-+)o (-+-)o(+-+-)o(+-+-)o(+-+)o(-+-+)o(-+-+)o(-+-)o(+-+-)o(+-+-)o(+-+)o (-+-+)334 1646 y(|)1288 b(timestamp)f(|)334 1759 y (+-+-+-+-+-+-+-+-+-+-+-+-+)o(-+-)o(+-+-)o(+-+-)o(+-+)o(-+-+)o(-+-+)o (-+-)o(+-+-)o(+-+-)o(+-+)o(-+-+)334 1872 y(|)525 b(synchronization)43 b(source)k(\(SSRC\))f(identifier)570 b(|)334 1985 y (+=+=+=+=+=+=+=+=+=+=+=+=+)o(=+=)o(+=+=)o(+=+=)o(+=+)o(=+=+)o(=+=+)o (=+=)o(+=+=)o(+=+=)o(+=+)o(=+=+)334 2098 y(|)j(contributing)44 b(source)i(\(CSRC\))g(identifiers)618 b(|)334 2211 y(|)1384 b(....)1431 b(|)334 2323 y(+-+-+-+-+-+-+-+-+-+-+-+-+)o(-+-)o(+-+-)o (+-+-)o(+-+)o(-+-+)o(-+-+)o(-+-)o(+-+-)o(+-+-)o(+-+)o(-+-+)0 2566 y Fo(The)25 b(\014rst)g(t)m(w)m(elv)m(e)j(o)s(ctets)f(are)f (presen)m(t)f(in)g(ev)m(ery)i(R)-8 b(TP)25 b(pac)m(k)m(et,)k(while)c (the)h(list)g(of)g(CSR)m(C)f(iden)m(ti\014ers)g(is)h(presen)m(t)0 2679 y(only)k(when)g(inserted)g(b)m(y)g(a)h(mixer.)41 b(The)30 b(\014elds)f(ha)m(v)m(e)j(the)f(follo)m(wing)g(meaning:)0 2906 y Fl(v)m(ersion)36 b(\(V\):)45 b Fo(2)30 b(bits)227 3019 y(This)i(\014eld)f(iden)m(ti\014es)i(the)f(v)m(ersion)h(of)f(R)-8 b(TP.)46 b(The)31 b(v)m(ersion)i(de\014ned)e(b)m(y)h(this)g(sp)s (eci\014cation)h(is)f(t)m(w)m(o)i(\(2\).)227 3132 y(\(The)29 b(v)-5 b(alue)29 b(1)g(is)f(used)g(b)m(y)h(the)f(\014rst)g(draft)g(v)m (ersion)h(of)g(R)-8 b(TP)29 b(and)f(the)g(v)-5 b(alue)29 b(0)g(is)g(used)f(b)m(y)g(the)h(proto)s(col)227 3245 y(initially)j(implemen)m(ted)f(in)f(the)h(\\v)-5 b(at")32 b(audio)e(to)s(ol.\))0 3432 y Fl(padding)35 b(\(P\):)46 b Fo(1)30 b(bit)227 3545 y(If)36 b(the)g(padding)f(bit)h(is)g(set,)j (the)d(pac)m(k)m(et)i(con)m(tains)f(one)f(or)g(more)h(additional)g (padding)e(o)s(ctets)i(at)g(the)227 3658 y(end)h(whic)m(h)f(are)i(not)f (part)f(of)i(the)f(pa)m(yload.)64 b(The)37 b(last)i(o)s(ctet)h(of)e (the)g(padding)f(con)m(tains)i(a)f(coun)m(t)h(of)227 3771 y(ho)m(w)d(man)m(y)f(padding)g(o)s(ctets)i(should)d(b)s(e)h (ignored,)i(including)f(itself.)112 b(P)m(adding)36 b(ma)m(y)g(b)s(e)f (needed)g(b)m(y)227 3884 y(some)h(encryption)g(algorithms)g(with)f (\014xed)g(blo)s(c)m(k)h(sizes)g(or)g(for)f(carrying)h(sev)m(eral)h(R) -8 b(TP)35 b(pac)m(k)m(ets)i(in)f(a)227 3997 y(lo)m(w)m(er-la)m(y)m(er) e(proto)s(col)d(data)g(unit.)0 4185 y Fl(extension)k(\(X\):)45 b Fo(1)31 b(bit)227 4298 y(If)26 b(the)g(extension)h(bit)f(is)h(set,)g (the)g(\014xed)e(header)h Fi(must)f Fo(b)s(e)h(follo)m(w)m(ed)i(b)m(y)e (exactly)i(one)e(header)g(extension,)227 4410 y(with)k(a)h(format)g (de\014ned)e(in)h(Section)h(5.3.1.)0 4598 y Fl(CSR)m(C)j(coun)m(t)i (\(CC\):)44 b Fo(4)31 b(bits)227 4711 y(The)f(CSR)m(C)g(coun)m(t)h(con) m(tains)g(the)g(n)m(um)m(b)s(er)e(of)h(CSR)m(C)g(iden)m(ti\014ers)g (that)h(follo)m(w)h(the)e(\014xed)g(header.)0 4899 y Fl(mark)m(er)35 b(\(M\):)45 b Fo(1)31 b(bit)227 5012 y(The)37 b(in)m(terpretation)h(of)f(the)g(mark)m(er)g(is)g(de\014ned)e (b)m(y)i(a)g(pro\014le.)60 b(It)37 b(is)g(in)m(tended)f(to)i(allo)m(w)g (signi\014can)m(t)227 5124 y(ev)m(en)m(ts)g(suc)m(h)f(as)g(frame)f(b)s (oundaries)f(to)j(b)s(e)e(mark)m(ed)h(in)f(the)h(pac)m(k)m(et)i (stream.)60 b(A)37 b(pro\014le)f Fi(ma)-6 b(y)38 b Fo(de\014ne)227 5237 y(additional)32 b(mark)m(er)e(bits)h(or)f(sp)s(ecify)h(that)g (there)f(is)h(no)f(mark)m(er)h(bit)g(b)m(y)f(c)m(hanging)h(the)g(n)m (um)m(b)s(er)e(of)i(bits)227 5350 y(in)f(the)h(pa)m(yload)g(t)m(yp)s(e) g(\014eld)f(\(see)h(Section)g(5.3\).)0 5656 y(Sc)m(h)m(ulzrinne,)f(et)h (al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(12])p eop %%Page: 13 13 13 12 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fl(pa)m(yload)35 b(t)m(yp)s(e)g(\(PT\):)45 b Fo(7)31 b(bits)227 511 y(This)h(\014eld)f(iden)m(ti\014es)i(the)f (format)g(of)g(the)h(R)-8 b(TP)31 b(pa)m(yload)i(and)f(determines)g (its)g(in)m(terpretation)i(b)m(y)e(the)227 624 y(application.)41 b(A)26 b(pro\014le)g Fi(ma)-6 b(y)27 b Fo(sp)s(ecify)52 b(a)27 b(default)f(static)i(mapping)e(of)g(pa)m(yload)h(t)m(yp)s(e)g (co)s(des)f(to)h(pa)m(yload)227 737 y(formats.)39 b(Additional)24 b(pa)m(yload)g(t)m(yp)s(e)g(co)s(des)f Fi(ma)-6 b(y)25 b Fo(b)s(e)d(de\014ned)g(dynamically)i(through)f(non-R)-8 b(TP)23 b(means)227 850 y(\(see)32 b(Section)g(3\).)44 b(A)31 b(set)h(of)f(default)g(mappings)g(for)g(audio)g(and)f(video)i (is)f(sp)s(eci\014ed)g(in)f(the)i(companion)227 963 y(RF)m(C)h(3551)g ([1)q(].)46 b(An)32 b(R)-8 b(TP)31 b(source)i Fi(ma)-6 b(y)33 b Fo(c)m(hange)g(the)f(pa)m(yload)h(t)m(yp)s(e)f(during)f(a)h (session,)h(but)e(this)h(\014eld)227 1076 y Fi(should)h(not)d Fo(b)s(e)f(used)60 b(for)30 b(m)m(ultiplexing)i(separate)f(media)g (streams)f(\(see)h(Section)h(5.2\).)227 1226 y(A)f(receiv)m(er)h Fi(must)d Fo(ignore)i(pac)m(k)m(ets)h(with)e(pa)m(yload)i(t)m(yp)s(es)e (that)h(it)g(do)s(es)f(not)g(understand.)0 1414 y Fl(sequence)36 b(n)m(um)m(b)s(er:)46 b Fo(16)31 b(bits)227 1527 y(The)36 b(sequence)g(n)m(um)m(b)s(er)f(incremen)m(ts)h(b)m(y)g(one)g(for)f(eac) m(h)j(R)-8 b(TP)35 b(data)i(pac)m(k)m(et)h(sen)m(t,)g(and)d(ma)m(y)h(b) s(e)g(used)227 1640 y(b)m(y)31 b(the)h(receiv)m(er)h(to)f(detect)g(pac) m(k)m(et)h(loss)f(and)f(to)h(restore)f(pac)m(k)m(et)j(sequence.)43 b(The)31 b(initial)i(v)-5 b(alue)31 b(of)h(the)227 1753 y(sequence)40 b(n)m(um)m(b)s(er)e Fi(should)g Fo(b)s(e)h(random)g (\(unpredictable\))h(to)g(mak)m(e)g(kno)m(wn-plain)m(text)h(attac)m(ks) h(on)227 1866 y(encryption)31 b(more)h(di\016cult,)g(ev)m(en)g(if)f (the)g(source)h(itself)g(do)s(es)f(not)h(encrypt)f(according)h(to)g (the)f(metho)s(d)227 1978 y(in)f(Section)g(9.1,)62 b(b)s(ecause)29 b(the)h(pac)m(k)m(ets)i(ma)m(y)f(\015o)m(w)e(through)h(a)g(translator)g (that)h(do)s(es.)40 b(T)-8 b(ec)m(hniques)30 b(for)227 2091 y(c)m(ho)s(osing)h(unpredictable)f(n)m(um)m(b)s(ers)f(are)i (discussed)f(in)g([17)q(].)0 2279 y Fl(timestamp:)45 b Fo(32)31 b(bits)227 2392 y(The)h(timestamp)i(re\015ects)f(the)g (sampling)f(instan)m(t)h(of)g(the)g(\014rst)f(o)s(ctet)i(in)e(the)h(R) -8 b(TP)33 b(data)g(pac)m(k)m(et.)49 b(The)227 2505 y(sampling)35 b(instan)m(t)h Fi(must)e Fo(b)s(e)g(deriv)m(ed)h(from)f(a)i(clo)s(c)m (k)g(that)g(incremen)m(ts)f(monotonically)i(and)d(linearly)227 2618 y(in)j(time)h(to)g(allo)m(w)g(sync)m(hronization)g(and)f(jitter)h (calculations)h(\(see)f(Section)g(6.4.1\).)63 b(The)36 b(resolution)227 2731 y(of)g(the)h(clo)s(c)m(k)g Fi(must)e Fo(b)s(e)h(su\016cien)m(t)g(for)g(the)g(desired)g(sync)m(hronization)h (accuracy)g(and)e(for)h(measuring)227 2844 y(pac)m(k)m(et)30 b(arriv)-5 b(al)28 b(jitter)g(\(one)g(tic)m(k)h(p)s(er)e(video)h(frame) g(is)f(t)m(ypically)j(not)e(su\016cien)m(t\).)40 b(The)27 b(clo)s(c)m(k)i(frequency)227 2956 y(is)f(dep)s(enden)m(t)f(on)h(the)g (format)h(of)f(data)h(carried)f(as)g(pa)m(yload)h(and)e(is)i(sp)s (eci\014ed)e(statically)j(in)e(the)g(pro\014le)227 3069 y(or)j(pa)m(yload)i(format)e(sp)s(eci\014cation)h(that)g(de\014nes)e (the)h(format,)h(or)f Fi(ma)-6 b(y)32 b Fo(b)s(e)f(sp)s(eci\014ed)f (dynamically)i(for)227 3182 y(pa)m(yload)c(formats)f(de\014ned)f (through)g(non-R)-8 b(TP)26 b(means.)39 b(If)27 b(R)-8 b(TP)26 b(pac)m(k)m(ets)j(are)e(generated)h(p)s(erio)s(dically)-8 b(,)227 3295 y(the)40 b(nominal)g(sampling)f(instan)m(t)h(as)g (determined)f(from)g(the)h(sampling)f(clo)s(c)m(k)i(is)f(to)g(b)s(e)f (used,)i(not)f(a)227 3408 y(reading)32 b(of)f(the)h(system)f(clo)s(c)m (k.)45 b(As)32 b(an)f(example,)h(for)g(\014xed-rate)f(audio)h(the)f (timestamp)h(clo)s(c)m(k)h(w)m(ould)227 3521 y(lik)m(ely)24 b(incremen)m(t)g(b)m(y)e(one)h(for)g(eac)m(h)h(sampling)e(p)s(erio)s (d.)37 b(If)22 b(an)h(audio)g(application)h(reads)e(blo)s(c)m(ks)h(co)m (v)m(ering)227 3634 y(160)39 b(sampling)e(p)s(erio)s(ds)f(from)g(the)i (input)e(device,)k(the)d(timestamp)h(w)m(ould)f(b)s(e)f(increased)i(b)m (y)f(160)h(for)227 3747 y(eac)m(h)i(suc)m(h)e(blo)s(c)m(k,)k (regardless)d(of)f(whether)g(the)h(blo)s(c)m(k)g(is)g(transmitted)g(in) f(a)h(pac)m(k)m(et)i(or)d(dropp)s(ed)f(as)227 3860 y(silen)m(t.)227 4010 y(The)29 b(initial)i(v)-5 b(alue)30 b(of)g(the)f(timestamp)h Fi(should)e Fo(b)s(e)58 b(random,)29 b(as)h(for)f(the)h(sequence)g(n)m (um)m(b)s(er.)39 b(Sev)m(eral)227 4123 y(consecutiv)m(e)27 b(R)-8 b(TP)25 b(pac)m(k)m(ets)h(will)50 b(ha)m(v)m(e)26 b(equal)g(timestamps)f(if)g(they)g(are)g(\(logically\))k(generated)c (at)h(once,)227 4236 y(e.g.,)i(b)s(elong)e(to)g(the)g(same)g(video)g (frame.)39 b(Consecutiv)m(e)27 b(R)-8 b(TP)25 b(pac)m(k)m(ets)j Fi(ma)-6 b(y)26 b Fo(con)m(tain)h(timestamps)f(that)227 4349 y(are)33 b(not)g(monotonic)g(if)g(the)f(data)h(is)g(not)f (transmitted)h(in)f(the)h(order)f(it)h(w)m(as)g(sampled,)f(as)h(in)f (the)h(case)227 4462 y(of)i(MPEG)g(in)m(terp)s(olated)h(video)f (frames.)53 b(\(The)34 b(sequence)i(n)m(um)m(b)s(ers)d(of)h(the)h(pac)m (k)m(ets)i(as)e(transmitted)227 4575 y(will)c(still)g(b)s(e)f (monotonic.\))227 4725 y(R)-8 b(TP)39 b(timestamps)g(from)f(di\013eren) m(t)h(media)g(streams)g(ma)m(y)h(adv)-5 b(ance)39 b(at)h(di\013eren)m (t)f(rates)g(and)f(usually)227 4838 y(ha)m(v)m(e)k(indep)s(enden)m(t,)g (random)e(o\013sets.)73 b(Therefore,)43 b(although)e(these)g (timestamps)g(are)g(su\016cien)m(t)g(to)227 4951 y(reconstruct)29 b(the)f(timing)h(of)f(a)h(single)g(stream,)g(directly)g(comparing)f(R) -8 b(TP)28 b(timestamps)h(from)e(di\013eren)m(t)227 5064 y(media)41 b(is)f(not)h(e\013ectiv)m(e)i(for)d(sync)m(hronization.)72 b(Instead,)43 b(for)d(eac)m(h)h(medium)f(the)g(R)-8 b(TP)40 b(timestamp)227 5176 y(is)j(related)h(to)g(the)f(sampling)g(instan)m(t) h(b)m(y)f(pairing)g(it)g(with)g(a)g(timestamp)h(from)f(a)g(reference)h (clo)s(c)m(k)227 5289 y(\(w)m(allclo)s(c)m(k\))31 b(that)d(represen)m (ts)f(the)g(time)h(when)e(the)i(data)g(corresp)s(onding)e(to)i(the)g(R) -8 b(TP)27 b(timestamp)h(w)m(as)227 5402 y(sampled.)70 b(The)40 b(reference)g(clo)s(c)m(k)i(is)e(shared)g(b)m(y)g(all)h(media) f(to)h(b)s(e)f(sync)m(hronized.)70 b(The)39 b(timestamp)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(13])p eop %%Page: 14 14 14 13 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(pairs)k(are)g(not)g(transmitted)g(in)g(ev)m (ery)g(data)h(pac)m(k)m(et,)i(but)c(at)h(a)g(lo)m(w)m(er)i(rate)e(in)g (R)-8 b(TCP)33 b(SR)g(pac)m(k)m(ets)j(as)227 511 y(describ)s(ed)30 b(in)g(Section)h(6.4.)227 662 y(The)d(sampling)h(instan)m(t)g(is)g(c)m (hosen)g(as)g(the)f(p)s(oin)m(t)h(of)g(reference)g(for)f(the)h(R)-8 b(TP)28 b(timestamp)h(b)s(ecause)g(it)g(is)227 775 y(kno)m(wn)g(to)h (the)g(transmitting)g(endp)s(oin)m(t)e(and)h(has)g(a)h(common)g (de\014nition)f(for)g(all)h(media,)g(indep)s(enden)m(t)227 888 y(of)g(enco)s(ding)g(dela)m(ys)h(or)f(other)g(pro)s(cessing.)40 b(The)29 b(purp)s(ose)f(is)i(to)h(allo)m(w)g(sync)m(hronized)f(presen)m (tation)h(of)227 1000 y(all)h(media)e(sampled)g(at)h(the)g(same)g (time.)227 1151 y(Applications)j(transmitting)f(stored)f(data)i(rather) e(than)g(data)h(sampled)g(in)f(real)h(time)g(t)m(ypically)h(use)f(a)227 1264 y(virtual)g(presen)m(tation)g(timeline)g(deriv)m(ed)g(from)e(w)m (allclo)s(c)m(k)k(time)e(to)g(determine)f(when)f(the)i(next)f(frame)227 1377 y(or)g(other)g(unit)f(of)h(eac)m(h)h(medium)e(in)g(the)h(stored)g (data)g(should)f(b)s(e)g(presen)m(ted.)44 b(In)31 b(this)h(case,)h(the) f(R)-8 b(TP)227 1489 y(timestamp)28 b(w)m(ould)f(re\015ect)g(the)g (presen)m(tation)h(time)g(for)f(eac)m(h)h(unit.)39 b(That)27 b(is,)h(the)f(R)-8 b(TP)27 b(timestamp)g(for)227 1602 y(eac)m(h)36 b(unit)f(w)m(ould)f(b)s(e)g(related)i(to)f(the)g(w)m (allclo)s(c)m(k)j(time)d(at)h(whic)m(h)e(the)h(unit)f(b)s(ecomes)i (curren)m(t)e(on)h(the)227 1715 y(virtual)g(presen)m(tation)g (timeline.)53 b(Actual)36 b(presen)m(tation)f(o)s(ccurs)f(some)h(time)g (later)g(as)f(determined)g(b)m(y)227 1828 y(the)d(receiv)m(er.)227 1978 y(An)36 b(example)g(describing)f(liv)m(e)i(audio)f(narration)g(of) f(prerecorded)g(video)h(illustrates)h(the)f(signi\014cance)227 2091 y(of)j(c)m(ho)s(osing)g(the)g(sampling)g(instan)m(t)g(as)g(the)g (reference)g(p)s(oin)m(t.)65 b(In)38 b(this)g(scenario,)k(the)d(video)g (w)m(ould)227 2204 y(b)s(e)29 b(presen)m(ted)h(lo)s(cally)h(for)f(the)g (narrator)g(to)g(view)g(and)f(w)m(ould)h(b)s(e)f(sim)m(ultaneously)h (transmitted)g(using)227 2317 y(R)-8 b(TP)g(.)33 b(The)f(\\sampling)g (instan)m(t")i(of)e(a)h(video)f(frame)h(transmitted)f(in)g(R)-8 b(TP)32 b(w)m(ould)g(b)s(e)g(established)g(b)m(y)227 2430 y(referencing)g(its)h(timestamp)f(to)h(the)f(w)m(allclo)s(c)m(k)i (time)f(when)e(that)h(video)g(frame)g(w)m(as)g(presen)m(ted)g(to)h(the) 227 2543 y(narrator.)50 b(The)33 b(sampling)g(instan)m(t)h(for)f(the)h (audio)g(R)-8 b(TP)33 b(pac)m(k)m(ets)i(con)m(taining)g(the)e (narrator's)h(sp)s(eec)m(h)227 2656 y(w)m(ould)j(b)s(e)f(established)h (b)m(y)g(referencing)g(the)g(same)g(w)m(allclo)s(c)m(k)j(time)d(when)f (the)h(audio)g(w)m(as)g(sampled.)227 2769 y(The)g(audio)f(and)h(video)g (ma)m(y)g(ev)m(en)h(b)s(e)e(transmitted)h(b)m(y)g(di\013eren)m(t)g (hosts)g(if)g(the)g(reference)g(clo)s(c)m(ks)h(on)227 2882 y(the)28 b(t)m(w)m(o)h(hosts)f(are)g(sync)m(hronized)f(b)m(y)h (some)g(means)f(suc)m(h)h(as)g(NTP)-8 b(.)27 b(A)h(receiv)m(er)h(can)f (then)g(sync)m(hronize)227 2995 y(presen)m(tation)44 b(of)g(the)f(audio)g(and)f(video)i(pac)m(k)m(ets)h(b)m(y)e(relating)h (their)f(R)-8 b(TP)43 b(timestamps)g(using)g(the)227 3108 y(timestamp)31 b(pairs)f(in)g(R)-8 b(TCP)30 b(SR)g(pac)m(k)m(ets.) 0 3295 y Fl(SSR)m(C:)46 b Fo(32)31 b(bits)227 3408 y(The)43 b(SSR)m(C)e(\014eld)i(iden)m(ti\014es)g(the)g(sync)m(hronization)h (source.)78 b(This)42 b(iden)m(ti\014er)h Fi(should)e Fo(b)s(e)85 b(c)m(hosen)227 3521 y(randomly)-8 b(,)31 b(with)g(the)g(in)m(ten)m(t)h(that)g(no)e(t)m(w)m(o)j(sync)m (hronization)e(sources)g(within)g(the)g(same)g(R)-8 b(TP)31 b(session)227 3634 y(will)d(ha)m(v)m(e)h(the)f(same)g(SSR)m(C)e(iden)m (ti\014er.)40 b(An)27 b(example)h(algorithm)h(for)e(generating)i(a)f (random)f(iden)m(ti\014er)227 3747 y(is)e(presen)m(ted)f(in)g(App)s (endix)f(A.6.)39 b(Although)25 b(the)g(probabilit)m(y)g(of)f(m)m (ultiple)h(sources)g(c)m(ho)s(osing)g(the)g(same)227 3860 y(iden)m(ti\014er)32 b(is)f(lo)m(w,)i(all)g(R)-8 b(TP)31 b(implemen)m(tations)i(m)m(ust)e(b)s(e)g(prepared)f(to)j (detect)f(and)f(resolv)m(e)i(collisions.)227 3973 y(Section)27 b(8)g(describ)s(es)f(the)h(probabilit)m(y)f(of)h(collision)h(along)g (with)e(a)g(mec)m(hanism)h(for)f(resolving)h(collisions)227 4086 y(and)j(detecting)h(R)-8 b(TP-lev)m(el)32 b(forw)m(arding)d(lo)s (ops)h(based)g(on)g(the)g(uniqueness)f(of)h(the)g(SSR)m(C)f(iden)m (ti\014er.)40 b(If)227 4198 y(a)34 b(source)g(c)m(hanges)h(its)f (source)g(transp)s(ort)f(address,)h(it)g(m)m(ust)g(also)g(c)m(ho)s(ose) h(a)f(new)g(SSR)m(C)e(iden)m(ti\014er)i(to)227 4311 y(a)m(v)m(oid)e(b)s (eing)e(in)m(terpreted)h(as)f(a)h(lo)s(op)s(ed)f(source)h(\(see)g (Section)g(8.2\).)0 4499 y Fl(CSR)m(C)j(list:)46 b Fo(0)31 b(to)g(15)g(items,)g(32)g(bits)g(eac)m(h)227 4612 y(The)36 b(CSR)m(C)g(list)h(iden)m(ti\014es)f(the)h(con)m(tributing)g(sources)f (for)g(the)h(pa)m(yload)g(con)m(tained)g(in)f(this)h(pac)m(k)m(et.)227 4725 y(The)f(n)m(um)m(b)s(er)f(of)h(iden)m(ti\014ers)g(is)h(giv)m(en)g (b)m(y)f(the)g(CC)g(\014eld.)57 b(If)36 b(there)h(are)f(more)g(than)g (15)h(con)m(tributing)227 4838 y(sources,)31 b(only)g(15)h(can)f(b)s(e) f(iden)m(ti\014ed.)42 b(CSR)m(C)30 b(iden)m(ti\014ers)g(are)h(inserted) g(b)m(y)g(mixers)f(\(see)i(Section)f(7.1\),)227 4951 y(using)e(the)h(SSR)m(C)e(iden)m(ti\014ers)i(of)f(con)m(tributing)h (sources.)41 b(F)-8 b(or)30 b(example,)g(for)g(audio)f(pac)m(k)m(ets)i (the)f(SSR)m(C)227 5064 y(iden)m(ti\014ers)23 b(of)g(all)g(sources)g (that)g(w)m(ere)g(mixed)g(together)h(to)f(create)i(a)e(pac)m(k)m(et)h (are)f(listed,)i(allo)m(wing)g(correct)227 5176 y(talk)m(er)32 b(indication)f(at)g(the)g(receiv)m(er.)0 5656 y(Sc)m(h)m(ulzrinne,)f (et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(14])p eop %%Page: 15 15 15 14 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fn(5.2)112 b(Multiplexing)39 b(R)-9 b(TP)36 b(Sessions)0 609 y Fo(F)-8 b(or)37 b(e\016cien)m(t)h (proto)s(col)g(pro)s(cessing,)g(the)e(n)m(um)m(b)s(er)f(of)i(m)m (ultiplexing)g(p)s(oin)m(ts)g(should)e(b)s(e)h(minimized,)i(as)f(de-)0 722 y(scrib)s(ed)d(in)g(the)i(in)m(tegrated)g(la)m(y)m(er)h(pro)s (cessing)d(design)h(principle)g([10)q(].)54 b(In)34 b(R)-8 b(TP)g(,)36 b(m)m(ultiplexing)f(is)g(pro)m(vided)0 835 y(b)m(y)42 b(the)g(destination)h(transp)s(ort)e(address)g(\(net)m(w)m (ork)j(address)d(and)g(p)s(ort)h(n)m(um)m(b)s(er\))f(whic)m(h)h(is)g (di\013eren)m(t)g(for)0 948 y(eac)m(h)35 b(R)-8 b(TP)34 b(session.)52 b(F)-8 b(or)35 b(example,)h(in)e(a)g(teleconference)i (comp)s(osed)e(of)h(audio)f(and)f(video)i(media)f(enco)s(ded)0 1061 y(separately)-8 b(,)41 b(eac)m(h)e(medium)e Fi(should)f Fo(b)s(e)h(carried)h(in)f(a)h(separate)h(R)-8 b(TP)37 b(session)h(with)f(its)h(o)m(wn)g(destination)0 1174 y(transp)s(ort)30 b(address.)0 1326 y(Separate)21 b(audio)f(and)g (video)h(streams)g Fi(should)h(not)40 b Fo(b)s(e)20 b(carried)g(in)g(a) h(single)g(R)-8 b(TP)20 b(session)h(and)e(dem)m(ultiplexed)0 1439 y(based)34 b(on)g(the)h(pa)m(yload)g(t)m(yp)s(e)g(or)f(SSR)m(C)f (\014elds.)53 b(In)m(terlea)m(ving)36 b(pac)m(k)m(ets)g(with)e (di\013eren)m(t)h(R)-8 b(TP)34 b(media)69 b(t)m(yp)s(es)0 1552 y(but)30 b(using)g(the)g(same)h(SSR)m(C)e(w)m(ould)h(in)m(tro)s (duce)h(sev)m(eral)g(problems:)111 1772 y(1.)46 b(If,)34 b(sa)m(y)-8 b(,)35 b(t)m(w)m(o)f(audio)f(streams)g(shared)f(the)h(same) h(R)-8 b(TP)32 b(session)h(and)g(the)g(same)g(SSR)m(C)f(v)-5 b(alue,)34 b(and)f(one)227 1884 y(w)m(ere)e(to)h(c)m(hange)g(enco)s (dings)e(and)g(th)m(us)g(acquire)h(a)g(di\013eren)m(t)h(R)-8 b(TP)30 b(pa)m(yload)i(t)m(yp)s(e,)f(there)g(w)m(ould)f(b)s(e)g(no)227 1997 y(general)i(w)m(a)m(y)f(of)g(iden)m(tifying)g(whic)m(h)f(stream)g (had)g(c)m(hanged)h(enco)s(dings.)111 2182 y(2.)46 b(An)41 b(SSR)m(C)g(is)g(de\014ned)g(to)h(iden)m(tify)g(a)g(single)g(timing)g (and)e(sequence)i(n)m(um)m(b)s(er)e(space.)75 b(In)m(terlea)m(ving)227 2295 y(m)m(ultiple)37 b(pa)m(yload)g(t)m(yp)s(es)g(w)m(ould)f(require)g (di\013eren)m(t)g(timing)h(spaces)g(if)f(the)g(media)h(clo)s(c)m(k)g (rates)g(di\013er)227 2408 y(and)24 b(w)m(ould)f(require)h(di\013eren)m (t)h(sequence)f(n)m(um)m(b)s(er)f(spaces)h(to)h(tell)g(whic)m(h)f(pa)m (yload)h(t)m(yp)s(e)f(su\013ered)f(pac)m(k)m(et)227 2521 y(loss.)111 2706 y(3.)46 b(The)37 b(R)-8 b(TCP)37 b(sender)f(and)h (receiv)m(er)h(rep)s(orts)f(\(see)h(Section)g(6.4\))h(can)e(only)h (describ)s(e)e(one)i(timing)g(and)227 2819 y(sequence)31 b(n)m(um)m(b)s(er)e(space)i(p)s(er)e(SSR)m(C)h(and)g(do)g(not)g(carry)h (a)f(pa)m(yload)i(t)m(yp)s(e)e(\014eld.)111 3004 y(4.)46 b(An)29 b(R)-8 b(TP)29 b(mixer)g(w)m(ould)g(not)g(b)s(e)f(able)i(to)g (com)m(bine)f(in)m(terlea)m(v)m(ed)j(streams)d(of)h(incompatible)g (media)f(in)m(to)227 3116 y(one)i(stream.)111 3301 y(5.)46 b(Carrying)29 b(m)m(ultiple)i(media)f(in)f(one)h(R)-8 b(TP)30 b(session)g(precludes:)40 b(the)29 b(use)h(of)g(di\013eren)m(t) g(net)m(w)m(ork)h(paths)e(or)227 3414 y(net)m(w)m(ork)j(resource)g (allo)s(cations)h(if)f(appropriate;)g(reception)g(of)f(a)h(subset)f(of) g(the)h(media)g(if)f(desired,)g(for)227 3527 y(example)g(just)f(audio)g (if)g(video)h(w)m(ould)f(exceed)h(the)f(a)m(v)-5 b(ailable)33 b(bandwidth;)28 b(and)i(receiv)m(er)i(implemen)m(ta-)227 3640 y(tions)26 b(that)f(use)g(separate)h(pro)s(cesses)f(for)g(the)g (di\013eren)m(t)h(media,)h(whereas)d(using)h(separate)h(R)-8 b(TP)25 b(sessions)227 3753 y(p)s(ermits)30 b(either)h(single-)g(or)f (m)m(ultiple-pro)s(cess)h(implemen)m(tations.)0 3973 y(Using)i(a)h(di\013eren)m(t)g(SSR)m(C)e(for)h(eac)m(h)i(medium)d(but)h (sending)f(them)i(in)f(the)g(same)h(R)-8 b(TP)33 b(session)g(w)m(ould)g (a)m(v)m(oid)0 4086 y(the)e(\014rst)e(three)i(problems)e(but)h(not)h (the)f(last)h(t)m(w)m(o.)0 4238 y(On)f(the)h(other)g(hand,)f(m)m (ultiplexing)h(m)m(ultiple)h(related)f(sources)g(of)g(the)g Fk(same)g Fo(medium)f(in)g(one)h(R)-8 b(TP)31 b(session)0 4351 y(using)36 b(di\013eren)m(t)h(SSR)m(C)e(v)-5 b(alues)36 b(is)h(the)f(norm)g(for)g(m)m(ulticast)i(sessions.)58 b(The)36 b(problems)g(listed)g(ab)s(o)m(v)m(e)i(don't)0 4464 y(apply:)i(an)29 b(R)-8 b(TP)29 b(mixer)g(can)h(com)m(bine)g(m)m (ultiple)g(audio)g(sources,)f(for)g(example,)i(and)e(the)g(same)h (treatmen)m(t)h(is)0 4576 y(applicable)36 b(for)f(all)h(of)f(them.)55 b(It)36 b(ma)m(y)g(also)g(b)s(e)e(appropriate)h(to)h(m)m(ultiplex)g (streams)g(of)f(the)g(same)h(medium)0 4689 y(using)30 b(di\013eren)m(t)h(SSR)m(C)e(v)-5 b(alues)31 b(in)f(other)g(scenarios)i (where)d(the)i(last)g(t)m(w)m(o)h(problems)e(do)g(not)g(apply)-8 b(.)0 4971 y Fn(5.3)112 b(Pro\014le-Sp)s(eci\014c)39 b(Mo)s(di\014cations)g(to)e(the)g(R)-9 b(TP)36 b(Header)0 5181 y Fo(The)d(existing)i(R)-8 b(TP)33 b(data)i(pac)m(k)m(et)h(header) d(is)h(b)s(eliev)m(ed)g(to)h(b)s(e)e(complete)i(for)e(the)h(set)h(of)e (functions)h(required)0 5294 y(in)g(common)h(across)h(all)f(the)g (application)h(classes)g(that)f(R)-8 b(TP)35 b(migh)m(t)g(supp)s(ort.) 52 b(Ho)m(w)m(ev)m(er,)38 b(in)d(k)m(eeping)g(with)0 5407 y(the)f(ALF)g(design)g(principle,)h(the)f(header)g Fi(ma)-6 b(y)35 b Fo(b)s(e)e(tailored)j(through)d(mo)s(di\014cations)h (or)g(additions)g(de\014ned)0 5656 y(Sc)m(h)m(ulzrinne,)c(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(15])p eop %%Page: 16 16 16 15 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(in)h(a)h(pro\014le)g(sp)s(eci\014cation)g (while)g(still)h(allo)m(wing)g(pro\014le-indep)s(enden)m(t)e (monitoring)h(and)f(recording)h(to)s(ols)g(to)0 511 y(function.)136 738 y Fj(\017)46 b Fo(The)22 b(mark)m(er)g(bit)g(and)f(pa)m(yload)i(t)m (yp)s(e)g(\014eld)e(carry)h(pro\014le-sp)s(eci\014c)g(information,)i (but)d(they)i(are)f(allo)s(cated)227 851 y(in)32 b(the)g(\014xed)g (header)g(since)g(man)m(y)g(applications)i(are)e(exp)s(ected)h(to)f (need)g(them)g(and)g(migh)m(t)h(otherwise)227 964 y(ha)m(v)m(e)d(to)f (add)f(another)h(32-bit)g(w)m(ord)f(just)g(to)h(hold)f(them.)40 b(The)28 b(o)s(ctet)i(con)m(taining)g(these)f(\014elds)f Fi(ma)-6 b(y)30 b Fo(b)s(e)227 1077 y(rede\014ned)i(b)m(y)g(a)h (pro\014le)g(to)g(suit)g(di\013eren)m(t)g(requiremen)m(ts,)g(for)g (example)g(with)f(more)h(or)g(few)m(er)g(mark)m(er)227 1190 y(bits.)51 b(If)33 b(there)h(are)g(an)m(y)g(mark)m(er)f(bits,)i (one)f Fi(should)e Fo(b)s(e)h(lo)s(cated)i(in)e(the)h(most)g (signi\014can)m(t)g(bit)g(of)g(the)227 1303 y(o)s(ctet)29 b(since)f(pro\014le-indep)s(enden)m(t)e(monitors)h(ma)m(y)h(b)s(e)f (able)g(to)i(observ)m(e)e(a)h(correlation)h(b)s(et)m(w)m(een)f(pac)m(k) m(et)227 1416 y(loss)j(patterns)f(and)g(the)h(mark)m(er)f(bit.)136 1603 y Fj(\017)46 b Fo(Additional)f(information)g(that)g(is)g(required) f(for)g(a)h(particular)f(pa)m(yload)i(format,)j(suc)m(h)44 b(as)h(a)f(video)227 1716 y(enco)s(ding,)29 b Fi(should)e Fo(b)s(e)h(carried)h(in)f(the)h(pa)m(yload)h(section)f(of)g(the)g(pac)m (k)m(et.)42 b(This)28 b(migh)m(t)h(b)s(e)f(in)g(a)h(header)227 1829 y(that)f(is)g(alw)m(a)m(ys)g(presen)m(t)g(at)g(the)f(start)h(of)g (the)f(pa)m(yload)i(section,)g(or)e(migh)m(t)h(b)s(e)f(indicated)h(b)m (y)f(a)h(reserv)m(ed)227 1942 y(v)-5 b(alue)31 b(in)f(the)h(data)g (pattern.)136 2130 y Fj(\017)46 b Fo(If)27 b(a)g(particular)g(class)h (of)f(applications)h(needs)e(additional)i(functionalit)m(y)g(indep)s (enden)m(t)e(of)h(pa)m(yload)h(for-)227 2243 y(mat,)i(the)f(pro\014le)f (under)f(whic)m(h)i(those)g(applications)h(op)s(erate)f Fi(should)e Fo(de\014ne)h(additional)h(\014xed)f(\014elds)227 2355 y(to)23 b(follo)m(w)h(immediately)f(after)g(the)g(SSR)m(C)e (\014eld)h(of)g(the)g(existing)i(\014xed)d(header.)38 b(Those)22 b(applications)i(will)227 2468 y(b)s(e)i(able)i(to)f(quic)m (kly)h(and)e(directly)i(access)g(the)f(additional)h(\014elds)e(while)h (pro\014le-indep)s(enden)m(t)f(monitors)227 2581 y(or)31 b(recorders)f(can)g(still)i(pro)s(cess)e(the)g(R)-8 b(TP)30 b(pac)m(k)m(ets)j(b)m(y)d(in)m(terpreting)h(only)f(the)h(\014rst)f(t)m (w)m(elv)m(e)i(o)s(ctets.)0 2808 y(If)37 b(it)i(turns)d(out)i(that)h (additional)g(functionalit)m(y)g(is)f(needed)f(in)h(common)g(across)g (all)h(pro\014les,)h(then)d(a)h(new)0 2921 y(v)m(ersion)31 b(of)f(R)-8 b(TP)31 b(should)e(b)s(e)h(de\014ned)f(to)i(mak)m(e)g(a)g (p)s(ermanen)m(t)f(c)m(hange)h(to)g(the)g(\014xed)f(header.)0 3200 y Fl(5.3.1)105 b(R)-9 b(TP)36 b(Header)f(Extension)0 3411 y Fo(An)c(extension)h(mec)m(hanism)f(is)h(pro)m(vided)f(to)h(allo) m(w)h(individual)d(implemen)m(tations)j(to)f(exp)s(erimen)m(t)f(with)g (new)0 3524 y(pa)m(yload-format-indep)s(enden)m(t)26 b(functions)f(that)h(require)g(additional)g(information)g(to)g(b)s(e)f (carried)g(in)g(the)h(R)-8 b(TP)0 3637 y(data)34 b(pac)m(k)m(et)g (header.)49 b(This)32 b(mec)m(hanism)h(is)g(designed)f(so)i(that)f(the) g(header)g(extension)g(ma)m(y)h(b)s(e)e(ignored)h(b)m(y)0 3750 y(other)e(in)m(terop)s(erating)g(implemen)m(tations)h(that)f(ha)m (v)m(e)g(not)g(b)s(een)f(extended.)0 3902 y(Note)46 b(that)g(this)f (header)g(extension)h(is)f(in)m(tended)g(only)h(for)f(limited)g(use.)85 b(Most)46 b(p)s(oten)m(tial)h(uses)e(of)g(this)0 4015 y(mec)m(hanism)26 b(w)m(ould)f(b)s(e)g(b)s(etter)h(done)f(another)h(w)m (a)m(y)-8 b(,)28 b(using)d(the)h(metho)s(ds)f(describ)s(ed)f(in)i(the)f (previous)h(section.)0 4128 y(F)-8 b(or)26 b(example,)h(a)f (pro\014le-sp)s(eci\014c)f(extension)g(to)h(the)g(\014xed)e(header)h (is)g(less)h(exp)s(ensiv)m(e)f(to)h(pro)s(cess)f(b)s(ecause)g(it)h(is)0 4240 y(not)h(conditional)i(nor)d(in)h(a)g(v)-5 b(ariable)28 b(lo)s(cation.)41 b(Additional)28 b(information)f(required)f(for)h(a)h (particular)f(pa)m(yload)0 4353 y(format)36 b Fi(should)j(not)c Fo(use)h(this)g(header)g(extension,)i(but)e Fi(should)e Fo(b)s(e)h(carried)i(in)e(the)h(pa)m(yload)i(section)f(of)0 4466 y(the)31 b(pac)m(k)m(et.)382 4693 y Fh(0)906 b(1)h(2)f(3)382 4806 y(0)47 b(1)h(2)f(3)h(4)f(5)h(6)f(7)g(8)h(9)f(0)h(1)f(2)h(3)f(4)h (5)f(6)h(7)f(8)g(9)h(0)f(1)h(2)f(3)h(4)f(5)h(6)f(7)h(8)f(9)g(0)h(1)334 4919 y(+-+-+-+-+-+-+-+-+-+-+-+-+)o(-+-)o(+-+-)o(+-+-)o(+-+)o(-+-+)o (-+-+)o(-+-)o(+-+-)o(+-+-)o(+-+)o(-+-+)334 5032 y(|)286 b(defined)46 b(by)h(profile)332 b(|)525 b(length)667 b(|)334 5145 y(+-+-+-+-+-+-+-+-+-+-+-+-+)o(-+-)o(+-+-)o(+-+-)o(+-+)o (-+-+)o(-+-+)o(-+-)o(+-+-)o(+-+-)o(+-+)o(-+-+)334 5258 y(|)1145 b(header)46 b(extension)1096 b(|)334 5371 y(|)1384 b(....)1431 b(|)0 5656 y Fo(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(16])p eop %%Page: 17 17 17 16 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 634 y(If)k(the)g(X)h(bit)f(in)g(the)g(R)-8 b(TP)34 b(header)g(is)h(one,)g(a)g(v)-5 b(ariable-length)36 b(header)e(extension)h Fi(must)e Fo(b)s(e)68 b(app)s(ended)32 b(to)0 747 y(the)d(R)-8 b(TP)29 b(header,)g(follo)m(wing)h(the)g(CSR)m (C)e(list)h(if)g(presen)m(t.)40 b(The)29 b(header)f(extension)i(con)m (tains)g(a)f(16-bit)i(length)0 860 y(\014eld)j(that)i(coun)m(ts)f(the)g (n)m(um)m(b)s(er)e(of)i(32-bit)h(w)m(ords)e(in)g(the)h(extension,)i (excluding)e(the)g(four-o)s(ctet)g(extension)0 973 y(header)25 b(\(therefore)h(zero)g(is)g(a)f(v)-5 b(alid)26 b(length\).)40 b(Only)25 b(a)g(single)h(extension)g(can)51 b(b)s(e)25 b(app)s(ended)f(to)i(the)f(R)-8 b(TP)25 b(data)0 1086 y(header.)45 b(T)-8 b(o)32 b(allo)m(w)h(m)m(ultiple)g(in)m(terop)s (erating)g(implemen)m(tations)g(to)g(eac)m(h)g(exp)s(erimen)m(t)e (indep)s(enden)m(tly)g(with)0 1198 y(di\013eren)m(t)f(header)e (extensions,)i(or)f(to)h(allo)m(w)h(a)e(particular)h(implemen)m(tation) g(to)g(exp)s(erimen)m(t)f(with)g(more)g(than)0 1311 y(one)24 b(t)m(yp)s(e)g(of)f(header)h(extension,)i(the)d(\014rst)g(16)h(bits)g (of)g(the)f(header)h(extension)g(are)g(left)g(op)s(en)f(for)g (distinguishing)0 1424 y(iden)m(ti\014ers)34 b(or)f(parameters.)51 b(The)34 b(format)g(of)f(these)i(16)f(bits)g(is)f(to)i(b)s(e)e (de\014ned)f(b)m(y)i(the)g(pro\014le)f(sp)s(eci\014cation)0 1537 y(under)24 b(whic)m(h)h(the)h(implemen)m(tations)h(are)f(op)s (erating.)39 b(This)25 b(R)-8 b(TP)25 b(sp)s(eci\014cation)i(do)s(es)e (not)h(de\014ne)e(an)m(y)i(header)0 1650 y(extensions)31 b(itself.)0 1976 y Fm(6.)135 b(R)-11 b(TP)44 b(Con)l(trol)j(Proto)t (col)e(|)g(R)-11 b(TCP)0 2218 y Fo(The)42 b(R)-8 b(TP)42 b(con)m(trol)h(proto)s(col)h(\(R)-8 b(TCP\))42 b(is)g(based)g(on)g(the) h(p)s(erio)s(dic)e(transmission)h(of)g(con)m(trol)i(pac)m(k)m(ets)g(to) 0 2331 y(all)38 b(participan)m(ts)g(in)f(the)g(session,)i(using)e(the)g (same)h(distribution)e(mec)m(hanism)h(as)h(the)f(data)h(pac)m(k)m(ets.) 62 b(The)0 2444 y(underlying)29 b(proto)s(col)i Fi(must)e Fo(pro)m(vide)h(m)m(ultiplexing)g(of)h(the)f(data)g(and)g(con)m(trol)h (pac)m(k)m(ets,)h(for)e(example)g(using)0 2556 y(separate)h(p)s(ort)f (n)m(um)m(b)s(ers)f(with)h(UDP.)41 b(R)-8 b(TCP)30 b(p)s(erforms)f (four)h(functions:)111 2808 y(1.)46 b(The)38 b(primary)f(function)h(is) g(to)g(pro)m(vide)h(feedbac)m(k)f(on)g(the)g(qualit)m(y)i(of)e(the)g (data)h(distribution.)63 b(This)227 2921 y(is)36 b(an)f(in)m(tegral)i (part)e(of)h(the)f(R)-8 b(TP's)36 b(role)g(as)f(a)h(transp)s(ort)f (proto)s(col)h(and)f(is)g(related)h(to)h(the)e(\015o)m(w)h(and)227 3034 y(congestion)d(con)m(trol)g(functions)f(of)f(other)h(transp)s(ort) f(proto)s(cols)h(\(see)h(Section)f(10)h(on)e(the)h(requiremen)m(t)227 3147 y(for)22 b(congestion)i(con)m(trol\).)78 b(The)21 b(feedbac)m(k)i(ma)m(y)g(b)s(e)f(directly)h(useful)e(for)h(con)m(trol)i (of)f(adaptiv)m(e)g(enco)s(dings)227 3260 y([18)q(,)f(19],)i(but)c(exp) s(erimen)m(ts)h(with)f(IP)h(m)m(ulticasting)i(ha)m(v)m(e)f(sho)m(wn)e (that)h(it)h(is)f(also)h(critical)g(to)g(get)g(feedbac)m(k)227 3373 y(from)31 b(the)h(receiv)m(ers)h(to)f(diagnose)h(faults)e(in)h (the)g(distribution.)43 b(Sending)31 b(reception)h(feedbac)m(k)h(rep)s (orts)227 3486 y(to)e(all)h(participan)m(ts)f(allo)m(ws)h(one)f(who)f (is)g(observing)h(problems)e(to)j(ev)-5 b(aluate)32 b(whether)e(those)h (problems)227 3599 y(are)36 b(lo)s(cal)h(or)e(global.)58 b(With)36 b(a)g(distribution)f(mec)m(hanism)g(lik)m(e)i(IP)e(m)m (ulticast,)k(it)d(is)g(also)g(p)s(ossible)f(for)227 3711 y(an)41 b(en)m(tit)m(y)h(suc)m(h)f(as)g(a)g(net)m(w)m(ork)g(service)h (pro)m(vider)e(who)g(is)h(not)g(otherwise)g(in)m(v)m(olv)m(ed)i(in)d (the)h(session)227 3824 y(to)f(receiv)m(e)i(the)d(feedbac)m(k)h (information)g(and)f(act)h(as)g(a)g(third-part)m(y)f(monitor)h(to)g (diagnose)g(net)m(w)m(ork)227 3937 y(problems.)66 b(This)38 b(feedbac)m(k)i(function)f(is)g(p)s(erformed)e(b)m(y)i(the)g(R)-8 b(TCP)38 b(sender)h(and)f(receiv)m(er)i(rep)s(orts,)227 4050 y(describ)s(ed)30 b(b)s(elo)m(w)g(in)g(Section)h(6.4.)111 4238 y(2.)46 b(R)-8 b(TCP)43 b(carries)g(a)g(p)s(ersisten)m(t)g(transp) s(ort-lev)m(el)i(iden)m(ti\014er)e(for)f(an)h(R)-8 b(TP)43 b(source)g(called)h(the)f Fk(c)-5 b(anoni-)227 4351 y(c)g(al)41 b(name)e Fo(or)f(CNAME,)g(Section)h(6.5.1.)66 b(Since)38 b(the)h(SSR)m(C)e(iden)m(ti\014er)h(ma)m(y)h(c)m(hange)g(if)f(a)h (con\015ict)g(is)227 4464 y(disco)m(v)m(ered)j(or)e(a)h(program)g(is)f (restarted,)k(receiv)m(ers)e(require)e(the)g(CNAME)h(to)g(k)m(eep)g (trac)m(k)h(of)f(eac)m(h)227 4577 y(participan)m(t.)g(Receiv)m(ers)30 b(ma)m(y)f(also)g(require)e(the)i(CNAME)f(to)h(asso)s(ciate)h(m)m (ultiple)e(data)h(streams)f(from)227 4689 y(a)37 b(giv)m(en)h (participan)m(t)f(in)f(a)h(set)g(of)g(related)g(R)-8 b(TP)36 b(sessions,)j(for)d(example)h(to)g(sync)m(hronize)g(audio)g (and)227 4802 y(video.)48 b(In)m(ter-media)34 b(sync)m(hronization)f (also)h(requires)e(the)h(NTP)f(and)g(R)-8 b(TP)32 b(timestamps)h (included)f(in)227 4915 y(R)-8 b(TCP)30 b(pac)m(k)m(ets)i(b)m(y)f(data) g(senders.)111 5103 y(3.)46 b(The)35 b(\014rst)g(t)m(w)m(o)i(functions) f(require)f(that)h(all)h(participan)m(ts)f(send)f(R)-8 b(TCP)35 b(pac)m(k)m(ets,)k(therefore)d(the)g(rate)227 5216 y(m)m(ust)28 b(b)s(e)f(con)m(trolled)i(in)e(order)g(for)g(R)-8 b(TP)28 b(to)g(scale)h(up)d(to)i(a)g(large)h(n)m(um)m(b)s(er)d(of)i (participan)m(ts.)41 b(By)27 b(ha)m(ving)227 5329 y(eac)m(h)g (participan)m(t)g(send)e(its)h(con)m(trol)i(pac)m(k)m(ets)f(to)g(all)f (the)g(others,)h(eac)m(h)g(can)g(indep)s(enden)m(tly)d(observ)m(e)j (the)0 5656 y(Sc)m(h)m(ulzrinne,)j(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(17])p eop %%Page: 18 18 18 17 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(n)m(um)m(b)s(er)j(of)h(participan)m(ts.)52 b(This)32 b(n)m(um)m(b)s(er)h(is)h(used)f(to)h(calculate)i(the)e(rate)h (at)f(whic)m(h)g(the)g(pac)m(k)m(ets)i(are)227 511 y(sen)m(t,)31 b(as)g(explained)g(in)f(Section)h(6.2.)111 699 y(4.)46 b(A)34 b(fourth,)g Fi(optional)e Fo(function)h(is)g(to)i(con)m(v)m(ey)g (minimal)f(session)f(con)m(trol)i(information,)g(for)e(example)227 812 y(participan)m(t)27 b(iden)m(ti\014cation)h(to)f(b)s(e)f(displa)m (y)m(ed)g(in)g(the)g(user)g(in)m(terface.)41 b(This)25 b(is)h(most)h(lik)m(ely)g(to)g(b)s(e)f(useful)227 925 y(in)21 b(\\lo)s(osely)i(con)m(trolled")g(sessions)e(where)f (participan)m(ts)i(en)m(ter)g(and)e(lea)m(v)m(e)k(without)d(mem)m(b)s (ership)e(con)m(trol)227 1038 y(or)28 b(parameter)h(negotiation.)42 b(R)-8 b(TCP)27 b(serv)m(es)i(as)f(a)g(con)m(v)m(enien)m(t)i(c)m (hannel)f(to)f(reac)m(h)h(all)g(the)f(participan)m(ts,)227 1151 y(but)33 b(it)i(is)f(not)g(necessarily)h(exp)s(ected)f(to)g(supp)s (ort)e(all)j(the)f(con)m(trol)i(comm)m(unication)f(requiremen)m(ts)f (of)227 1264 y(an)40 b(application.)72 b(A)41 b(higher-lev)m(el)h (session)e(con)m(trol)i(proto)s(col,)i(whic)m(h)c(is)g(b)s(ey)m(ond)g (the)g(scop)s(e)h(of)f(this)227 1377 y(do)s(cumen)m(t,)31 b(ma)m(y)g(b)s(e)e(needed.)0 1628 y(F)-8 b(unctions)22 b(1-3)h Fi(should)d Fo(b)s(e)g(used)h(in)g(all)i(en)m(vironmen)m(ts,)h (but)d(particularly)h(in)f(the)h(IP)f(m)m(ulticast)i(en)m(vironmen)m (t.)0 1741 y(R)-8 b(TP)28 b(application)h(designers)f Fi(should)e Fo(a)m(v)m(oid)k(mec)m(hanisms)e(that)g(can)h(only)f(w)m (ork)g(in)f(unicast)i(mo)s(de)e(and)h(will)0 1854 y(not)k(scale)h(to)g (larger)g(n)m(um)m(b)s(ers.)43 b(T)-8 b(ransmission)32 b(of)g(R)-8 b(TCP)31 b Fi(ma)-6 b(y)33 b Fo(b)s(e)e(con)m(trolled)j (separately)f(for)f(senders)f(and)0 1967 y(receiv)m(ers,)41 b(as)c(describ)s(ed)g(in)g(Section)h(6.2,)i(for)d(cases)i(suc)m(h)e(as) g(unidirectional)h(links)f(where)g(feedbac)m(k)h(from)0 2080 y(receiv)m(ers)32 b(is)e(not)h(p)s(ossible.)364 2307 y(Non-normativ)m(e)h(note:)41 b(In)29 b(the)i(m)m(ulticast)h (routing)e(approac)m(h)h(called)g(Source-Sp)s(eci\014c)f(Mul-)227 2420 y(ticast)35 b(\(SSM\),)f(there)g(is)f(only)h(one)f(sender)g(p)s (er)f(\\c)m(hannel")j(\(a)f(source)g(address,)g(group)f(address)227 2532 y(pair\),)i(and)d(receiv)m(ers)j(\(except)g(for)e(the)g(c)m (hannel)h(source\))g(cannot)f(use)g(m)m(ulticast)i(to)f(comm)m(uni-)227 2645 y(cate)39 b(directly)f(with)f(other)h(c)m(hannel)g(mem)m(b)s(ers.) 61 b(The)37 b(recommendations)h(here)f(accommo)s(date)227 2758 y(SSM)32 b(only)g(through)f(Section)i(6.2's)h(option)e(of)h (turning)e(o\013)i(receiv)m(ers')g(R)-8 b(TCP)32 b(en)m(tirely)-8 b(.)48 b(F)-8 b(uture)227 2871 y(w)m(ork)33 b(will)f(sp)s(ecify)g (adaptation)i(of)e(R)-8 b(TCP)32 b(for)g(SSM)f(so)i(that)f(feedbac)m(k) h(from)f(receiv)m(ers)i(can)e(b)s(e)227 2984 y(main)m(tained.)0 3267 y Fn(6.1)112 b(R)-9 b(TCP)36 b(P)m(ac)m(k)m(et)h(F)-9 b(ormat)0 3477 y Fo(This)30 b(sp)s(eci\014cation)h(de\014nes)e(sev)m (eral)j(R)-8 b(TCP)30 b(pac)m(k)m(et)i(t)m(yp)s(es)f(to)g(carry)f(a)h (v)-5 b(ariet)m(y)32 b(of)e(con)m(trol)i(information:)0 3704 y Fl(SR:)46 b Fo(Sender)f(rep)s(ort,)k(for)c(transmission)h(and)f (reception)i(statistics)g(from)e(participan)m(ts)i(that)g(are)f(activ)m (e)227 3817 y(senders)0 4005 y Fl(RR:)g Fo(Receiv)m(er)34 b(rep)s(ort,)f(for)f(reception)h(statistics)h(from)e(participan)m(ts)h (that)g(are)g(not)g(activ)m(e)h(senders)e(and)f(in)227 4118 y(com)m(bination)h(with)e(SR)g(for)g(activ)m(e)j(senders)c(rep)s (orting)h(on)g(more)h(than)f(31)h(sources)0 4305 y Fl(SDES:)46 b Fo(Source)30 b(description)g(items,)h(including)f(CNAME)0 4493 y Fl(BYE:)46 b Fo(Indicates)30 b(end)g(of)h(participation)0 4681 y Fl(APP:)46 b Fo(Application-sp)s(eci\014c)32 b(functions)0 4907 y(Eac)m(h)43 b(R)-8 b(TCP)42 b(pac)m(k)m(et)j(b)s(egins)d(with)g (a)h(\014xed)e(part)i(similar)g(to)g(that)g(of)g(R)-8 b(TP)42 b(data)h(pac)m(k)m(ets,)48 b(follo)m(w)m(ed)c(b)m(y)0 5020 y(structured)27 b(elemen)m(ts)i(that)g Fi(ma)-6 b(y)29 b Fo(b)s(e)e(of)h(v)-5 b(ariable)29 b(length)f(according)h(to)g (the)f(pac)m(k)m(et)i(t)m(yp)s(e)e(but)f Fi(must)55 b Fo(end)27 b(on)0 5133 y(a)d(32-bit)h(b)s(oundary)-8 b(.)37 b(The)23 b(alignmen)m(t)i(requiremen)m(t)e(and)g(a)h(length)g(\014eld)f (in)h(the)f(\014xed)g(part)h(of)f(eac)m(h)i(pac)m(k)m(et)h(are)0 5246 y(included)d(to)i(mak)m(e)f(R)-8 b(TCP)24 b(pac)m(k)m(ets)h (\\stac)m(k)-5 b(able".)42 b(Multiple)24 b(R)-8 b(TCP)23 b(pac)m(k)m(ets)j(can)48 b(b)s(e)23 b(concatenated)j(without)0 5359 y(an)m(y)31 b(in)m(terv)m(ening)h(separators)f(to)h(form)e(a)h Fk(c)-5 b(omp)g(ound)36 b(R)-7 b(TCP)33 b(p)-5 b(acket)31 b Fo(that)h(is)f(sen)m(t)g(in)f(a)i(single)f(pac)m(k)m(et)i(of)e(the)0 5656 y(Sc)m(h)m(ulzrinne,)f(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(18])p eop %%Page: 19 19 19 18 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(lo)m(w)m(er)k(la)m(y)m(er)g(proto)s(col,)h (for)d(example)h(UDP.)48 b(There)32 b(is)h(no)g(explicit)h(coun)m(t)f (of)g(individual)f(R)-8 b(TCP)32 b(pac)m(k)m(ets)i(in)0 511 y(the)g(comp)s(ound)e(pac)m(k)m(et)j(since)f(the)g(lo)m(w)m(er)g (la)m(y)m(er)h(proto)s(cols)g(are)f(exp)s(ected)f(to)i(pro)m(vide)e(an) h(o)m(v)m(erall)h(length)f(to)0 624 y(determine)c(the)h(end)f(of)g(the) h(comp)s(ound)e(pac)m(k)m(et.)0 776 y(Eac)m(h)36 b(individual)f(R)-8 b(TCP)36 b(pac)m(k)m(et)h(in)f(the)g(comp)s(ound)e(pac)m(k)m(et)j(ma)m (y)g(b)s(e)e(pro)s(cessed)g(indep)s(enden)m(tly)g(with)g(no)0 889 y(requiremen)m(ts)26 b(up)s(on)e(the)h(order)g(or)h(com)m(bination) h(of)e(pac)m(k)m(ets.)41 b(Ho)m(w)m(ev)m(er,)29 b(in)c(order)g(to)i(p)s (erform)d(the)h(functions)0 1002 y(of)31 b(the)f(proto)s(col,)i(the)e (follo)m(wing)i(constrain)m(ts)f(are)g(imp)s(osed:)136 1229 y Fj(\017)46 b Fo(Reception)26 b(statistics)h(\(in)e(SR)f(or)h (RR\))g(should)f(b)s(e)g(sen)m(t)i(as)f(often)g(as)g(bandwidth)e (constrain)m(ts)j(will)f(allo)m(w)227 1342 y(to)g(maximize)f(the)g (resolution)g(of)g(the)g(statistics,)j(therefore)d(eac)m(h)h(p)s(erio)s (dically)e(transmitted)h(comp)s(ound)227 1455 y(R)-8 b(TCP)30 b(pac)m(k)m(et)i Fi(must)60 b Fo(include)30 b(a)h(rep)s(ort)f(pac)m(k)m(et.)136 1642 y Fj(\017)46 b Fo(New)37 b(receiv)m(ers)i(need)e(to)g(receiv)m(e)i(the)e(CNAME)g (for)g(a)h(source)f(as)g(so)s(on)g(as)g(p)s(ossible)g(to)g(iden)m(tify) h(the)227 1755 y(source)25 b(and)g(to)g(b)s(egin)g(asso)s(ciating)i (media)e(for)g(purp)s(oses)e(suc)m(h)h(as)h(lip-sync,)i(so)e(eac)m(h)h (comp)s(ound)d(R)-8 b(TCP)227 1868 y(pac)m(k)m(et)37 b Fi(must)69 b Fo(also)36 b(include)f(the)g(SDES)f(CNAME)i(except)g (when)e(the)h(comp)s(ound)e(R)-8 b(TCP)35 b(pac)m(k)m(et)i(is)227 1981 y(split)31 b(for)f(partial)h(encryption)f(as)h(describ)s(ed)e(in)h (Section)i(9.1.)136 2169 y Fj(\017)46 b Fo(The)22 b(n)m(um)m(b)s(er)f (of)h(pac)m(k)m(et)j(t)m(yp)s(es)d(that)h(ma)m(y)g(app)s(ear)e(\014rst) h(in)g(the)g(comp)s(ound)f(pac)m(k)m(et)j(needs)e(to)46 b(b)s(e)21 b(limited)227 2282 y(to)35 b(increase)f(the)g(n)m(um)m(b)s (er)e(of)i(constan)m(t)h(bits)f(in)f(the)h(\014rst)f(w)m(ord)g(and)g (the)h(probabilit)m(y)g(of)g(successfully)227 2395 y(v)-5 b(alidating)29 b(R)-8 b(TCP)27 b(pac)m(k)m(ets)i(against)f (misaddressed)f(R)-8 b(TP)27 b(data)h(pac)m(k)m(ets)h(or)e(other)h (unrelated)f(pac)m(k)m(ets.)0 2621 y(Th)m(us,)37 b(all)h(R)-8 b(TCP)36 b(pac)m(k)m(ets)i Fi(must)e Fo(b)s(e)f(sen)m(t)i(in)g(a)g (comp)s(ound)e(pac)m(k)m(et)j(of)f(at)g(least)h(t)m(w)m(o)g(individual) e(pac)m(k)m(ets,)0 2734 y(with)30 b(the)h(follo)m(wing)g(format:)0 2961 y Fl(Encryption)k(pre\014x:)46 b Fo(If)f(and)f(only)h(if)g(the)g (comp)s(ound)f(pac)m(k)m(et)j(is)e(to)g(b)s(e)g(encrypted)f(according)i (to)g(the)227 3074 y(metho)s(d)33 b(in)f(Section)i(9.1,)h(it)f Fi(must)e Fo(b)s(e)65 b(pre\014xed)32 b(b)m(y)h(a)g(random)g(32-bit)h (quan)m(tit)m(y)g(redra)m(wn)e(for)h(ev)m(ery)227 3187 y(comp)s(ound)g(pac)m(k)m(et)i(transmitted.)52 b(If)33 b(padding)g(is)h(required)f(for)h(the)g(encryption,)g(it)h Fi(must)d Fo(b)s(e)i(added)227 3300 y(to)d(the)g(last)g(pac)m(k)m(et)i (of)d(the)h(comp)s(ound)e(pac)m(k)m(et.)0 3487 y Fl(SR)35 b(or)h(RR:)46 b Fo(The)33 b(\014rst)h(R)-8 b(TCP)33 b(pac)m(k)m(et)k (in)c(the)i(comp)s(ound)e(pac)m(k)m(et)j Fi(must)d Fo(alw)m(a)m(ys)i(b) s(e)f(a)h(rep)s(ort)e(pac)m(k)m(et)j(to)227 3600 y(facilitate)j(header) d(v)-5 b(alidation)37 b(as)f(describ)s(ed)f(in)g(App)s(endix)g(A.2.)58 b(This)35 b(is)h(true)f(ev)m(en)i(if)f(no)g(data)g(has)227 3713 y(b)s(een)30 b(sen)m(t)i(or)e(receiv)m(ed,)j(in)d(whic)m(h)h(case) g(an)g(empt)m(y)g(RR)g Fi(must)e Fo(b)s(e)61 b(sen)m(t,)32 b(and)e(ev)m(en)h(if)g(the)g(only)g(other)227 3826 y(R)-8 b(TCP)30 b(pac)m(k)m(et)i(in)f(the)f(comp)s(ound)f(pac)m(k)m(et)j(is)f (a)g(BYE.)0 4014 y Fl(Additional)k(RRs:)47 b Fo(If)19 b(the)i(n)m(um)m(b)s(er)e(of)h(sources)h(for)f(whic)m(h)g(reception)h (statistics)h(are)f(b)s(eing)e(rep)s(orted)h(exceeds)227 4127 y(31,)34 b(the)f(n)m(um)m(b)s(er)e(that)i(will)g(\014t)f(in)m(to)h (one)g(SR)e(or)i(RR)f(pac)m(k)m(et,)j(then)d(additional)h(RR)f(pac)m(k) m(ets)j Fi(should)227 4240 y Fo(follo)m(w)d(the)e(initial)i(rep)s(ort)e (pac)m(k)m(et.)0 4427 y Fl(SDES:)46 b Fo(An)31 b(SDES)g(pac)m(k)m(et)j (con)m(taining)f(a)g(CNAME)f(item)g Fi(must)f Fo(b)s(e)g(included)g(in) h(eac)m(h)h(comp)s(ound)d(R)-8 b(TCP)227 4540 y(pac)m(k)m(et,)44 b(except)c(as)f(noted)g(in)g(Section)g(9.1.)68 b(Other)38 b(source)i(description)f(items)g Fi(ma)-6 b(y)40 b Fo(optionally)h(b)s (e)227 4653 y(included)35 b(if)h(required)e(b)m(y)i(a)g(particular)g (application,)i(sub)5 b(ject)35 b(to)i(bandwidth)c(constrain)m(ts)k (\(see)f(Sec-)227 4766 y(tion)31 b(6.3.9\).)0 4954 y Fl(BYE)k(or)g(APP:)47 b Fo(Other)33 b(R)-8 b(TCP)33 b(pac)m(k)m(et)j(t) m(yp)s(es,)f(including)f(those)g(y)m(et)h(to)g(b)s(e)e(de\014ned,)h Fi(ma)-6 b(y)35 b Fo(follo)m(w)g(in)f(an)m(y)227 5066 y(order,)h(except)g(that)f(BYE)h Fi(should)d Fo(b)s(e)h(the)h(last)h (pac)m(k)m(et)h(sen)m(t)e(with)g(a)g(giv)m(en)h(SSR)m(C/CSR)m(C.)50 b(P)m(ac)m(k)m(et)227 5179 y(t)m(yp)s(es)31 b Fi(ma)-6 b(y)31 b Fo(app)s(ear)f(more)g(than)h(once.)0 5656 y(Sc)m(h)m (ulzrinne,)f(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(19])p eop %%Page: 20 20 20 19 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(An)e(individual)g(R)-8 b(TP)29 b(participan)m(t)h Fi(should)c Fo(send)i(only)h(one)g(comp)s(ound)e(R) -8 b(TCP)28 b(pac)m(k)m(et)j(p)s(er)d(rep)s(ort)g(in)m(terv)-5 b(al)0 511 y(in)24 b(order)f(for)h(the)h(R)-8 b(TCP)23 b(bandwidth)f(p)s(er)i(participan)m(t)h(to)g(b)s(e)e(estimated)i (correctly)h(\(see)f(Section)g(6.2\),)i(except)0 624 y(when)c(the)h(comp)s(ound)f(R)-8 b(TCP)24 b(pac)m(k)m(et)i(is)e(split) g(for)g(partial)h(encryption)f(as)h(describ)s(ed)e(in)g(Section)i(9.1.) 40 b(If)24 b(there)0 737 y(are)k(to)s(o)h(man)m(y)f(sources)g(to)g (\014t)g(all)h(the)f(necessary)g(RR)g(pac)m(k)m(ets)h(in)m(to)g(one)f (comp)s(ound)f(R)-8 b(TCP)27 b(pac)m(k)m(et)j(without)0 850 y(exceeding)j(the)f(maxim)m(um)f(transmission)h(unit)f(\(MTU\))h (of)g(the)g(net)m(w)m(ork)g(path,)g(then)g(only)f(the)h(subset)f(that)0 963 y(will)44 b(\014t)g(in)m(to)h(one)f(MTU)g Fi(should)e Fo(b)s(e)h(included)g(in)g(eac)m(h)i(in)m(terv)-5 b(al.)83 b(The)43 b(subsets)g Fi(should)f Fo(b)s(e)h(selected)0 1076 y(round-robin)29 b(across)h(m)m(ultiple)i(in)m(terv)-5 b(als)31 b(so)g(that)f(all)i(sources)e(are)h(rep)s(orted.)0 1228 y(It)44 b(is)g Fi(recommended)d Fo(that)k(translators)g(and)e (mixers)88 b(com)m(bine)45 b(individual)e(R)-8 b(TCP)43 b(pac)m(k)m(ets)j(from)e(the)0 1341 y(m)m(ultiple)i(sources)f(they)h (are)g(forw)m(arding)f(in)m(to)h(one)g(comp)s(ound)e(pac)m(k)m(et)j (whenev)m(er)e(feasible)h(in)f(order)g(to)0 1454 y(amortize)37 b(the)e(pac)m(k)m(et)i(o)m(v)m(erhead)f(\(see)g(Section)g(7\).)56 b(An)34 b(example)i(R)-8 b(TCP)35 b(comp)s(ound)e(pac)m(k)m(et)k(as)f (migh)m(t)g(b)s(e)0 1567 y(pro)s(duced)30 b(b)m(y)i(a)g(mixer)g(is)g (sho)m(wn)f(in)g(Fig.)i(1.)46 b(If)31 b(the)h(o)m(v)m(erall)i(length)e (of)g(a)g(comp)s(ound)f(pac)m(k)m(et)i(w)m(ould)f(exceed)0 1680 y(the)h(MTU)g(of)g(the)g(net)m(w)m(ork)h(path,)f(it)h Fi(should)64 b Fo(b)s(e)32 b(segmen)m(ted)i(in)m(to)g(m)m(ultiple)f (shorter)g(comp)s(ound)e(pac)m(k)m(ets)0 1793 y(to)h(b)s(e)e (transmitted)h(in)f(separate)i(pac)m(k)m(ets)h(of)e(the)g(underlying)e (proto)s(col.)43 b(This)30 b(do)s(es)h(not)g(impair)f(the)h(R)-8 b(TCP)0 1905 y(bandwidth)31 b(estimation)j(b)s(ecause)e(eac)m(h)i(comp) s(ound)d(pac)m(k)m(et)j(represen)m(ts)e(at)h(least)h(one)f(distinct)g (participan)m(t.)0 2018 y(Note)f(that)f(eac)m(h)g(of)g(the)f(comp)s (ound)f(pac)m(k)m(ets)j Fi(must)e Fo(b)s(egin)g(with)g(an)g(SR)g(or)g (RR)g(pac)m(k)m(et.)0 2170 y(An)d(implemen)m(tation)i Fi(should)54 b Fo(ignore)28 b(incoming)g(R)-8 b(TCP)27 b(pac)m(k)m(ets)j(with)d(t)m(yp)s(es)h(unkno)m(wn)e(to)i(it.)40 b(Additional)0 2283 y(R)-8 b(TCP)32 b(pac)m(k)m(et)j(t)m(yp)s(es)e(ma)m (y)g(b)s(e)g(registered)g(with)g(the)g(In)m(ternet)g(Assigned)g(Num)m (b)s(ers)e(Authorit)m(y)j(\(IANA\))g(as)0 2396 y(describ)s(ed)29 b(in)h(Section)i(15.)0 3438 y currentpoint currentpoint translate 0.84326 0.84326 scale neg exch neg exch translate 0 3438 a @beginspecial 0 @llx 0 @lly 555 @urx 134 @ury 5550 @rwi @setspecial %%BeginDocument: rtcp_packet.ps %!PS-Adobe-2.0 EPSF-2.0 %%Title: rtcp_packet.fig %%Creator: fig2dev Version 3.1 Patchlevel 1 %%CreationDate: Thu Nov 9 14:11:56 1995 %%For: hgs@lupus (Henning Schulzrinne) %%Orientation: Portrait %%BoundingBox: 0 0 555 134 %%Pages: 0 %%BeginSetup %%IncludeFeature: *PageSize Letter %%EndSetup %%EndComments /$F2psDict 200 dict def $F2psDict begin $F2psDict /mtrx matrix put /col-1 {} def /col0 {0.000 0.000 0.000 srgb} bind def /col1 {0.000 0.000 1.000 srgb} bind def /col2 {0.000 1.000 0.000 srgb} bind def /col3 {0.000 1.000 1.000 srgb} bind def /col4 {1.000 0.000 0.000 srgb} bind def /col5 {1.000 0.000 1.000 srgb} bind def /col6 {1.000 1.000 0.000 srgb} bind def /col7 {1.000 1.000 1.000 srgb} bind def /col8 {0.000 0.000 0.560 srgb} bind def /col9 {0.000 0.000 0.690 srgb} bind def /col10 {0.000 0.000 0.820 srgb} bind def /col11 {0.530 0.810 1.000 srgb} bind def /col12 {0.000 0.560 0.000 srgb} bind def /col13 {0.000 0.690 0.000 srgb} bind def /col14 {0.000 0.820 0.000 srgb} bind def /col15 {0.000 0.560 0.560 srgb} bind def /col16 {0.000 0.690 0.690 srgb} bind def /col17 {0.000 0.820 0.820 srgb} bind def /col18 {0.560 0.000 0.000 srgb} bind def /col19 {0.690 0.000 0.000 srgb} bind def /col20 {0.820 0.000 0.000 srgb} bind def /col21 {0.560 0.000 0.560 srgb} bind def /col22 {0.690 0.000 0.690 srgb} bind def /col23 {0.820 0.000 0.820 srgb} bind def /col24 {0.500 0.190 0.000 srgb} bind def /col25 {0.630 0.250 0.000 srgb} bind def /col26 {0.750 0.380 0.000 srgb} bind def /col27 {1.000 0.500 0.500 srgb} bind def /col28 {1.000 0.630 0.630 srgb} bind def /col29 {1.000 0.750 0.750 srgb} bind def /col30 {1.000 0.880 0.880 srgb} bind def /col31 {1.000 0.840 0.000 srgb} bind def end save -13.0 232.0 translate 1 -1 scale /clp {closepath} bind def /ef {eofill} bind def /gr {grestore} bind def /gs {gsave} bind def /l {lineto} bind def /m {moveto} bind def /n {newpath} bind def /s {stroke} bind def /slc {setlinecap} bind def /slj {setlinejoin} bind def /slw {setlinewidth} bind def /srgb {setrgbcolor} bind def /rot {rotate} bind def /sc {scale} bind def /tr {translate} bind def /tnt {dup dup currentrgbcolor 4 -2 roll dup 1 exch sub 3 -1 roll mul add 4 -2 roll dup 1 exch sub 3 -1 roll mul add 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} bind def /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 4 -2 roll mul srgb} bind def /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 10 setmiterlimit 0.06299 0.06299 sc 7.500 slw % Polyline n 330 2700 m 225 2700 225 3045 105 arcto 4 {pop} repeat 225 3150 570 3150 105 arcto 4 {pop} repeat 675 3150 675 2805 105 arcto 4 {pop} repeat 675 2700 330 2700 105 arcto 4 {pop} repeat clp gs 0.80 setgray ef gr gs col-1 s gr % Polyline n 7755 2700 m 7650 2700 7650 3045 105 arcto 4 {pop} repeat 7650 3150 8895 3150 105 arcto 4 {pop} repeat 9000 3150 9000 2805 105 arcto 4 {pop} repeat 9000 2700 7755 2700 105 arcto 4 {pop} repeat clp gs col-1 s gr % Polyline n 225 2700 m 225 3150 l 9000 3150 l 9000 2700 l gs col-1 s gr % Polyline n 780 2700 m 675 2700 675 3045 105 arcto 4 {pop} repeat 675 3150 3720 3150 105 arcto 4 {pop} repeat 3825 3150 3825 2805 105 arcto 4 {pop} repeat 3825 2700 780 2700 105 arcto 4 {pop} repeat clp gs col-1 s gr % Polyline n 3930 2700 m 3825 2700 3825 3045 105 arcto 4 {pop} repeat 3825 3150 7545 3150 105 arcto 4 {pop} repeat 7650 3150 7650 2805 105 arcto 4 {pop} repeat 7650 2700 3930 2700 105 arcto 4 {pop} repeat clp gs col-1 s gr % Polyline n 3930 2700 m 3825 2700 3825 3045 105 arcto 4 {pop} repeat 3825 3150 4170 3150 105 arcto 4 {pop} repeat 4275 3150 4275 2805 105 arcto 4 {pop} repeat 4275 2700 3930 2700 105 arcto 4 {pop} repeat clp gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 7755 2700 m 7650 2700 7650 3045 105 arcto 4 {pop} repeat 7650 3150 7995 3150 105 arcto 4 {pop} repeat 8100 3150 8100 2805 105 arcto 4 {pop} repeat 8100 2700 7755 2700 105 arcto 4 {pop} repeat clp gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 780 2700 m 675 2700 675 3045 105 arcto 4 {pop} repeat 675 3150 1020 3150 105 arcto 4 {pop} repeat 1125 3150 1125 2805 105 arcto 4 {pop} repeat 1125 2700 780 2700 105 arcto 4 {pop} repeat clp gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 225 3375 m 3915 3375 l gs col6 1.00 shd ef gr gs col-1 s gr n 345.00 3405.00 m 225.00 3375.00 l 345.00 3345.00 l 345.50 3375.50 l 345.00 3405.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 5310 3375 m 9000 3375 l gs col6 1.00 shd ef gr gs col-1 s gr n 8880.00 3345.00 m 9000.00 3375.00 l 8880.00 3405.00 l 8880.50 3375.50 l 8880.00 3345.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 5850 2700 m 5850 3150 l gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 3825 2025 m 5400 2025 l gs col6 1.00 shd ef gr gs col-1 s gr n 3945.00 2055.00 m 3825.00 2025.00 l 3945.00 1995.00 l 3945.50 2025.50 l 3945.00 2055.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 3825 1935 m 3825 2070 l gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 6075 2025 m 7650 2025 l gs col6 1.00 shd ef gr gs col-1 s gr n 7530.00 1995.00 m 7650.00 2025.00 l 7530.00 2055.00 l 7530.50 2025.50 l 7530.00 1995.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 450 1755 m 450 2970 l gs col6 1.00 shd ef gr gs col-1 s gr n 480.00 2850.00 m 450.00 2970.00 l 420.00 2850.00 l 450.50 2850.50 l 480.00 2850.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 675 2025 m 1980 2025 l gs col6 1.00 shd ef gr gs col-1 s gr n 795.00 2055.00 m 675.00 2025.00 l 795.00 1995.00 l 795.50 2025.50 l 795.00 2055.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 3825 2025 m 2610 2025 l gs col6 1.00 shd ef gr gs col-1 s gr n 3705.00 1995.00 m 3825.00 2025.00 l 3705.00 2055.00 l 3705.50 2025.50 l 3705.00 1995.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 675 1935 m 675 2115 l gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 7650 1935 m 7650 2070 l gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 2025 2700 m 2025 3150 l gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 2880 2700 m 2880 3150 l gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 7650 2025 m 8055 2025 l gs col6 1.00 shd ef gr gs col-1 s gr n 7770.00 2055.00 m 7650.00 2025.00 l 7770.00 1995.00 l 7770.50 2025.50 l 7770.00 2055.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 8595 2025 m 9000 2025 l gs col6 1.00 shd ef gr gs col-1 s gr n 8880.00 1995.00 m 9000.00 2025.00 l 8880.00 2055.00 l 8880.50 2025.50 l 8880.00 1995.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 9000 1935 m 9000 2070 l gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 225 3600 m 4050 3600 l gs col6 1.00 shd ef gr gs col-1 s gr n 345.00 3630.00 m 225.00 3600.00 l 345.00 3570.00 l 345.50 3600.50 l 345.00 3630.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 5175 3600 m 9000 3600 l gs col6 1.00 shd ef gr gs col-1 s gr n 8880.00 3570.00 m 9000.00 3600.00 l 8880.00 3630.00 l 8880.50 3600.50 l 8880.00 3570.00 l clp gs 0.00 setgray ef gr gs col-1 s gr /Times-Roman findfont 180.00 scalefont setfont 7875 3015 m gs 1 -1 sc (BYE) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 900 3015 m gs 1 -1 sc (SR) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 4050 3015 m gs 1 -1 sc (SDES) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 4455 3150 m gs 1 -1 sc 90.0 rot (SSRC) col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 4500 2925 m gs 1 -1 sc (CNAME) col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 5175 2925 m gs 1 -1 sc (PHONE) col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 7020 2925 m gs 1 -1 sc (LOC) col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 6300 2655 m gs 1 -1 sc (item) col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 4635 2655 m gs 1 -1 sc (item) col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 5310 2655 m gs 1 -1 sc (item) col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 4860 2430 m gs 1 -1 sc (chunk) col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 6795 2430 m gs 1 -1 sc (chunk) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 6975 2655 m gs 1 -1 sc (item) col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 5760 2070 m gs 1 -1 sc (packet) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 8325 2070 m gs 1 -1 sc (packet) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 225 1710 m gs 1 -1 sc (if encrypted: random 32-bit integer) col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 2295 2070 m gs 1 -1 sc (packet) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 8280 3150 m gs 1 -1 sc 90.0 rot (SSRC) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 8460 3150 m gs 1 -1 sc 90.0 rot (SSRC) col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 8550 2925 m gs 1 -1 sc (reason) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 6030 3150 m gs 1 -1 sc 90.0 rot (SSRC) col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 6120 2925 m gs 1 -1 sc (CNAME) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 1485 2925 m gs 1 -1 sc (sender) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 1485 3060 m gs 1 -1 sc (report) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 1305 3150 m gs 1 -1 sc 90.0 rot (SSRC) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 2205 3150 m gs 1 -1 sc 90.0 rot (SSRC) col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 2385 2655 m gs 1 -1 sc (receiver reports) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 3060 3150 m gs 1 -1 sc 90.0 rot (SSRC) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 3240 2970 m gs 1 -1 sc (site 2) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 2340 2970 m gs 1 -1 sc (site 1) col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 4635 3420 m gs 1 -1 sc (compound packet) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 4590 3645 m gs 1 -1 sc (UDP packet) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr $F2psEnd restore %%EndDocument @endspecial 0 3438 a currentpoint currentpoint translate 1 0.84326 div 1 0.84326 div scale neg exch neg exch translate 0 3438 a 957 3633 a Fo(Figure)f(1:)41 b(Example)31 b(of)f(an)h(R)-8 b(TCP)30 b(comp)s(ound)f(pac)m(k)m(et)0 3994 y Fn(6.2)112 b(R)-9 b(TCP)36 b(T)-9 b(ransmission)39 b(In)m(terv)-6 b(al)0 4205 y Fo(R)e(TP)36 b(is)g(designed)g(to)h(allo)m (w)h(an)e(application)h(to)g(scale)h(automatically)h(o)m(v)m(er)e (session)g(sizes)f(ranging)h(from)f(a)0 4318 y(few)f(participan)m(ts)g (to)h(thousands.)53 b(F)-8 b(or)35 b(example,)i(in)e(an)g(audio)f (conference)i(the)f(data)h(tra\016c)f(is)g(inheren)m(tly)0 4431 y(self-limiting)29 b(b)s(ecause)e(only)g(one)h(or)f(t)m(w)m(o)h(p) s(eople)g(will)f(sp)s(eak)g(at)h(a)f(time,)i(so)f(with)e(m)m(ulticast)j (distribution)e(the)0 4544 y(data)j(rate)f(on)g(an)m(y)h(giv)m(en)g (link)f(remains)f(relativ)m(ely)k(constan)m(t)e(indep)s(enden)m(t)e(of) h(the)g(n)m(um)m(b)s(er)f(of)h(participan)m(ts.)0 4657 y(Ho)m(w)m(ev)m(er,)i(the)e(con)m(trol)h(tra\016c)f(is)g(not)g (self-limiting.)42 b(If)28 b(the)h(reception)g(rep)s(orts)f(from)g(eac) m(h)i(participan)m(t)f(w)m(ere)0 4770 y(sen)m(t)38 b(at)h(a)f(constan)m (t)h(rate,)h(the)e(con)m(trol)h(tra\016c)f(w)m(ould)g(gro)m(w)g (linearly)g(with)g(the)g(n)m(um)m(b)s(er)e(of)i(participan)m(ts.)0 4882 y(Therefore,)g(the)e(rate)h(m)m(ust)f(b)s(e)g(scaled)h(do)m(wn)e (b)m(y)i(dynamically)f(calculating)j(the)d(in)m(terv)-5 b(al)38 b(b)s(et)m(w)m(een)e(R)-8 b(TCP)0 4995 y(pac)m(k)m(et)32 b(transmissions.)0 5147 y(F)-8 b(or)42 b(eac)m(h)g(session,)i(it)d(is)g (assumed)f(that)i(the)f(data)g(tra\016c)h(is)f(sub)5 b(ject)41 b(to)g(an)g(aggregate)j(limit)e(called)g(the)0 5260 y(\\session)f(bandwidth")e(to)i(b)s(e)f(divided)g(among)h(the)g (participan)m(ts.)71 b(This)40 b(bandwidth)f(migh)m(t)i(b)s(e)f(reserv) m(ed)0 5373 y(and)32 b(the)h(limit)h(enforced)f(b)m(y)f(the)h(net)m(w)m (ork.)49 b(If)33 b(there)g(is)g(no)f(reserv)-5 b(ation,)35 b(there)e(ma)m(y)g(b)s(e)g(other)g(constrain)m(ts,)0 5656 y(Sc)m(h)m(ulzrinne,)d(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(20])p eop %%Page: 21 21 21 20 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(dep)s(ending)22 b(on)i(the)f(en)m(vironmen)m (t,)j(that)f(establish)f(the)f(\\reasonable")j(maxim)m(um)d(for)h(the)f (session)h(to)h(use,)g(and)0 511 y(that)g(w)m(ould)e(b)s(e)h(the)g (session)g(bandwidth.)75 b(The)23 b(session)i(bandwidth)d(ma)m(y)i(b)s (e)g(c)m(hosen)g(based)g(on)g(some)g(cost)h(or)0 624 y Fk(a)30 b(priori)f Fo(kno)m(wledge)g(of)e(the)h(a)m(v)-5 b(ailable)30 b(net)m(w)m(ork)e(bandwidth)e(for)h(the)g(session.)40 b(It)28 b(is)f(somewhat)h(indep)s(enden)m(t)0 737 y(of)23 b(the)f(media)h(enco)s(ding,)i(but)d(the)g(enco)s(ding)h(c)m(hoice)h (ma)m(y)f(b)s(e)f(limited)i(b)m(y)e(the)h(session)f(bandwidth.)37 b(Often,)24 b(the)0 850 y(session)h(bandwidth)e(is)i(the)g(sum)f(of)h (the)g(nominal)g(bandwidths)e(of)i(the)g(senders)f(exp)s(ected)i(to)f (b)s(e)g(concurren)m(tly)0 963 y(activ)m(e.)76 b(F)-8 b(or)42 b(teleconference)i(audio,)h(this)c(n)m(um)m(b)s(er)f(w)m(ould)h (t)m(ypically)j(b)s(e)d(one)g(sender's)g(bandwidth.)72 b(F)-8 b(or)0 1076 y(la)m(y)m(ered)27 b(enco)s(dings,)g(eac)m(h)f(la)m (y)m(er)h(is)f(a)g(separate)g(R)-8 b(TP)26 b(session)f(with)h(its)g(o)m (wn)f(session)h(bandwidth)d(parameter.)0 1228 y(The)29 b(session)g(bandwidth)f(parameter)i(is)f(exp)s(ected)h(to)g(b)s(e)e (supplied)g(b)m(y)i(a)f(session)h(managemen)m(t)h(application)0 1341 y(when)c(it)h(in)m(v)m(ok)m(es)i(a)e(media)g(application,)i(but)d (media)h(applications)h Fi(ma)-6 b(y)29 b Fo(set)g(a)f(default)g(based) f(on)h(the)g(single-)0 1454 y(sender)g(data)i(bandwidth)d(for)i(the)h (enco)s(ding)f(selected)h(for)f(the)h(session.)40 b(The)29 b(application)h Fi(ma)-6 b(y)30 b Fo(also)g(enforce)0 1567 y(bandwidth)j(limits)i(based)g(on)f(m)m(ulticast)j(scop)s(e)e (rules)f(or)h(other)g(criteria.)55 b(All)35 b(participan)m(ts)h Fi(must)d Fo(use)i(the)0 1680 y(same)c(v)-5 b(alue)31 b(for)f(the)g(session)h(bandwidth)d(so)j(that)g(the)g(same)f(R)-8 b(TCP)30 b(in)m(terv)-5 b(al)32 b(will)e(b)s(e)g(calculated.)0 1832 y(Bandwidth)e(calculations)k(for)d(con)m(trol)h(and)f(data)h (tra\016c)g(include)f(lo)m(w)m(er-la)m(y)m(er)j(transp)s(ort)c(and)h (net)m(w)m(ork)h(pro-)0 1945 y(to)s(cols)i(\(e.g.,)h(UDP)f(and)e(IP\))h (since)h(that)f(is)g(what)g(the)g(resource)g(reserv)-5 b(ation)32 b(system)f(w)m(ould)g(need)g(to)h(kno)m(w.)0 2058 y(The)23 b(application)i(can)f(also)g(b)s(e)f(exp)s(ected)h(to)g (kno)m(w)g(whic)m(h)f(of)h(these)g(proto)s(cols)g(are)g(in)f(use.)38 b(Link)23 b(lev)m(el)i(headers)0 2170 y(are)36 b(not)g(included)f(in)g (the)h(calculation)h(since)f(the)g(pac)m(k)m(et)i(will)d(b)s(e)g (encapsulated)h(with)g(di\013eren)m(t)g(link)f(lev)m(el)0 2283 y(headers)30 b(as)h(it)g(tra)m(v)m(els.)0 2435 y(The)26 b(con)m(trol)i(tra\016c)f(should)f(b)s(e)g(limited)h(to)h(a)f(small)g (and)f(kno)m(wn)g(fraction)h(of)g(the)g(session)f(bandwidth:)37 b(small)0 2548 y(so)27 b(that)g(the)g(primary)e(function)i(of)f(the)h (transp)s(ort)f(proto)s(col)h(to)h(carry)e(data)h(is)g(not)g(impaired;) g(kno)m(wn)g(so)f(that)0 2661 y(the)36 b(con)m(trol)h(tra\016c)f(can)g (b)s(e)f(included)g(in)g(the)h(bandwidth)e(sp)s(eci\014cation)i(giv)m (en)h(to)f(a)g(resource)g(reserv)-5 b(ation)0 2774 y(proto)s(col,)40 b(and)c(so)i(that)f(eac)m(h)h(participan)m(t)h(can)e(indep)s(enden)m (tly)f(calculate)j(its)f(share.)60 b(The)37 b(con)m(trol)h(tra\016c)0 2887 y(bandwidth)22 b(is)i(in)f(addition)h(to)h(the)f(session)g (bandwidth)e(for)i(the)g(data)g(tra\016c.)39 b(It)24 b(is)g Fi(recommended)d Fo(that)k(the)0 3000 y(fraction)33 b(of)f(the)g(session)f(bandwidth)f(added)i(for)f(R)-8 b(TCP)31 b(b)s(e)h(\014xed)f(at)h(5\045.)46 b(It)32 b(is)f(also)i Fi(recommended)c Fo(that)0 3113 y(1/4)i(of)e(the)h(R)-8 b(TCP)29 b(bandwidth)e(b)s(e)i(dedicated)h(to)g(participan)m(ts)h(that) f(are)f(sending)g(data)h(so)g(that)g(in)f(sessions)0 3226 y(with)38 b(a)h(large)h(n)m(um)m(b)s(er)d(of)i(receiv)m(ers)h(but) e(a)h(small)g(n)m(um)m(b)s(er)e(of)i(senders,)h(newly)e(joining)h (participan)m(ts)h(will)0 3339 y(more)30 b(quic)m(kly)h(receiv)m(e)h (the)f(CNAME)f(for)g(the)g(sending)g(sites.)41 b(When)30 b(the)h(prop)s(ortion)e(of)h(senders)f(is)i(greater)0 3452 y(than)d(1/4)h(of)g(the)f(participan)m(ts,)i(the)e(senders)f(get)j (their)e(prop)s(ortion)f(of)h(the)h(full)f(R)-8 b(TCP)27 b(bandwidth.)78 b(While)0 3564 y(the)32 b(v)-5 b(alues)33 b(of)f(these)h(and)e(other)i(constan)m(ts)g(in)f(the)g(in)m(terv)-5 b(al)34 b(calculation)g(are)f(not)f(critical,)j(all)e(participan)m(ts)0 3677 y(in)g(the)g(session)h Fi(must)e Fo(use)h(the)g(same)h(v)-5 b(alues)33 b(so)h(the)f(same)h(in)m(terv)-5 b(al)34 b(will)g(b)s(e)e (calculated.)52 b(Therefore,)33 b(these)0 3790 y(constan)m(ts)f Fi(should)c Fo(b)s(e)i(\014xed)g(for)g(a)h(particular)f(pro\014le.)0 3942 y(A)25 b(pro\014le)h Fi(ma)-6 b(y)26 b Fo(sp)s(ecify)f(that)h(the) g(con)m(trol)g(tra\016c)g(bandwidth)e(ma)m(y)i(b)s(e)f(a)g(separate)i (parameter)f(of)f(the)h(session)0 4055 y(rather)31 b(than)g(a)h(strict) g(p)s(ercen)m(tage)g(of)g(the)f(session)g(bandwidth.)42 b(Using)31 b(a)h(separate)g(parameter)f(allo)m(ws)i(rate-)0 4168 y(adaptiv)m(e)e(applications)f(to)g(set)g(an)f(R)-8 b(TCP)29 b(bandwidth)f(consisten)m(t)i(with)f(a)h(\\t)m(ypical")i(data) e(bandwidth)d(that)0 4281 y(is)j(lo)m(w)m(er)i(than)e(the)h(maxim)m(um) f(bandwidth)f(sp)s(eci\014ed)g(b)m(y)h(the)h(session)g(bandwidth)d (parameter.)0 4433 y(The)c(pro\014le)h Fi(ma)-6 b(y)26 b Fo(further)e(sp)s(ecify)h(that)g(the)g(con)m(trol)i(tra\016c)e (bandwidth)e(ma)m(y)j(b)s(e)e(divided)h(in)m(to)h(t)m(w)m(o)g(separate) 0 4546 y(session)g(parameters)g(for)g(those)g(participan)m(ts)h(whic)m (h)f(are)g(activ)m(e)i(data)f(senders)e(and)g(those)h(whic)m(h)g(are)g (not;)i(let)0 4659 y(us)i(call)i(the)f(parameters)f Fg(S)36 b Fo(and)30 b Fg(R)q Fo(.)41 b(F)-8 b(ollo)m(wing)33 b(the)e(recommendation)g(that)g(1/4)h(of)f(the)g(R)-8 b(TCP)30 b(bandwidth)0 4772 y(b)s(e)c(dedicated)h(to)g(data)g(senders,) f(the)h Fi(recommended)d Fo(default)i(v)-5 b(alues)27 b(for)f(these)h(t)m(w)m(o)h(parameters)e(w)m(ould)h(b)s(e)0 4885 y(1.25\045)35 b(and)e(3.75\045,)j(resp)s(ectiv)m(ely)-8 b(.)52 b(When)33 b(the)h(prop)s(ortion)e(of)i(senders)f(is)g(greater)i (than)e Fg(S=)p Fo(\()p Fg(S)28 b Fo(+)22 b Fg(R)q Fo(\))34 b(of)g(the)0 4998 y(participan)m(ts,)26 b(the)e(senders)f(get)h(their)g (prop)s(ortion)f(of)h(the)f(sum)g(of)h(these)g(parameters.)39 b(Using)24 b(t)m(w)m(o)h(parameters)0 5111 y(allo)m(ws)g(R)-8 b(TCP)22 b(reception)j(rep)s(orts)d(to)i(b)s(e)f(turned)f(o\013)i(en)m (tirely)g(for)f(a)h(particular)g(session)f(b)m(y)h(setting)g(the)f(R)-8 b(TCP)0 5224 y(bandwidth)28 b(for)i(non-data-senders)g(to)h(zero)g (while)g(k)m(eeping)g(the)f(R)-8 b(TCP)30 b(bandwidth)e(for)i(data)h (senders)e(non-)0 5336 y(zero)38 b(so)f(that)h(sender)f(rep)s(orts)f (can)i(still)g(b)s(e)e(sen)m(t)i(for)f(in)m(ter-media)i(sync)m (hronization.)62 b(T)-8 b(urning)36 b(o\013)h(R)-8 b(TCP)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(21])p eop %%Page: 22 22 22 21 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(reception)37 b(rep)s(orts)f(is)g Fi(not)k(recommended)34 b Fo(b)s(ecause)i(they)h(are)f(needed)g(for)g (the)h(functions)f(listed)h(at)g(the)0 511 y(b)s(eginning)e(of)h (Section)h(6,)h(particularly)e(reception)h(qualit)m(y)g(feedbac)m(k)f (and)g(congestion)h(con)m(trol.)59 b(Ho)m(w)m(ev)m(er,)0 624 y(doing)26 b(so)h(ma)m(y)g(b)s(e)f(appropriate)g(for)g(systems)g (op)s(erating)h(on)f(unidirectional)h(links)f(or)h(for)f(sessions)g (that)h(don't)0 737 y(require)33 b(feedbac)m(k)h(on)f(the)g(qualit)m(y) h(of)f(reception)h(or)f(liv)m(eness)h(of)f(receiv)m(ers)i(and)d(that)i (ha)m(v)m(e)g(other)f(means)g(to)0 850 y(a)m(v)m(oid)f(congestion.)0 1002 y(The)39 b(calculated)i(in)m(terv)-5 b(al)41 b(b)s(et)m(w)m(een)f (transmissions)f(of)h(comp)s(ound)e(R)-8 b(TCP)39 b(pac)m(k)m(ets)j Fi(should)37 b Fo(also)k(ha)m(v)m(e)g(a)0 1115 y(lo)m(w)m(er)33 b(b)s(ound)c(to)j(a)m(v)m(oid)h(ha)m(ving)f(bursts)e(of)i(pac)m(k)m (ets)h(exceed)g(the)f(allo)m(w)m(ed)h(bandwidth)c(when)i(the)h(n)m(um)m (b)s(er)e(of)0 1228 y(participan)m(ts)j(is)g(small)g(and)e(the)i (tra\016c)g(isn't)g(smo)s(othed)f(according)h(to)g(the)g(la)m(w)g(of)g (large)g(n)m(um)m(b)s(ers.)45 b(It)33 b(also)0 1341 y(k)m(eeps)27 b(the)f(rep)s(ort)g(in)m(terv)-5 b(al)27 b(from)f(b)s(ecoming)g(to)s(o) h(small)g(during)e(transien)m(t)i(outages)g(lik)m(e)h(a)e(net)m(w)m (ork)h(partition)0 1454 y(suc)m(h)k(that)g(adaptation)i(is)e(dela)m(y)m (ed)h(when)e(the)i(partition)f(heals.)43 b(A)m(t)32 b(application)h (startup,)e(a)g(dela)m(y)j Fi(should)0 1567 y Fo(b)s(e)k(imp)s(osed)g (b)s(efore)g(the)h(\014rst)f(comp)s(ound)g(R)-8 b(TCP)38 b(pac)m(k)m(et)j(is)d(sen)m(t)i(to)f(allo)m(w)h(time)g(for)e(R)-8 b(TCP)39 b(pac)m(k)m(ets)h(to)0 1680 y(b)s(e)33 b(receiv)m(ed)j(from)d (other)h(participan)m(ts)h(so)f(the)g(rep)s(ort)f(in)m(terv)-5 b(al)35 b(will)g(con)m(v)m(erge)h(to)e(the)g(correct)h(v)-5 b(alue)35 b(more)0 1793 y(quic)m(kly)-8 b(.)42 b(This)29 b(dela)m(y)k Fi(ma)-6 b(y)31 b Fo(b)s(e)f(set)g(to)h(half)f(the)h (minim)m(um)e(in)m(terv)-5 b(al)31 b(to)g(allo)m(w)h(quic)m(k)m(er)f (noti\014cation)h(that)f(the)0 1905 y(new)f(participan)m(t)h(is)g (presen)m(t.)40 b(The)30 b Fi(recommended)e Fo(v)-5 b(alue)31 b(for)f(a)h(\014xed)f(minim)m(um)f(in)m(terv)-5 b(al)32 b(is)e(5)h(seconds.)0 2058 y(An)22 b(implemen)m(tation)j Fi(ma)-6 b(y)24 b Fo(scale)g(the)f(minim)m(um)f(R)-8 b(TCP)22 b(in)m(terv)-5 b(al)24 b(to)f(a)h(smaller)f(v)-5 b(alue)23 b(in)m(v)m(ersely)h(prop)s(ortional)0 2170 y(to)31 b(the)g(session)f(bandwidth)f(parameter)i(with)f(the)g(follo)m (wing)i(limitations:)136 2422 y Fj(\017)46 b Fo(F)-8 b(or)45 b(m)m(ulticast)h(sessions,)i(only)c(activ)m(e)j(data)e(senders) e Fi(ma)-6 b(y)45 b Fo(use)f(the)h(reduced)e(minim)m(um)g(v)-5 b(alue)45 b(to)227 2535 y(calculate)33 b(the)e(in)m(terv)-5 b(al)31 b(for)f(transmission)g(of)h(comp)s(ound)e(R)-8 b(TCP)30 b(pac)m(k)m(ets.)136 2723 y Fj(\017)46 b Fo(F)-8 b(or)31 b(unicast)f(sessions,)g(the)f(reduced)g(v)-5 b(alue)30 b Fi(ma)-6 b(y)31 b Fo(b)s(e)e(used)g(b)m(y)h(participan)m (ts)g(that)g(are)g(not)g(activ)m(e)i(data)227 2836 y(senders)24 b(as)h(w)m(ell,)i(and)d(the)g(dela)m(y)i(b)s(efore)e(sending)g(the)h (initial)h(comp)s(ound)d(R)-8 b(TCP)24 b(pac)m(k)m(et)i Fi(ma)-6 b(y)26 b Fo(b)s(e)e(zero.)136 3023 y Fj(\017)46 b Fo(F)-8 b(or)26 b(all)g(sessions,)h(the)f(\014xed)e(minim)m(um)h Fi(should)e Fo(b)s(e)i(used)f(when)h(calculating)i(the)f(participan)m (t)g(timeout)227 3136 y(in)m(terv)-5 b(al)36 b(\(see)f(Section)g (6.3.5\))h(so)f(that)f(implemen)m(tations)i(whic)m(h)e(do)g(not)h(use)f (the)g(reduced)f(v)-5 b(alue)35 b(for)227 3249 y(transmitting)c(R)-8 b(TCP)30 b(pac)m(k)m(ets)i(are)f(not)g(timed)f(out)h(b)m(y)f(other)h (participan)m(ts)g(prematurely)-8 b(.)136 3437 y Fj(\017)46 b Fo(The)29 b Fi(recommended)e Fo(v)-5 b(alue)31 b(for)e(the)h(reduced) f(minim)m(um)g(in)g(seconds)h(is)f(360)i(divided)e(b)m(y)h(the)g (session)227 3550 y(bandwidth)20 b(in)i(kilobits/second.)39 b(This)21 b(minim)m(um)g(is)h(smaller)g(than)g(5)g(seconds)f(for)h (bandwidths)e(greater)227 3662 y(than)30 b(72)i(kb/s.)0 3914 y(The)27 b(algorithm)h(describ)s(ed)e(in)h(Section)h(6.3)g(and)53 b(App)s(endix)26 b(A.7)i(w)m(as)f(designed)g(to)h(meet)g(the)f(goals)i (outlined)0 4027 y(in)k(this)g(section.)51 b(It)33 b(calculates)j(the)d (in)m(terv)-5 b(al)34 b(b)s(et)m(w)m(een)g(sending)f(comp)s(ound)f(R)-8 b(TCP)33 b(pac)m(k)m(ets)i(to)f(divide)f(the)0 4140 y(allo)m(w)m(ed)38 b(con)m(trol)g(tra\016c)g(bandwidth)c(among)j(the)g(participan)m(ts.)60 b(This)36 b(allo)m(ws)i(an)f(application)h(to)f(pro)m(vide)0 4253 y(fast)d(resp)s(onse)e(for)h(small)h(sessions)f(where,)h(for)f (example,)i(iden)m(ti\014cation)g(of)f(all)g(participan)m(ts)g(is)g (imp)s(ortan)m(t,)0 4366 y(y)m(et)28 b(automatically)i(adapt)d(to)g (large)h(sessions.)40 b(The)26 b(algorithm)i(incorp)s(orates)f(the)g (follo)m(wing)h(c)m(haracteristics:)136 4617 y Fj(\017)46 b Fo(The)25 b(calculated)i(in)m(terv)-5 b(al)27 b(b)s(et)m(w)m(een)f(R) -8 b(TCP)25 b(pac)m(k)m(ets)i(scales)f(linearly)g(with)g(the)f(n)m(um)m (b)s(er)f(of)i(mem)m(b)s(ers)e(in)227 4730 y(the)32 b(group.)44 b(It)31 b(is)h(this)f(linear)h(factor)g(whic)m(h)g(allo)m(ws)g(for)g(a) g(constan)m(t)g(amoun)m(t)g(of)g(con)m(trol)h(tra\016c)f(when)227 4843 y(summed)d(across)i(all)h(mem)m(b)s(ers.)136 5031 y Fj(\017)46 b Fo(The)40 b(in)m(terv)-5 b(al)41 b(b)s(et)m(w)m(een)g(R) -8 b(TCP)40 b(pac)m(k)m(ets)i(is)e(v)-5 b(aried)40 b(randomly)g(o)m(v)m (er)h(the)f(range)h([0.5,1.5])i(times)e(the)227 5144 y(calculated)j(in)m(terv)-5 b(al)44 b(to)f(a)m(v)m(oid)h(unin)m(tended) d(sync)m(hronization)i(of)g(all)g(participan)m(ts)g([20)q(].)77 b(The)42 b(\014rst)227 5257 y(R)-8 b(TCP)36 b(pac)m(k)m(et)j(sen)m(t)e (after)g(joining)f(a)h(session)g(is)g(also)g(dela)m(y)m(ed)h(b)m(y)e(a) h(random)f(v)-5 b(ariation)38 b(of)e(half)h(the)227 5370 y(minim)m(um)30 b(R)-8 b(TCP)30 b(in)m(terv)-5 b(al.)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(22])p eop %%Page: 23 23 23 22 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)136 399 y Fj(\017)46 b Fo(A)34 b(dynamic)f(estimate)i (of)f(the)f(a)m(v)m(erage)j(comp)s(ound)c(R)-8 b(TCP)33 b(pac)m(k)m(et)i(size)f(is)g(calculated,)i(including)d(all)227 511 y(those)f(pac)m(k)m(ets)h(receiv)m(ed)f(and)f(sen)m(t,)h(to)g (automatically)i(adapt)d(to)h(c)m(hanges)g(in)f(the)h(amoun)m(t)f(of)g (con)m(trol)227 624 y(information)g(carried.)136 812 y Fj(\017)46 b Fo(Since)33 b(the)f(calculated)j(in)m(terv)-5 b(al)34 b(is)e(dep)s(enden)m(t)g(on)g(the)h(n)m(um)m(b)s(er)e(of)i (observ)m(ed)f(group)g(mem)m(b)s(ers,)h(there)227 925 y(ma)m(y)g(b)s(e)e(undesirable)g(startup)h(e\013ects)h(when)e(a)i(new)e (user)g(joins)h(an)g(existing)h(session,)g(or)f(man)m(y)g(users)227 1038 y(sim)m(ultaneously)h(join)g(a)g(new)f(session.)46 b(These)33 b(new)f(users)f(will)i(initially)h(ha)m(v)m(e)f(incorrect)h (estimates)g(of)227 1151 y(the)j(group)e(mem)m(b)s(ership,)i(and)e(th)m (us)h(their)h(R)-8 b(TCP)35 b(transmission)h(in)m(terv)-5 b(al)38 b(will)e(b)s(e)g(to)s(o)h(short.)58 b(This)227 1264 y(problem)33 b(can)h(b)s(e)f(signi\014can)m(t)i(if)e(man)m(y)h (users)f(join)g(the)h(session)g(sim)m(ultaneously)-8 b(.)51 b(T)-8 b(o)34 b(deal)g(with)g(this,)227 1377 y(an)25 b(algorithm)i(called)f(\\timer)g(reconsideration")h(is)e(emplo)m(y)m (ed.)40 b(This)24 b(algorithm)j(implemen)m(ts)e(a)h(simple)227 1489 y(bac)m(k-o\013)33 b(mec)m(hanism)e(whic)m(h)g(causes)g(users)g (to)g(hold)g(bac)m(k)h(R)-8 b(TCP)30 b(pac)m(k)m(et)k(transmission)c (if)h(the)g(group)227 1602 y(sizes)g(are)g(increasing.)136 1790 y Fj(\017)46 b Fo(When)22 b(users)e(lea)m(v)m(e)k(a)e(session,)i (either)e(with)f(a)h(BYE)g(or)g(b)m(y)f(timeout,)k(the)d(group)f(mem)m (b)s(ership)f(decreases,)227 1903 y(and)38 b(th)m(us)f(the)h (calculated)i(in)m(terv)-5 b(al)39 b(should)e(decrease.)64 b(A)38 b(\\rev)m(erse)h(reconsideration")g(algorithm)g(is)227 2016 y(used)22 b(to)h(allo)m(w)h(mem)m(b)s(ers)e(to)h(more)g(quic)m (kly)g(reduce)f(their)h(in)m(terv)-5 b(als)23 b(in)g(resp)s(onse)e(to)i (group)f(mem)m(b)s(ership)227 2129 y(decreases.)136 2316 y Fj(\017)46 b Fo(BYE)38 b(pac)m(k)m(ets)h(are)f(giv)m(en)g(di\013eren) m(t)g(treatmen)m(t)h(than)e(other)g(R)-8 b(TCP)37 b(pac)m(k)m(ets.)63 b(When)37 b(a)h(user)f(lea)m(v)m(es)227 2429 y(a)h(group,)i(and)d (wishes)g(to)h(send)f(a)i(BYE)f(pac)m(k)m(et,)j(it)e(ma)m(y)f(do)g(so)g (b)s(efore)f(its)h(next)g(sc)m(heduled)f(R)-8 b(TCP)227 2542 y(pac)m(k)m(et.)57 b(Ho)m(w)m(ev)m(er,)39 b(transmission)c(of)g (BYEs)g(follo)m(ws)h(a)g(bac)m(k-o\013)g(algorithm)h(whic)m(h)d(a)m(v)m (oids)j(\015o)s(o)s(ds)d(of)227 2655 y(BYE)d(pac)m(k)m(ets)h(should)e (a)g(large)i(n)m(um)m(b)s(er)d(of)h(mem)m(b)s(ers)g(sim)m(ultaneously)h (lea)m(v)m(e)i(the)e(session.)0 2907 y(This)c(algorithm)h(ma)m(y)g(b)s (e)f(used)g(for)g(sessions)g(in)h(whic)m(h)f(all)h(participan)m(ts)g (are)g(allo)m(w)m(ed)i(to)e(send.)39 b(In)27 b(that)h(case,)0 3020 y(the)39 b(session)g(bandwidth)e(parameter)i(is)g(the)g(pro)s (duct)f(of)h(the)g(individual)f(sender's)g(bandwidth)f(times)j(the)0 3133 y(n)m(um)m(b)s(er)29 b(of)i(participan)m(ts,)g(and)f(the)g(R)-8 b(TCP)30 b(bandwidth)f(is)h(5\045)h(of)f(that.)0 3285 y(Details)36 b(of)e(the)g(algorithm's)h(op)s(eration)f(are)h(giv)m(en)f (in)g(the)g(sections)h(that)f(follo)m(w.)53 b(App)s(endix)32 b(A.7)j(giv)m(es)g(an)0 3398 y(example)c(implemen)m(tation.)0 3677 y Fl(6.2.1)105 b(Main)m(taining)36 b(the)e(Num)m(b)s(er)h(of)g (Session)h(Mem)m(b)s(ers)0 3888 y Fo(Calculation)e(of)e(the)g(R)-8 b(TCP)32 b(pac)m(k)m(et)i(in)m(terv)-5 b(al)33 b(dep)s(ends)d(up)s(on)h (an)h(estimate)i(of)e(the)g(n)m(um)m(b)s(er)f(of)h(sites)h(partic-)0 4000 y(ipating)k(in)g(the)g(session.)60 b(New)37 b(sites)g(are)g(added) f(to)i(the)e(coun)m(t)i(when)d(they)i(are)g(heard,)h(and)f(an)f(en)m (try)h(for)0 4113 y(eac)m(h)g Fi(should)c Fo(b)s(e)i(created)i(in)e(a)h (table)g(indexed)f(b)m(y)h(the)f(SSR)m(C)g(or)g(CSR)m(C)g(iden)m (ti\014er)h(\(see)g(Section)g(8.2\))h(to)0 4226 y(k)m(eep)e(trac)m(k)g (of)f(them.)52 b(New)34 b(en)m(tries)h Fi(ma)-6 b(y)35 b Fo(b)s(e)f(considered)g(not)g(v)-5 b(alid)34 b(un)m(til)h(m)m (ultiple)g(pac)m(k)m(ets)g(carrying)g(the)0 4339 y(new)g(SSR)m(C)g(ha)m (v)m(e)h(b)s(een)f(receiv)m(ed)i(\(see)g(App)s(endix)d(A.1\),)k(or)e (un)m(til)f(an)h(SDES)f(R)-8 b(TCP)35 b(pac)m(k)m(et)i(con)m(taining)h (a)0 4452 y(CNAME)28 b(for)f(that)h(SSR)m(C)e(has)h(b)s(een)g(receiv)m (ed.)81 b(En)m(tries)27 b Fi(ma)-6 b(y)29 b Fo(b)s(e)e(deleted)h(from)f (the)g(table)i(when)d(an)h(R)-8 b(TCP)0 4565 y(BYE)36 b(pac)m(k)m(et)i(with)d(the)h(corresp)s(onding)f(SSR)m(C)g(iden)m (ti\014er)h(is)g(receiv)m(ed,)j(except)d(that)h(some)f(straggler)h (data)0 4678 y(pac)m(k)m(ets)28 b(migh)m(t)e(arriv)m(e)g(after)h(the)f (BYE)g(and)f(cause)h(the)g(en)m(try)g(to)g(b)s(e)g(recreated.)40 b(Instead,)27 b(the)e(en)m(try)j Fi(should)0 4791 y Fo(b)s(e)i(mark)m (ed)g(as)h(ha)m(ving)g(receiv)m(ed)h(a)e(BYE)h(and)f(then)g(deleted)h (after)g(an)f(appropriate)h(dela)m(y)-8 b(.)0 4943 y(A)38 b(participan)m(t)g Fi(ma)-6 b(y)39 b Fo(mark)e(another)h(site)g (inactiv)m(e,)k(or)37 b(delete)i(it)f(if)f(not)h(y)m(et)h(v)-5 b(alid,)40 b(if)d(no)h(R)-8 b(TP)37 b(or)g(R)-8 b(TCP)0 5056 y(pac)m(k)m(et)31 b(has)d(b)s(een)g(receiv)m(ed)i(for)e(a)h(small) g(n)m(um)m(b)s(er)e(of)i(R)-8 b(TCP)28 b(rep)s(ort)g(in)m(terv)-5 b(als)30 b(\(5)f(is)g Fi(recommended)p Fo(\).)38 b(This)0 5169 y(pro)m(vides)27 b(some)g(robustness)f(against)i(pac)m(k)m(et)h (loss.)40 b(All)28 b(sites)f(m)m(ust)g(ha)m(v)m(e)h(the)f(same)g(v)-5 b(alue)28 b(for)f(this)f(m)m(ultiplier)0 5282 y(and)31 b(m)m(ust)g(calculate)j(roughly)d(the)h(same)g(v)-5 b(alue)32 b(for)f(the)h(R)-8 b(TCP)31 b(rep)s(ort)g(in)m(terv)-5 b(al)32 b(in)f(order)g(for)h(this)f(timeout)0 5394 y(to)g(w)m(ork)g (prop)s(erly)-8 b(.)40 b(Therefore,)30 b(this)g(m)m(ultiplier)h Fi(should)e Fo(b)s(e)g(\014xed)h(for)g(a)h(particular)g(pro\014le.)0 5656 y(Sc)m(h)m(ulzrinne,)f(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(23])p eop %%Page: 24 24 24 23 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(F)-8 b(or)29 b(sessions)g(with)f(a)h(v)m(ery)g (large)h(n)m(um)m(b)s(er)d(of)i(participan)m(ts,)h(it)f(ma)m(y)h(b)s(e) e(impractical)i(to)f(main)m(tain)h(a)f(table)g(to)0 511 y(store)f(the)g(SSR)m(C)e(iden)m(ti\014er)i(and)e(state)j(information)f (for)f(all)h(of)g(them.)39 b(An)27 b(implemen)m(tation)i Fi(ma)-6 b(y)29 b Fo(use)e(SSR)m(C)0 624 y(sampling,)38 b(as)f(describ)s(ed)f(in)g([21)q(],)j(to)e(reduce)g(the)f(storage)j (requiremen)m(ts.)59 b(An)36 b(implemen)m(tation)j Fi(ma)-6 b(y)37 b Fo(use)0 737 y(an)m(y)27 b(other)g(algorithm)h(with)f(similar) g(p)s(erformance.)39 b(A)27 b(k)m(ey)h(requiremen)m(t)f(is)g(that)g(an) m(y)g(algorithm)h(considered)0 850 y Fi(should)33 b(not)c Fo(substan)m(tially)j(underestimate)e(the)h(group)f(size,)h(although)g (it)g Fi(ma)-6 b(y)31 b Fo(o)m(v)m(erestimate.)0 1133 y Fn(6.3)112 b(R)-9 b(TCP)36 b(P)m(ac)m(k)m(et)h(Send)h(and)h(Receiv)m (e)e(Rules)0 1343 y Fo(The)30 b(rules)h(for)g(ho)m(w)g(to)g(send,)g (and)f(what)h(to)h(do)e(when)g(receiving)j(an)d(R)-8 b(TCP)31 b(pac)m(k)m(et)i(are)e(outlined)g(here.)42 b(An)0 1456 y(implemen)m(tation)32 b(that)g(allo)m(ws)g(op)s(eration)f(in)f(a) h(m)m(ulticast)h(en)m(vironmen)m(t)g(or)e(a)h(m)m(ultip)s(oin)m(t)h (unicast)f(en)m(viron-)0 1569 y(men)m(t)g Fi(must)e Fo(meet)i(the)f (requiremen)m(ts)g(in)g(Section)h(6.2.)41 b(Suc)m(h)30 b(an)g(implemen)m(tation)i Fi(ma)-6 b(y)31 b Fo(use)f(the)g(algorithm)0 1682 y(de\014ned)h(in)g(this)h(section)h(to)g(meet)g(those)f (requiremen)m(ts,)h(or)f Fi(ma)-6 b(y)33 b Fo(use)f(some)g(other)g (algorithm)h(so)g(long)f(as)g(it)0 1795 y(pro)m(vides)h(equiv)-5 b(alen)m(t)35 b(or)f(b)s(etter)f(p)s(erformance.)50 b(An)33 b(implemen)m(tation)i(whic)m(h)e(is)h(constrained)g(to)g(t)m(w)m (o-part)m(y)0 1908 y(unicast)e(op)s(eration)g Fi(should)e Fo(still)j(use)f(randomization)g(of)g(the)g(R)-8 b(TCP)31 b(transmission)h(in)m(terv)-5 b(al)33 b(to)f(a)m(v)m(oid)i(un-)0 2021 y(in)m(tended)e(sync)m(hronization)i(of)f(m)m(ultiple)g(instances) g(op)s(erating)g(in)g(the)f(same)h(en)m(vironmen)m(t,)i(but)c Fi(ma)-6 b(y)34 b Fo(omit)0 2134 y(the)i(\\timer)g(reconsideration")h (and)e(\\rev)m(erse)h(reconsideration")h(algorithms)f(in)f(Sections)i (6.3.3,)h(6.3.6)g(and)0 2247 y(6.3.7.)0 2399 y(T)-8 b(o)31 b(execute)h(these)e(rules,)h(a)f(session)h(participan)m(t)g(m)m(ust)g (main)m(tain)g(sev)m(eral)h(pieces)f(of)f(state:)0 2650 y Fl(tp:)45 b Fo(the)31 b(last)g(time)g(an)f(R)-8 b(TCP)30 b(pac)m(k)m(et)j(w)m(as)d(transmitted;)0 2838 y Fl(tc:)46 b Fo(the)30 b(curren)m(t)g(time;)0 3026 y Fl(tn:)45 b Fo(the)31 b(next)f(sc)m(heduled)g(transmission)g(time)i(of)e(an)g(R)-8 b(TCP)30 b(pac)m(k)m(et;)0 3213 y Fl(pmem)m(b)s(ers:)46 b Fo(the)31 b(estimated)g(n)m(um)m(b)s(er)e(of)i(session)f(mem)m(b)s (ers)g(at)h(the)g(time)g(tn)f(w)m(as)h(last)g(recomputed;)0 3401 y Fl(mem)m(b)s(ers:)46 b Fo(the)31 b(most)f(curren)m(t)g(estimate) j(for)d(the)g(n)m(um)m(b)s(er)f(of)i(session)f(mem)m(b)s(ers;)0 3589 y Fl(senders:)46 b Fo(the)31 b(most)f(curren)m(t)g(estimate)j(for) d(the)g(n)m(um)m(b)s(er)f(of)i(senders)e(in)h(the)h(session;)0 3776 y Fl(rtcp)p 194 3776 32 4 v 38 w(b)m(w:)45 b Fo(The)d(target)i(R) -8 b(TCP)41 b(bandwidth,)j(i.e.,)i(the)d(total)h(bandwidth)c(that)j (will)f(b)s(e)g(used)f(for)h(R)-8 b(TCP)227 3889 y(pac)m(k)m(ets)32 b(b)m(y)e(all)i(mem)m(b)s(ers)d(of)h(this)h(session,)f(in)g(o)s(ctets)i (p)s(er)d(second.)40 b(This)30 b(will)g(b)s(e)g(a)h(sp)s(eci\014ed)e (fraction)227 4002 y(of)i(the)f(\\session)h(bandwidth")e(parameter)i (supplied)e(to)i(the)g(application)h(at)f(startup.)0 4190 y Fl(w)m(e)p 127 4190 V 37 w(sen)m(t:)46 b Fo(Flag)37 b(that)f(is)g(true)g(if)f(the)h(application)h(has)f(sen)m(t)g(data)h (since)f(the)g(2nd)f(previous)g(R)-8 b(TCP)36 b(rep)s(ort)227 4303 y(w)m(as)31 b(transmitted.)0 4490 y Fl(a)m(vg)p 161 4490 V 38 w(rtcp)p 387 4490 V 38 w(size:)46 b Fo(The)33 b(a)m(v)m(erage)j(comp)s(ound)c(R)-8 b(TCP)33 b(pac)m(k)m(et)j(size,)f (in)f(o)s(ctets,)i(o)m(v)m(er)f(all)f(R)-8 b(TCP)33 b(pac)m(k)m(ets)i (sen)m(t)227 4603 y(and)23 b(receiv)m(ed)i(b)m(y)f(this)f(participan)m (t.)40 b(The)23 b(size)i(includes)e(lo)m(w)m(er-la)m(y)m(er)k(transp)s (ort)22 b(and)i(net)m(w)m(ork)g(proto)s(col)227 4716 y(headers)30 b(\(e.g.,)j(UDP)d(and)g(IP\))h(as)f(explained)h(in)f (Section)h(6.2.)0 4904 y Fl(initial:)45 b Fo(Flag)32 b(that)f(is)f(true)h(if)f(the)g(application)i(has)e(not)h(y)m(et)g(sen) m(t)g(an)g(R)-8 b(TCP)29 b(pac)m(k)m(et.)0 5155 y(Man)m(y)43 b(of)f(these)h(rules)e(mak)m(e)i(use)f(of)g(the)g(\\calculated)j(in)m (terv)-5 b(al")44 b(b)s(et)m(w)m(een)e(pac)m(k)m(et)i(transmissions.)76 b(This)0 5268 y(in)m(terv)-5 b(al)32 b(is)e(describ)s(ed)f(in)h(the)h (follo)m(wing)h(section.)0 5656 y(Sc)m(h)m(ulzrinne,)e(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(24])p eop %%Page: 25 25 25 24 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fl(6.3.1)105 b(Computing)35 b(the)g(R)-9 b(TCP)35 b(T)-9 b(ransmission)36 b(In)m(terv)-6 b(al)0 609 y Fo(T)e(o)25 b(main)m(tain)g(scalabilit)m(y)-8 b(,)28 b(the)d(a)m(v)m(erage)h(in)m(terv)-5 b(al)26 b(b)s(et)m(w)m(een) f(pac)m(k)m(ets)h(from)d(a)i(session)f(participan)m(t)h(should)f(scale) 0 722 y(with)37 b(the)h(group)g(size.)63 b(This)37 b(in)m(terv)-5 b(al)39 b(is)f(called)h(the)f(calculated)h(in)m(terv)-5 b(al.)64 b(It)38 b(is)g(obtained)g(b)m(y)f(com)m(bining)0 835 y(a)d(n)m(um)m(b)s(er)e(of)h(the)h(pieces)g(of)f(state)i(describ)s (ed)d(ab)s(o)m(v)m(e.)51 b(The)33 b(calculated)i(in)m(terv)-5 b(al)34 b(T)f(is)h(then)f(determined)g(as)0 948 y(follo)m(ws:)111 1200 y(1.)46 b(If)20 b(the)h(n)m(um)m(b)s(er)e(of)i(senders)e(is)i (less)g(than)f(or)h(equal)g(to)g(25\045)g(of)g(the)f(mem)m(b)s(ership)f (\(mem)m(b)s(ers\),)k(the)e(in)m(terv)-5 b(al)227 1313 y(dep)s(ends)27 b(on)i(whether)f(the)h(participan)m(t)h(is)f(a)g (sender)f(or)h(not)g(\(based)g(on)g(the)g(v)-5 b(alue)29 b(of)g(w)m(e)p 3396 1313 28 4 v 33 w(sen)m(t\).)41 b(If)29 b(the)227 1425 y(participan)m(t)i(is)e(a)h(sender)e(\(w)m(e)p 1284 1425 V 34 w(sen)m(t)i(true\),)g(the)f(constan)m(t)i(C)e(is)g(set)h (to)g(the)g(a)m(v)m(erage)i(R)-8 b(TCP)29 b(pac)m(k)m(et)i(size)227 1538 y(\(a)m(vg)p 402 1538 V 35 w(rtcp)p 599 1538 V 32 w(size\))h(divided)e(b)m(y)h(25\045)h(of)f(the)g(R)-8 b(TCP)30 b(bandwidth)f(\(rtcp)p 2681 1538 V 33 w(b)m(w\),)i(and)f(the)h (constan)m(t)h(n)f(is)f(set)227 1651 y(to)j(the)f(n)m(um)m(b)s(er)e(of) i(senders.)45 b(If)31 b(w)m(e)p 1495 1651 V 33 w(sen)m(t)h(is)g(not)g (true,)h(the)f(constan)m(t)h(C)e(is)h(set)g(to)h(the)f(a)m(v)m(erage)i (R)-8 b(TCP)227 1764 y(pac)m(k)m(et)33 b(size)e(divided)e(b)m(y)i (75\045)f(of)h(the)f(R)-8 b(TCP)30 b(bandwidth.)39 b(The)30 b(constan)m(t)h(n)f(is)g(set)h(to)g(the)g(n)m(um)m(b)s(er)e(of)227 1877 y(receiv)m(ers)38 b(\(mem)m(b)s(ers)d Fj(\000)h Fo(senders\).)56 b(If)36 b(the)g(n)m(um)m(b)s(er)f(of)h(senders)f(is)h (greater)h(than)e(25\045,)k(senders)c(and)227 1990 y(receiv)m(ers)28 b(are)e(treated)h(together.)41 b(The)25 b(constan)m(t)i(C)f(is)g(set)g (to)h(the)f(a)m(v)m(erage)j(R)-8 b(TCP)25 b(pac)m(k)m(et)j(size)f (divided)227 2103 y(b)m(y)37 b(the)g(total)h(R)-8 b(TCP)37 b(bandwidth)e(and)h(n)g(is)h(set)g(to)h(the)f(total)h(n)m(um)m(b)s(er)e (of)h(mem)m(b)s(ers.)59 b(As)37 b(stated)g(in)227 2216 y(Section)29 b(6.2,)h(an)e(R)-8 b(TP)27 b(pro\014le)h Fi(ma)-6 b(y)29 b Fo(sp)s(ecify)f(that)g(the)g(R)-8 b(TCP)28 b(bandwidth)e(ma)m(y)i(b)s(e)g(explicitly)h(de\014ned)227 2329 y(b)m(y)e(t)m(w)m(o)h(separate)g(parameters)g(\(call)g(them)f Fg(S)32 b Fo(and)26 b Fg(R)q Fo(\))h(for)g(those)h(participan)m(ts)f (whic)m(h)g(are)h(senders)e(and)227 2442 y(those)j(whic)m(h)g(are)f (not.)41 b(In)28 b(that)h(case,)h(the)f(25\045)g(fraction)g(b)s(ecomes) g Fg(S=)p Fo(\()p Fg(S)22 b Fo(+)16 b Fg(R)q Fo(\))28 b(and)g(the)h(75\045)g(fraction)227 2555 y(b)s(ecomes)34 b Fg(R)q(=)p Fo(\()p Fg(S)27 b Fo(+)22 b Fg(R)q Fo(\).)49 b(Note)34 b(that)g(if)f Fg(R)g Fo(is)h(zero,)g(the)g(p)s(ercen)m(tage)g (of)f(senders)f(is)i(nev)m(er)f(greater)h(than)227 2668 y Fg(S=)p Fo(\()p Fg(S)26 b Fo(+)20 b Fg(R)q Fo(\),)31 b(and)f(the)g(implemen)m(tation)i(m)m(ust)e(a)m(v)m(oid)i(division)f(b) m(y)f(zero.)111 2855 y(2.)46 b(If)28 b(the)g(participan)m(t)i(has)e (not)g(y)m(et)h(sen)m(t)g(an)f(R)-8 b(TCP)28 b(pac)m(k)m(et)i(\(the)f (v)-5 b(ariable)29 b(initial)g(is)f(true\),)h(the)g(constan)m(t)227 2968 y(Tmin)h(is)g(set)h(to)g(2.5)h(seconds,)e(else)h(it)g(is)g(set)g (to)g(5)g(seconds.)111 3156 y(3.)46 b(The)30 b(deterministic)h (calculated)i(in)m(terv)-5 b(al)31 b(Td)f(is)g(set)h(to)g(max\(Tmin,)f (n*C\).)111 3343 y(4.)46 b(The)28 b(calculated)i(in)m(terv)-5 b(al)30 b(T)d(is)i(set)f(to)h(a)g(n)m(um)m(b)s(er)e(uniformly)g (distributed)g(b)s(et)m(w)m(een)i(0.5)g(and)f(1.5)h(times)227 3456 y(the)i(deterministic)g(calculated)h(in)m(terv)-5 b(al.)111 3644 y(5.)46 b(The)38 b(resulting)h(v)-5 b(alue)39 b(of)g(T)f(is)h(divided)f(b)m(y)g Fg(e)26 b Fj(\000)g Fo(3)p Fg(=)p Fo(2)40 b(=)f(1)p Fg(:)p Fo(21828)i(to)e(comp)s(ensate)h (for)e(the)h(fact)g(that)227 3757 y(the)32 b(timer)g(reconsideration)h (algorithm)f(con)m(v)m(erges)i(to)e(a)g(v)-5 b(alue)32 b(of)g(the)g(R)-8 b(TCP)31 b(bandwidth)f(b)s(elo)m(w)i(the)227 3870 y(in)m(tended)e(a)m(v)m(erage.)0 4121 y(This)d(pro)s(cedure)g (results)h(in)g(an)g(in)m(terv)-5 b(al)29 b(whic)m(h)f(is)h(random,)f (but)f(whic)m(h,)i(on)f(a)m(v)m(erage,)j(giv)m(es)f(at)f(least)g (25\045)g(of)0 4234 y(the)g(R)-8 b(TCP)29 b(bandwidth)e(to)j(senders)e (and)h(the)g(rest)g(to)h(receiv)m(ers.)42 b(If)28 b(the)i(senders)e (constitute)i(more)g(than)f(one)0 4347 y(quarter)f(of)h(the)g(mem)m(b)s (ership,)e(this)i(pro)s(cedure)e(splits)i(the)f(bandwidth)f(equally)i (among)h(all)f(participan)m(ts,)h(on)0 4460 y(a)m(v)m(erage.)0 4739 y Fl(6.3.2)105 b(Initialization)0 4950 y Fo(Up)s(on)32 b(joining)h(the)g(session,)h(the)f(participan)m(t)h(initializes)h(tp)d (to)i(0,)g(tc)g(to)f(0,)h(senders)e(to)i(0,)g(pmem)m(b)s(ers)e(to)h(1,) 0 5063 y(mem)m(b)s(ers)g(to)i(1,)g(w)m(e)p 716 5063 V 33 w(sen)m(t)g(to)f(false,)i(rtcp)p 1454 5063 V 33 w(b)m(w)d(to)i(the)f (sp)s(eci\014ed)f(fraction)h(of)g(the)h(session)f(bandwidth,)f(initial) 0 5176 y(to)i(true,)g(and)f(a)m(vg)p 658 5176 V 34 w(rtcp)p 854 5176 V 33 w(size)h(to)g(the)g(probable)f(size)h(of)f(the)h(\014rst) e(R)-8 b(TCP)34 b(pac)m(k)m(et)i(that)f(the)g(application)h(will)0 5289 y(later)e(construct.)50 b(The)33 b(calculated)i(in)m(terv)-5 b(al)35 b(T)d(is)i(then)f(computed,)h(and)f(the)g(\014rst)g(pac)m(k)m (et)i(is)e(sc)m(heduled)g(for)0 5656 y(Sc)m(h)m(ulzrinne,)d(et)h(al.) 1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(25])p eop %%Page: 26 26 26 25 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(time)j(tn)g(=)f(T.)48 b(This)32 b(means)g(that)i(a)f(transmission)f(timer)h(is)g(set)g(whic)m(h)g (expires)f(at)i(time)f(T.)48 b(Note)34 b(that)f(an)0 511 y(application)f Fi(ma)-6 b(y)31 b Fo(use)f(an)m(y)h(desired)f (approac)m(h)g(for)h(implemen)m(ting)g(this)f(timer.)0 663 y(The)g(participan)m(t)h(adds)f(its)h(o)m(wn)f(SSR)m(C)f(to)j(the)e (mem)m(b)s(er)g(table.)0 935 y Fl(6.3.3)105 b(Receiving)37 b(an)d(R)-9 b(TP)36 b(or)f(Non-BYE)g(R)-9 b(TCP)35 b(P)m(ac)m(k)m(et)0 1146 y Fo(When)e(an)g(R)-8 b(TP)33 b(or)h(R)-8 b(TCP)32 b(pac)m(k)m(et)k(is)d(receiv)m(ed)i(from)e(a)g(participan)m(t)i(whose)e (SSR)m(C)f(is)h(not)h(in)f(the)h(mem)m(b)s(er)0 1259 y(table,)e(the)f(SSR)m(C)f(is)h(added)g(to)g(the)g(table,)i(and)d(the)h (v)-5 b(alue)32 b(for)e(mem)m(b)s(ers)g(is)h(up)s(dated)f(once)i(the)f (participan)m(t)0 1372 y(has)h(b)s(een)g(v)-5 b(alidated)33 b(as)g(describ)s(ed)e(in)h(Section)h(6.2.1.)49 b(The)31 b(same)i(pro)s(cessing)f(o)s(ccurs)g(for)g(eac)m(h)i(CSR)m(C)e(in)g(a)0 1485 y(v)-5 b(alidated)31 b(R)-8 b(TP)31 b(pac)m(k)m(et.)0 1637 y(When)36 b(an)g(R)-8 b(TP)36 b(pac)m(k)m(et)i(is)e(receiv)m(ed)i (from)e(a)g(participan)m(t)h(whose)f(SSR)m(C)g(is)g(not)g(in)g(the)h (sender)e(table,)k(the)0 1750 y(SSR)m(C)29 b(is)i(added)e(to)j(the)e (table,)i(and)d(the)i(v)-5 b(alue)31 b(for)f(senders)f(is)i(up)s (dated.)0 1902 y(F)-8 b(or)31 b(eac)m(h)h(comp)s(ound)d(R)-8 b(TCP)29 b(pac)m(k)m(et)k(receiv)m(ed,)f(the)e(v)-5 b(alue)31 b(of)g(a)m(vg)p 2387 1902 28 4 v 34 w(rtcp)p 2583 1902 V 32 w(size)h(is)e(up)s(dated:)732 2090 y(a)m(vg)p 872 2090 V 34 w(rtcp)p 1068 2090 V 33 w(size)h(=)f(\(1/16\))j(*)e(pac)m(k)m (et)p 1986 2090 V 34 w(size)h(+)e(\(15/16\))j(*)e(a)m(vg)p 2833 2090 V 34 w(rtcp)p 3029 2090 V 32 w(size)0 2278 y(where)f(pac)m(k)m(et)p 521 2278 V 35 w(size)h(is)f(the)h(size)g(of)g (the)f(R)-8 b(TCP)30 b(pac)m(k)m(et)i(just)e(receiv)m(ed.)0 2550 y Fl(6.3.4)105 b(Receiving)37 b(an)d(R)-9 b(TCP)36 b(BYE)f(P)m(ac)m(k)m(et)0 2761 y Fo(Except)d(as)g(describ)s(ed)e(in)i (Section)g(6.3.7)h(for)f(the)f(case)i(when)e(an)g(R)-8 b(TCP)31 b(BYE)h(is)g(to)g(b)s(e)f(transmitted,)h(if)g(the)0 2874 y(receiv)m(ed)25 b(pac)m(k)m(et)h(is)e(an)g(R)-8 b(TCP)24 b(BYE)g(pac)m(k)m(et,)k(the)c(SSR)m(C)f(is)h(c)m(hec)m(k)m(ed) i(against)f(the)f(mem)m(b)s(er)g(table.)39 b(If)24 b(presen)m(t,)0 2987 y(the)38 b(en)m(try)g(is)f(remo)m(v)m(ed)i(from)e(the)g(table,)k (and)c(the)h(v)-5 b(alue)38 b(for)f(mem)m(b)s(ers)g(is)g(up)s(dated.)61 b(The)37 b(SSR)m(C)g(is)g(then)0 3099 y(c)m(hec)m(k)m(ed)30 b(against)g(the)f(sender)f(table.)41 b(If)28 b(presen)m(t,)h(the)f(en)m (try)h(is)g(remo)m(v)m(ed)g(from)f(the)h(table,)h(and)e(the)g(v)-5 b(alue)29 b(for)0 3212 y(senders)g(is)i(up)s(dated.)0 3364 y(F)-8 b(urthermore,)34 b(to)g(mak)m(e)h(the)f(transmission)f (rate)h(of)f(R)-8 b(TCP)33 b(pac)m(k)m(ets)i(more)f(adaptiv)m(e)h(to)f (c)m(hanges)g(in)f(group)0 3477 y(mem)m(b)s(ership,)f(the)i(follo)m (wing)g(\\rev)m(erse)g(reconsideration")h(algorithm)f Fi(should)d Fo(b)s(e)h(executed)i(when)e(a)i(BYE)0 3590 y(pac)m(k)m(et)e(is)f(receiv)m(ed)h(that)e(reduces)g(mem)m(b)s(ers)g (to)h(a)g(v)-5 b(alue)31 b(less)f(than)h(pmem)m(b)s(ers:)136 3795 y Fj(\017)46 b Fo(The)30 b(v)-5 b(alue)31 b(for)f(tn)g(is)h(up)s (dated)e(according)i(to)g(the)g(follo)m(wing)h(form)m(ula:)1199 3991 y(tn)e(=)g(tc)h(+)f(\(mem)m(b)s(ers/pmem)m(b)s(ers\))g(*)h(\(tn)f (-)h(tc\))136 4187 y Fj(\017)46 b Fo(The)30 b(v)-5 b(alue)31 b(for)f(tp)g(is)h(up)s(dated)e(according)i(the)g(follo)m(wing)h(form)m (ula:)1207 4383 y(tp)e(=)g(tc)h(-)g(\(mem)m(b)s(ers/pmem)m(b)s(ers\))e (*)i(\(tc)g(-)g(tp\).)136 4578 y Fj(\017)46 b Fo(The)30 b(next)h(R)-8 b(TCP)30 b(pac)m(k)m(et)i(is)e(resc)m(heduled)g(for)h (transmission)f(at)h(time)g(tn,)f(whic)m(h)g(is)h(no)m(w)f(earlier.)136 4750 y Fj(\017)46 b Fo(The)30 b(v)-5 b(alue)31 b(of)g(pmem)m(b)s(ers)e (is)h(set)h(equal)g(to)g(mem)m(b)s(ers.)0 4956 y(This)36 b(algorithm)i(do)s(es)e(not)h(prev)m(en)m(t)g(the)g(group)f(size)i (estimate)h(from)d(incorrectly)i(dropping)d(to)j(zero)f(for)g(a)0 5068 y(short)31 b(time)i(due)d(to)j(premature)e(timeouts)h(when)f(most) h(participan)m(ts)g(of)g(a)g(large)g(session)g(lea)m(v)m(e)i(at)e(once) h(but)0 5181 y(some)41 b(remain.)70 b(The)40 b(algorithm)h(do)s(es)f (mak)m(e)i(the)e(estimate)i(return)d(to)j(the)e(correct)i(v)-5 b(alue)40 b(more)h(rapidly)-8 b(.)0 5294 y(This)30 b(situation)i(is)g (un)m(usual)e(enough)h(and)f(the)i(consequences)f(are)h(su\016cien)m (tly)g(harmless)f(that)g(this)h(problem)0 5407 y(is)e(deemed)h(only)f (a)h(secondary)f(concern.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(26])p eop %%Page: 27 27 27 26 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fl(6.3.5)105 b(Timing)36 b(Out)e(an)g(SSR)m(C) 0 609 y Fo(A)m(t)40 b(o)s(ccasional)i(in)m(terv)-5 b(als,)43 b(the)c(participan)m(t)i Fi(must)d Fo(c)m(hec)m(k)j(to)f(see)g(if)f(an) m(y)h(of)g(the)f(other)h(participan)m(ts)g(time)0 722 y(out.)65 b(T)-8 b(o)38 b(do)g(this,)j(the)d(participan)m(t)h(computes) g(the)f(deterministic)h(\(without)g(the)f(randomization)i(factor\))0 835 y(calculated)28 b(in)m(terv)-5 b(al)27 b(Td)d(for)i(a)g(receiv)m (er,)i(that)f(is,)g(with)e(w)m(e)p 2067 835 28 4 v 33 w(sen)m(t)h(false.)40 b(An)m(y)26 b(other)g(session)g(mem)m(b)s(er)f (who)g(has)0 948 y(not)32 b(sen)m(t)h(an)f(R)-8 b(TP)32 b(or)h(R)-8 b(TCP)31 b(pac)m(k)m(et)j(since)f(time)g(tc)g(-)f(MTd)g (\(M)h(is)f(the)h(timeout)g(m)m(ultiplier,)g(and)f(defaults)0 1061 y(to)j(5\))h(is)f(timed)g(out.)54 b(This)34 b(means)g(that)i(its)f (SSR)m(C)e(is)i(remo)m(v)m(ed)h(from)e(the)h(mem)m(b)s(er)f(list,)j (and)d(mem)m(b)s(ers)g(is)0 1174 y(up)s(dated.)40 b(A)30 b(similar)h(c)m(hec)m(k)h(is)e(p)s(erformed)f(on)i(the)f(sender)g (list.)41 b(An)m(y)31 b(mem)m(b)s(er)f(on)g(the)h(sender)e(list)i(who)f (has)0 1287 y(not)g(sen)m(t)g(an)f(R)-8 b(TP)29 b(pac)m(k)m(et)i(since) f(time)g(tc)g(-)g(2T)f(\(within)h(the)f(last)h(t)m(w)m(o)h(R)-8 b(TCP)29 b(rep)s(ort)g(in)m(terv)-5 b(als\))31 b(is)e(remo)m(v)m(ed)0 1400 y(from)h(the)g(sender)g(list,)h(and)f(senders)g(is)g(up)s(dated.)0 1552 y(If)f(an)m(y)i(mem)m(b)s(ers)e(time)h(out,)h(the)f(rev)m(erse)g (reconsideration)h(algorithm)g(describ)s(ed)e(in)g(Section)i(6.3.4)h Fi(should)0 1665 y Fo(b)s(e)e(p)s(erformed.)0 1817 y(The)g(participan)m (t)h Fi(must)f Fo(p)s(erform)f(this)h(c)m(hec)m(k)i(at)f(least)g(once)h (p)s(er)d(R)-8 b(TCP)30 b(transmission)g(in)m(terv)-5 b(al.)0 2094 y Fl(6.3.6)105 b(Expiration)35 b(of)g(T)-9 b(ransmission)36 b(Timer)0 2305 y Fo(When)30 b(the)h(pac)m(k)m(et)h (transmission)e(timer)h(expires,)f(the)h(participan)m(t)g(p)s(erforms)e (the)i(follo)m(wing)h(op)s(erations:)136 2524 y Fj(\017)46 b Fo(The)27 b(transmission)g(in)m(terv)-5 b(al)28 b(T)f(is)g(computed)g (as)h(describ)s(ed)e(in)g(Section)i(6.3.1,)i(including)d(the)g(random-) 227 2637 y(ization)32 b(factor.)136 2821 y Fj(\017)46 b Fo(If)35 b(tp)g(+)g(T)g(is)h(less)g(than)f(or)g(equal)h(to)g(tc,)i (an)d(R)-8 b(TCP)35 b(pac)m(k)m(et)i(is)f(transmitted.)56 b(tp)35 b(is)h(set)f(to)i(tc,)g(then)227 2934 y(another)45 b(v)-5 b(alue)44 b(for)g(T)g(is)g(calculated)i(as)e(in)g(the)g (previous)g(step)g(and)f(tn)h(is)g(set)h(to)g(tc)f(+)g(T.)81 b(The)227 3047 y(transmission)30 b(timer)h(is)f(set)h(to)g(expire)f (again)i(at)f(time)g(tn.)40 b(If)30 b(tp)g(+)g(T)g(is)g(greater)i(than) e(tc,)h(tn)f(is)g(set)h(to)227 3160 y(tp)f(+)f(T.)40 b(No)30 b(R)-8 b(TCP)29 b(pac)m(k)m(et)j(is)e(transmitted.)41 b(The)29 b(transmission)g(timer)h(is)g(set)g(to)g(expire)g(at)h(time)f (tn.)136 3344 y Fj(\017)46 b Fo(pmem)m(b)s(ers)29 b(is)i(set)g(to)g (mem)m(b)s(ers.)0 3562 y(If)g(an)h(R)-8 b(TCP)32 b(pac)m(k)m(et)i(is)e (transmitted,)h(the)f(v)-5 b(alue)32 b(of)g(initial)h(is)f(set)h(to)g (F)-10 b(ALSE.)45 b(F)-8 b(urthermore,)32 b(the)g(v)-5 b(alue)33 b(of)0 3675 y(a)m(vg)p 140 3675 V 34 w(rtcp)p 336 3675 V 33 w(size)e(is)f(up)s(dated:)732 3894 y(a)m(vg)p 872 3894 V 34 w(rtcp)p 1068 3894 V 33 w(size)h(=)f(\(1/16\))j(*)e(pac)m (k)m(et)p 1986 3894 V 34 w(size)h(+)e(\(15/16\))j(*)e(a)m(vg)p 2833 3894 V 34 w(rtcp)p 3029 3894 V 32 w(size)0 4112 y(where)f(pac)m(k)m(et)p 521 4112 V 35 w(size)h(is)f(the)h(size)g(of)g (the)f(R)-8 b(TCP)30 b(pac)m(k)m(et)i(just)e(transmitted.)0 4390 y Fl(6.3.7)105 b(T)-9 b(ransmitting)35 b(a)g(BYE)g(P)m(ac)m(k)m (et)0 4601 y Fo(When)j(a)h(participan)m(t)h(wishes)e(to)h(lea)m(v)m(e)i (a)e(session,)i(a)e(BYE)g(pac)m(k)m(et)h(is)f(transmitted)g(to)g (inform)f(the)h(other)0 4714 y(participan)m(ts)33 b(of)e(the)h(ev)m(en) m(t.)47 b(In)31 b(order)g(to)h(a)m(v)m(oid)h(a)f(\015o)s(o)s(d)f(of)h (BYE)g(pac)m(k)m(ets)h(when)e(man)m(y)h(participan)m(ts)h(lea)m(v)m(e)0 4827 y(the)d(system,)h(a)f(participan)m(t)h Fi(must)e Fo(execute)j(the)e(follo)m(wing)i(algorithm)f(if)f(the)g(n)m(um)m(b)s (er)f(of)h(mem)m(b)s(ers)g(is)g(more)0 4940 y(than)43 b(50)i(when)e(the)h(participan)m(t)g(c)m(ho)s(oses)h(to)g(lea)m(v)m(e.) 83 b(This)43 b(algorithm)h(usurps)e(the)i(normal)f(role)i(of)f(the)0 5052 y(mem)m(b)s(ers)30 b(v)-5 b(ariable)31 b(to)g(coun)m(t)g(BYE)g (pac)m(k)m(ets)h(instead:)136 5294 y Fj(\017)46 b Fo(When)25 b(the)h(participan)m(t)h(decides)e(to)h(lea)m(v)m(e)i(the)e(system,)g (tp)g(is)f(reset)h(to)g(tc,)i(the)d(curren)m(t)g(time,)j(mem)m(b)s(ers) 227 5407 y(and)k(pmem)m(b)s(ers)f(are)h(initialized)i(to)f(1,)g (initial)h(is)e(set)h(to)g(1,)g(w)m(e)p 2459 5407 V 33 w(sen)m(t)g(is)f(set)h(to)g(false,)g(senders)e(is)h(set)h(to)0 5656 y(Sc)m(h)m(ulzrinne,)d(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(27])p eop %%Page: 28 28 28 27 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(0,)j(and)e(a)m(vg)p 648 399 28 4 v 34 w(rtcp)p 844 399 V 33 w(size)h(is)g(set)h(to)f(the)g(size)h (of)f(the)g(comp)s(ound)e(BYE)i(pac)m(k)m(et.)47 b(The)31 b(calculated)j(in)m(terv)-5 b(al)227 511 y(T)30 b(is)h(computed.)40 b(The)30 b(BYE)h(pac)m(k)m(et)h(is)f(then)f(sc)m(heduled)g(for)g(time)h (tn)f(=)g(tc)h(+)f(T.)136 699 y Fj(\017)46 b Fo(Ev)m(ery)f(time)h(a)f (BYE)h(pac)m(k)m(et)h(from)d(another)h(participan)m(t)h(is)f(receiv)m (ed,)50 b(mem)m(b)s(ers)44 b(is)h(incremen)m(ted)227 812 y(b)m(y)c(1)g(regardless)h(of)f(whether)f(that)i(participan)m(t)g (exists)f(in)g(the)g(mem)m(b)s(er)g(table)g(or)g(not,)k(and)40 b(when)227 925 y(SSR)m(C)32 b(sampling)g(is)g(in)g(use,)h(regardless)f (of)h(whether)e(or)h(not)h(the)f(BYE)h(SSR)m(C)e(w)m(ould)h(b)s(e)g (included)f(in)227 1038 y(the)38 b(sample.)61 b(mem)m(b)s(ers)37 b(is)g(NOT)g(incremen)m(ted)h(when)e(other)h(R)-8 b(TCP)37 b(pac)m(k)m(ets)i(or)e(R)-8 b(TP)37 b(pac)m(k)m(ets)j(are)227 1151 y(receiv)m(ed,)28 b(but)d(only)h(for)f(BYE)h(pac)m(k)m(ets.)41 b(Similarly)-8 b(,)28 b(a)m(vg)p 2204 1151 V 34 w(rtcp)p 2400 1151 V 32 w(size)f(is)e(up)s(dated)g(only)g(for)h(receiv)m(ed)h (BYE)227 1264 y(pac)m(k)m(ets.)43 b(senders)29 b(is)i(NOT)f(up)s(dated) f(when)g(R)-8 b(TP)30 b(pac)m(k)m(ets)i(arriv)m(e;)g(it)f(remains)f(0.) 136 1451 y Fj(\017)46 b Fo(T)-8 b(ransmission)43 b(of)h(the)g(BYE)f (pac)m(k)m(et)j(then)d(follo)m(ws)i(the)e(rules)g(for)h(transmitting)g (a)g(regular)f(R)-8 b(TCP)227 1564 y(pac)m(k)m(et,)33 b(as)d(ab)s(o)m(v)m(e.)0 1816 y(This)k(allo)m(ws)i(BYE)f(pac)m(k)m(ets) i(to)e(b)s(e)g(sen)m(t)g(righ)m(t)g(a)m(w)m(a)m(y)-8 b(,)39 b(y)m(et)d(con)m(trols)g(their)f(total)h(bandwidth)d(usage.)55 b(In)34 b(the)0 1929 y(w)m(orst)29 b(case,)h(this)f(could)f(cause)h(R) -8 b(TCP)28 b(con)m(trol)i(pac)m(k)m(ets)h(to)e(use)f(t)m(wice)i(the)f (bandwidth)e(as)i(normal)f(\(10\045\))i(|)0 2042 y(5\045)h(for)f (non-BYE)g(R)-8 b(TCP)30 b(pac)m(k)m(ets)i(and)e(5\045)g(for)h(BYE.)0 2194 y(A)e(participan)m(t)g(that)h(do)s(es)e(not)h(w)m(an)m(t)g(to)h(w) m(ait)f(for)g(the)f(ab)s(o)m(v)m(e)i(mec)m(hanism)f(to)g(allo)m(w)i (transmission)d(of)h(a)g(BYE)0 2307 y(pac)m(k)m(et)40 b Fi(ma)-6 b(y)40 b Fo(lea)m(v)m(e)g(the)f(group)f(without)g(sending)g (a)h(BYE)f(at)h(all.)66 b(That)38 b(participan)m(t)i(will)e(ev)m(en)m (tually)j(b)s(e)0 2420 y(timed)31 b(out)f(b)m(y)g(the)h(other)g(group)e (mem)m(b)s(ers.)0 2572 y(If)43 b(the)h(group)g(size)g(estimate)i(mem)m (b)s(ers)d(is)h(less)g(than)g(50)g(when)f(the)h(participan)m(t)h (decides)f(to)h(lea)m(v)m(e,)50 b(the)0 2684 y(participan)m(t)40 b Fi(ma)-6 b(y)40 b Fo(send)e(a)h(BYE)g(pac)m(k)m(et)i(immediately)-8 b(.)68 b(Alternativ)m(ely)-8 b(,)44 b(the)39 b(participan)m(t)h Fi(ma)-6 b(y)40 b Fo(c)m(ho)s(ose)g(to)0 2797 y(execute)32 b(the)e(ab)s(o)m(v)m(e)i(BYE)f(bac)m(k)m(o\013)h(algorithm.)0 2949 y(In)37 b(either)h(case,)i(a)e(participan)m(t)h(whic)m(h)e(nev)m (er)h(sen)m(t)g(an)f(R)-8 b(TP)38 b(or)f(R)-8 b(TCP)37 b(pac)m(k)m(et)i Fi(must)i(not)c Fo(send)g(a)h(BYE)0 3062 y(pac)m(k)m(et)32 b(when)e(they)g(lea)m(v)m(e)j(the)e(group.)0 3342 y Fl(6.3.8)105 b(Up)s(dating)36 b(w)m(e)p 912 3342 32 4 v 37 w(sen)m(t)0 3552 y Fo(The)30 b(v)-5 b(ariable)32 b(w)m(e)p 637 3552 28 4 v 33 w(sen)m(t)f(con)m(tains)h(true)f(if)f(the) h(participan)m(t)h(has)e(sen)m(t)h(an)g(R)-8 b(TP)31 b(pac)m(k)m(et)h(recen)m(tly)-8 b(,)33 b(false)e(other-)0 3665 y(wise.)43 b(This)30 b(determination)i(is)f(made)h(b)m(y)f(using)f (the)h(same)h(mec)m(hanisms)f(as)h(for)f(managing)g(the)h(set)f(of)h (other)0 3778 y(participan)m(ts)37 b(listed)g(in)e(the)i(senders)e (table.)59 b(If)35 b(the)i(participan)m(t)g(sends)e(an)h(R)-8 b(TP)36 b(pac)m(k)m(et)i(when)d(w)m(e)p 3615 3778 V 33 w(sen)m(t)i(is)0 3891 y(false,)d(it)e(adds)g(itself)h(to)g(the)f (sender)f(table)i(and)f(sets)h(w)m(e)p 2014 3891 V 33 w(sen)m(t)g(to)f(true.)46 b(The)32 b(rev)m(erse)h(reconsideration)g (algo-)0 4004 y(rithm)c(describ)s(ed)f(in)h(Section)h(6.3.4)i Fi(should)27 b Fo(b)s(e)i(p)s(erformed)f(to)i(p)s(ossibly)e(reduce)i (the)f(dela)m(y)i(b)s(efore)e(sending)0 4117 y(an)k(SR)f(pac)m(k)m(et.) 51 b(Ev)m(ery)34 b(time)g(another)f(R)-8 b(TP)33 b(pac)m(k)m(et)i(is)e (sen)m(t,)i(the)e(time)h(of)f(transmission)g(of)g(that)h(pac)m(k)m(et)h (is)0 4230 y(main)m(tained)f(in)f(the)h(table.)51 b(The)33 b(normal)g(sender)g(timeout)i(algorithm)f(is)g(then)f(applied)g(to)h (the)g(participan)m(t)0 4343 y(|)j(if)f(an)h(R)-8 b(TP)37 b(pac)m(k)m(et)h(has)f(not)g(b)s(een)f(transmitted)h(since)g(time)h(tc) f(-)g(2T,)g(the)g(participan)m(t)h(remo)m(v)m(es)g(itself)0 4456 y(from)30 b(the)g(sender)g(table,)i(decremen)m(ts)f(the)f(sender)g (coun)m(t,)h(and)f(sets)h(w)m(e)p 2559 4456 V 33 w(sen)m(t)g(to)g (false.)0 4735 y Fl(6.3.9)105 b(Allo)s(cation)36 b(of)f(Source)h (Description)g(Bandwidth)0 4946 y Fo(This)h(sp)s(eci\014cation)i (de\014nes)e(sev)m(eral)j(source)e(description)g(\(SDES\))g(items)h(in) f(addition)g(to)h(the)f(mandatory)0 5059 y(CNAME)g(item,)i(suc)m(h)d (as)h(NAME)g(\(p)s(ersonal)g(name\))g(and)f(EMAIL)h(\(email)h (address\).)62 b(It)37 b(also)i(pro)m(vides)f(a)0 5171 y(means)29 b(to)h(de\014ne)e(new)g(application-sp)s(eci\014c)j(R)-8 b(TCP)28 b(pac)m(k)m(et)j(t)m(yp)s(es.)40 b(Applications)30 b(should)e(exercise)i(caution)0 5284 y(in)c(allo)s(cating)j(con)m(trol) f(bandwidth)d(to)i(this)g(additional)g(information)g(b)s(ecause)g(it)g (will)g(slo)m(w)g(do)m(wn)f(the)h(rate)g(at)0 5397 y(whic)m(h)j (reception)i(rep)s(orts)e(and)g(CNAME)h(are)g(sen)m(t,)h(th)m(us)e (impairing)h(the)g(p)s(erformance)f(of)h(the)g(proto)s(col.)43 b(It)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(28])p eop %%Page: 29 29 29 28 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(is)c Fi(recommended)d Fo(that)k(no)f(more)g (than)g(20\045)g(of)g(the)h(R)-8 b(TCP)25 b(bandwidth)f(allo)s(cated)k (to)f(a)f(single)h(participan)m(t)0 511 y(b)s(e)32 b(used)h(to)g(carry) g(the)h(additional)g(information.)49 b(F)-8 b(urthermore,)33 b(it)h(is)f Fk(not)h Fo(in)m(tended)f(that)g(all)h(SDES)e(items)0 624 y(will)68 b(b)s(e)34 b(included)f(in)h(ev)m(ery)h(application.)53 b(Those)33 b(that)i(are)f(included)g Fi(should)e Fo(b)s(e)h(assigned)i (a)f(fraction)h(of)0 737 y(the)h(bandwidth)e(according)j(to)g(their)f (utilit)m(y)-8 b(.)59 b(Rather)36 b(than)g(estimate)i(these)e (fractions)h(dynamically)-8 b(,)38 b(it)f(is)0 850 y(recommended)26 b(that)i(the)f(p)s(ercen)m(tages)h(b)s(e)e(translated)i(statically)h (in)m(to)f(rep)s(ort)e(in)m(terv)-5 b(al)28 b(coun)m(ts)g(based)e(on)h (the)0 963 y(t)m(ypical)32 b(length)f(of)f(an)h(item.)0 1115 y(F)-8 b(or)32 b(example,)h(an)f(application)h(ma)m(y)f(b)s(e)f (designed)g(to)i(send)d(only)i(CNAME,)g(NAME)g(and)f(EMAIL)h(and)f(not) 0 1228 y(an)m(y)26 b(others.)39 b(NAME)26 b(migh)m(t)g(b)s(e)f(giv)m (en)h(m)m(uc)m(h)f(higher)g(priorit)m(y)h(than)f(EMAIL)h(b)s(ecause)f (the)h(NAME)f(w)m(ould)h(b)s(e)0 1341 y(displa)m(y)m(ed)i(con)m(tin)m (uously)g(in)f(the)g(application's)i(user)d(in)m(terface,)k(whereas)d (EMAIL)g(w)m(ould)g(b)s(e)f(displa)m(y)m(ed)i(only)0 1454 y(when)34 b(requested.)53 b(A)m(t)36 b(ev)m(ery)f(R)-8 b(TCP)34 b(in)m(terv)-5 b(al,)38 b(an)c(RR)h(pac)m(k)m(et)h(and)e(an)h (SDES)f(pac)m(k)m(et)j(with)d(the)h(CNAME)0 1567 y(item)c(w)m(ould)f(b) s(e)f(sen)m(t.)41 b(F)-8 b(or)31 b(a)g(small)f(session)h(op)s(erating)f (at)h(the)g(minim)m(um)e(in)m(terv)-5 b(al,)31 b(that)g(w)m(ould)f(b)s (e)g(ev)m(ery)h(5)0 1680 y(seconds)d(on)g(the)h(a)m(v)m(erage.)43 b(Ev)m(ery)28 b(third)g(in)m(terv)-5 b(al)29 b(\(15)h(seconds\),)f(one) f(extra)h(item)g(w)m(ould)g(b)s(e)e(included)h(in)g(the)0 1793 y(SDES)34 b(pac)m(k)m(et.)55 b(Sev)m(en)35 b(out)f(of)h(eigh)m(t)h (times)f(this)f(w)m(ould)g(b)s(e)g(the)h(NAME)g(item,)h(and)e(ev)m(ery) i(eigh)m(th)f(time)g(\(2)0 1905 y(min)m(utes\))c(it)g(w)m(ould)f(b)s(e) g(the)g(EMAIL)g(item.)0 2058 y(When)h(m)m(ultiple)h(applications)h(op)s (erate)f(in)f(concert)h(using)f(cross-application)i(binding)d(through)h (a)h(common)0 2170 y(CNAME)27 b(for)g(eac)m(h)i(participan)m(t,)g(for)e (example)h(in)f(a)g(m)m(ultimedia)h(conference)g(comp)s(osed)f(of)h(an) f(R)-8 b(TP)27 b(session)0 2283 y(for)36 b(eac)m(h)i(medium,)f(the)g (additional)g(SDES)f(information)h Fi(ma)-6 b(y)74 b Fo(b)s(e)36 b(sen)m(t)h(in)f(only)g(one)h(R)-8 b(TP)36 b(session.)59 b(The)0 2396 y(other)32 b(sessions)g(w)m(ould)f(carry)h (only)g(the)g(CNAME)g(item.)46 b(In)31 b(particular,)h(this)g(approac)m (h)g(should)f(b)s(e)g(applied)0 2509 y(to)g(the)g(m)m(ultiple)g (sessions)f(of)h(a)f(la)m(y)m(ered)i(enco)s(ding)f(sc)m(heme)g(\(see)g (Section)g(2.4\).)0 2792 y Fn(6.4)112 b(Sender)39 b(and)f(Receiv)m(er)f (Rep)s(orts)0 3003 y Fo(R)-8 b(TP)31 b(receiv)m(ers)h(pro)m(vide)g (reception)g(qualit)m(y)g(feedbac)m(k)g(using)f(R)-8 b(TCP)31 b(rep)s(ort)f(pac)m(k)m(ets)j(whic)m(h)e(ma)m(y)h(tak)m(e)h (one)0 3115 y(of)40 b(t)m(w)m(o)g(forms)f(dep)s(ending)f(up)s(on)g (whether)h(or)h(not)f(the)h(receiv)m(er)h(is)e(also)i(a)f(sender.)67 b(The)39 b(only)g(di\013erence)0 3228 y(b)s(et)m(w)m(een)c(the)g (sender)e(rep)s(ort)h(\(SR\))h(and)f(receiv)m(er)i(rep)s(ort)d(\(RR\))i (forms,)g(b)s(esides)f(the)h(pac)m(k)m(et)h(t)m(yp)s(e)f(co)s(de,)h(is) 0 3341 y(that)28 b(the)g(sender)f(rep)s(ort)h(includes)f(a)h(20-b)m (yte)i(sender)d(information)h(section)h(for)e(use)h(b)m(y)f(activ)m(e)j (senders.)39 b(The)0 3454 y(SR)31 b(is)i(issued)e(if)h(a)h(site)g(has)e (sen)m(t)i(an)m(y)g(data)f(pac)m(k)m(ets)i(during)d(the)i(in)m(terv)-5 b(al)33 b(since)f(issuing)g(the)g(last)h(rep)s(ort)f(or)0 3567 y(the)f(previous)e(one,)i(otherwise)g(the)g(RR)f(is)g(issued.)0 3719 y(Both)44 b(the)f(SR)g(and)g(RR)g(forms)f(include)h(zero)i(or)e (more)g(reception)h(rep)s(ort)f(blo)s(c)m(ks,)k(one)d(for)f(eac)m(h)h (of)g(the)0 3832 y(sync)m(hronization)g(sources)g(from)f(whic)m(h)g (this)g(receiv)m(er)i(has)e(receiv)m(ed)i(R)-8 b(TP)43 b(data)h(pac)m(k)m(ets)i(since)d(the)h(last)0 3945 y(rep)s(ort.)62 b(Rep)s(orts)38 b(are)g(not)g(issued)f(for)g(con)m(tributing)i(sources) f(listed)g(in)f(the)h(CSR)m(C)f(list.)64 b(Eac)m(h)38 b(reception)0 4058 y(rep)s(ort)25 b(blo)s(c)m(k)h(pro)m(vides)g (statistics)i(ab)s(out)d(the)h(data)h(receiv)m(ed)g(from)e(the)h (particular)h(source)e(indicated)i(in)e(that)0 4171 y(blo)s(c)m(k.)39 b(Since)25 b(a)g(maxim)m(um)f(of)h(31)g(reception)h(rep)s(ort)d(blo)s (c)m(ks)i(will)g(\014t)g(in)f(an)g(SR)g(or)h(RR)f(pac)m(k)m(et,)k (additional)d(RR)0 4284 y(pac)m(k)m(ets)35 b Fi(should)65 b Fo(b)s(e)32 b(stac)m(k)m(ed)k(after)d(the)h(initial)g(SR)f(or)g(RR)g (pac)m(k)m(et)j(as)d(needed)g(to)h(con)m(tain)h(the)e(reception)0 4397 y(rep)s(orts)27 b(for)g(all)i(sources)e(heard)g(during)f(the)i(in) m(terv)-5 b(al)29 b(since)f(the)g(last)g(rep)s(ort.)39 b(If)27 b(there)h(are)g(to)s(o)g(man)m(y)g(sources)0 4509 y(to)k(\014t)g(all)g(the)g(necessary)g(RR)f(pac)m(k)m(ets)i(in)m (to)g(one)e(comp)s(ound)f(R)-8 b(TCP)31 b(pac)m(k)m(et)j(without)d (exceeding)i(the)f(MTU)0 4622 y(of)g(the)f(net)m(w)m(ork)h(path,)g (then)f(only)h(the)f(subset)g(that)h(will)g(\014t)f(in)m(to)h(one)g (MTU)g Fi(should)d Fo(b)s(e)i(included)g(in)g(eac)m(h)0 4735 y(in)m(terv)-5 b(al.)46 b(The)31 b(subsets)g Fi(should)e Fo(b)s(e)i(selected)j(round-robin)29 b(across)j(m)m(ultiple)h(in)m (terv)-5 b(als)32 b(so)g(that)g(all)h(sources)0 4848 y(are)e(rep)s(orted.)0 5000 y(The)k(next)h(sections)g(de\014ne)f(the)h (formats)f(of)h(the)g(t)m(w)m(o)h(rep)s(orts,)f(ho)m(w)g(they)f(ma)m(y) h(b)s(e)f(extended)h(in)f(a)h(pro\014le-)0 5113 y(sp)s(eci\014c)j (manner)g(if)g(an)h(application)h(requires)e(additional)h(feedbac)m(k)g (information,)j(and)c(ho)m(w)g(the)h(rep)s(orts)0 5226 y(ma)m(y)31 b(b)s(e)f(used.)40 b(Details)32 b(of)e(reception)i(rep)s (orting)e(b)m(y)g(translators)h(and)f(mixers)g(is)g(giv)m(en)i(in)e (Section)h(7.)0 5656 y(Sc)m(h)m(ulzrinne,)f(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(29])p eop %%Page: 30 30 30 29 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fl(6.4.1)105 b(SR:)36 b(Sender)f(Rep)s(ort)g (R)-9 b(TCP)35 b(P)m(ac)m(k)m(et)349 596 y Ff(0)827 b(1)h(2)g(3)349 696 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g(7)g(8)g(9)g(0)h(1)f(2)g(3)g(4)g(5) g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4)g(5)g(6)g(7)h(8)f(9)g(0)g(1)305 795 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)0 895 y(header)e(|V=2|P|)172 b(RC)129 b(|)i(PT=SR=200)c(|)566 b(length)521 b(|)305 994 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o (+-)o(+-)o(+-+)305 1094 y(|)1089 b(SSRC)42 b(of)h(sender)1044 b(|)305 1194 y(+=+=+=+=+=+=+=+=)o(+=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+)o (=+=)o(+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+=)o(+=)o(+=)o(+=+)0 1293 y(sender)41 b(|)610 b(NTP)42 b(timestamp,)e(most)i(significant)d (word)565 b(|)0 1393 y(info)129 b(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o (-+-)o(+-)o(+-)o(+-+)305 1493 y(|)566 b(NTP)43 b(timestamp,)c(least)j (significant)d(word)565 b(|)305 1592 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o (-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o (-+)o(-+-)o(+-)o(+-)o(+-+)305 1692 y(|)1089 b(RTP)43 b(timestamp)1086 b(|)305 1792 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-) o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-) o(+-)o(+-)o(+-+)305 1891 y(|)915 b(sender's)40 b(packet)h(count)914 b(|)305 1991 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o (-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+) 305 2090 y(|)959 b(sender's)40 b(octet)h(count)914 b(|)305 2190 y(+=+=+=+=+=+=+=+=)o(+=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+)o(=+=)o (+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+=)o(+=)o(+=)o(+=+)0 2290 y(report)41 b(|)741 b(SSRC_1)41 b(\(SSRC)g(of)i(first)f(source\)) 738 b(|)0 2389 y(block)85 b(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o (+-)o(+-)o(+-+)87 2489 y(1)174 b(|)43 b(fraction)e(lost)g(|)305 b(cumulative)40 b(number)h(of)h(packets)f(lost)304 b(|)305 2589 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 2688 y(|)479 b(extended)40 b(highest)h(sequence)f(number)h(received)477 b(|)305 2788 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o (-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+) 305 2887 y(|)959 b(interarrival)38 b(jitter)957 b(|)305 2987 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 3087 y(|)1089 b(last)42 b(SR)h(\(LSR\))1088 b(|)305 3186 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 3286 y(|)828 b(delay)41 b(since)h(last)g(SR)h(\(DLSR\))782 b(|)305 3386 y(+=+=+=+=+=+=+=+=)o(+=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+)o (=+=)o(+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+=)o(+=)o(+=)o(+=+)0 3485 y(report)41 b(|)741 b(SSRC_2)41 b(\(SSRC)g(of)i(second)e(source\)) 695 b(|)0 3585 y(block)85 b(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o (+-)o(+-)o(+-+)87 3684 y(2)174 b(:)1351 b(...)1263 b(:)305 3784 y(+=+=+=+=+=+=+=+=)o(+=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+)o(=+=)o (+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+=)o(+=)o(+=)o(+=+)305 3884 y(|)784 b(profile-specific)37 b(extensions)781 b(|)305 3983 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)0 4218 y Fo(The)37 b(sender)f(rep)s(ort)h(pac)m(k)m(et)i(consists)f(of)f (three)h(sections,)i(p)s(ossibly)c(follo)m(w)m(ed)j(b)m(y)e(a)h(fourth) e(pro\014le-sp)s(eci\014c)0 4331 y(extension)j(section)h(if)e (de\014ned.)63 b(The)38 b(\014rst)g(section,)j(the)e(header,)h(is)f(8)g (o)s(ctets)g(long.)65 b(The)38 b(\014elds)g(ha)m(v)m(e)i(the)0 4444 y(follo)m(wing)32 b(meaning:)0 4665 y Fl(v)m(ersion)k(\(V\):)45 b Fo(2)30 b(bits)227 4778 y(Iden)m(ti\014es)35 b(the)h(v)m(ersion)f(of) g(R)-8 b(TP)g(,)36 b(whic)m(h)f(is)g(the)g(same)h(in)f(R)-8 b(TCP)34 b(pac)m(k)m(ets)j(as)e(in)g(R)-8 b(TP)35 b(data)h(pac)m(k)m (ets.)227 4891 y(The)30 b(v)m(ersion)h(de\014ned)e(b)m(y)h(this)h(sp)s (eci\014cation)g(is)f(t)m(w)m(o)i(\(2\).)0 5068 y Fl(padding)j(\(P\):) 46 b Fo(1)30 b(bit)227 5181 y(If)23 b(the)h(padding)f(bit)h(is)f(set,)j (this)e(individual)f(R)-8 b(TCP)23 b(pac)m(k)m(et)i(con)m(tains)g(some) f(additional)h(padding)e(o)s(ctets)227 5294 y(at)31 b(the)f(end)f(whic) m(h)g(are)h(not)g(part)g(of)g(the)g(con)m(trol)h(information)f(but)f (are)h(included)g(in)f(the)h(length)g(\014eld.)227 5407 y(The)41 b(last)h(o)s(ctet)h(of)e(the)g(padding)g(is)g(a)g(coun)m(t)h (of)g(ho)m(w)f(man)m(y)g(padding)f(o)s(ctets)j(should)d(b)s(e)h (ignored,)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(30])p eop %%Page: 31 31 31 30 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(including)35 b(itself)h(\(it)h(will)e(b)s(e) g(a)h(m)m(ultiple)g(of)f(four\).)55 b(P)m(adding)36 b(ma)m(y)f(b)s(e)g (needed)g(b)m(y)g(some)h(encryption)227 511 y(algorithms)31 b(with)f(\014xed)f(blo)s(c)m(k)i(sizes.)41 b(In)30 b(a)g(comp)s(ound)f (R)-8 b(TCP)29 b(pac)m(k)m(et,)j(padding)e(is)g(only)g(required)f(on) 227 624 y(one)c(individual)f(pac)m(k)m(et)j(b)s(ecause)d(the)h(comp)s (ound)e(pac)m(k)m(et)k(is)d(encrypted)h(as)f(a)h(whole)g(for)f(the)h (metho)s(d)f(in)227 737 y(Section)29 b(9.1.)42 b(Th)m(us,)27 b(padding)i Fi(must)e Fo(only)i(b)s(e)f(added)f(to)i(the)g(last)g (individual)f(pac)m(k)m(et,)j(and)d(if)g(padding)227 850 y(is)34 b(added)f(to)h(that)g(pac)m(k)m(et,)j(the)d(padding)e(bit)i Fi(must)e Fo(b)s(e)h(set)h(only)g(on)g(that)g(pac)m(k)m(et.)52 b(This)33 b(con)m(v)m(en)m(tion)227 963 y(aids)38 b(the)g(header)g(v)-5 b(alidit)m(y)40 b(c)m(hec)m(ks)f(describ)s(ed)e(in)h(App)s(endix)e(A.2) j(and)e(allo)m(ws)i(detection)h(of)e(pac)m(k)m(ets)227 1076 y(from)31 b(some)h(early)h(implemen)m(tations)g(that)f (incorrectly)g(set)h(the)e(padding)g(bit)h(on)f(the)h(\014rst)f (individual)227 1189 y(pac)m(k)m(et)i(and)c(add)h(padding)g(to)h(the)f (last)i(individual)d(pac)m(k)m(et.)0 1372 y Fl(reception)35 b(rep)s(ort)g(coun)m(t)h(\(R)m(C\):)44 b Fo(5)31 b(bits)227 1485 y(The)f(n)m(um)m(b)s(er)f(of)i(reception)g(rep)s(ort)f(blo)s(c)m (ks)g(con)m(tained)i(in)e(this)g(pac)m(k)m(et.)43 b(A)31 b(v)-5 b(alue)30 b(of)h(zero)g(is)g(v)-5 b(alid.)0 1669 y Fl(pac)m(k)m(et)35 b(t)m(yp)s(e)g(\(PT\):)45 b Fo(8)31 b(bits)227 1782 y(Con)m(tains)g(the)g(constan)m(t)g(200)h(to)f(iden)m (tify)g(this)f(as)h(an)f(R)-8 b(TCP)30 b(SR)g(pac)m(k)m(et.)0 1965 y Fl(length:)46 b Fo(16)31 b(bits)227 2078 y(The)37 b(length)h(of)g(this)g(R)-8 b(TCP)37 b(pac)m(k)m(et)i(in)f(32-bit)g(w)m (ords)f(min)m(us)g(one,)j(including)d(the)h(header)g(and)f(an)m(y)227 2191 y(padding.)51 b(\(The)34 b(o\013set)g(of)h(one)f(mak)m(es)h(zero)f (a)h(v)-5 b(alid)34 b(length)g(and)f(a)m(v)m(oids)j(a)e(p)s(ossible)g (in\014nite)f(lo)s(op)h(in)227 2304 y(scanning)e(a)h(comp)s(ound)e(R)-8 b(TCP)31 b(pac)m(k)m(et,)k(while)d(coun)m(ting)h(32-bit)h(w)m(ords)e(a) m(v)m(oids)h(a)g(v)-5 b(alidit)m(y)33 b(c)m(hec)m(k)h(for)227 2417 y(a)d(m)m(ultiple)g(of)g(4.\))0 2600 y Fl(SSR)m(C:)46 b Fo(32)31 b(bits)227 2713 y(The)f(sync)m(hronization)h(source)g(iden)m (ti\014er)g(for)f(the)g(originator)i(of)e(this)h(SR)e(pac)m(k)m(et.)0 2952 y(The)h(second)g(section,)i(the)e(sender)g(information,)g(is)h(20) g(o)s(ctets)g(long)g(and)f(is)g(presen)m(t)g(in)g(ev)m(ery)h(sender)f (rep)s(ort)0 3065 y(pac)m(k)m(et.)80 b(It)43 b(summarizes)g(the)g(data) h(transmissions)e(from)g(this)h(sender.)78 b(The)42 b(\014elds)g(ha)m (v)m(e)i(the)f(follo)m(wing)0 3178 y(meaning:)0 3417 y Fl(NTP)35 b(timestamp:)45 b Fo(64)31 b(bits)227 3530 y(Indicates)d(the)f(w)m(allclo)s(c)m(k)i(time)f(\(see)g(Section)g(4\)) 54 b(when)26 b(this)h(rep)s(ort)g(w)m(as)g(sen)m(t)g(so)h(that)f(it)h (ma)m(y)f(b)s(e)g(used)227 3643 y(in)c(com)m(bination)i(with)f (timestamps)f(returned)g(in)g(reception)h(rep)s(orts)f(from)g(other)h (receiv)m(ers)h(to)f(measure)227 3756 y(round-trip)j(propagation)h(to)h (those)f(receiv)m(ers.)41 b(Receiv)m(ers)29 b(should)e(exp)s(ect)h (that)h(the)f(measuremen)m(t)g(ac-)227 3869 y(curacy)d(of)g(the)f (timestamp)h(ma)m(y)g(b)s(e)f(limited)i(to)f(far)f(less)h(than)f(the)h (resolution)g(of)f(the)h(NTP)f(timestamp.)227 3982 y(The)k(measuremen)m (t)g(uncertain)m(t)m(y)h(of)f(the)g(timestamp)g(is)g(not)g(indicated)g (as)g(it)h(ma)m(y)f(not)g(b)s(e)f(kno)m(wn.)40 b(On)227 4095 y(a)31 b(system)f(that)h(has)f(no)g(notion)g(of)h(w)m(allclo)s(c)m (k)h(time)f(but)f(do)s(es)f(ha)m(v)m(e)j(some)e(system-sp)s(eci\014c)h (clo)s(c)m(k)g(suc)m(h)227 4208 y(as)38 b(\\system)g(uptime",)i(a)e (sender)e Fi(ma)-6 b(y)39 b Fo(use)e(that)h(clo)s(c)m(k)h(as)f(a)g (reference)g(to)g(calculate)i(relativ)m(e)f(NTP)227 4320 y(timestamps.)h(It)26 b(is)g(imp)s(ortan)m(t)g(to)g(c)m(ho)s(ose)h(a)f (commonly)g(used)f(clo)s(c)m(k)j(so)e(that)g(if)g(separate)h(implemen)m (ta-)227 4433 y(tions)g(are)g(used)f(to)i(pro)s(duce)d(the)i (individual)f(streams)h(of)g(a)g(m)m(ultimedia)h(session,)g(all)f (implemen)m(tations)227 4546 y(will)33 b(use)g(the)g(same)g(clo)s(c)m (k.)50 b(Un)m(til)34 b(the)f(y)m(ear)h(2036,)h(relativ)m(e)g(and)d (absolute)i(timestamps)f(will)h(di\013er)e(in)227 4659 y(the)f(high)g(bit)f(so)h(\(in)m(v)-5 b(alid\))32 b(comparisons)f(will) g(sho)m(w)g(a)g(large)g(di\013erence;)h(b)m(y)f(then)f(one)h(hop)s(es)f (relativ)m(e)227 4772 y(timestamps)35 b(will)f(no)g(longer)g(b)s(e)g (needed.)102 b(A)34 b(sender)f(that)h(has)g(no)g(notion)g(of)g(w)m (allclo)s(c)m(k)j(or)d(elapsed)227 4885 y(time)d Fi(ma)-6 b(y)32 b Fo(set)f(the)f(NTP)g(timestamp)h(to)g(zero.)0 5068 y Fl(R)-9 b(TP)36 b(timestamp:)45 b Fo(32)31 b(bits)227 5181 y(Corresp)s(onds)36 b(to)j(the)f(same)h(time)f(as)h(the)f(NTP)g (timestamp)g(\(ab)s(o)m(v)m(e\),)k(but)c(in)f(the)i(same)f(units)g(and) 227 5294 y(with)c(the)g(same)h(random)e(o\013set)i(as)f(the)g(R)-8 b(TP)34 b(timestamps)g(in)g(data)h(pac)m(k)m(ets.)53 b(This)33 b(corresp)s(ondence)227 5407 y(ma)m(y)i(b)s(e)e(used)g(for)g (in)m(tra-)i(and)e(in)m(ter-media)i(sync)m(hronization)f(for)g(sources) g(whose)f(NTP)g(timestamps)0 5656 y(Sc)m(h)m(ulzrinne,)d(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(31])p eop %%Page: 32 32 32 31 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(are)j(sync)m(hronized,)f(and)g(ma)m(y)g(b)s (e)g(used)f(b)m(y)h(media-indep)s(enden)m(t)g(receiv)m(ers)h(to)g (estimate)h(the)e(nominal)227 511 y(R)-8 b(TP)32 b(clo)s(c)m(k)i (frequency)-8 b(.)46 b(Note)34 b(that)f(in)f(most)g(cases)h(this)f (timestamp)h(will)g(not)f(b)s(e)g(equal)h(to)g(the)f(R)-8 b(TP)227 624 y(timestamp)22 b(in)e(an)m(y)h(adjacen)m(t)i(data)e(pac)m (k)m(et.)40 b(Rather,)23 b(it)e Fi(must)f Fo(b)s(e)41 b(calculated)23 b(from)d(the)h(corresp)s(onding)227 737 y(NTP)27 b(timestamp)i(using)e(the)h(relationship)f(b)s(et)m(w)m(een)i (the)e(R)-8 b(TP)28 b(timestamp)g(coun)m(ter)g(and)f(real)h(time)h(as) 227 850 y(main)m(tained)i(b)m(y)g(p)s(erio)s(dically)f(c)m(hec)m(king)j (the)d(w)m(allclo)s(c)m(k)j(time)e(at)g(a)g(sampling)f(instan)m(t.)0 1038 y Fl(sender's)35 b(pac)m(k)m(et)h(coun)m(t:)46 b Fo(32)31 b(bits)227 1151 y(The)d(total)h(n)m(um)m(b)s(er)e(of)h(R)-8 b(TP)28 b(data)g(pac)m(k)m(ets)i(transmitted)e(b)m(y)g(the)g(sender)f (since)i(starting)f(transmission)227 1264 y(up)34 b(un)m(til)h(the)g (time)g(this)g(SR)f(pac)m(k)m(et)i(w)m(as)f(generated.)55 b(The)34 b(coun)m(t)h Fi(should)e Fo(b)s(e)69 b(reset)35 b(if)g(the)g(sender)227 1377 y(c)m(hanges)d(its)e(SSR)m(C)g(iden)m (ti\014er.)0 1564 y Fl(sender's)35 b(o)s(ctet)g(coun)m(t:)46 b Fo(32)31 b(bits)227 1677 y(The)38 b(total)j(n)m(um)m(b)s(er)c(of)h (pa)m(yload)i(o)s(ctets)g(\(i.e.,)i(not)d(including)f(header)g(or)g (padding\))g(transmitted)h(in)227 1790 y(R)-8 b(TP)29 b(data)h(pac)m(k)m(ets)h(b)m(y)e(the)h(sender)e(since)i(starting)g (transmission)e(up)h(un)m(til)g(the)g(time)h(this)f(SR)g(pac)m(k)m(et) 227 1903 y(w)m(as)34 b(generated.)50 b(The)32 b(coun)m(t)i Fi(should)e Fo(b)s(e)65 b(reset)34 b(if)f(the)g(sender)g(c)m(hanges)h (its)f(SSR)m(C)g(iden)m(ti\014er.)49 b(This)227 2016 y(\014eld)30 b(can)h(b)s(e)f(used)f(to)i(estimate)h(the)f(a)m(v)m (erage)i(pa)m(yload)e(data)h(rate.)0 2267 y(The)d(third)g(section)h (con)m(tains)h(zero)f(or)g(more)g(reception)g(rep)s(ort)f(blo)s(c)m(ks) h(dep)s(ending)e(on)h(the)h(n)m(um)m(b)s(er)e(of)i(other)0 2380 y(sources)c(heard)f(b)m(y)h(this)g(sender)f(since)i(the)f(last)h (rep)s(ort.)38 b(Eac)m(h)27 b(reception)g(rep)s(ort)e(blo)s(c)m(k)i (con)m(v)m(eys)g(statistics)h(on)0 2493 y(the)j(reception)i(of)e(R)-8 b(TP)31 b(pac)m(k)m(ets)i(from)e(a)h(single)g(sync)m(hronization)g (source.)44 b(Receiv)m(ers)33 b Fi(should)g(not)62 b Fo(carry)0 2606 y(o)m(v)m(er)32 b(statistics)g(when)d(a)i(source)g(c)m (hanges)g(its)g(SSR)m(C)e(iden)m(ti\014er)i(due)e(to)j(a)e(collision.) 43 b(These)30 b(statistics)i(are:)0 2858 y Fl(SSR)m(C)p 273 2858 32 4 v 38 w(n)j(\(source)g(iden)m(ti\014er\):)45 b Fo(32)32 b(bits)227 2971 y(The)39 b(SSR)m(C)f(iden)m(ti\014er)h(of)g (the)g(source)h(to)f(whic)m(h)g(the)g(information)h(in)e(this)h (reception)h(rep)s(ort)e(blo)s(c)m(k)227 3084 y(p)s(ertains.)0 3271 y Fl(fraction)d(lost:)46 b Fo(8)31 b(bits)227 3384 y(The)22 b(fraction)h(of)g(R)-8 b(TP)22 b(data)h(pac)m(k)m(ets)h(from)e (source)g(SSR)m(C)p 2265 3384 28 4 v 32 w(n)g(lost)h(since)g(the)f (previous)g(SR)g(or)g(RR)g(pac)m(k)m(et)227 3497 y(w)m(as)27 b(sen)m(t,)h(expressed)e(as)g(a)h(\014xed)e(p)s(oin)m(t)i(n)m(um)m(b)s (er)e(with)g(the)i(binary)e(p)s(oin)m(t)i(at)g(the)f(left)h(edge)g(of)g (the)f(\014eld.)227 3610 y(\(That)42 b(is)f(equiv)-5 b(alen)m(t)43 b(to)f(taking)g(the)f(in)m(teger)i(part)e(after)h(m)m (ultiplying)g(the)f(loss)h(fraction)g(b)m(y)f(256.\))227 3723 y(This)35 b(fraction)g(is)h(de\014ned)e(to)h(b)s(e)g(the)g(n)m(um) m(b)s(er)f(of)h(pac)m(k)m(ets)i(lost)f(divided)f(b)m(y)g(the)g(n)m(um)m (b)s(er)f(of)h(pac)m(k)m(ets)227 3836 y(exp)s(ected,)h(as)e(de\014ned)f (in)g(the)h(next)h(paragraph.)51 b(An)33 b(implemen)m(tation)j(is)e (sho)m(wn)f(in)h(App)s(endix)e(A.3.)227 3949 y(If)g(the)g(loss)g(is)g (negativ)m(e)i(due)e(to)g(duplicates,)h(the)f(fraction)h(lost)g(is)f (set)g(to)h(zero.)46 b(Note)34 b(that)e(a)g(receiv)m(er)227 4062 y(cannot)i(tell)g(whether)e(an)m(y)h(pac)m(k)m(ets)h(w)m(ere)g (lost)f(after)g(the)g(last)h(one)f(receiv)m(ed,)i(and)d(that)i(there)e (will)i(b)s(e)227 4175 y(no)g(reception)g(rep)s(ort)f(blo)s(c)m(k)h (issued)e(for)i(a)f(source)h(if)f(all)i(pac)m(k)m(ets)g(from)e(that)h (source)g(sen)m(t)g(during)e(the)227 4287 y(last)f(rep)s(orting)f(in)m (terv)-5 b(al)32 b(ha)m(v)m(e)g(b)s(een)d(lost.)0 4475 y Fl(cum)m(ulativ)m(e)35 b(n)m(um)m(b)s(er)h(of)f(pac)m(k)m(ets)g (lost:)46 b Fo(24)31 b(bits)227 4588 y(The)37 b(total)j(n)m(um)m(b)s (er)c(of)i(R)-8 b(TP)37 b(data)h(pac)m(k)m(ets)i(from)d(source)h(SSR)m (C)p 2607 4588 V 31 w(n)g(that)g(ha)m(v)m(e)h(b)s(een)d(lost)j(since)f (the)227 4701 y(b)s(eginning)f(of)h(reception.)63 b(This)37 b(n)m(um)m(b)s(er)g(is)g(de\014ned)g(to)h(b)s(e)f(the)h(n)m(um)m(b)s (er)e(of)i(pac)m(k)m(ets)i(exp)s(ected)e(less)227 4814 y(the)33 b(n)m(um)m(b)s(er)e(of)h(pac)m(k)m(ets)i(actually)g(receiv)m (ed,)h(where)d(the)g(n)m(um)m(b)s(er)f(of)i(pac)m(k)m(ets)h(receiv)m (ed)g(includes)e(an)m(y)227 4927 y(whic)m(h)g(are)h(late)h(or)e (duplicates.)47 b(Th)m(us,)32 b(pac)m(k)m(ets)i(that)f(arriv)m(e)g (late)h(are)f Fk(not)g Fo(coun)m(ted)g(as)f(lost,)i(and)e(the)227 5040 y(loss)c(ma)m(y)g(b)s(e)f(negativ)m(e)j(if)e(there)g(are)f (duplicates.)41 b(The)27 b(n)m(um)m(b)s(er)f(of)i(pac)m(k)m(ets)h(exp)s (ected)f(is)g(de\014ned)e(to)j(b)s(e)227 5153 y(the)e(extended)g(last)h (sequence)f(n)m(um)m(b)s(er)f(receiv)m(ed,)j(as)f(de\014ned)d(next,)j (less)g(the)f(initial)h(sequence)f(n)m(um)m(b)s(er)227 5265 y(receiv)m(ed.)42 b(This)30 b(ma)m(y)h(b)s(e)f(calculated)i(as)f (sho)m(wn)e(in)h(App)s(endix)f(A.3.)0 5656 y(Sc)m(h)m(ulzrinne,)h(et)h (al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(32])p eop %%Page: 33 33 33 32 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fl(extended)35 b(highest)g(sequence)g(n)m(um)m (b)s(er)h(receiv)m(ed:)46 b Fo(32)31 b(bits)227 511 y(The)i(lo)m(w)i (16)f(bits)g(con)m(tain)h(the)f(highest)g(sequence)g(n)m(um)m(b)s(er)e (receiv)m(ed)j(in)e(an)h(R)-8 b(TP)33 b(data)i(pac)m(k)m(et)g(from)227 624 y(source)d(SSR)m(C)p 744 624 28 4 v 32 w(n,)g(and)f(the)h(most)h (signi\014can)m(t)g(16)f(bits)g(extend)g(that)h(sequence)f(n)m(um)m(b)s (er)f(with)g(the)h(cor-)227 737 y(resp)s(onding)g(coun)m(t)h(of)g (sequence)g(n)m(um)m(b)s(er)e(cycles,)k(whic)m(h)e(ma)m(y)g(b)s(e)f (main)m(tained)i(according)g(to)f(the)g(al-)227 850 y(gorithm)d(in)f (App)s(endix)e(A.1.)41 b(Note)31 b(that)e(di\013eren)m(t)h(receiv)m (ers)g(within)f(the)g(same)h(session)f(will)g(generate)227 963 y(di\013eren)m(t)i(extensions)g(to)g(the)g(sequence)f(n)m(um)m(b)s (er)f(if)i(their)f(start)h(times)g(di\013er)f(signi\014can)m(tly)-8 b(.)0 1151 y Fl(in)m(terarriv)i(al)35 b(jitter:)45 b Fo(32)31 b(bits)227 1264 y(An)d(estimate)j(of)e(the)f(statistical)k(v) -5 b(ariance)29 b(of)g(the)g(R)-8 b(TP)28 b(data)h(pac)m(k)m(et)i(in)m (terarriv)-5 b(al)29 b(time,)h(measured)e(in)227 1377 y(timestamp)j(units)e(and)h(expressed)f(as)h(an)g(unsigned)f(in)m (teger.)42 b(The)30 b(in)m(terarriv)-5 b(al)31 b(jitter)f Fg(J)39 b Fo(is)30 b(de\014ned)f(to)227 1489 y(b)s(e)e(the)g(mean)g (deviation)h(\(smo)s(othed)f(absolute)h(v)-5 b(alue\))28 b(of)f(the)g(di\013erence)g Fg(D)j Fo(in)d(pac)m(k)m(et)i(spacing)e(at) h(the)227 1602 y(receiv)m(er)34 b(compared)f(to)g(the)f(sender)g(for)g (a)h(pair)f(of)h(pac)m(k)m(ets.)48 b(As)33 b(sho)m(wn)f(in)g(the)g (equation)i(b)s(elo)m(w,)f(this)227 1715 y(is)g(equiv)-5 b(alen)m(t)34 b(to)f(the)g(di\013erence)g(in)f(the)h(\\relativ)m(e)i (transit)e(time")g(for)g(the)f(t)m(w)m(o)i(pac)m(k)m(ets;)i(the)d (relativ)m(e)227 1828 y(transit)h(time)f(is)h(the)f(di\013erence)g(b)s (et)m(w)m(een)h(a)g(pac)m(k)m(et's)h(R)-8 b(TP)33 b(timestamp)g(and)g (the)g(receiv)m(er's)i(clo)s(c)m(k)f(at)227 1941 y(the)d(time)g(of)f (arriv)-5 b(al,)32 b(measured)d(in)h(the)h(same)g(units.)227 2091 y(If)j Fg(S)378 2105 y Fe(i)440 2091 y Fo(is)h(the)g(R)-8 b(TP)34 b(timestamp)h(from)f(pac)m(k)m(et)i Fg(i)p Fo(,)g(and)e Fg(R)2222 2105 y Fe(i)2284 2091 y Fo(is)h(the)f(time)i(of)e(arriv)-5 b(al)35 b(in)f(R)-8 b(TP)34 b(timestamp)227 2204 y(units)c(for)g(pac)m (k)m(et)j Fg(i)p Fo(,)d(then)g(for)h(t)m(w)m(o)g(pac)m(k)m(ets)i Fg(i)d Fo(and)g Fg(j)5 b Fo(,)31 b Fg(D)i Fo(ma)m(y)e(b)s(e)f (expressed)g(as)957 2454 y Fg(D)s Fo(\()p Fg(i;)15 b(j)5 b Fo(\))27 b(=)e(\()p Fg(R)1445 2468 y Fe(j)1502 2454 y Fj(\000)20 b Fg(R)1662 2468 y Fe(i)1691 2454 y Fo(\))g Fj(\000)g Fo(\()p Fg(S)1928 2468 y Fe(j)1985 2454 y Fj(\000)g Fg(S)2132 2468 y Fe(i)2160 2454 y Fo(\))25 b(=)g(\()p Fg(R)2420 2468 y Fe(j)2477 2454 y Fj(\000)20 b Fg(S)2624 2468 y Fe(j)2661 2454 y Fo(\))g Fj(\000)g Fo(\()p Fg(R)2911 2468 y Fe(i)2960 2454 y Fj(\000)g Fg(S)3107 2468 y Fe(i)3135 2454 y Fo(\))227 2704 y(The)34 b(in)m(terarriv)-5 b(al)35 b(jitter)f Fi(should)e Fo(b)s(e)67 b(calculated)36 b(con)m(tin)m (uously)f(as)f(eac)m(h)h(data)g(pac)m(k)m(et)h Fg(i)e Fo(is)g(receiv)m(ed)227 2817 y(from)29 b(source)h(SSR)m(C)p 956 2817 V 32 w(n,)f(using)g(this)g(di\013erence)h Fg(D)j Fo(for)c(that)h(pac)m(k)m(et)h(and)e(the)h(previous)f(pac)m(k)m(et)i Fg(i)19 b Fj(\000)f Fo(1)30 b(in)227 2930 y(order)g(of)h(arriv)-5 b(al)31 b(\(not)g(necessarily)g(in)f(sequence\),)h(according)h(to)f (the)f(form)m(ula)1161 3180 y Fg(J)9 b Fo(\()p Fg(i)p Fo(\))26 b(=)f Fg(J)9 b Fo(\()p Fg(i)21 b Fj(\000)f Fo(1\))h(+)f(\()p Fj(j)p Fg(D)s Fo(\()p Fg(i)h Fj(\000)f Fo(1)p Fg(;)15 b(i)p Fo(\))p Fj(j)22 b(\000)e Fg(J)9 b Fo(\()p Fg(i)21 b Fj(\000)f Fo(1\)\))p Fg(=)p Fo(16)227 3430 y(Whenev)m(er)31 b(a)g(reception)g(rep)s(ort)f(is)g(issued,)g(the)h(curren)m(t)f(v)-5 b(alue)31 b(of)f Fg(J)40 b Fo(is)30 b(sampled.)227 3580 y(The)i(jitter)h(calculation)i Fi(must)d Fo(conform)g(to)h(the)g(form)m (ula)g(sp)s(eci\014ed)f(here)g(in)g(order)g(to)66 b(allo)m(w)34 b(pro\014le-)227 3693 y(indep)s(enden)m(t)g(monitors)g(to)i(mak)m(e)f (v)-5 b(alid)35 b(in)m(terpretations)h(of)e(rep)s(orts)g(coming)h(from) g(di\013eren)m(t)g(imple-)227 3806 y(men)m(tations.)42 b(This)29 b(algorithm)h(is)f(the)h(optimal)g(\014rst-order)f(estimator) i(and)e(the)g(gain)h(parameter)g(1)p Fg(=)p Fo(16)227 3919 y(giv)m(es)40 b(a)f(go)s(o)s(d)g(noise)g(reduction)f(ratio)i (while)e(main)m(taining)i(a)f(reasonable)h(rate)f(of)g(con)m(v)m (ergence)i([22)q(,)227 4032 y(Section)g(11.5-11.12,)47 b(Fig.)70 b(11.6].)h(A)40 b(sample)h(implemen)m(tation)g(is)f(sho)m(wn) f(in)h(App)s(endix)e(A.8.)71 b(See)227 4144 y(Section)29 b(6.4.4)g(for)f(a)g(discussion)f(of)h(the)f(e\013ects)i(of)f(v)-5 b(arying)28 b(pac)m(k)m(et)i(duration)d(and)g(dela)m(y)i(b)s(efore)e (trans-)227 4257 y(mission.)0 4445 y Fl(last)35 b(SR)g(timestamp)f (\(LSR\):)46 b Fo(32)31 b(bits)227 4558 y(The)i(middle)f(32)i(bits)f (out)h(of)f(64)h(in)e(the)i(NTP)e(timestamp)i(\(as)g(explained)f(in)g (Section)g(4\))h(receiv)m(ed)h(as)227 4671 y(part)c(of)g(the)g(most)g (recen)m(t)g(R)-8 b(TCP)31 b(sender)f(rep)s(ort)g(\(SR\))g(pac)m(k)m (et)j(from)d(source)h(SSR)m(C)p 3258 4671 V 32 w(n.)41 b(If)31 b(no)f(SR)g(has)227 4784 y(b)s(een)g(receiv)m(ed)i(y)m(et,)f (the)g(\014eld)f(is)g(set)h(to)g(zero.)0 4971 y Fl(dela)m(y)k(since)h (last)e(SR)i(\(DLSR\):)45 b Fo(32)31 b(bits)227 5084 y(The)f(dela)m(y)-8 b(,)33 b(expressed)d(in)g(units)g(of)h(1)p Fg(=)p Fo(65536)j(seconds,)c(b)s(et)m(w)m(een)i(receiving)g(the)e(last) i(SR)e(pac)m(k)m(et)i(from)227 5197 y(source)k(SSR)m(C)p 748 5197 V 31 w(n)f(and)f(sending)h(this)g(reception)h(rep)s(ort)e(blo) s(c)m(k.)56 b(If)35 b(no)g(SR)f(pac)m(k)m(et)j(has)e(b)s(een)g(receiv)m (ed)227 5310 y(y)m(et)d(from)e(SSR)m(C)p 831 5310 V 31 w(n,)h(the)f(DLSR)g(\014eld)g(is)g(set)h(to)h(zero.)0 5656 y(Sc)m(h)m(ulzrinne,)e(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(33])p eop %%Page: 34 34 34 33 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(Let)f(SSR)m(C)p 625 399 28 4 v 32 w(r)f(denote)h(the)g(receiv)m(er)h(issuing)e(this)g(receiv)m(er) i(rep)s(ort.)39 b(Source)29 b(SSR)m(C)p 3137 399 V 31 w(n)f(can)h(compute)g(the)227 511 y(round-trip)56 b(propagation)30 b(dela)m(y)g(to)f(SSR)m(C)p 1780 511 V 32 w(r)f(b)m(y)h(recording)f (the)h(time)h Fg(A)f Fo(when)e(this)i(reception)h(rep)s(ort)227 624 y(blo)s(c)m(k)d(is)f(receiv)m(ed.)41 b(It)27 b(calculates)h(the)f (total)h(round-trip)d(time)i Fg(A)p Fj(\000)p Fo(LSR)e(using)h(the)g (last)i(SR)d(timestamp)227 737 y(\(LSR\))44 b(\014eld,)j(and)d(then)f (subtracting)i(this)e(\014eld)h(to)h(lea)m(v)m(e)h(the)e(round-trip)f (propagation)i(dela)m(y)g(as)227 850 y(\()p Fg(A)35 b Fj(\000)f Fo(LSR)g Fj(\000)g Fo(DLSR\).)g(This)g(is)g(illustrated)h(in) g(Fig.)g(2.)53 b(Times)35 b(are)f(sho)m(wn)g(in)g(b)s(oth)g(a)h (hexadecimal)227 963 y(represen)m(tation)k(of)e(the)h(32-bit)g (\014elds)f(and)g(the)g(equiv)-5 b(alen)m(t)39 b(\015oating-p)s(oin)m (t)f(decimal)h(represen)m(tation.)227 1076 y(Colons)31 b(indicate)g(a)g(32-bit)h(\014eld)e(divided)f(in)m(to)j(a)e(16-bit)i (in)m(teger)g(part)e(and)g(16-bit)h(fraction)g(part.)227 1226 y(This)e(ma)m(y)h(b)s(e)e(used)h(as)h(an)f(appro)m(ximate)h (measure)f(of)h(distance)g(to)g(cluster)g(receiv)m(ers,)h(although)f (some)227 1339 y(links)g(ha)m(v)m(e)i(v)m(ery)f(asymmetric)g(dela)m (ys.)0 3657 y currentpoint currentpoint translate 0.98114 0.98114 scale neg exch neg exch translate 0 3657 a @beginspecial 0 @llx 0 @lly 477 @urx 257 @ury 4770 @rwi @setspecial %%BeginDocument: rtt.ps %!PS-Adobe-2.0 EPSF-2.0 %%Title: rtt.fig %%Creator: fig2dev Version 3.1 Patchlevel 1 %%CreationDate: Fri Nov 10 13:59:48 1995 %%For: hgs@lupus (Henning Schulzrinne) %%Orientation: Portrait %%BoundingBox: 0 0 477 257 %%Pages: 0 %%BeginSetup %%IncludeFeature: *PageSize Letter %%EndSetup %%EndComments /$F2psDict 200 dict def $F2psDict begin $F2psDict /mtrx matrix put /col-1 {} def /col0 {0.000 0.000 0.000 srgb} bind def /col1 {0.000 0.000 1.000 srgb} bind def /col2 {0.000 1.000 0.000 srgb} bind def /col3 {0.000 1.000 1.000 srgb} bind def /col4 {1.000 0.000 0.000 srgb} bind def /col5 {1.000 0.000 1.000 srgb} bind def /col6 {1.000 1.000 0.000 srgb} bind def /col7 {1.000 1.000 1.000 srgb} bind def /col8 {0.000 0.000 0.560 srgb} bind def /col9 {0.000 0.000 0.690 srgb} bind def /col10 {0.000 0.000 0.820 srgb} bind def /col11 {0.530 0.810 1.000 srgb} bind def /col12 {0.000 0.560 0.000 srgb} bind def /col13 {0.000 0.690 0.000 srgb} bind def /col14 {0.000 0.820 0.000 srgb} bind def /col15 {0.000 0.560 0.560 srgb} bind def /col16 {0.000 0.690 0.690 srgb} bind def /col17 {0.000 0.820 0.820 srgb} bind def /col18 {0.560 0.000 0.000 srgb} bind def /col19 {0.690 0.000 0.000 srgb} bind def /col20 {0.820 0.000 0.000 srgb} bind def /col21 {0.560 0.000 0.560 srgb} bind def /col22 {0.690 0.000 0.690 srgb} bind def /col23 {0.820 0.000 0.820 srgb} bind def /col24 {0.500 0.190 0.000 srgb} bind def /col25 {0.630 0.250 0.000 srgb} bind def /col26 {0.750 0.380 0.000 srgb} bind def /col27 {1.000 0.500 0.500 srgb} bind def /col28 {1.000 0.630 0.630 srgb} bind def /col29 {1.000 0.750 0.750 srgb} bind def /col30 {1.000 0.880 0.880 srgb} bind def /col31 {1.000 0.840 0.000 srgb} bind def end save -39.0 424.0 translate 1 -1 scale /clp {closepath} bind def /ef {eofill} bind def /gr {grestore} bind def /gs {gsave} bind def /l {lineto} bind def /m {moveto} bind def /n {newpath} bind def /s {stroke} bind def /slc {setlinecap} bind def /slj {setlinejoin} bind def /slw {setlinewidth} bind def /srgb {setrgbcolor} bind def /rot {rotate} bind def /sc {scale} bind def /tr {translate} bind def /tnt {dup dup currentrgbcolor 4 -2 roll dup 1 exch sub 3 -1 roll mul add 4 -2 roll dup 1 exch sub 3 -1 roll mul add 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} bind def /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 4 -2 roll mul srgb} bind def /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 10 setmiterlimit 0.06299 0.06299 sc 7.500 slw % Polyline n 3150 5175 m 3600 5175 l gs col-1 s gr n 3270.00 5205.00 m 3150.00 5175.00 l 3270.00 5145.00 l gs col-1 s gr % Polyline n 4050 5175 m 4500 5175 l gs col-1 s gr n 4380.00 5145.00 m 4500.00 5175.00 l 4380.00 5205.00 l gs col-1 s gr % Polyline n 4500 5085 m 4500 5265 l gs col-1 s gr % Polyline n 3150 5085 m 3150 5265 l gs col-1 s gr % Polyline n 1350 4950 m 6750 4950 l gs col-1 s gr n 6630.00 4920.00 m 6750.00 4950.00 l 6630.00 4980.00 l 6630.50 4950.50 l 6630.00 4920.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 1350 3150 m 6750 3150 l gs col-1 s gr n 6630.00 3120.00 m 6750.00 3150.00 l 6630.00 3180.00 l 6630.50 3150.50 l 6630.00 3120.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 2250 3150 m 3150 4950 l gs col-1 s gr n 3123.17 4829.25 m 3150.00 4950.00 l 3069.50 4856.09 l 3096.83 4843.17 l 3123.17 4829.25 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 4500 4950 m 4950 3150 l gs col-1 s gr n 4891.79 3259.14 m 4950.00 3150.00 l 4950.00 3273.69 l 4921.40 3266.92 l 4891.79 3259.14 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 945 6435 m 4095 6435 l gs col-1 s gr /Courier findfont 180.00 scalefont setfont 4950 3105 m gs 1 -1 sc (A=0xb710:8000 \(46864.500 s\)) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 1350 4860 m gs 1 -1 sc (r) col-1 show gr /Times-Roman findfont 180.00 scalefont setfont 1350 3060 m gs 1 -1 sc (n) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 2250 3060 m gs 1 -1 sc (SR\(n\)) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 4860 4815 m gs 1 -1 sc (RR\(n\)) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Courier findfont 180.00 scalefont setfont 1300 2790 m gs 1 -1 sc ([10 Nov 1995 11:33:25.125 UTC]) col-1 show gr /Courier findfont 180.00 scalefont setfont 4750 2790 m gs 1 -1 sc ([10 Nov 1995 11:33:36.5 UTC]) col-1 show gr /Courier findfont 180.00 scalefont setfont 4950 4275 m gs 1 -1 sc (lsr =0xb705:2000 \(46853.125 s\)) col-1 show gr /Courier findfont 180.00 scalefont setfont 4950 4050 m gs 1 -1 sc (dlsr=0x0005:4000 \( 5.250 s\)) col-1 show gr /Courier findfont 180.00 scalefont setfont 630 4050 m gs 1 -1 sc (ntp_sec =0xb44db705) col-1 show gr /Courier findfont 180.00 scalefont setfont 630 4260 m gs 1 -1 sc (ntp_frac=0x20000000) col-1 show gr /Courier findfont 180.00 scalefont setfont 945 4455 m gs 1 -1 sc (\(3024992005.125 s\)) col-1 show gr /Courier findfont 180.00 scalefont setfont 3825 5505 m gs 1 -1 sc (\(5.25 s\)) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 3825 5265 m gs 1 -1 sc (DLSR) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Courier findfont 180.00 scalefont setfont 900 5850 m gs 1 -1 sc (A 0xb710:8000 \(46864.500 s\)) col-1 show gr /Courier findfont 180.00 scalefont setfont 900 6060 m gs 1 -1 sc (DLSR -0x0005:4000 \( 5.250 s\)) col-1 show gr /Courier findfont 180.00 scalefont setfont 900 6270 m gs 1 -1 sc (LSR -0xb705:2000 \(46853.125 s\)) col-1 show gr /Courier findfont 180.00 scalefont setfont 900 6690 m gs 1 -1 sc (delay 0x0006:2000 \( 6.125 s\)) col-1 show gr $F2psEnd restore %%EndDocument @endspecial 0 3657 a currentpoint currentpoint translate 1 0.98114 div 1 0.98114 div scale neg exch neg exch translate 0 3657 a 919 3853 a Fo(Figure)g(2:)41 b(Example)31 b(for)f(round-trip)f(time)i(computation)0 5656 y(Sc)m(h)m(ulzrinne,)f(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(34])p eop %%Page: 35 35 35 34 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fl(6.4.2)105 b(RR:)36 b(Receiv)m(er)g(Rep)s (ort)f(R)-9 b(TCP)35 b(P)m(ac)m(k)m(et)349 596 y Ff(0)827 b(1)h(2)g(3)349 696 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g(7)g(8)g(9)g(0)h(1) f(2)g(3)g(4)g(5)g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4)g(5)g(6)g(7)h(8)f (9)g(0)g(1)305 795 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+) o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o (+-+)0 895 y(header)e(|V=2|P|)172 b(RC)129 b(|)i(PT=RR=201)c(|)566 b(length)521 b(|)305 994 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o (+-)o(+-)o(+-+)305 1094 y(|)915 b(SSRC)42 b(of)h(packet)e(sender)913 b(|)305 1194 y(+=+=+=+=+=+=+=+=)o(+=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+)o (=+=)o(+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+=)o(+=)o(+=)o(+=+)0 1293 y(report)41 b(|)741 b(SSRC_1)41 b(\(SSRC)g(of)i(first)f(source\)) 738 b(|)0 1393 y(block)85 b(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o (+-)o(+-)o(+-+)87 1493 y(1)174 b(|)43 b(fraction)e(lost)g(|)305 b(cumulative)40 b(number)h(of)h(packets)f(lost)304 b(|)305 1592 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 1692 y(|)479 b(extended)40 b(highest)h(sequence)f(number)h(received)477 b(|)305 1792 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o (-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+) 305 1891 y(|)959 b(interarrival)38 b(jitter)957 b(|)305 1991 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 2090 y(|)1089 b(last)42 b(SR)h(\(LSR\))1088 b(|)305 2190 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 2290 y(|)828 b(delay)41 b(since)h(last)g(SR)h(\(DLSR\))782 b(|)305 2389 y(+=+=+=+=+=+=+=+=)o(+=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+)o (=+=)o(+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+=)o(+=)o(+=)o(+=+)0 2489 y(report)41 b(|)741 b(SSRC_2)41 b(\(SSRC)g(of)i(second)e(source\)) 695 b(|)0 2589 y(block)85 b(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o (+-)o(+-)o(+-+)87 2688 y(2)174 b(:)1351 b(...)1263 b(:)305 2788 y(+=+=+=+=+=+=+=+=)o(+=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+)o(=+=)o (+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+=)o(+=)o(+=)o(+=+)305 2887 y(|)784 b(profile-specific)37 b(extensions)781 b(|)305 2987 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)0 3222 y Fo(The)27 b(format)g(of)h(the)f(receiv)m(er)i(rep)s(ort)e (\(RR\))h(pac)m(k)m(et)h(is)e(the)h(same)f(as)h(that)g(of)f(the)h(SR)e (pac)m(k)m(et)k(except)e(that)g(the)0 3335 y(pac)m(k)m(et)37 b(t)m(yp)s(e)e(\014eld)f(con)m(tains)i(the)f(constan)m(t)h(201)g(and)e (the)h(\014v)m(e)g(w)m(ords)g(of)g(sender)f(information)h(are)g (omitted)0 3448 y(\(these)g(are)g(the)g(NTP)f(and)g(R)-8 b(TP)34 b(timestamps)h(and)f(sender's)g(pac)m(k)m(et)j(and)d(o)s(ctet)i (coun)m(ts\).)54 b(The)34 b(remaining)0 3561 y(\014elds)c(ha)m(v)m(e)h (the)g(same)g(meaning)f(as)h(for)f(the)h(SR)e(pac)m(k)m(et.)0 3713 y(An)e(empt)m(y)g(RR)g(pac)m(k)m(et)i(\(R)m(C)e(=)g(0\))g Fi(must)f Fo(b)s(e)53 b(put)27 b(at)g(the)h(head)e(of)h(a)h(comp)s (ound)d(R)-8 b(TCP)27 b(pac)m(k)m(et)i(when)d(there)0 3826 y(is)k(no)h(data)g(transmission)f(or)g(reception)h(to)g(rep)s (ort.)0 4287 y Fl(6.4.3)105 b(Extending)35 b(the)g(Sender)g(and)g (Receiv)m(er)g(Rep)s(orts)0 4498 y Fo(A)29 b(pro\014le)g Fi(should)f Fo(de\014ne)h(pro\014le-sp)s(eci\014c)g(extensions)g(to)i (the)e(sender)g(rep)s(ort)f(and)h(receiv)m(er)i(rep)s(ort)d(if)i(there) 0 4611 y(is)i(additional)i(information)e(that)h(needs)f(to)66 b(b)s(e)32 b(rep)s(orted)f(regularly)i(ab)s(out)f(the)h(sender)e(or)i (receiv)m(ers.)48 b(This)0 4723 y(metho)s(d)34 b Fi(should)e Fo(b)s(e)i(used)g(in)g(preference)g(to)h(de\014ning)e(another)i(R)-8 b(TCP)33 b(pac)m(k)m(et)k(t)m(yp)s(e)d(b)s(ecause)h(it)f(requires)0 4836 y(less)d(o)m(v)m(erhead:)136 5088 y Fj(\017)46 b Fo(few)m(er)31 b(o)s(ctets)h(in)e(the)g(pac)m(k)m(et)j(\(no)d(R)-8 b(TCP)30 b(header)g(or)h(SSR)m(C)e(\014eld\);)136 5276 y Fj(\017)46 b Fo(simpler)c(and)g(faster)h(parsing)e(b)s(ecause)i (applications)g(running)e(under)g(that)h(pro\014le)g(w)m(ould)g(b)s(e)g (pro-)227 5389 y(grammed)c(to)h(alw)m(a)m(ys)h(exp)s(ect)f(the)f (extension)h(\014elds)e(in)h(the)h(directly)f(accessible)i(lo)s(cation) g(after)f(the)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(35])p eop %%Page: 36 36 36 35 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(reception)h(rep)s(orts.)0 650 y(The)i(extension)g(is)h(a)f(fourth)g(section)h(in)f(the)g(sender-) g(or)g(receiv)m(er-rep)s(ort)h(pac)m(k)m(et)h(whic)m(h)e(comes)h(at)g (the)g(end)0 763 y(after)24 b(the)g(reception)g(rep)s(ort)f(blo)s(c)m (ks,)j(if)d(an)m(y)-8 b(.)40 b(If)23 b(additional)h(sender)f (information)h(is)g(required,)g(then)f(for)h(sender)0 876 y(rep)s(orts)30 b(it)h(w)m(ould)f(b)s(e)g(included)f(\014rst)h(in)g (the)h(extension)g(section,)h(but)e(for)g(receiv)m(er)i(rep)s(orts)e (it)h(w)m(ould)f(not)h(b)s(e)0 989 y(presen)m(t.)127 b(If)38 b(information)g(ab)s(out)g(receiv)m(ers)h(is)f(to)h(b)s(e)e (included,)j(that)e(data)h Fi(should)74 b Fo(b)s(e)38 b(structured)f(as)0 1102 y(an)c(arra)m(y)g(of)g(blo)s(c)m(ks)g (parallel)h(to)f(the)g(existing)h(arra)m(y)f(of)g(reception)h(rep)s (ort)e(blo)s(c)m(ks;)i(that)g(is,)f(the)g(n)m(um)m(b)s(er)f(of)0 1215 y(blo)s(c)m(ks)f(w)m(ould)f(b)s(e)g(indicated)h(b)m(y)f(the)g(R)m (C)h(\014eld.)0 1494 y Fl(6.4.4)105 b(Analyzing)36 b(Sender)f(and)g (Receiv)m(er)h(Rep)s(orts)0 1705 y Fo(It)23 b(is)h(exp)s(ected)f(that)h (reception)g(qualit)m(y)h(feedbac)m(k)f(will)f(b)s(e)g(useful)f(not)i (only)f(for)g(the)h(sender)e(but)g(also)j(for)e(other)0 1818 y(receiv)m(ers)h(and)e(third-part)m(y)g(monitors.)39 b(The)22 b(sender)f(ma)m(y)j(mo)s(dify)d(its)i(transmissions)f(based)h (on)f(the)h(feedbac)m(k;)0 1931 y(receiv)m(ers)31 b(can)e(determine)h (whether)e(problems)h(are)g(lo)s(cal,)i(regional)g(or)e(global;)j(net)m (w)m(ork)e(managers)f(ma)m(y)h(use)0 2043 y(pro\014le-indep)s(enden)m (t)g(monitors)h(that)g(receiv)m(e)i(only)e(the)g(R)-8 b(TCP)30 b(pac)m(k)m(ets)j(and)d(not)h(the)g(corresp)s(onding)f(R)-8 b(TP)0 2156 y(data)31 b(pac)m(k)m(ets)h(to)f(ev)-5 b(aluate)32 b(the)f(p)s(erformance)f(of)g(their)h(net)m(w)m(orks)g(for)f(m)m (ulticast)i(distribution.)0 2308 y(Cum)m(ulativ)m(e)44 b(coun)m(ts)f(are)g(used)f(in)h(b)s(oth)f(the)h(sender)f(information)h (and)f(receiv)m(er)i(rep)s(ort)e(blo)s(c)m(ks)h(so)g(that)0 2421 y(di\013erences)29 b(ma)m(y)g(b)s(e)f(calculated)i(b)s(et)m(w)m (een)f(an)m(y)g(t)m(w)m(o)h(rep)s(orts)e(to)h(mak)m(e)h(measuremen)m (ts)f(o)m(v)m(er)g(b)s(oth)f(short)h(and)0 2534 y(long)37 b(time)g(p)s(erio)s(ds,)g(and)e(to)i(pro)m(vide)g(resilience)h(against) f(the)g(loss)f(of)h(a)g(rep)s(ort.)58 b(The)36 b(di\013erence)g(b)s(et) m(w)m(een)0 2647 y(the)f(last)h(t)m(w)m(o)h(rep)s(orts)d(receiv)m(ed)j (can)e(b)s(e)g(used)f(to)i(estimate)h(the)e(recen)m(t)h(qualit)m(y)g (of)g(the)f(distribution.)54 b(The)0 2760 y(NTP)27 b(timestamp)g(is)g (included)f(so)h(that)h(rates)f(ma)m(y)h(b)s(e)e(calculated)j(from)d (these)h(di\013erences)h(o)m(v)m(er)g(the)f(in)m(terv)-5 b(al)0 2873 y(b)s(et)m(w)m(een)30 b(t)m(w)m(o)g(rep)s(orts.)40 b(Since)29 b(that)h(timestamp)g(is)f(indep)s(enden)m(t)f(of)h(the)h (clo)s(c)m(k)g(rate)g(for)f(the)h(data)g(enco)s(ding,)0 2986 y(it)h(is)f(p)s(ossible)g(to)h(implemen)m(t)g(enco)s(ding-)g(and)f (pro\014le-indep)s(enden)m(t)f(qualit)m(y)i(monitors.)0 3138 y(An)26 b(example)h(calculation)h(is)f(the)f(pac)m(k)m(et)j(loss)d (rate)h(o)m(v)m(er)h(the)f(in)m(terv)-5 b(al)27 b(b)s(et)m(w)m(een)g(t) m(w)m(o)h(reception)f(rep)s(orts.)38 b(The)0 3251 y(di\013erence)27 b(in)g(the)g(cum)m(ulativ)m(e)i(n)m(um)m(b)s(er)d(of)h(pac)m(k)m(ets)i (lost)f(giv)m(es)g(the)g(n)m(um)m(b)s(er)d(lost)j(during)e(that)i(in)m (terv)-5 b(al.)40 b(The)0 3364 y(di\013erence)e(in)g(the)g(extended)f (last)i(sequence)f(n)m(um)m(b)s(ers)e(receiv)m(ed)k(giv)m(es)f(the)f(n) m(um)m(b)s(er)e(of)i(pac)m(k)m(ets)i(exp)s(ected)0 3477 y(during)h(the)i(in)m(terv)-5 b(al.)79 b(The)42 b(ratio)h(of)g(these)g (t)m(w)m(o)h(is)f(the)g(pac)m(k)m(et)h(loss)f(fraction)g(o)m(v)m(er)h (the)f(in)m(terv)-5 b(al.)79 b(This)0 3590 y(ratio)37 b(should)d(equal)i(the)g(fraction)g(lost)g(\014eld)f(if)h(the)f(t)m(w)m (o)i(rep)s(orts)e(are)h(consecutiv)m(e,)j(but)34 b(otherwise)i(it)g(ma) m(y)0 3703 y(not.)62 b(The)36 b(loss)i(rate)g(p)s(er)e(second)i(can)f (b)s(e)g(obtained)h(b)m(y)f(dividing)g(the)g(loss)h(fraction)g(b)m(y)f (the)h(di\013erence)f(in)0 3815 y(NTP)31 b(timestamps,)i(expressed)e (in)g(seconds.)44 b(The)31 b(n)m(um)m(b)s(er)g(of)g(pac)m(k)m(ets)j (receiv)m(ed)f(is)e(the)h(n)m(um)m(b)s(er)e(of)i(pac)m(k)m(ets)0 3928 y(exp)s(ected)h(min)m(us)g(the)g(n)m(um)m(b)s(er)e(lost.)50 b(The)32 b(n)m(um)m(b)s(er)g(of)h(pac)m(k)m(ets)h(exp)s(ected)g(ma)m(y) f(also)h(b)s(e)e(used)h(to)g(judge)g(the)0 4041 y(statistical)27 b(v)-5 b(alidit)m(y)25 b(of)f(an)m(y)g(loss)h(estimates.)40 b(F)-8 b(or)24 b(example,)j(1)d(out)g(of)g(5)g(pac)m(k)m(ets)i(lost)f (has)f(a)g(lo)m(w)m(er)h(signi\014cance)0 4154 y(than)30 b(200)i(out)e(of)h(1000.)0 4306 y(F)-8 b(rom)37 b(the)g(sender)f (information,)j(a)e(third-part)m(y)f(monitor)h(can)g(calculate)i(the)e (a)m(v)m(erage)i(pa)m(yload)f(data)f(rate)0 4419 y(and)e(the)h(a)m(v)m (erage)i(pac)m(k)m(et)f(rate)g(o)m(v)m(er)f(an)g(in)m(terv)-5 b(al)37 b(without)e(receiving)i(the)f(data.)57 b(T)-8 b(aking)36 b(the)f(ratio)i(of)f(the)0 4532 y(t)m(w)m(o)d(giv)m(es)g (the)e(a)m(v)m(erage)j(pa)m(yload)f(size.)44 b(If)31 b(it)h(can)g(b)s(e)f(assumed)f(that)j(pac)m(k)m(et)g(loss)f(is)f(indep) s(enden)m(t)f(of)i(pac)m(k)m(et)0 4645 y(size,)37 b(then)e(the)h(n)m (um)m(b)s(er)e(of)h(pac)m(k)m(ets)i(receiv)m(ed)f(b)m(y)f(a)h (particular)f(receiv)m(er)i(times)f(the)f(a)m(v)m(erage)j(pa)m(yload)e (size)0 4758 y(\(or)31 b(the)f(corresp)s(onding)g(pac)m(k)m(et)i (size\))g(giv)m(es)f(the)g(apparen)m(t)f(throughput)f(a)m(v)-5 b(ailable)33 b(to)e(that)g(receiv)m(er.)0 4910 y(In)36 b(addition)h(to)h(the)f(cum)m(ulativ)m(e)h(coun)m(ts)f(whic)m(h)g(allo) m(w)h(long-term)g(pac)m(k)m(et)h(loss)e(measuremen)m(ts)g(using)f(dif-) 0 5023 y(ferences)f(b)s(et)m(w)m(een)g(rep)s(orts,)g(the)g(fraction)g (lost)h(\014eld)e(pro)m(vides)h(a)f(short-term)h(measuremen)m(t)g(from) f(a)h(single)0 5136 y(rep)s(ort.)k(This)27 b(b)s(ecomes)i(more)f(imp)s (ortan)m(t)g(as)g(the)g(size)h(of)f(a)g(session)g(scales)h(up)e(enough) g(that)i(reception)g(state)0 5249 y(information)d(migh)m(t)g(not)f(b)s (e)g(k)m(ept)h(for)f(all)h(receiv)m(ers)h(or)e(the)h(in)m(terv)-5 b(al)26 b(b)s(et)m(w)m(een)g(rep)s(orts)f(b)s(ecomes)g(long)h(enough)0 5362 y(that)31 b(only)f(one)h(rep)s(ort)f(migh)m(t)h(ha)m(v)m(e)h(b)s (een)d(receiv)m(ed)j(from)e(a)h(particular)f(receiv)m(er.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(36])p eop %%Page: 37 37 37 36 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(The)36 b(in)m(terarriv)-5 b(al)38 b(jitter)f(\014eld)g(pro)m(vides)f(a)h(second)g(short-term)g(measure)f (of)h(net)m(w)m(ork)h(congestion.)61 b(P)m(ac)m(k)m(et)0 511 y(loss)38 b(trac)m(ks)h(p)s(ersisten)m(t)f(congestion)h(while)f (the)g(jitter)g(measure)g(trac)m(ks)g(transien)m(t)h(congestion.)64 b(The)37 b(jitter)0 624 y(measure)31 b(ma)m(y)i(indicate)f(congestion)h (b)s(efore)e(it)h(leads)g(to)g(pac)m(k)m(et)i(loss.)44 b(The)31 b(in)m(terarriv)-5 b(al)33 b(jitter)f(\014eld)f(is)h(only)0 737 y(a)40 b(snapshot)f(of)h(the)h(jitter)f(at)h(the)f(time)g(of)g(a)g (rep)s(ort)g(and)f(is)h(not)g(in)m(tended)g(to)g(b)s(e)f(tak)m(en)i (quan)m(titativ)m(ely)-8 b(.)0 850 y(Rather,)39 b(it)f(is)f(in)m (tended)g(for)f(comparison)i(across)f(a)g(n)m(um)m(b)s(er)f(of)h(rep)s (orts)g(from)f(one)h(receiv)m(er)i(o)m(v)m(er)f(time)g(or)0 963 y(from)25 b(m)m(ultiple)h(receiv)m(ers,)i(e.g.,)g(within)d(a)h (single)g(net)m(w)m(ork,)i(at)e(the)g(same)g(time.)40 b(T)-8 b(o)26 b(allo)m(w)h(comparison)e(across)0 1076 y(receiv)m(ers,)k(it)e(is)g(imp)s(ortan)m(t)g(the)g(the)f(jitter)i(b)s (e)e(calculated)i(according)g(to)f(the)g(same)g(form)m(ula)g(b)m(y)g (all)g(receiv)m(ers.)0 1228 y(Because)36 b(the)e(jitter)h(calculation)h (is)e(based)g(on)g(the)h(R)-8 b(TP)34 b(timestamp)h(whic)m(h)f (represen)m(ts)g(the)g(instan)m(t)h(when)0 1341 y(the)30 b(\014rst)e(data)i(in)g(the)f(pac)m(k)m(et)j(w)m(as)e(sampled,)f(an)m (y)h(v)-5 b(ariation)30 b(in)g(the)f(dela)m(y)i(b)s(et)m(w)m(een)f (that)g(sampling)f(instan)m(t)0 1454 y(and)37 b(the)h(time)h(the)f(pac) m(k)m(et)i(is)e(transmitted)g(will)g(a\013ect)h(the)f(resulting)g (jitter)h(that)f(is)g(calculated.)65 b(Suc)m(h)38 b(a)0 1567 y(v)-5 b(ariation)36 b(in)e(dela)m(y)i(w)m(ould)f(o)s(ccur)f(for)h (audio)g(pac)m(k)m(ets)h(of)f(v)-5 b(arying)35 b(duration.)54 b(It)34 b(will)i(also)f(o)s(ccur)g(for)f(video)0 1680 y(enco)s(dings)i(b)s(ecause)h(the)g(timestamp)g(is)g(the)g(same)g(for)f (all)i(the)e(pac)m(k)m(ets)j(of)e(one)f(frame)h(but)f(those)h(pac)m(k)m (ets)0 1793 y(are)g(not)g(all)h(transmitted)f(at)h(the)f(same)g(time.) 61 b(The)37 b(v)-5 b(ariation)38 b(in)e(dela)m(y)i(un)m(til)f (transmission)g(do)s(es)f(reduce)0 1905 y(the)i(accuracy)h(of)f(the)g (jitter)h(calculation)h(as)e(a)g(measure)g(of)g(the)g(b)s(eha)m(vior)g (of)g(the)g(net)m(w)m(ork)h(b)m(y)f(itself,)j(but)0 2018 y(it)35 b(is)f(appropriate)h(to)g(include)f(considering)g(that)h(the)g (receiv)m(er)h(bu\013er)d(m)m(ust)h(accommo)s(date)i(it.)54 b(When)34 b(the)0 2131 y(jitter)f(calculation)i(is)d(used)g(as)h(a)g (comparativ)m(e)h(measure,)g(the)e(\(constan)m(t\))j(comp)s(onen)m(t)d (due)g(to)i(v)-5 b(ariation)33 b(in)0 2244 y(dela)m(y)26 b(un)m(til)f(transmission)f(subtracts)g(out)h(so)g(that)g(a)g(c)m (hange)h(in)f(the)f(net)m(w)m(ork)i(jitter)f(comp)s(onen)m(t)g(can)g (then)g(b)s(e)0 2357 y(observ)m(ed)j(unless)g(it)h(is)f(relativ)m(ely)j (small.)40 b(If)28 b(the)h(c)m(hange)g(is)f(small,)i(then)e(it)h(is)f (lik)m(ely)i(to)f(b)s(e)e(inconsequen)m(tial.)0 2640 y Fn(6.5)112 b(SDES:)38 b(Source)f(Description)h(R)-9 b(TCP)36 b(P)m(ac)m(k)m(et)349 2837 y Ff(0)827 b(1)h(2)g(3)349 2937 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g(7)g(8)g(9)g(0)h(1)f(2)g(3)g(4)g (5)g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4)g(5)g(6)g(7)h(8)f(9)g(0)g(1)305 3036 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)0 3136 y(header)e(|V=2|P|)172 b(SC)129 b(|)87 b(PT=SDES=202)c(|)566 b(length)521 b(|)305 3236 y(+=+=+=+=+=+=+=+=)o(+=+)o(=+)o(=+=)o(+=)o (+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+=)o (+=)o(+=)o(+=+)0 3335 y(chunk)85 b(|)1133 b(SSRC/CSRC_1)c(|)87 3435 y(1)174 b(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o (-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+) 305 3535 y(|)1177 b(SDES)41 b(items)1132 b(|)305 3634 y(|)1307 b(...)g(|)305 3734 y(+=+=+=+=+=+=+=+=)o(+=+)o(=+)o(=+=)o(+=)o (+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+=)o (+=)o(+=)o(+=+)0 3833 y(chunk)85 b(|)1133 b(SSRC/CSRC_2)c(|)87 3933 y(2)174 b(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o (-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+) 305 4033 y(|)1177 b(SDES)41 b(items)1132 b(|)305 4132 y(|)1307 b(...)g(|)305 4232 y(+=+=+=+=+=+=+=+=)o(+=+)o(=+)o(=+=)o(+=)o (+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+=)o (+=)o(+=)o(+=+)0 4467 y Fo(The)28 b(SDES)g(pac)m(k)m(et)i(is)e(a)h (three-lev)m(el)i(structure)d(comp)s(osed)g(of)h(a)f(header)h(and)e (zero)j(or)e(more)h(c)m(h)m(unks,)f(eac)m(h)i(of)0 4580 y(whic)m(h)e(is)g(comp)s(osed)g(of)g(items)g(describing)g(the)g(source) g(iden)m(ti\014ed)h(in)e(that)i(c)m(h)m(unk.)40 b(The)27 b(items)i(are)f(describ)s(ed)0 4693 y(individually)i(in)g(subsequen)m (t)g(sections.)0 4945 y Fl(v)m(ersion)36 b(\(V\),)e(padding)h(\(P\),)g (length:)227 5057 y Fo(As)c(describ)s(ed)e(for)h(the)h(SR)e(pac)m(k)m (et)k(\(see)e(Section)g(6.4.1\).)0 5245 y Fl(pac)m(k)m(et)k(t)m(yp)s(e) g(\(PT\):)45 b Fo(8)31 b(bits)227 5358 y(Con)m(tains)g(the)g(constan)m (t)g(202)h(to)f(iden)m(tify)g(this)f(as)h(an)f(R)-8 b(TCP)30 b(SDES)g(pac)m(k)m(et.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(37])p eop %%Page: 38 38 38 37 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fl(source)36 b(coun)m(t)f(\(SC\):)45 b Fo(5)31 b(bits)227 511 y(The)g(n)m(um)m(b)s(er)e(of)i(SSR)m(C/CSR)m (C)f(c)m(h)m(unks)g(con)m(tained)j(in)d(this)h(SDES)f(pac)m(k)m(et.)44 b(A)31 b(v)-5 b(alue)32 b(of)f(zero)h(is)f(v)-5 b(alid)227 624 y(but)30 b(useless.)0 832 y(Eac)m(h)35 b(c)m(h)m(unk)g(consists)g (of)g(an)g(SSR)m(C/CSR)m(C)e(iden)m(ti\014er)i(follo)m(w)m(ed)i(b)m(y)e (a)g(list)g(of)g(zero)h(or)f(more)f(items,)j(whic)m(h)0 944 y(carry)g(information)h(ab)s(out)f(the)g(SSR)m(C/CSR)m(C.)60 b(Eac)m(h)38 b(c)m(h)m(unk)f(starts)h(on)f(a)h(32-bit)g(b)s(oundary)-8 b(.)60 b(Eac)m(h)38 b(item)0 1057 y(consists)i(of)g(an)f(8-bit)i(t)m (yp)s(e)f(\014eld,)i(an)d(8-bit)i(o)s(ctet)g(coun)m(t)f(describing)f (the)h(length)g(of)g(the)g(text)g(\(th)m(us,)j(not)0 1170 y(including)30 b(this)g(t)m(w)m(o-o)s(ctet)j(header\),)d(and)g (the)g(text)h(itself.)41 b(Note)32 b(that)e(the)h(text)g(can)f(b)s(e)f (no)h(longer)h(than)f(255)0 1283 y(o)s(ctets,)i(but)e(this)g(is)g (consisten)m(t)i(with)e(the)h(need)f(to)h(limit)g(R)-8 b(TCP)30 b(bandwidth)e(consumption.)0 1435 y(The)35 b(text)h(is)f(enco) s(ded)g(according)i(to)f(the)f(UTF-8)h(enco)s(ding)g(sp)s(eci\014ed)e (in)h(RF)m(C)h(2279)h([5)q(].)55 b(US-ASCI)s(I)34 b(is)i(a)0 1548 y(subset)26 b(of)h(this)g(enco)s(ding)g(and)f(requires)h(no)f (additional)i(enco)s(ding.)40 b(The)26 b(presence)h(of)g(m)m(ulti-o)s (ctet)i(enco)s(dings)0 1661 y(is)h(indicated)h(b)m(y)g(setting)g(the)g (most)f(signi\014can)m(t)i(bit)e(of)h(a)f(c)m(haracter)i(to)g(a)e(v)-5 b(alue)31 b(of)g(one.)0 1813 y(Items)39 b(are)h(con)m(tiguous,)i(i.e.,) h(items)d(are)f(not)g(individually)g(padded)f(to)i(a)f(32-bit)i(b)s (oundary)-8 b(.)65 b(T)-8 b(ext)40 b(is)f(not)0 1926 y(n)m(ull)33 b(terminated)h(b)s(ecause)f(some)h(m)m(ulti-o)s(ctet)h (enco)s(dings)e(include)g(n)m(ull)g(o)s(ctets.)51 b(The)33 b(list)h(of)f(items)h(in)f(eac)m(h)0 2039 y(c)m(h)m(unk)c Fi(must)g Fo(b)s(e)58 b(terminated)30 b(b)m(y)f(one)h(or)f(more)h(n)m (ull)f(o)s(ctets,)j(the)d(\014rst)g(of)h(whic)m(h)f(is)g(in)m (terpreted)h(as)g(an)f(item)0 2152 y(t)m(yp)s(e)37 b(of)f(zero)i(to)f (denote)g(the)g(end)f(of)g(the)h(list.)60 b(No)37 b(length)g(o)s(ctet)h (follo)m(ws)g(the)e(n)m(ull)h(item)g(t)m(yp)s(e)g(o)s(ctet,)j(but)0 2265 y(additional)28 b(n)m(ull)f(o)s(ctets)i Fi(must)d Fo(b)s(e)h(included)g(if)g(needed)g(to)h(pad)e(un)m(til)i(the)g(next)f (32-bit)i(b)s(oundary)-8 b(.)38 b(Note)28 b(that)0 2378 y(this)g(padding)f(is)g(separate)i(from)e(that)i(indicated)f(b)m(y)g (the)g(P)f(bit)h(in)g(the)g(R)-8 b(TCP)27 b(header.)79 b(A)28 b(c)m(h)m(unk)g(with)f(zero)0 2491 y(items)k(\(four)f(n)m(ull)g (o)s(ctets\))i(is)f(v)-5 b(alid)30 b(but)g(useless.)0 2643 y(End)24 b(systems)h(send)f(one)h(SDES)f(pac)m(k)m(et)j(con)m (taining)g(their)e(o)m(wn)g(source)g(iden)m(ti\014er)g(\(the)h(same)f (as)g(the)g(SSR)m(C)f(in)0 2756 y(the)32 b(\014xed)e(R)-8 b(TP)31 b(header\).)44 b(A)32 b(mixer)f(sends)f(one)i(SDES)f(pac)m(k)m (et)i(con)m(taining)g(a)f(c)m(h)m(unk)f(for)g(eac)m(h)h(con)m (tributing)0 2868 y(source)40 b(from)f(whic)m(h)h(it)g(is)g(receiving)h (SDES)e(information,)k(or)d(m)m(ultiple)g(complete)i(SDES)d(pac)m(k)m (ets)i(in)f(the)0 2981 y(format)31 b(ab)s(o)m(v)m(e)g(if)g(there)f(are) h(more)f(than)h(31)g(suc)m(h)f(sources)g(\(see)i(Section)f(7\).)0 3133 y(The)k(SDES)f(items)i(curren)m(tly)f(de\014ned)f(are)i(describ)s (ed)e(in)h(the)g(next)g(sections.)57 b(Only)34 b(the)i(CNAME)f(item)h (is)0 3246 y(mandatory)-8 b(.)47 b(Some)32 b(items)h(sho)m(wn)f(here)g (ma)m(y)g(b)s(e)g(useful)g(only)g(for)g(particular)g(pro\014les,)h(but) f(the)g(item)h(t)m(yp)s(es)0 3359 y(are)28 b(all)h(assigned)f(from)f (one)h(common)g(space)h(to)f(promote)g(shared)g(use)f(and)g(to)i (simplify)e(pro\014le-indep)s(enden)m(t)0 3472 y(applications.)60 b(Additional)36 b(items)h(ma)m(y)g(b)s(e)f(de\014ned)f(in)h(a)g (pro\014le)g(b)m(y)g(registering)i(the)e(t)m(yp)s(e)g(n)m(um)m(b)s(ers) f(with)0 3585 y(IANA)c(as)f(describ)s(ed)g(in)g(Section)h(15.)0 3857 y Fl(6.5.1)105 b(CNAME:)35 b(Canonical)g(End-P)m(oin)m(t)g(Iden)m (ti\014er)f(SDES)h(Item)349 4055 y Ff(0)827 b(1)h(2)g(3)349 4154 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g(7)g(8)g(9)g(0)h(1)f(2)g(3)g(4)g (5)g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4)g(5)g(6)g(7)h(8)f(9)g(0)g(1)305 4254 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 4354 y(|)174 b(CNAME=1)d(|)218 b(length)172 b(|)43 b(user)f(and)g (domain)f(name)347 b(...)305 4453 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o (-+-)o(+-)o(+-)o(+-+)0 4688 y Fo(The)30 b(CNAME)g(iden)m(ti\014er)h (has)f(the)h(follo)m(wing)g(prop)s(erties:)136 4896 y Fj(\017)46 b Fo(Because)31 b(the)f(randomly)f(allo)s(cated)j(SSR)m(C)c (iden)m(ti\014er)i(ma)m(y)g(c)m(hange)h(if)f(a)f(con\015ict)i(is)f (disco)m(v)m(ered)g(or)g(if)g(a)227 5009 y(program)j(is)g(restarted,)h (the)f(CNAME)g(item)h Fi(must)e Fo(b)s(e)g(included)65 b(to)33 b(pro)m(vide)g(the)h(binding)d(from)i(the)227 5121 y(SSR)m(C)d(iden)m(ti\014er)g(to)h(an)g(iden)m(ti\014er)f(for)g (the)h(source)f(\(sender)g(or)h(receiv)m(er\))h(that)f(remains)f (constan)m(t.)136 5294 y Fj(\017)46 b Fo(Lik)m(e)23 b(the)g(SSR)m(C)e (iden)m(ti\014er,)j(the)f(CNAME)f(iden)m(ti\014er)h Fi(should)d Fo(also)j(b)s(e)f(unique)f(among)i(all)g(participan)m(ts)227 5407 y(within)30 b(one)h(R)-8 b(TP)30 b(session.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(38])p eop %%Page: 39 39 39 38 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)136 399 y Fj(\017)46 b Fo(T)-8 b(o)33 b(pro)m(vide)f(a)h(binding)e(across)i(m)m(ultiple)g(media)g(to)s(ols)g (used)e(b)m(y)h(one)h(participan)m(t)g(in)f(a)h(set)g(of)f(related)227 511 y(R)-8 b(TP)30 b(sessions,)h(the)g(CNAME)f Fi(should)f Fo(b)s(e)h(\014xed)f(for)h(that)h(participan)m(t.)136 699 y Fj(\017)46 b Fo(T)-8 b(o)36 b(facilitate)h(third-part)m(y)e (monitoring,)i(the)e(CNAME)g Fi(should)e Fo(b)s(e)h(suitable)h(for)g (either)g(a)g(program)227 812 y(or)c(a)f(p)s(erson)g(to)h(lo)s(cate)h (the)e(source.)0 1064 y(Therefore,)f(the)g(CNAME)h Fi(should)d Fo(b)s(e)h(deriv)m(ed)h(algorithmically)j(and)c(not)h(en)m(tered)h(man) m(ually)-8 b(,)30 b(when)e(p)s(ossi-)0 1177 y(ble.)40 b(T)-8 b(o)30 b(meet)g(these)f(requiremen)m(ts,)h(the)f(follo)m(wing)h (format)f Fi(should)f Fo(b)s(e)g(used)g(unless)g(a)i(pro\014le)e(sp)s (eci\014es)h(an)0 1289 y(alternate)h(syn)m(tax)e(or)g(seman)m(tics.)42 b(The)27 b(CNAME)h(item)h Fi(should)d Fo(ha)m(v)m(e)j(the)g(format)f (\\user@host",)h(or)f(\\host")0 1402 y(if)d(a)h(user)f(name)h(is)f(not) h(a)m(v)-5 b(ailable)28 b(as)e(on)f(single-user)h(systems.)39 b(F)-8 b(or)27 b(b)s(oth)d(formats,)j(\\host")g(is)f(either)g(the)f (fully)0 1515 y(quali\014ed)g(domain)h(name)g(of)g(the)g(host)f(from)h (whic)m(h)f(the)h(real-time)h(data)g(originates,)h(formatted)f (according)f(to)0 1628 y(the)j(rules)f(sp)s(eci\014ed)g(in)g(RF)m(C)h (1034)h([6)q(],)f(RF)m(C)g(1035)h([7)q(])f(and)e(Section)j(2.1)f(of)g (RF)m(C)g(1123)h([8)q(];)g(or)e(the)h(standard)0 1741 y(ASCI)s(I)34 b(represen)m(tation)i(of)g(the)f(host's)h(n)m(umeric)f (address)g(on)g(the)g(in)m(terface)i(used)e(for)g(the)g(R)-8 b(TP)36 b(comm)m(uni-)0 1854 y(cation.)72 b(F)-8 b(or)41 b(example,)i(the)e(standard)e(ASCI)s(I)g(represen)m(tation)i(of)g(an)f (IP)g(V)-8 b(ersion)41 b(4)f(address)g(is)g(\\dotted)0 1967 y(decimal",)33 b(also)f(kno)m(wn)e(as)h(dotted)h(quad,)f(and)f (for)h(IP)f(V)-8 b(ersion)32 b(6,)g(addresses)e(are)h(textually)i (represen)m(ted)e(as)0 2080 y(groups)k(of)h(hexadecimal)h(digits)f (separated)g(b)m(y)f(colons)i(\(with)e(v)-5 b(ariations)37 b(as)f(detailed)g(in)g(RF)m(C)g(3513)h([23)q(]\).)0 2193 y(Other)f(address)f(t)m(yp)s(es)h(are)h(exp)s(ected)g(to)g(ha)m(v)m(e)g (ASCI)s(I)e(represen)m(tations)i(that)g(are)f(m)m(utually)h(unique.)57 b(The)0 2306 y(fully)33 b(quali\014ed)h(domain)g(name)g(is)f(more)h (con)m(v)m(enien)m(t)i(for)e(a)g(h)m(uman)f(observ)m(er)h(and)f(ma)m(y) h(a)m(v)m(oid)i(the)e(need)f(to)0 2419 y(send)27 b(a)i(NAME)g(item)g (in)f(addition,)h(but)e(it)i(ma)m(y)g(b)s(e)e(di\016cult)i(or)f(imp)s (ossible)g(to)h(obtain)f(reliably)h(in)f(some)h(op-)0 2531 y(erating)j(en)m(vironmen)m(ts.)42 b(Applications)31 b(that)g(ma)m(y)h(b)s(e)e(run)f(in)h(suc)m(h)g(en)m(vironmen)m(ts)h Fi(should)e Fo(use)i(the)f(ASCI)s(I)0 2644 y(represen)m(tation)h(of)g (the)g(address)e(instead.)0 2796 y(Examples)22 b(are)g(\\do)s(e@sleep)m (y)-8 b(.example.com",)28 b(\\do)s(e@192.0.2.89")e(or)c(\\do)s (e@2201:056D::112E:144)q(A:1)q(E24)q(")0 2909 y(for)j(a)g(m)m (ulti-user)g(system.)39 b(On)24 b(a)h(system)g(with)g(no)g(user)f (name,)i(examples)g(w)m(ould)e(b)s(e)h(\\sleep)m(y)-8 b(.example.com",)0 3022 y(\\192.0.2.89")35 b(or)c(\\2201:056D::112E:14) q(4A:)q(1E24)q(".)0 3174 y(The)39 b(user)f(name)i Fi(should)d Fo(b)s(e)i(in)g(a)h(form)e(that)i(a)g(program)f(suc)m(h)g(as)h (\\\014nger")f(or)h(\\talk")h(could)e(use,)j(i.e.,)0 3287 y(it)d(t)m(ypically)h(is)e(the)g(login)h(name)g(rather)f(than)g (the)g(p)s(ersonal)g(name.)64 b(The)38 b(host)g(name)g(is)h(not)f (necessarily)0 3400 y(iden)m(tical)32 b(to)f(the)g(one)g(in)f(the)g (participan)m(t's)i(electronic)g(mail)f(address.)0 3552 y(This)i(syn)m(tax)h(will)f(not)h(pro)m(vide)g(unique)e(iden)m (ti\014ers)i(for)f(eac)m(h)i(source)e(if)h(an)f(application)i(p)s (ermits)e(a)g(user)g(to)0 3665 y(generate)41 b(m)m(ultiple)f(sources)g (from)f(one)h(host.)68 b(Suc)m(h)39 b(an)h(application)h(w)m(ould)e(ha) m(v)m(e)i(to)f(rely)g(on)f(the)h(SSR)m(C)0 3778 y(to)35 b(further)d(iden)m(tify)j(the)f(source,)h(or)f(the)g(pro\014le)g(for)f (that)i(application)g(w)m(ould)f(ha)m(v)m(e)h(to)f(sp)s(ecify)g (additional)0 3891 y(syn)m(tax)d(for)f(the)h(CNAME)f(iden)m(ti\014er.)0 4043 y(If)d(eac)m(h)h(application)g(creates)h(its)e(CNAME)h(indep)s (enden)m(tly)-8 b(,)27 b(the)g(resulting)h(CNAMEs)f(ma)m(y)g(not)h(b)s (e)e(iden)m(tical)0 4156 y(as)i(w)m(ould)g(b)s(e)f(required)h(to)g(pro) m(vide)h(a)f(binding)f(across)i(m)m(ultiple)f(media)h(to)s(ols)g(b)s (elonging)f(to)h(one)f(participan)m(t)0 4269 y(in)36 b(a)h(set)g(of)g(related)g(R)-8 b(TP)37 b(sessions.)59 b(If)36 b(cross-media)h(binding)e(is)i(required,)h(it)f(ma)m(y)g(b)s(e) f(necessary)g(for)h(the)0 4382 y(CNAME)31 b(of)f(eac)m(h)i(to)s(ol)f (to)g(b)s(e)f(externally)h(con\014gured)f(with)g(the)h(same)f(v)-5 b(alue)31 b(b)m(y)f(a)h(co)s(ordination)g(to)s(ol.)0 4534 y(Application)40 b(writers)e(should)g(b)s(e)g(a)m(w)m(are)i(that)g (priv)-5 b(ate)39 b(net)m(w)m(ork)g(address)f(assignmen)m(ts)h(suc)m(h) g(as)g(the)g(Net-)0 4647 y(10)44 b(assignmen)m(t)g(prop)s(osed)e(in)h (RF)m(C)h(1918)h([24)q(])f(ma)m(y)g(create)g(net)m(w)m(ork)h(addresses) d(that)i(are)g(not)f(globally)0 4760 y(unique.)67 b(This)39 b(w)m(ould)g(lead)i(to)f(non-unique)e(CNAMEs)i(if)f(hosts)h(with)f (priv)-5 b(ate)40 b(addresses)f(and)g(no)g(direct)0 4872 y(IP)g(connectivit)m(y)i(to)f(the)g(public)e(In)m(ternet)i(ha)m(v)m(e)g (their)g(R)-8 b(TP)39 b(pac)m(k)m(ets)i(forw)m(arded)e(to)h(the)f (public)g(In)m(ternet)0 4985 y(through)29 b(an)h(R)-8 b(TP-lev)m(el)32 b(translator.)42 b(\(See)30 b(also)h(RF)m(C)g(1627)h ([25)q(].\))41 b(T)-8 b(o)30 b(handle)g(this)g(case,)h(applications)h Fi(ma)-6 b(y)0 5098 y Fo(pro)m(vide)34 b(a)h(means)f(to)h(con\014gure)f (a)h(unique)e(CNAME,)i(but)e(the)i(burden)d(is)i(on)g(the)h(translator) g(to)g(translate)0 5211 y(CNAMEs)i(from)f(priv)-5 b(ate)38 b(addresses)e(to)i(public)e(addresses)g(if)h(necessary)g(to)h(k)m(eep)g (priv)-5 b(ate)37 b(addresses)f(from)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(39])p eop %%Page: 40 40 40 39 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(b)s(eing)g(exp)s(osed.)0 860 y Fl(6.5.2)105 b(NAME:)35 b(User)h(Name)e(SDES)h(Item)349 1057 y Ff(0)827 b(1)h(2)g(3)349 1157 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g (7)g(8)g(9)g(0)h(1)f(2)g(3)g(4)g(5)g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4) g(5)g(6)g(7)h(8)f(9)g(0)g(1)305 1256 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o (-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o (-+)o(-+-)o(+-)o(+-)o(+-+)305 1356 y(|)218 b(NAME=2)171 b(|)218 b(length)172 b(|)43 b(common)e(name)h(of)h(source)302 b(...)305 1456 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o (-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o (+-+)0 1691 y Fo(This)35 b(is)i(the)f(real)h(name)f(used)g(to)h (describ)s(e)e(the)i(source,)h(e.g.,)h(\\John)d(Do)s(e,)i(Bit)g (Recycler".)60 b(It)36 b(ma)m(y)h(b)s(e)e(in)0 1804 y(an)m(y)29 b(form)g(desired)f(b)m(y)h(the)g(user.)39 b(F)-8 b(or)30 b(applications)g(suc)m(h)e(as)h(conferencing,)h(this)f(form)f(of)h (name)g(ma)m(y)h(b)s(e)e(the)0 1916 y(most)h(desirable)f(for)g(displa)m (y)g(in)g(participan)m(t)h(lists,)h(and)d(therefore)i(migh)m(t)g(b)s(e) e(sen)m(t)i(most)g(frequen)m(tly)f(of)g(those)0 2029 y(items)h(other)g(than)g(CNAME.)40 b(Pro\014les)29 b Fi(ma)-6 b(y)29 b Fo(establish)h(suc)m(h)e(priorities.)41 b(The)28 b(NAME)h(v)-5 b(alue)29 b(is)g(exp)s(ected)g(to)0 2142 y(remain)e(constan)m(t)i(at)f(least)h(for)e(the)g(duration)g(of)h (a)g(session.)40 b(It)27 b Fi(should)f Fo(NOT)h(b)s(e)f(relied)i(up)s (on)e(to)i(b)s(e)f(unique)0 2255 y(among)k(all)g(participan)m(ts)g(in)g (the)f(session.)0 2716 y Fl(6.5.3)105 b(EMAIL:)35 b(Electronic)g(Mail)g (Address)h(SDES)f(Item)349 2914 y Ff(0)827 b(1)h(2)g(3)349 3013 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g(7)g(8)g(9)g(0)h(1)f(2)g(3)g(4)g (5)g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4)g(5)g(6)g(7)h(8)f(9)g(0)g(1)305 3113 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 3213 y(|)174 b(EMAIL=3)d(|)218 b(length)172 b(|)43 b(email)f(address)e (of)j(source)215 b(...)305 3312 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o (-+-)o(+-)o(+-)o(+-+)0 3547 y Fo(The)24 b(email)i(address)d(is)i (formatted)g(according)h(to)f(RF)m(C)g(2822)h([9)q(],)g(for)f(example,) h(\\John.Do)s(e@example.com".)0 3660 y(The)k(EMAIL)g(v)-5 b(alue)31 b(is)f(exp)s(ected)h(to)g(remain)g(constan)m(t)g(for)f(the)h (duration)f(of)g(a)h(session.)0 4121 y Fl(6.5.4)105 b(PHONE:)35 b(Phone)g(Num)m(b)s(er)g(SDES)g(Item)349 4319 y Ff(0)827 b(1)h(2)g(3)349 4418 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g(7)g(8)g(9)g(0)h (1)f(2)g(3)g(4)g(5)g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4)g(5)g(6)g(7)h(8) f(9)g(0)g(1)305 4518 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o (-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o (+-)o(+-+)305 4618 y(|)174 b(PHONE=4)d(|)218 b(length)172 b(|)43 b(phone)f(number)f(of)h(source)259 b(...)305 4717 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)0 4952 y Fo(The)24 b(phone)h(n)m(um)m(b)s(er)e Fi(should)g Fo(b)s(e)i(formatted)g(with)g(the)g(plus)f(sign)h(replacing)g(the)h(in) m(ternational)g(access)g(co)s(de.)0 5065 y(F)-8 b(or)31 b(example,)g(\\+1)g(908)h(555)g(1212")g(for)e(a)h(n)m(um)m(b)s(er)e(in) h(the)h(United)f(States.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(40])p eop %%Page: 41 41 41 40 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fl(6.5.5)105 b(LOC:)34 b(Geographic)i(User)g (Lo)s(cation)f(SDES)g(Item)349 596 y Ff(0)827 b(1)h(2)g(3)349 696 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g(7)g(8)g(9)g(0)h(1)f(2)g(3)g(4)g(5) g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4)g(5)g(6)g(7)h(8)f(9)g(0)g(1)305 795 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 895 y(|)218 b(LOC=5)d(|)j(length)172 b(|)43 b(geographic)c(location)i (of)i(site)e(...)305 994 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o (+-)o(+-)o(+-+)0 1230 y Fo(Dep)s(ending)30 b(on)g(the)g(application,)i (di\013eren)m(t)f(degrees)f(of)h(detail)g(are)g(appropriate)f(for)g (this)g(item.)42 b(F)-8 b(or)31 b(confer-)0 1342 y(ence)36 b(applications,)i(a)e(string)f(lik)m(e)i(\\Murra)m(y)e(Hill,)j(New)e (Jersey")f(ma)m(y)h(b)s(e)f(su\016cien)m(t,)i(while,)g(for)e(an)h (activ)m(e)0 1455 y(badge)h(system,)i(strings)e(lik)m(e)h(\\Ro)s(om)f (2A244,)k(A)-8 b(T&T)37 b(BL)g(MH")g(migh)m(t)h(b)s(e)e(appropriate.)61 b(The)36 b(degree)i(of)0 1568 y(detail)d(is)f(left)h(to)f(the)h (implemen)m(tation)g(and/or)f(user,)g(but)g(format)g(and)f(con)m(ten)m (t)j Fi(ma)-6 b(y)35 b Fo(b)s(e)e(prescrib)s(ed)g(b)m(y)h(a)0 1681 y(pro\014le.)61 b(The)37 b(LOC)g(v)-5 b(alue)37 b(is)h(exp)s(ected)g(to)g(remain)f(constan)m(t)i(for)e(the)g(duration)g (of)h(a)f(session,)j(except)e(for)0 1794 y(mobile)31 b(hosts.)0 2255 y Fl(6.5.6)105 b(TOOL:)34 b(Application)h(or)h(T)-9 b(o)s(ol)35 b(Name)g(SDES)f(Item)349 2453 y Ff(0)827 b(1)h(2)g(3)349 2552 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g(7)g(8)g(9)g(0)h (1)f(2)g(3)g(4)g(5)g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4)g(5)g(6)g(7)h(8) f(9)g(0)g(1)305 2652 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o (-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o (+-)o(+-+)305 2752 y(|)218 b(TOOL=6)171 b(|)218 b(length)172 b(|name/version)38 b(of)43 b(source)e(appl.)g(...)305 2851 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)0 3086 y Fo(A)46 b(string)g(giving)h(the)f(name)g(and)f(p)s(ossibly)g(v)m (ersion)i(of)f(the)g(application)h(generating)h(the)e(stream,)k(e.g.,)0 3199 y(\\videoto)s(ol)45 b(1.2".)79 b(This)42 b(information)h(ma)m(y)g (b)s(e)f(useful)g(for)g(debugging)h(purp)s(oses)e(and)h(is)g(similar)h (to)h(the)0 3312 y(Mailer)36 b(or)f(Mail-System-V)-8 b(ersion)37 b(SMTP)d(headers.)53 b(The)34 b(TOOL)g(v)-5 b(alue)35 b(is)g(exp)s(ected)g(to)g(remain)g(constan)m(t)0 3425 y(for)30 b(the)h(duration)f(of)g(the)h(session.)0 3886 y Fl(6.5.7)105 b(NOTE:)34 b(Notice/Status)h(SDES)g(Item)349 4084 y Ff(0)827 b(1)h(2)g(3)349 4183 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g (7)g(8)g(9)g(0)h(1)f(2)g(3)g(4)g(5)g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4) g(5)g(6)g(7)h(8)f(9)g(0)g(1)305 4283 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o (-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o (-+)o(-+-)o(+-)o(+-)o(+-+)305 4382 y(|)218 b(NOTE=7)171 b(|)218 b(length)172 b(|)43 b(note)f(about)f(the)i(source)302 b(...)305 4482 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o (-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o (+-+)0 4717 y Fo(The)27 b(follo)m(wing)h(seman)m(tics)h(are)e (suggested)h(for)f(this)g(item,)i(but)d(these)i(or)f(other)g(seman)m (tics)i Fi(ma)-6 b(y)28 b Fo(b)s(e)e(explicitly)0 4830 y(de\014ned)38 b(b)m(y)h(a)g(pro\014le.)67 b(The)38 b(NOTE)h(item)g(is) h(in)m(tended)e(for)h(transien)m(t)h(messages)g(describing)f(the)g (curren)m(t)0 4943 y(state)i(of)e(the)g(source,)j(e.g.,)h(\\on)d(the)f (phone,)i(can't)g(talk".)68 b(Or,)41 b(during)d(a)i(seminar,)h(this)f (item)g(migh)m(t)g(b)s(e)0 5056 y(used)33 b(to)j(con)m(v)m(ey)f(the)g (title)h(of)e(the)h(talk.)53 b(It)35 b(should)e(b)s(e)h(used)f(only)h (to)h(carry)g(exceptional)h(information)f(and)0 5169 y Fi(should)d Fo(NOT)h(b)s(e)g(included)g(routinely)g(b)m(y)h(all)g (participan)m(ts)h(b)s(ecause)e(this)h(w)m(ould)f(slo)m(w)h(do)m(wn)f (the)h(rate)g(at)0 5282 y(whic)m(h)29 b(reception)i(rep)s(orts)e(and)g (CNAME)h(are)g(sen)m(t,)h(th)m(us)e(impairing)h(the)f(p)s(erformance)g (of)h(the)g(proto)s(col.)42 b(In)0 5395 y(particular,)32 b(it)g Fi(should)e Fo(NOT)g(b)s(e)h(included)g(as)g(an)h(item)g(in)f(a) g(user's)g(con\014guration)h(\014le)f(nor)g(automatically)0 5656 y(Sc)m(h)m(ulzrinne,)f(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(41])p eop %%Page: 42 42 42 41 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(generated)h(as)g(in)f(a)h(quote-of-the-da)m(y) -8 b(.)0 551 y(Since)42 b(the)g(NOTE)g(item)h(ma)m(y)f(b)s(e)g(imp)s (ortan)m(t)g(to)h(displa)m(y)f(while)g(it)h(is)f(activ)m(e,)48 b(the)42 b(rate)h(at)g(whic)m(h)f(other)0 663 y(non-CNAME)30 b(items)h(suc)m(h)f(as)h(NAME)f(are)h(transmitted)g(migh)m(t)g(b)s(e)e (reduced)h(so)h(that)f(the)h(NOTE)f(item)h(can)0 776 y(tak)m(e)f(that)f(part)f(of)h(the)g(R)-8 b(TCP)27 b(bandwidth.)39 b(When)28 b(the)h(transien)m(t)g(message)g(b)s(ecomes)g(inactiv)m(e,)i (the)e(NOTE)0 889 y(item)i Fi(should)d Fo(con)m(tin)m(ue)j(to)g(b)s(e)f (transmitted)g(a)g(few)g(times)h(at)f(the)h(same)f(rep)s(etition)h (rate)f(but)g(with)g(a)g(string)0 1002 y(of)38 b(length)g(zero)h(to)g (signal)g(the)f(receiv)m(ers.)64 b(Ho)m(w)m(ev)m(er,)43 b(receiv)m(ers)c Fi(should)d Fo(also)j(consider)f(the)g(NOTE)f(item)0 1115 y(inactiv)m(e)j(if)f(it)g(is)f(not)h(receiv)m(ed)h(for)e(a)h (small)g(m)m(ultiple)g(of)g(the)f(rep)s(etition)h(rate,)j(or)c(p)s (erhaps)f(20-30)j(R)-8 b(TCP)0 1228 y(in)m(terv)j(als.)0 1871 y Fl(6.5.8)105 b(PRIV:)36 b(Priv)-6 b(ate)35 b(Extensions)g(SDES)g (Item)349 2068 y Ff(0)827 b(1)h(2)g(3)349 2168 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g(7)g(8)g(9)g(0)h(1)f(2)g(3)g(4)g(5)g(6)h(7)f (8)g(9)g(0)g(1)g(2)h(3)f(4)g(5)g(6)g(7)h(8)f(9)g(0)g(1)305 2268 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 2367 y(|)218 b(PRIV=8)171 b(|)218 b(length)172 b(|)43 b(prefix)e(length)g(|prefix)g(string...)305 2467 y(+-+-+-+-+-+-+-+-)o (+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 2567 y(...)565 b(|)785 b(value)41 b(string)651 b(...)305 2666 y(+-+-+-+-+-+-+-+-)o (+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)0 2901 y Fo(This)23 b(item)h(is)g(used)e(to)j(de\014ne)e(exp)s(erimen)m(tal)h(or)g (application-sp)s(eci\014c)h(SDES)d(extensions.)39 b(The)23 b(item)i(con)m(tains)0 3014 y(a)32 b(pre\014x)f(consisting)i(of)f(a)g (length-string)h(pair,)f(follo)m(w)m(ed)i(b)m(y)e(the)g(v)-5 b(alue)32 b(string)g(\014lling)g(the)g(remainder)g(of)g(the)0 3127 y(item)f(and)f(carrying)h(the)f(desired)g(information.)42 b(The)30 b(pre\014x)f(length)i(\014eld)f(is)h(8)g(bits)f(long.)42 b(The)30 b(pre\014x)f(string)0 3240 y(is)j(a)h(name)f(c)m(hosen)g(b)m (y)g(the)h(p)s(erson)e(de\014ning)g(the)h(PRIV)g(item)h(to)f(b)s(e)g (unique)f(with)h(resp)s(ect)g(to)h(other)f(PRIV)0 3353 y(items)i(this)e(application)j(migh)m(t)e(receiv)m(e.)51 b(The)32 b(application)i(creator)g(migh)m(t)g(c)m(ho)s(ose)g(to)g(use)e (the)i(application)0 3466 y(name)e(plus)g(an)g(additional)h(subt)m(yp)s (e)e(iden)m(ti\014cation)j(if)f(needed.)46 b(Alternativ)m(ely)-8 b(,)36 b(it)c(is)h Fi(recommended)c Fo(that)0 3579 y(others)40 b(c)m(ho)s(ose)i(a)e(name)h(based)f(on)g(the)h(en)m(tit)m(y)h(they)e (represen)m(t,)j(then)d(co)s(ordinate)h(the)g(use)f(of)g(the)h(name)0 3692 y(within)30 b(that)h(en)m(tit)m(y)-8 b(.)0 3844 y(Note)28 b(that)f(the)g(pre\014x)f(consumes)g(some)i(space)f(within)f (the)h(item's)g(total)i(length)e(of)g(255)h(o)s(ctets,)h(so)e(the)g (pre\014x)0 3957 y(should)34 b(b)s(e)g(k)m(ept)i(as)f(short)g(as)g(p)s (ossible.)54 b(This)34 b(facilit)m(y)j(and)e(the)g(constrained)g(R)-8 b(TCP)35 b(bandwidth)e Fi(should)0 4069 y Fo(NOT)c(b)s(e)g(o)m(v)m (erloaded;)j(it)f(is)e(not)h(in)m(tended)g(to)g(satisfy)h(all)f(the)g (con)m(trol)h(comm)m(unication)g(requiremen)m(ts)f(of)g(all)0 4182 y(applications.)0 4334 y(SDES)f(PRIV)h(pre\014xes)g(will)g(not)h (b)s(e)f(registered)h(b)m(y)f(IANA.)41 b(If)29 b(some)i(form)f(of)g (the)h(PRIV)f(item)h(pro)m(v)m(es)g(to)g(b)s(e)0 4447 y(of)i(general)h(utilit)m(y)-8 b(,)36 b(it)e Fi(should)d Fo(instead)j(b)s(e)e(assigned)i(a)f(regular)g(SDES)g(item)h(t)m(yp)s(e) f(registered)h(with)f(IANA)0 4560 y(so)e(that)g(no)f(pre\014x)f(is)i (required.)39 b(This)30 b(simpli\014es)g(use)g(and)g(increases)h (transmission)f(e\016ciency)-8 b(.)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(42])p eop %%Page: 43 43 43 42 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fn(6.6)112 b(BYE:)37 b(Go)s(o)s(db)m(y)m(e)h (R)-9 b(TCP)36 b(P)m(ac)m(k)m(et)349 596 y Ff(0)827 b(1)h(2)g(3)349 696 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g(7)g(8)g(9)g(0)h(1)f(2)g(3)g(4)g(5) g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4)g(5)g(6)g(7)h(8)f(9)g(0)g(1)305 795 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 895 y(|V=2|P|)172 b(SC)129 b(|)i(PT=BYE=203)83 b(|)566 b(length)521 b(|)305 994 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o (+-)o(+-)o(+-+)305 1094 y(|)1177 b(SSRC/CSRC)c(|)305 1194 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 1293 y(:)1307 b(...)g(:)305 1393 y(+=+=+=+=+=+=+=+=)o(+=+)o(=+)o(=+=)o (+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o(=+)o(=+=)o(+=)o(+=+)o(=+)o (=+=)o(+=)o(+=)o(+=+)44 1493 y(\(opt\))41 b(|)218 b(length)171 b(|)654 b(reason)41 b(for)h(leaving)520 b(...)305 1592 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)0 1927 y Fo(The)30 b(BYE)h(pac)m(k)m(et)h(indicates)f(that)g(one)g(or)f (more)h(sources)f(are)h(no)f(longer)h(activ)m(e.)0 2179 y Fl(v)m(ersion)36 b(\(V\),)e(padding)h(\(P\),)g(length:)227 2292 y Fo(As)c(describ)s(ed)e(for)h(the)h(SR)e(pac)m(k)m(et)k(\(see)e (Section)g(6.4.1\).)0 2479 y Fl(pac)m(k)m(et)k(t)m(yp)s(e)g(\(PT\):)45 b Fo(8)31 b(bits)227 2592 y(Con)m(tains)g(the)g(constan)m(t)g(203)h(to) f(iden)m(tify)g(this)f(as)h(an)f(R)-8 b(TCP)30 b(BYE)h(pac)m(k)m(et.)0 2780 y Fl(source)36 b(coun)m(t)f(\(SC\):)45 b Fo(5)31 b(bits)227 2893 y(The)i(n)m(um)m(b)s(er)e(of)i(SSR)m(C/CSR)m(C)f(iden)m (ti\014ers)h(included)f(in)g(this)h(BYE)g(pac)m(k)m(et.)50 b(A)33 b(coun)m(t)h(v)-5 b(alue)33 b(of)g(zero)227 3006 y(is)e(v)-5 b(alid,)31 b(but)e(useless.)0 3257 y(The)h(rules)g(for)g (when)f(a)i(BYE)g(pac)m(k)m(et)h(should)e(b)s(e)f(sen)m(t)i(are)g(sp)s (eci\014ed)f(in)g(Sections)h(6.3.7)h(and)e(8.2.)0 3409 y(If)40 b(a)g(BYE)h(pac)m(k)m(et)h(is)e(receiv)m(ed)i(b)m(y)e(a)h (mixer,)i(the)d(mixer)g Fi(should)79 b Fo(forw)m(ard)40 b(the)g(BYE)h(pac)m(k)m(et)h(with)e(the)0 3522 y(SSR)m(C/CSR)m(C)27 b(iden)m(ti\014er\(s\))j(unc)m(hanged.)39 b(If)28 b(a)h(mixer)g(sh)m (uts)f(do)m(wn,)h(it)g Fi(should)e Fo(send)h(a)h(BYE)g(pac)m(k)m(et)h (listing)0 3635 y(all)g(con)m(tributing)h(sources)e(it)h(handles,)g(as) f(w)m(ell)i(as)f(its)g(o)m(wn)f(SSR)m(C)g(iden)m(ti\014er.)40 b(Optionally)-8 b(,)31 b(the)f(BYE)g(pac)m(k)m(et)0 3748 y Fi(ma)-6 b(y)38 b Fo(include)f(an)f(8-bit)i(o)s(ctet)h(coun)m(t)e (follo)m(w)m(ed)i(b)m(y)d(that)i(man)m(y)f(o)s(ctets)h(of)f(text)h (indicating)g(the)f(reason)g(for)0 3861 y(lea)m(ving,)32 b(e.g.,)g(\\camera)f(malfunction")g(or)f(\\R)-8 b(TP)30 b(lo)s(op)g(detected".)43 b(The)29 b(string)h(has)g(the)g(same)h(enco)s (ding)f(as)0 3974 y(that)37 b(describ)s(ed)e(for)h(SDES.)57 b(If)36 b(the)g(string)g(\014lls)g(the)g(pac)m(k)m(et)i(to)f(the)g (next)f(32-bit)h(b)s(oundary)-8 b(,)36 b(the)h(string)f(is)0 4087 y(not)e(n)m(ull)g(terminated.)51 b(If)34 b(not,)h(the)f(BYE)g(pac) m(k)m(et)i Fi(must)d Fo(b)s(e)g(padded)g(with)g(n)m(ull)h(o)s(ctets)h (to)g(the)f(next)g(32-bit)0 4200 y(b)s(oundary)-8 b(.)39 b(This)30 b(padding)f(is)i(separate)g(from)f(that)h(indicated)g(b)m(y)f (the)h(P)f(bit)g(in)g(the)h(R)-8 b(TCP)30 b(header.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(43])p eop %%Page: 44 44 44 43 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fn(6.7)112 b(APP:)37 b(Application-De\014ned)i (R)-9 b(TCP)36 b(P)m(ac)m(k)m(et)349 596 y Ff(0)827 b(1)h(2)g(3)349 696 y(0)43 b(1)g(2)g(3)g(4)h(5)f(6)g(7)g(8)g(9)g(0)h(1)f(2)g(3)g(4)g(5) g(6)h(7)f(8)g(9)g(0)g(1)g(2)h(3)f(4)g(5)g(6)g(7)h(8)f(9)g(0)g(1)305 795 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 895 y(|V=2|P|)e(subtype)f(|)131 b(PT=APP=204)83 b(|)566 b(length)521 b(|)305 994 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o (+-)o(+-)o(+-+)305 1094 y(|)1177 b(SSRC/CSRC)c(|)305 1194 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o (+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 1293 y(|)1133 b(name)42 b(\(ASCII\))1087 b(|)305 1393 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o (+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o(+-+)305 1493 y(|)828 b(application-depe)o(nd)o(ent)37 b(data)695 b(...)305 1592 y(+-+-+-+-+-+-+-+-)o(+-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o (-+)o(-+-)o(+-)o(+-+)o(-+)o(-+)o(-+-)o(+-)o(+-+)o(-+)o(-+-)o(+-)o(+-)o (+-+)0 1827 y Fo(The)38 b(APP)g(pac)m(k)m(et)j(is)d(in)m(tended)g(for)h (exp)s(erimen)m(tal)g(use)f(as)h(new)f(applications)h(and)f(new)g (features)h(are)g(de-)0 1940 y(v)m(elop)s(ed,)34 b(without)e(requiring) g(pac)m(k)m(et)j(t)m(yp)s(e)e(v)-5 b(alue)33 b(registration.)48 b(APP)33 b(pac)m(k)m(ets)h(with)e(unrecognized)h(names)0 2053 y Fi(should)27 b Fo(b)s(e)i(ignored.)40 b(After)29 b(testing)h(and)f(if)g(wider)f(use)h(is)g(justi\014ed,)f(it)i(is)f Fi(recommended)d Fo(that)k(eac)m(h)g(APP)0 2166 y(pac)m(k)m(et)c(b)s(e) e(rede\014ned)e(without)j(the)f(subt)m(yp)s(e)f(and)h(name)g(\014elds)f (and)h(registered)h(with)e(IANA)49 b(using)23 b(an)h(R)-8 b(TCP)0 2279 y(pac)m(k)m(et)32 b(t)m(yp)s(e.)0 2531 y Fl(v)m(ersion)k(\(V\),)e(padding)h(\(P\),)g(length:)227 2644 y Fo(As)c(describ)s(ed)e(for)h(the)h(SR)e(pac)m(k)m(et)k(\(see)e (Section)g(6.4.1\).)0 2831 y Fl(subt)m(yp)s(e:)46 b Fo(5)30 b(bits)227 2944 y(Ma)m(y)c(b)s(e)e(used)g(as)h(a)g(subt)m(yp)s(e)f(to)h (allo)m(w)h(a)g(set)f(of)g(APP)f(pac)m(k)m(ets)j(to)e(b)s(e)f (de\014ned)g(under)f(one)i(unique)f(name,)227 3057 y(or)31 b(for)f(an)m(y)g(application-dep)s(enden)m(t)i(data.)0 3245 y Fl(pac)m(k)m(et)j(t)m(yp)s(e)g(\(PT\):)45 b Fo(8)31 b(bits)227 3358 y(Con)m(tains)g(the)g(constan)m(t)g(204)h(to)f(iden)m (tify)g(this)f(as)h(an)f(R)-8 b(TCP)30 b(APP)g(pac)m(k)m(et.)0 3545 y Fl(name:)45 b Fo(4)31 b(o)s(ctets)227 3658 y(A)j(name)f(c)m (hosen)h(b)m(y)f(the)g(p)s(erson)f(de\014ning)g(the)i(set)g(of)f(APP)g (pac)m(k)m(ets)i(to)f(b)s(e)f(unique)f(with)h(resp)s(ect)g(to)227 3771 y(other)i(APP)f(pac)m(k)m(ets)i(this)f(application)h(migh)m(t)f (receiv)m(e.)54 b(The)34 b(application)i(creator)g(migh)m(t)f(c)m(ho)s (ose)g(to)227 3884 y(use)27 b(the)g(application)i(name,)f(and)f(then)f (co)s(ordinate)i(the)g(allo)s(cation)h(of)f(subt)m(yp)s(e)e(v)-5 b(alues)27 b(to)h(others)f(who)227 3997 y(w)m(an)m(t)k(to)f(de\014ne)f (new)h(pac)m(k)m(et)h(t)m(yp)s(es)f(for)g(the)f(application.)42 b(Alternativ)m(ely)-8 b(,)33 b(it)d(is)g Fi(recommended)d Fo(that)227 4110 y(others)g(c)m(ho)s(ose)g(a)f(name)h(based)f(on)g(the) g(en)m(tit)m(y)i(they)e(represen)m(t,)i(then)e(co)s(ordinate)h(the)f (use)g(of)g(the)h(name)227 4223 y(within)39 b(that)h(en)m(tit)m(y)-8 b(.)69 b(The)38 b(name)h(is)g(in)m(terpreted)h(as)f(a)h(sequence)f(of)g (four)g(ASCI)s(I)e(c)m(haracters,)43 b(with)227 4336 y(upp)s(ercase)30 b(and)g(lo)m(w)m(ercase)i(c)m(haracters)g(treated)f (as)g(distinct.)0 4523 y Fl(application-dep)s(enden)m(t)k(data:)45 b Fo(v)-5 b(ariable)31 b(length)227 4636 y(Application-dep)s(enden)m(t) i(data)h(ma)m(y)f(or)g(ma)m(y)g(not)g(app)s(ear)f(in)h(an)f(APP)h(pac)m (k)m(et.)49 b(It)33 b(is)g(in)m(terpreted)g(b)m(y)227 4749 y(the)e(application)h(and)d(not)i(R)-8 b(TP)30 b(itself.)42 b(It)30 b Fi(must)f Fo(b)s(e)h(a)h(m)m(ultiple)g(of)g(32)g(bits)f (long.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(44])p eop %%Page: 45 45 45 44 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fm(7.)135 b(R)-11 b(TP)44 b(T)-11 b(ranslators)46 b(and)f(Mixers)0 641 y Fo(In)33 b(addition)h(to)g(end)f (systems,)i(R)-8 b(TP)33 b(supp)s(orts)f(the)h(notion)h(of)g (\\translators")h(and)e(\\mixers",)j(whic)m(h)d(could)0 753 y(b)s(e)44 b(considered)g(as)h(\\in)m(termediate)h(systems")f(at)g (the)g(R)-8 b(TP)44 b(lev)m(el.)84 b(Although)45 b(this)f(supp)s(ort)f (adds)h(some)0 866 y(complexit)m(y)26 b(to)f(the)g(proto)s(col,)i(the)e (need)f(for)g(these)h(functions)f(has)g(b)s(een)g(clearly)i (established)f(b)m(y)f(exp)s(erimen)m(ts)0 979 y(with)f(m)m(ulticast)j (audio)e(and)f(video)h(applications)h(in)f(the)f(In)m(ternet.)39 b(Example)24 b(uses)g(of)g(translators)g(and)f(mixers)0 1092 y(giv)m(en)37 b(in)e(Section)i(2.3)g(stem)f(from)g(the)g(presence) g(of)g(\014rew)m(alls)g(and)f(lo)m(w)i(bandwidth)d(connections,)39 b(b)s(oth)c(of)0 1205 y(whic)m(h)30 b(are)h(lik)m(ely)h(to)f(remain.)0 1488 y Fn(7.1)112 b(General)39 b(Description)0 1698 y Fo(An)32 b(R)-8 b(TP)31 b(translator/mixer)i(connects)g(t)m(w)m(o)g(or) f(more)g(transp)s(ort-lev)m(el)i(\\clouds".)46 b(T)m(ypically)-8 b(,)34 b(eac)m(h)f(cloud)f(is)0 1811 y(de\014ned)27 b(b)m(y)h(a)h (common)f(net)m(w)m(ork)h(and)f(transp)s(ort)f(proto)s(col)j(\(e.g.,)g (IP/UDP\))f(plus)f(a)g(m)m(ulticast)i(address)e(and)0 1924 y(transp)s(ort)i(lev)m(el)i(destination)g(p)s(ort)e(or)h(a)g(pair) g(of)g(unicast)g(addresses)f(and)g(p)s(orts.)83 b(\(Net)m(w)m(ork-lev)m (el)35 b(proto)s(col)0 2037 y(translators,)c(suc)m(h)e(as)h(IP)f(v)m (ersion)i(4)f(to)g(IP)f(v)m(ersion)i(6,)f(ma)m(y)g(b)s(e)f(presen)m(t)h (within)f(a)h(cloud)g(in)m(visibly)g(to)h(R)-8 b(TP.\))0 2150 y(One)24 b(system)h(ma)m(y)h(serv)m(e)g(as)f(a)g(translator)h(or)f (mixer)f(for)h(a)g(n)m(um)m(b)s(er)f(of)h(R)-8 b(TP)25 b(sessions,)h(but)e(eac)m(h)i(is)f(considered)0 2263 y(a)31 b(logically)i(separate)e(en)m(tit)m(y)-8 b(.)0 2415 y(In)31 b(order)f(to)i(a)m(v)m(oid)h(creating)g(a)e(lo)s(op)h (when)e(a)i(translator)g(or)f(mixer)g(is)h(installed,)g(the)f(follo)m (wing)i(rules)e Fi(must)0 2528 y Fo(b)s(e)f(observ)m(ed:)136 2780 y Fj(\017)46 b Fo(Eac)m(h)c(of)e(the)h(clouds)g(connected)g(b)m(y) g(translators)g(and)g(mixers)f(participating)i(in)e(one)h(R)-8 b(TP)41 b(session)227 2893 y(either)g Fi(must)f Fo(b)s(e)f(distinct)i (from)f(all)i(the)e(others)h(in)f(at)h(least)h(one)f(of)g(these)g (parameters)f(\(proto)s(col,)227 3005 y(address,)30 b(p)s(ort\),)g(or)h Fi(must)e Fo(b)s(e)h(isolated)i(at)f(the)f(net)m(w)m(ork)h(lev)m(el)i (from)c(the)i(others.)136 3193 y Fj(\017)46 b Fo(A)34 b(deriv)-5 b(ativ)m(e)35 b(of)f(the)f(\014rst)g(rule)g(is)h(that)g (there)g Fi(must)i(not)d Fo(b)s(e)g(m)m(ultiple)h(translators)h(or)e (mixers)g(con-)227 3306 y(nected)21 b(in)f(parallel)i(unless)d(b)m(y)i (some)f(arrangemen)m(t)i(they)e(partition)h(the)g(set)g(of)f(sources)g (to)i(b)s(e)d(forw)m(arded.)0 3558 y(Similarly)-8 b(,)42 b(all)e(R)-8 b(TP)39 b(end)f(systems)h(that)h(can)f(comm)m(unicate)i (through)d(one)h(or)g(more)g(R)-8 b(TP)39 b(translators)h(or)0 3671 y(mixers)31 b(share)g(the)h(same)g(SSR)m(C)e(space,)j(that)f(is,)g (the)g(SSR)m(C)e(iden)m(ti\014ers)h Fi(must)g Fo(b)s(e)g(unique)f (among)i(all)g(these)0 3784 y(end)c(systems.)40 b(Section)29 b(8.2)h(describ)s(es)e(the)g(collision)i(resolution)f(algorithm)h(b)m (y)e(whic)m(h)h(SSR)m(C)e(iden)m(ti\014ers)i(are)0 3896 y(k)m(ept)i(unique)e(and)h(lo)s(ops)h(are)f(detected.)0 4048 y(There)i(ma)m(y)i(b)s(e)e(man)m(y)h(v)-5 b(arieties)35 b(of)e(translators)g(and)g(mixers)f(designed)h(for)g(di\013eren)m(t)g (purp)s(oses)e(and)i(appli-)0 4161 y(cations.)48 b(Some)33 b(examples)g(are)g(to)g(add)f(or)h(remo)m(v)m(e)h(encryption,)f(c)m (hange)g(the)g(enco)s(ding)g(of)f(the)h(data)g(or)g(the)0 4274 y(underlying)d(proto)s(cols,)i(or)g(replicate)g(b)s(et)m(w)m(een)g (a)g(m)m(ulticast)g(address)f(and)f(one)h(or)h(more)f(unicast)g (addresses.)0 4387 y(The)24 b(distinction)h(b)s(et)m(w)m(een)g (translators)g(and)f(mixers)h(is)f(that)h(a)g(translator)h(passes)e (through)g(the)g(data)i(streams)0 4500 y(from)k(di\013eren)m(t)h (sources)f(separately)-8 b(,)32 b(whereas)f(a)f(mixer)h(com)m(bines)g (them)f(to)h(form)f(one)h(new)e(stream:)0 4727 y Fl(T)-9 b(ranslator:)46 b Fo(F)-8 b(orw)m(ards)36 b(R)-8 b(TP)36 b(pac)m(k)m(ets)j(with)d(their)g(SSR)m(C)g(iden)m(ti\014er)g(in)m (tact;)42 b(this)36 b(mak)m(es)h(it)g(p)s(ossible)f(for)227 4840 y(receiv)m(ers)29 b(to)f(iden)m(tify)g(individual)e(sources)i(ev)m (en)g(though)f(pac)m(k)m(ets)i(from)e(all)h(the)f(sources)h(pass)f (through)227 4953 y(the)32 b(same)g(translator)g(and)e(carry)i(the)f (translator's)h(net)m(w)m(ork)h(source)e(address.)43 b(Some)31 b(kinds)f(of)i(trans-)227 5066 y(lators)d(will)e(pass)h (through)e(the)i(data)g(un)m(touc)m(hed,)g(but)f(others)h Fi(ma)-6 b(y)28 b Fo(c)m(hange)h(the)f(enco)s(ding)f(of)h(the)f(data) 227 5179 y(and)g(th)m(us)f(the)i(R)-8 b(TP)27 b(data)g(pa)m(yload)h(t)m (yp)s(e)g(and)e(timestamp.)40 b(If)27 b(m)m(ultiple)h(data)g(pac)m(k)m (ets)h(are)e(re-enco)s(ded)227 5291 y(in)m(to)h(one,)g(or)e(vice)i(v)m (ersa,)g(a)f(translator)g Fi(must)f Fo(assign)h(new)f(sequence)h(n)m (um)m(b)s(ers)e(to)i(the)g(outgoing)h(pac)m(k-)227 5404 y(ets.)61 b(Losses)37 b(in)f(the)h(incoming)h(pac)m(k)m(et)g(stream)g (ma)m(y)f(induce)f(corresp)s(onding)g(gaps)h(in)g(the)g(outgoing)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(45])p eop %%Page: 46 46 46 45 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(sequence)h(n)m(um)m(b)s(ers.)39 b(Receiv)m(ers)31 b(cannot)g(detect)g(the)f(presence)g(of)h(a)f (translator)h(unless)e(they)h(kno)m(w)g(b)m(y)227 511 y(some)h(other)g(means)f(what)g(pa)m(yload)i(t)m(yp)s(e)e(or)h(transp)s (ort)e(address)h(w)m(as)g(used)g(b)m(y)g(the)h(original)g(source.)0 699 y Fl(Mixer:)46 b Fo(Receiv)m(es)27 b(streams)e(of)g(R)-8 b(TP)24 b(data)i(pac)m(k)m(ets)g(from)f(one)g(or)f(more)h(sources,)i(p) s(ossibly)c(c)m(hanges)j(the)f(data)227 812 y(format,)j(com)m(bines)f (the)f(streams)g(in)g(some)h(manner)e(and)g(then)h(forw)m(ards)g(the)g (com)m(bined)g(stream.)40 b(Since)227 925 y(the)35 b(timing)h(among)f (m)m(ultiple)h(input)d(sources)i(will)g(not)h(generally)g(b)s(e)e(sync) m(hronized,)i(the)f(mixer)g(will)227 1038 y(mak)m(e)f(timing)g (adjustmen)m(ts)f(among)h(the)f(streams)g(and)g(generate)h(its)g(o)m (wn)f(timing)h(for)e(the)i(com)m(bined)227 1151 y(stream,)44 b(so)d(it)g(is)g(the)g(sync)m(hronization)h(source.)71 b(Th)m(us,)43 b(all)e(data)h(pac)m(k)m(ets)g(forw)m(arded)e(b)m(y)h(a)g (mixer)227 1264 y Fi(must)32 b Fo(b)s(e)h(mark)m(ed)g(with)g(the)g (mixer's)g(o)m(wn)g(SSR)m(C)f(iden)m(ti\014er.)49 b(In)32 b(order)h(to)h(preserv)m(e)f(the)g(iden)m(tit)m(y)i(of)227 1377 y(the)g(original)g(sources)f(con)m(tributing)g(to)h(the)f(mixed)g (pac)m(k)m(et,)j(the)e(mixer)f Fi(should)e Fo(insert)i(their)g(SSR)m(C) 227 1489 y(iden)m(ti\014ers)26 b(in)m(to)g(the)g(CSR)m(C)e(iden)m (ti\014er)i(list)g(follo)m(wing)h(the)f(\014xed)f(R)-8 b(TP)25 b(header)g(of)h(the)f(pac)m(k)m(et.)41 b(A)26 b(mixer)227 1602 y(that)40 b(is)f(also)h(itself)f(a)h(con)m(tributing)f (source)g(for)g(some)g(pac)m(k)m(et)i Fi(should)c Fo(explicitly)k (include)e(its)g(o)m(wn)227 1715 y(SSR)m(C)30 b(iden)m(ti\014er)g(in)g (the)h(CSR)m(C)e(list)i(for)g(that)f(pac)m(k)m(et.)227 1866 y(F)-8 b(or)31 b(some)f(applications,)h(it)f Fi(ma)-6 b(y)31 b Fo(b)s(e)e(acceptable)j(for)d(a)i(mixer)e(not)h(to)h(iden)m (tify)f(sources)f(in)h(the)g(CSR)m(C)227 1978 y(list.)71 b(Ho)m(w)m(ev)m(er,)45 b(this)40 b(in)m(tro)s(duces)g(the)h(danger)f (that)h(lo)s(ops)f(in)m(v)m(olving)i(those)f(sources)f(could)g(not)h(b) s(e)227 2091 y(detected.)0 2318 y(The)26 b(adv)-5 b(an)m(tage)28 b(of)e(a)h(mixer)f(o)m(v)m(er)h(a)g(translator)g(for)f(applications)h (lik)m(e)g(audio)g(is)f(that)h(the)f(output)g(bandwidth)0 2431 y(is)41 b(limited)g(to)g(that)g(of)g(one)g(source)g(ev)m(en)g (when)f(m)m(ultiple)h(sources)g(are)g(activ)m(e)h(on)f(the)g(input)e (side.)72 b(This)0 2544 y(ma)m(y)32 b(b)s(e)g(imp)s(ortan)m(t)g(for)f (lo)m(w-bandwidth)g(links.)45 b(The)31 b(disadv)-5 b(an)m(tage)34 b(is)d(that)i(receiv)m(ers)g(on)f(the)g(output)f(side)0 2657 y(don't)e(ha)m(v)m(e)h(an)m(y)g(con)m(trol)g(o)m(v)m(er)g(whic)m (h)f(sources)g(are)h(passed)e(through)g(or)h(m)m(uted,)h(unless)e(some) i(mec)m(hanism)f(is)0 2770 y(implemen)m(ted)j(for)f(remote)h(con)m (trol)g(of)g(the)f(mixer.)43 b(The)31 b(regeneration)h(of)g(sync)m (hronization)g(information)f(b)m(y)0 2883 y(mixers)k(also)g(means)g (that)g(receiv)m(ers)i(can't)e(do)g(in)m(ter-media)h(sync)m (hronization)g(of)f(the)g(original)h(streams.)54 b(A)0 2996 y(m)m(ulti-media)32 b(mixer)e(could)g(do)h(it.)0 3148 y(A)39 b(collection)j(of)d(mixers)g(and)g(translators)g(is)h(sho)m (wn)e(in)h(Fig.)h(3)g(to)f(illustrate)i(their)e(e\013ect)h(on)f(SSR)m (C)g(and)0 3261 y(CSR)m(C)f(iden)m(ti\014ers.)64 b(In)38 b(the)h(\014gure,)h(end)e(systems)g(are)h(sho)m(wn)f(as)g(rectangles)i (\(named)f(E\),)g(translators)g(as)0 3373 y(triangles)f(\(named)f(T\))f (and)g(mixers)h(as)g(o)m(v)-5 b(als)38 b(\(named)f(M\).)g(The)g (notation)h(\\M1:)54 b(48\(1,17\)")41 b(designates)d(a)0 3486 y(pac)m(k)m(et)44 b(originating)f(a)g(mixer)f(M1,)j(iden)m (ti\014ed)d(b)m(y)g(M1's)h(\(random\))f(SSR)m(C)f(v)-5 b(alue)42 b(of)g(48)h(and)e(t)m(w)m(o)j(CSR)m(C)0 3599 y(iden)m(ti\014ers,)31 b(1)f(and)g(17,)i(copied)e(from)g(the)h(SSR)m(C) e(iden)m(ti\014ers)i(of)f(pac)m(k)m(ets)i(from)e(E1)h(and)f(E2.)0 3882 y Fn(7.2)112 b(R)-9 b(TCP)36 b(Pro)s(cessing)i(in)g(T)-9 b(ranslators)0 4093 y Fo(In)24 b(addition)h(to)g(forw)m(arding)f(data)i (pac)m(k)m(ets,)i(p)s(erhaps)23 b(mo)s(di\014ed,)h(translators)i(and)e (mixers)g Fi(must)g Fo(also)h(pro)s(cess)0 4206 y(R)-8 b(TCP)36 b(pac)m(k)m(ets.)60 b(In)35 b(man)m(y)h(cases,)j(they)d(will)h (tak)m(e)h(apart)e(the)h(comp)s(ound)d(R)-8 b(TCP)36 b(pac)m(k)m(ets)i(receiv)m(ed)f(from)0 4318 y(end)28 b(systems)h(to)h(aggregate)i(SDES)c(information)h(and)g(to)h(mo)s(dify) e(the)h(SR)f(or)h(RR)g(pac)m(k)m(ets.)42 b(Retransmission)0 4431 y(of)36 b(this)f(information)h(ma)m(y)g(b)s(e)f(triggered)i(b)m(y) f(the)f(pac)m(k)m(et)j(arriv)-5 b(al)36 b(or)g(b)m(y)f(the)h(R)-8 b(TCP)35 b(in)m(terv)-5 b(al)37 b(timer)f(of)g(the)0 4544 y(translator)31 b(or)g(mixer)f(itself.)0 4696 y(A)e(translator)h (that)f(do)s(es)g(not)g(mo)s(dify)f(the)i(data)f(pac)m(k)m(ets,)j(for)d (example)g(one)h(that)f(just)g(replicates)h(b)s(et)m(w)m(een)g(a)0 4809 y(m)m(ulticast)g(address)d(and)g(a)i(unicast)f(address,)g Fi(ma)-6 b(y)28 b Fo(simply)f(forw)m(ard)g(R)-8 b(TCP)26 b(pac)m(k)m(ets)j(unmo)s(di\014ed)c(as)i(w)m(ell.)41 b(A)0 4922 y(translator)32 b(that)g(transforms)f(the)g(pa)m(yload)i(in) e(some)h(w)m(a)m(y)h Fi(must)e Fo(mak)m(e)h(corresp)s(onding)f (transformations)g(in)0 5035 y(the)d(SR)g(and)f(RR)h(information)g(so)h (that)f(it)h(still)g(re\015ects)f(the)h(c)m(haracteristics)h(of)e(the)h (data)f(and)g(the)g(reception)0 5148 y(qualit)m(y)-8 b(.)82 b(These)43 b(translators)h Fi(must)j(not)c Fo(simply)g(forw)m (ard)g(R)-8 b(TCP)43 b(pac)m(k)m(ets.)82 b(In)43 b(general,)48 b(a)c(translator)0 5261 y Fi(should)30 b(not)c Fo(aggregate)31 b(SR)26 b(and)h(RR)g(pac)m(k)m(ets)j(from)d(di\013eren)m(t)g(sources)h (in)m(to)g(one)g(pac)m(k)m(et)h(since)f(that)g(w)m(ould)0 5374 y(reduce)i(the)h(accuracy)g(of)g(the)f(propagation)i(dela)m(y)f (measuremen)m(ts)g(based)f(on)g(the)g(LSR)g(and)g(DLSR)g(\014elds.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(46])p eop %%Page: 47 47 47 46 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 2720 y currentpoint currentpoint translate 1.1223 1.1223 scale neg exch neg exch translate 0 2720 a @beginspecial 0 @llx 0 @lly 417 @urx 258 @ury 4170 @rwi @setspecial %%BeginDocument: map.ps %!PS-Adobe-2.0 EPSF-2.0 %%Title: map.fig %%Creator: fig2dev Version 3.1 Patchlevel 1 %%CreationDate: Fri Nov 10 13:36:20 1995 %%For: hgs@lupus (Henning Schulzrinne) %%Orientation: Portrait %%BoundingBox: 0 0 417 258 %%Pages: 0 %%BeginSetup %%IncludeFeature: *PageSize Letter %%EndSetup %%EndComments /$F2psDict 200 dict def $F2psDict begin $F2psDict /mtrx matrix put /col-1 {} def /col0 {0.000 0.000 0.000 srgb} bind def /col1 {0.000 0.000 1.000 srgb} bind def /col2 {0.000 1.000 0.000 srgb} bind def /col3 {0.000 1.000 1.000 srgb} bind def /col4 {1.000 0.000 0.000 srgb} bind def /col5 {1.000 0.000 1.000 srgb} bind def /col6 {1.000 1.000 0.000 srgb} bind def /col7 {1.000 1.000 1.000 srgb} bind def /col8 {0.000 0.000 0.560 srgb} bind def /col9 {0.000 0.000 0.690 srgb} bind def /col10 {0.000 0.000 0.820 srgb} bind def /col11 {0.530 0.810 1.000 srgb} bind def /col12 {0.000 0.560 0.000 srgb} bind def /col13 {0.000 0.690 0.000 srgb} bind def /col14 {0.000 0.820 0.000 srgb} bind def /col15 {0.000 0.560 0.560 srgb} bind def /col16 {0.000 0.690 0.690 srgb} bind def /col17 {0.000 0.820 0.820 srgb} bind def /col18 {0.560 0.000 0.000 srgb} bind def /col19 {0.690 0.000 0.000 srgb} bind def /col20 {0.820 0.000 0.000 srgb} bind def /col21 {0.560 0.000 0.560 srgb} bind def /col22 {0.690 0.000 0.690 srgb} bind def /col23 {0.820 0.000 0.820 srgb} bind def /col24 {0.500 0.190 0.000 srgb} bind def /col25 {0.630 0.250 0.000 srgb} bind def /col26 {0.750 0.380 0.000 srgb} bind def /col27 {1.000 0.500 0.500 srgb} bind def /col28 {1.000 0.630 0.630 srgb} bind def /col29 {1.000 0.750 0.750 srgb} bind def /col30 {1.000 0.880 0.880 srgb} bind def /col31 {1.000 0.840 0.000 srgb} bind def end save -83.0 314.0 translate 1 -1 scale /clp {closepath} bind def /ef {eofill} bind def /gr {grestore} bind def /gs {gsave} bind def /l {lineto} bind def /m {moveto} bind def /n {newpath} bind def /s {stroke} bind def /slc {setlinecap} bind def /slj {setlinejoin} bind def /slw {setlinewidth} bind def /srgb {setrgbcolor} bind def /rot {rotate} bind def /sc {scale} bind def /tr {translate} bind def /tnt {dup dup currentrgbcolor 4 -2 roll dup 1 exch sub 3 -1 roll mul add 4 -2 roll dup 1 exch sub 3 -1 roll mul add 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} bind def /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 4 -2 roll mul srgb} bind def /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y tr xrad yrad sc 0 0 1 startangle endangle arc closepath savematrix setmatrix } def /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 10 setmiterlimit 0.06299 0.06299 sc 15.000 slw % Ellipse n 1800 2250 225 225 0 360 DrawEllipse gs col-1 s gr % Ellipse n 3375 3825 225 225 0 360 DrawEllipse gs col-1 s gr % Ellipse n 4950 3825 225 225 0 360 DrawEllipse gs col-1 s gr % Polyline n 1350 1125 m 2250 1125 l 2250 1575 l 1350 1575 l clp gs col-1 s gr % Polyline n 3375 2025 m 3150 2475 l 3600 2475 l 3375 2025 l clp gs col-1 s gr % Polyline n 1350 2925 m 2250 2925 l 2250 3375 l 1350 3375 l clp gs col-1 s gr % Polyline n 2925 2925 m 3825 2925 l 3825 3375 l 2925 3375 l clp gs col-1 s gr % Polyline n 4950 2025 m 4725 2475 l 5175 2475 l 4950 2025 l clp gs col-1 s gr % Polyline n 6300 2025 m 7200 2025 l 7200 2475 l 6300 2475 l clp gs col-1 s gr % Polyline n 4500 1125 m 5400 1125 l 5400 1575 l 4500 1575 l clp gs col-1 s gr % Polyline n 1350 3600 m 2250 3600 l 2250 4050 l 1350 4050 l clp gs col-1 s gr % Polyline n 4500 4500 m 5400 4500 l 5400 4950 l 4500 4950 l clp gs col-1 s gr % Polyline n 1800 2475 m 1800 2925 l gs col-1 s gr 7.500 slw n 1770.00 2595.00 m 1800.00 2475.00 l 1830.00 2595.00 l 1800.50 2595.50 l 1770.00 2595.00 l clp gs 0.00 setgray ef gr gs col-1 s gr 15.000 slw % Polyline n 3375 2475 m 3375 2925 l gs col-1 s gr % Polyline n 2025 2250 m 3285 2250 l gs col-1 s gr 7.500 slw n 3165.00 2220.00 m 3285.00 2250.00 l 3165.00 2280.00 l 3165.50 2250.50 l 3165.00 2220.00 l clp gs 0.00 setgray ef gr gs col-1 s gr 15.000 slw % Polyline n 3510 2250 m 4860 2250 l gs col-1 s gr 7.500 slw n 4740.00 2220.00 m 4860.00 2250.00 l 4740.00 2280.00 l 4740.50 2250.50 l 4740.00 2220.00 l clp gs 0.00 setgray ef gr gs col-1 s gr 15.000 slw % Polyline n 5085 2250 m 6300 2250 l gs col-1 s gr 7.500 slw n 6180.00 2220.00 m 6300.00 2250.00 l 6180.00 2280.00 l 6180.50 2250.50 l 6180.00 2220.00 l clp gs 0.00 setgray ef gr gs col-1 s gr 15.000 slw % Polyline n 4950 1575 m 4950 2025 l gs col-1 s gr 7.500 slw n 4980.00 1905.00 m 4950.00 2025.00 l 4920.00 1905.00 l 4950.50 1905.50 l 4980.00 1905.00 l clp gs 0.00 setgray ef gr gs col-1 s gr 15.000 slw % Polyline n 4950 2475 m 4950 3600 l gs col-1 s gr 7.500 slw n 4920.00 2595.00 m 4950.00 2475.00 l 4980.00 2595.00 l 4950.50 2595.50 l 4920.00 2595.00 l clp gs 0.00 setgray ef gr gs col-1 s gr 15.000 slw % Polyline n 2250 3825 m 3150 3825 l gs col-1 s gr 7.500 slw n 3030.00 3795.00 m 3150.00 3825.00 l 3030.00 3855.00 l 3030.50 3825.50 l 3030.00 3795.00 l clp gs 0.00 setgray ef gr gs col-1 s gr 15.000 slw % Polyline n 3600 3825 m 4725 3825 l gs col-1 s gr 7.500 slw n 4605.00 3795.00 m 4725.00 3825.00 l 4605.00 3855.00 l 4605.50 3825.50 l 4605.00 3795.00 l clp gs 0.00 setgray ef gr gs col-1 s gr 15.000 slw % Polyline n 4950 4050 m 4950 4500 l gs col-1 s gr % Polyline n 1800 1575 m 1800 2025 l gs col-1 s gr 7.500 slw n 1830.00 1905.00 m 1800.00 2025.00 l 1770.00 1905.00 l 1800.50 1905.50 l 1830.00 1905.00 l clp gs 0.00 setgray ef gr gs col-1 s gr 15.000 slw % Polyline n 5850 3825 m 7830 3825 l gs col-1 s gr 7.500 slw n 7710.00 3795.00 m 7830.00 3825.00 l 7710.00 3855.00 l 7710.50 3825.50 l 7710.00 3795.00 l clp gs 0.00 setgray ef gr gs col-1 s gr /Helvetica findfont 180.00 scalefont setfont 1800 3240 m gs 1 -1 sc (E2) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 3375 3240 m gs 1 -1 sc (E4) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 1800 3915 m gs 1 -1 sc (E3) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 3375 3870 m gs 1 -1 sc (M2) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 1800 2295 m gs 1 -1 sc (M1) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 3375 2385 m gs 1 -1 sc (T1) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 1800 1440 m gs 1 -1 sc (E1) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 4950 1440 m gs 1 -1 sc (E6) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 4950 2385 m gs 1 -1 sc (T2) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 4950 3915 m gs 1 -1 sc (M3) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 4950 4770 m gs 1 -1 sc (E5) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 6750 2340 m gs 1 -1 sc (E7) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 5850 4050 m gs 1 -1 sc (source: SSRC \(CSRC,...\)) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 6840 3735 m gs 1 -1 sc (Legend:) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Helvetica findfont 180.00 scalefont setfont 4995 3150 m gs 1 -1 sc (M3: 89\(64,45\)) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 5265 2430 m gs 1 -1 sc (E4:47) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 5265 2610 m gs 1 -1 sc (M3:89\(64,45\)) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 5265 2205 m gs 1 -1 sc (M1:48\(1,17\)) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 5265 2025 m gs 1 -1 sc (E6:15) col-1 show gr /Times-Italic findfont 180.00 scalefont setfont 1800 1035 m gs 1 -1 sc (end system) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Italic findfont 180.00 scalefont setfont 3375 1935 m gs 1 -1 sc (translator) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Italic findfont 180.00 scalefont setfont 2115 2475 m gs 1 -1 sc (mixer) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 4995 1755 m gs 1 -1 sc (E6:15) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 1845 1755 m gs 1 -1 sc (E1:17) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 3690 2430 m gs 1 -1 sc (E4:47) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 3690 2205 m gs 1 -1 sc (M1: 48\(1,17\)) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 2115 2205 m gs 1 -1 sc (M1:48\(1,17\)) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 3690 4005 m gs 1 -1 sc (M2:12\(64\)) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 1845 2880 m gs 1 -1 sc (E2:1) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 3420 2880 m gs 1 -1 sc (E4:47) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 4995 4455 m gs 1 -1 sc (E5:45) col-1 show gr /Helvetica findfont 180.00 scalefont setfont 2295 4005 m gs 1 -1 sc (E3:64) col-1 show gr $F2psEnd restore %%EndDocument @endspecial 0 2720 a currentpoint currentpoint translate 1 1.1223 div 1 1.1223 div scale neg exch neg exch translate 0 2720 a 493 2916 a Fo(Figure)h(3:)41 b(Sample)30 b(R)-8 b(TP)30 b(net)m(w)m(ork)h(with)f(end)g(systems,)h (mixers)f(and)g(translators)0 3190 y Fl(SR)35 b(sender)g(information:) 46 b Fo(A)22 b(translator)h(do)s(es)f(not)g(generate)i(its)e(o)m(wn)g (sender)f(information,)j(but)e(forw)m(ards)227 3303 y(the)29 b(SR)e(pac)m(k)m(ets)j(receiv)m(ed)f(from)f(one)g(cloud)g(to)h(the)g (others.)40 b(The)27 b(SSR)m(C)g(is)h(left)h(in)m(tact)h(but)d(the)i (sender)227 3416 y(information)f Fi(must)e Fo(b)s(e)h(mo)s(di\014ed)f (if)i(required)e(b)m(y)i(the)f(translation.)41 b(If)27 b(a)h(translator)g(c)m(hanges)h(the)e(data)227 3528 y(enco)s(ding,)40 b(it)e Fi(must)f Fo(c)m(hange)h(the)g(\\sender's)f(b)m(yte)i(coun)m(t") f(\014eld.)62 b(If)37 b(it)i(also)f(com)m(bines)g(sev)m(eral)h(data)227 3641 y(pac)m(k)m(ets)26 b(in)m(to)e(one)g(output)f(pac)m(k)m(et,)k(it)d Fi(must)f Fo(c)m(hange)i(the)e(\\sender's)h(pac)m(k)m(et)h(coun)m(t")g (\014eld.)38 b(If)23 b(it)h(c)m(hanges)227 3754 y(the)31 b(timestamp)g(frequency)-8 b(,)30 b(it)h Fi(must)f Fo(c)m(hange)h(the)g (\\R)-8 b(TP)30 b(timestamp")i(\014eld)e(in)g(the)g(SR)g(pac)m(k)m(et.) 0 3941 y Fl(SR/RR)36 b(reception)g(rep)s(ort)f(blo)s(c)m(ks:)46 b Fo(A)d(translator)h(forw)m(ards)e(reception)i(rep)s(orts)e(receiv)m (ed)i(from)f(one)227 4054 y(cloud)30 b(to)h(the)f(others.)41 b(Note)31 b(that)f(these)h(\015o)m(w)e(in)h(the)g(direction)h(opp)s (osite)f(to)g(the)g(data.)42 b(The)29 b(SSR)m(C)g(is)227 4167 y(left)d(in)m(tact.)40 b(If)24 b(a)h(translator)h(com)m(bines)f (sev)m(eral)h(data)f(pac)m(k)m(ets)i(in)m(to)e(one)g(output)f(pac)m(k)m (et,)k(and)c(therefore)227 4280 y(c)m(hanges)39 b(the)f(sequence)g(n)m (um)m(b)s(ers,)g(it)g Fi(must)f Fo(mak)m(e)h(the)g(in)m(v)m(erse)h (manipulation)f(for)f(the)h(pac)m(k)m(et)i(loss)227 4393 y(\014elds)31 b(and)f(the)h(\\extended)h(last)g(sequence)f(n)m(um)m(b)s (er")f(\014eld.)42 b(This)30 b(ma)m(y)i(b)s(e)e(complex.)44 b(In)30 b(the)h(extreme)227 4506 y(case,)40 b(there)c(ma)m(y)h(b)s(e)f (no)g(meaningful)g(w)m(a)m(y)i(to)f(translate)h(the)e(reception)h(rep)s (orts,)h(so)e(the)h(translator)227 4619 y Fi(ma)-6 b(y)30 b Fo(pass)f(on)f(no)h(reception)h(rep)s(ort)e(at)i(all)g(or)e(a)i(syn)m (thetic)g(rep)s(ort)e(based)g(on)h(its)g(o)m(wn)g(reception.)41 b(The)227 4732 y(general)32 b(rule)e(is)g(to)h(do)g(what)f(mak)m(es)h (sense)f(for)g(a)h(particular)g(translation.)227 4882 y(A)h(translator)h(do)s(es)e(not)h(require)g(an)g(SSR)m(C)e(iden)m (ti\014er)i(of)g(its)h(o)m(wn,)f(but)f Fi(ma)-6 b(y)33 b Fo(c)m(ho)s(ose)g(to)f(allo)s(cate)j(one)227 4994 y(for)28 b(the)g(purp)s(ose)f(of)h(sending)f(rep)s(orts)g(ab)s(out)h(what)g(it)h (has)e(receiv)m(ed.)42 b(These)27 b(w)m(ould)h(b)s(e)g(sen)m(t)g(to)h (all)g(the)227 5107 y(connected)37 b(clouds,)h(eac)m(h)f(corresp)s (onding)f(to)h(the)f(translation)h(of)f(the)h(data)g(stream)f(as)h(sen) m(t)f(to)h(that)227 5220 y(cloud,)31 b(since)g(reception)g(rep)s(orts)e (are)i(normally)g(m)m(ulticast)h(to)f(all)g(participan)m(ts.)0 5407 y Fl(SDES:)46 b Fo(T)-8 b(ranslators)28 b(t)m(ypically)h(forw)m (ard)f(without)g(c)m(hange)g(the)g(SDES)g(information)g(they)g(receiv)m (e)h(from)f(one)0 5656 y(Sc)m(h)m(ulzrinne,)i(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(47])p eop %%Page: 48 48 48 47 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(cloud)35 b(to)h(the)f(others,)h(but)e Fi(ma)-6 b(y)r Fo(,)35 b(for)g(example,)h(decide)g(to)f(\014lter)g (non-CNAME)g(SDES)f(information)227 511 y(if)c(bandwidth)e(is)i (limited.)41 b(The)30 b(CNAMEs)g Fi(must)f Fo(b)s(e)g(forw)m(arded)g (to)i(allo)m(w)g(SSR)m(C)e(iden)m(ti\014er)h(collision)227 624 y(detection)d(to)e(w)m(ork.)39 b(A)25 b(translator)h(that)f (generates)i(its)e(o)m(wn)g(RR)f(pac)m(k)m(ets)j Fi(must)d Fo(send)g(SDES)g(CNAME)227 737 y(information)31 b(ab)s(out)f(itself)h (to)g(the)g(same)g(clouds)f(that)h(it)g(sends)e(those)i(RR)f(pac)m(k)m (ets.)0 925 y Fl(BYE:)46 b Fo(T)-8 b(ranslators)31 b(forw)m(ard)g(BYE)h (pac)m(k)m(ets)h(unc)m(hanged.)43 b(A)31 b(translator)h(that)g(is)f(ab) s(out)g(to)h(cease)h(forw)m(ard-)227 1038 y(ing)40 b(pac)m(k)m(ets)h Fi(should)c Fo(send)i(a)g(BYE)h(pac)m(k)m(et)h(to)f(eac)m(h)g (connected)g(cloud)g(con)m(taining)g(all)h(the)e(SSR)m(C)227 1151 y(iden)m(ti\014ers)29 b(that)g(w)m(ere)g(previously)f(b)s(eing)g (forw)m(arded)g(to)h(that)g(cloud,)g(including)f(the)h(translator's)g (o)m(wn)227 1264 y(SSR)m(C)h(iden)m(ti\014er)g(if)h(it)f(sen)m(t)h(rep) s(orts)f(of)g(its)h(o)m(wn.)0 1451 y Fl(APP:)46 b Fo(T)-8 b(ranslators)31 b(forw)m(ard)f(APP)g(pac)m(k)m(ets)j(unc)m(hanged.)0 1734 y Fn(7.3)112 b(R)-9 b(TCP)36 b(Pro)s(cessing)i(in)g(Mixers)0 1945 y Fo(Since)31 b(a)g(mixer)f(generates)i(a)f(new)f(data)i(stream)f (of)g(its)g(o)m(wn,)g(it)g(do)s(es)f(not)h(pass)f(through)g(SR)g(or)h (RR)f(pac)m(k)m(ets)0 2057 y(at)h(all)g(and)f(instead)h(generates)h (new)d(information)i(for)f(b)s(oth)g(sides.)0 2309 y Fl(SR)35 b(sender)g(information:)46 b Fo(A)31 b(mixer)g(do)s(es)g(not)g (pass)f(through)h(sender)f(information)h(from)f(the)h(sources)g(it)227 2422 y(mixes)c(b)s(ecause)g(the)g(c)m(haracteristics)i(of)e(the)g (source)g(streams)g(are)h(lost)f(in)g(the)g(mix.)39 b(As)27 b(a)g(sync)m(hroniza-)227 2535 y(tion)36 b(source,)h(the)e(mixer)g Fi(should)f Fo(generate)i(its)g(o)m(wn)f(SR)g(pac)m(k)m(ets)i(with)d (sender)h(information)g(ab)s(out)227 2648 y(the)c(mixed)f(data)h (stream)g(and)f(send)59 b(them)31 b(in)f(the)g(same)h(direction)g(as)g (the)f(mixed)h(stream.)0 2836 y Fl(SR/RR)36 b(reception)g(rep)s(ort)f (blo)s(c)m(ks:)46 b Fo(A)39 b(mixer)g(generates)h(its)g(o)m(wn)f (reception)g(rep)s(orts)g(for)f(sources)h(in)227 2948 y(eac)m(h)c(cloud)e(and)g(sends)f(them)h(out)h(only)f(to)h(the)f(same)h (cloud.)50 b(It)33 b Fi(must)j(not)66 b Fo(send)32 b(these)i(reception) 227 3061 y(rep)s(orts)d(to)h(the)g(other)g(clouds)f(and)g Fi(must)k(not)62 b Fo(forw)m(ard)31 b(reception)h(rep)s(orts)f(from)g (one)h(cloud)f(to)i(the)227 3174 y(others)e(b)s(ecause)f(the)h(sources) f(w)m(ould)g(not)h(b)s(e)f(SSR)m(Cs)f(there)h(\(only)h(CSR)m(Cs\).)0 3362 y Fl(SDES:)46 b Fo(Mixers)e(t)m(ypically)i(forw)m(ard)e(without)g (c)m(hange)h(the)g(SDES)e(information)i(they)f(receiv)m(e)i(from)e(one) 227 3475 y(cloud)35 b(to)h(the)f(others,)h(but)e Fi(ma)-6 b(y)r Fo(,)35 b(for)g(example,)h(decide)g(to)f(\014lter)g(non-CNAME)g (SDES)f(information)227 3588 y(if)c(bandwidth)e(is)i(limited.)41 b(The)30 b(CNAMEs)g Fi(must)f Fo(b)s(e)g(forw)m(arded)g(to)i(allo)m(w)g (SSR)m(C)e(iden)m(ti\014er)h(collision)227 3701 y(detection)j(to)f(w)m (ork.)44 b(\(An)31 b(iden)m(ti\014er)g(in)g(a)h(CSR)m(C)e(list)i (generated)g(b)m(y)g(a)f(mixer)g(migh)m(t)h(collide)h(with)e(an)227 3814 y(SSR)m(C)22 b(iden)m(ti\014er)h(generated)h(b)m(y)e(an)h(end)f (system.\))39 b(A)23 b(mixer)f Fi(must)g Fo(send)g(SDES)g(CNAME)h (information)227 3926 y(ab)s(out)30 b(itself)i(to)f(the)f(same)h (clouds)f(that)h(it)g(sends)f(SR)f(or)i(RR)f(pac)m(k)m(ets.)227 4077 y(Since)24 b(mixers)f(do)g(not)h(forw)m(ard)e(SR)h(or)g(RR)h(pac)m (k)m(ets,)i(they)e(will)g(t)m(ypically)h(b)s(e)d(extracting)j(SDES)e (pac)m(k)m(ets)227 4190 y(from)28 b(a)h(comp)s(ound)e(R)-8 b(TCP)28 b(pac)m(k)m(et.)42 b(T)-8 b(o)29 b(minimize)g(o)m(v)m(erhead,) i(c)m(h)m(unks)d(from)g(the)h(SDES)e(pac)m(k)m(ets)k Fi(ma)-6 b(y)227 4303 y Fo(b)s(e)44 b(aggregated)i(in)m(to)f(a)f (single)h(SDES)e(pac)m(k)m(et)j(whic)m(h)e(is)g(then)f(stac)m(k)m(ed)j (on)e(an)g(SR)f(or)h(RR)g(pac)m(k)m(et)227 4415 y(originating)39 b(from)d(the)h(mixer.)61 b(A)37 b(mixer)g(whic)m(h)g(aggregates)i(SDES) e(pac)m(k)m(ets)h(will)g(use)e(more)h(R)-8 b(TCP)227 4528 y(bandwidth)28 b(than)i(an)f(individual)g(source)h(b)s(ecause)g (the)g(comp)s(ound)e(pac)m(k)m(ets)k(will)e(b)s(e)f(longer,)h(but)f (that)227 4641 y(is)36 b(appropriate)h(since)f(the)h(mixer)f(represen)m (ts)g(m)m(ultiple)h(sources.)58 b(Similarly)-8 b(,)38 b(a)f(mixer)f(whic)m(h)g(passes)227 4754 y(through)25 b(SDES)g(pac)m(k)m(ets)i(as)f(they)g(are)g(receiv)m(ed)h(will)e(b)s(e)g (transmitting)h(R)-8 b(TCP)25 b(pac)m(k)m(ets)j(at)e(higher)f(than)227 4867 y(the)j(single)g(source)g(rate,)h(but)e(again)h(that)h(is)e (correct)i(since)f(the)f(pac)m(k)m(ets)j(come)e(from)f(m)m(ultiple)i (sources.)227 4980 y(The)h(R)-8 b(TCP)30 b(pac)m(k)m(et)i(rate)f(ma)m (y)g(b)s(e)f(di\013eren)m(t)h(on)f(eac)m(h)i(side)e(of)h(the)f(mixer.) 227 5130 y(A)48 b(mixer)g(that)g(do)s(es)g(not)g(insert)g(CSR)m(C)f (iden)m(ti\014ers)h Fi(ma)-6 b(y)49 b Fo(also)f(refrain)g(from)f(forw)m (arding)h(SDES)227 5243 y(CNAMEs.)60 b(In)37 b(this)f(case,)k(the)d (SSR)m(C)f(iden)m(ti\014er)h(spaces)g(in)g(the)g(t)m(w)m(o)h(clouds)f (are)g(indep)s(enden)m(t.)59 b(As)227 5356 y(men)m(tioned)31 b(earlier,)h(this)e(mo)s(de)g(of)g(op)s(eration)h(creates)h(a)f(danger) f(that)h(lo)s(ops)f(can't)i(b)s(e)d(detected.)0 5656 y(Sc)m(h)m(ulzrinne,)h(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(48])p eop %%Page: 49 49 49 48 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fl(BYE:)46 b Fo(Mixers)40 b Fi(must)f Fo(forw)m(ard)h(BYE)h(pac)m(k)m(ets.)72 b(A)40 b(mixer)g(that)h(is)g(ab)s(out)e(to)i(cease)h(forw)m(arding)e(pac)m(k)m (ets)227 511 y Fi(should)28 b Fo(send)g(a)h(BYE)h(pac)m(k)m(et)h(to)f (eac)m(h)g(connected)g(cloud)f(con)m(taining)i(all)f(the)f(SSR)m(C)f (iden)m(ti\014ers)h(that)227 624 y(w)m(ere)k(previously)g(b)s(eing)f (forw)m(arded)g(to)h(that)h(cloud,)f(including)f(the)h(mixer's)g(o)m (wn)g(SSR)m(C)e(iden)m(ti\014er)i(if)227 737 y(it)e(sen)m(t)g(rep)s (orts)f(of)g(its)h(o)m(wn.)0 916 y Fl(APP:)46 b Fo(The)30 b(treatmen)m(t)i(of)f(APP)f(pac)m(k)m(ets)i(b)m(y)f(mixers)f(is)g (application-sp)s(eci\014c.)0 1195 y Fn(7.4)112 b(Cascaded)39 b(Mixers)0 1406 y Fo(An)25 b(R)-8 b(TP)25 b(session)g(ma)m(y)h(in)m(v)m (olv)m(e)h(a)f(collection)i(of)d(mixers)g(and)g(translators)h(as)f(sho) m(wn)g(in)g(Fig.)h(3.)40 b(If)25 b(t)m(w)m(o)h(mixers)0 1518 y(are)i(cascaded,)h(suc)m(h)f(as)g(M2)g(and)f(M3)h(in)g(the)g (\014gure,)g(pac)m(k)m(ets)h(receiv)m(ed)g(b)m(y)f(a)g(mixer)f(ma)m(y)i (already)f(ha)m(v)m(e)h(b)s(een)0 1631 y(mixed)g(and)g(ma)m(y)h (include)f(a)g(CSR)m(C)g(list)g(with)g(m)m(ultiple)h(iden)m(ti\014ers.) 41 b(The)29 b(second)g(mixer)g Fi(should)f Fo(build)g(the)0 1744 y(CSR)m(C)23 b(list)i(for)f(the)g(outgoing)i(pac)m(k)m(et)g(using) d(the)i(CSR)m(C)e(iden)m(ti\014ers)h(from)g(already-mixed)g(input)g (pac)m(k)m(ets)i(and)0 1857 y(the)k(SSR)m(C)f(iden)m(ti\014ers)h(from)g (unmixed)e(input)h(pac)m(k)m(ets.)43 b(This)29 b(is)h(sho)m(wn)f(in)h (the)g(output)g(arc)g(from)f(mixer)h(M3)0 1970 y(lab)s(eled)h (M3:89\(64,45\))k(in)30 b(the)h(\014gure.)40 b(As)31 b(in)f(the)h(case)g(of)g(mixers)f(that)h(are)g(not)g(cascaded,)h(if)e (the)h(resulting)0 2083 y(CSR)m(C)f(list)h(has)f(more)g(than)g(15)i (iden)m(ti\014ers,)e(the)h(remainder)f(cannot)h(b)s(e)e(included.)0 2405 y Fm(8.)135 b(SSR)l(C)45 b(Iden)l(ti\014er)h(Allo)t(cation)g(and)e (Use)0 2647 y Fo(The)29 b(SSR)m(C)g(iden)m(ti\014er)h(carried)g(in)f (the)h(R)-8 b(TP)29 b(header)h(and)f(in)g(v)-5 b(arious)30 b(\014elds)f(of)h(R)-8 b(TCP)29 b(pac)m(k)m(ets)j(is)e(a)g(random)0 2760 y(32-bit)j(n)m(um)m(b)s(er)d(that)i(is)g(required)f(to)h(b)s(e)f (globally)i(unique)e(within)g(an)g(R)-8 b(TP)31 b(session.)45 b(It)32 b(is)f(crucial)i(that)f(the)0 2872 y(n)m(um)m(b)s(er)25 b(b)s(e)i(c)m(hosen)g(with)f(care)i(in)e(order)h(that)g(participan)m (ts)h(on)e(the)h(same)g(net)m(w)m(ork)h(or)f(starting)g(at)h(the)f (same)0 2985 y(time)k(are)g(not)f(lik)m(ely)i(to)f(c)m(ho)s(ose)h(the)e (same)h(n)m(um)m(b)s(er.)0 3137 y(It)40 b(is)f Fk(not)i Fo(su\016cien)m(t)f(to)g(use)f(the)h(lo)s(cal)h(net)m(w)m(ork)f (address)f(\(suc)m(h)h(as)f(an)h(IPv4)g(address\))f(for)g(the)h(iden)m (ti\014er)0 3250 y(b)s(ecause)33 b(the)h(address)f(ma)m(y)h(not)g(b)s (e)f(unique.)49 b(Since)33 b(R)-8 b(TP)34 b(translators)g(and)f(mixers) g(enable)h(in)m(terop)s(eration)0 3363 y(among)27 b(m)m(ultiple)f(net)m (w)m(orks)h(with)f(di\013eren)m(t)h(address)e(spaces,)i(the)g(allo)s (cation)h(patterns)e(for)g(addresses)f(within)0 3476 y(t)m(w)m(o)i(spaces)e(migh)m(t)i(result)e(in)g(a)g(m)m(uc)m(h)h (higher)f(rate)h(of)f(collision)i(than)f(w)m(ould)f(o)s(ccur)g(with)g (random)f(allo)s(cation.)0 3589 y(Multiple)31 b(sources)g(running)d(on) i(one)h(host)g(w)m(ould)f(also)h(con\015ict.)0 3741 y(It)42 b(is)g(also)h(not)f(su\016cien)m(t)g(to)h(obtain)g(an)e(SSR)m(C)g(iden) m(ti\014er)h(simply)g(b)m(y)g(calling)h Fh(random\(\))d Fo(without)i(care-)0 3854 y(fully)f(initializing)j(the)e(state.)75 b(An)42 b(example)g(of)g(ho)m(w)f(to)i(generate)g(a)f(random)e(iden)m (ti\014er)i(is)g(presen)m(ted)f(in)0 3967 y(App)s(endix)29 b(A.6.)0 4245 y Fn(8.1)112 b(Probabilit)m(y)38 b(of)g(Collision)0 4456 y Fo(Since)22 b(the)g(iden)m(ti\014ers)h(are)f(c)m(hosen)h (randomly)-8 b(,)24 b(it)e(is)g(p)s(ossible)g(that)h(t)m(w)m(o)g(or)f (more)h(sources)f(will)g(c)m(ho)s(ose)h(the)g(same)0 4569 y(n)m(um)m(b)s(er.)39 b(Collision)31 b(o)s(ccurs)e(with)h(the)g (highest)g(probabilit)m(y)g(when)f(all)h(sources)g(are)g(started)g(sim) m(ultaneously)-8 b(,)0 4682 y(for)30 b(example)h(when)e(triggered)i (automatically)h(b)m(y)e(some)h(session)f(managemen)m(t)h(ev)m(en)m(t.) 42 b(If)30 b Fg(N)40 b Fo(is)30 b(the)g(n)m(um)m(b)s(er)0 4795 y(of)45 b(sources)h(and)e Fg(L)h Fo(the)h(length)g(of)f(the)h (iden)m(ti\014er)f(\(here,)50 b(32)c(bits\),)j(the)d(probabilit)m(y)f (that)h(t)m(w)m(o)h(sources)0 4916 y(indep)s(enden)m(tly)32 b(pic)m(k)i(the)g(same)f(v)-5 b(alue)34 b(can)g(b)s(e)e(appro)m (ximated)i(for)f(large)i Fg(N)43 b Fo([26)q(,)34 b(p.)f(33])i(as)e(1)23 b Fj(\000)f Fg(e)3524 4883 y Fd(\000)p Fe(N)3642 4860 y Fc(2)3677 4883 y Fe(=)p Fb(2)3747 4860 y Fa(L)p Fc(+1)3875 4916 y Fo(.)0 5029 y(F)-8 b(or)31 b Fg(N)k Fo(=)25 b(1000,)33 b(the)d(probabilit)m(y)h(is)g(roughly)f(10)1739 4996 y Fd(\000)p Fb(4)1834 5029 y Fo(.)0 5181 y(The)k(t)m(ypical)i (collision)g(probabilit)m(y)f(is)f(m)m(uc)m(h)g(lo)m(w)m(er)i(than)e (the)g(w)m(orst-case)i(ab)s(o)m(v)m(e.)54 b(When)34 b(one)h(new)f (source)0 5294 y(joins)29 b(an)g(R)-8 b(TP)29 b(session)g(in)g(whic)m (h)g(all)h(the)f(other)g(sources)g(already)h(ha)m(v)m(e)g(unique)e (iden)m(ti\014ers,)i(the)f(probabilit)m(y)0 5407 y(of)38 b(collision)i(is)e(just)g(the)g(fraction)h(of)g(n)m(um)m(b)s(ers)d (used)i(out)g(of)h(the)f(space.)65 b(Again,)41 b(if)d Fg(N)48 b Fo(is)38 b(the)h(n)m(um)m(b)s(er)e(of)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(49])p eop %%Page: 50 50 50 49 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(sources)i(and)f Fg(L)h Fo(the)g(length)h(of)f (the)g(iden)m(ti\014er,)h(the)f(probabilit)m(y)g(of)h(collision)g(is)f Fg(N)r(=)p Fo(2)3036 366 y Fe(L)3090 399 y Fo(.)45 b(F)-8 b(or)33 b Fg(N)38 b Fo(=)27 b(1000,)35 b(the)0 511 y(probabilit)m(y)c (is)f(roughly)g(2)21 b Fj(\001)f Fo(10)1088 478 y Fd(\000)p Fb(7)1184 511 y Fo(.)0 663 y(The)j(probabilit)m(y)h(of)g(collision)i (is)d(further)g(reduced)g(b)m(y)g(the)h(opp)s(ortunit)m(y)f(for)h(a)g (new)f(source)h(to)h(receiv)m(e)g(pac)m(k)m(ets)0 776 y(from)34 b(other)h(participan)m(ts)h(b)s(efore)e(sending)g(its)h (\014rst)f(pac)m(k)m(et)i(\(either)g(data)f(or)g(con)m(trol\).)55 b(If)34 b(the)h(new)f(source)0 889 y(k)m(eeps)c(trac)m(k)g(of)f(the)h (other)f(participan)m(ts)h(\(b)m(y)f(SSR)m(C)g(iden)m(ti\014er\),)h (then)f(b)s(efore)f(transmitting)i(its)g(\014rst)e(pac)m(k)m(et)0 1002 y(the)j(new)g(source)g(can)h(v)m(erify)f(that)h(its)g(iden)m (ti\014er)f(do)s(es)g(not)g(con\015ict)h(with)f(an)m(y)g(that)h(ha)m(v) m(e)h(b)s(een)d(receiv)m(ed,)j(or)0 1115 y(else)e(c)m(ho)s(ose)h (again.)0 1395 y Fn(8.2)112 b(Collision)39 b(Resolution)e(and)i(Lo)s (op)f(Detection)0 1606 y Fo(Although)i(the)h(probabilit)m(y)f(of)h(SSR) m(C)e(iden)m(ti\014er)h(collision)i(is)e(lo)m(w,)k(all)d(R)-8 b(TP)40 b(implemen)m(tations)h Fi(must)f Fo(b)s(e)0 1719 y(prepared)26 b(to)h(detect)h(collisions)g(and)f(tak)m(e)h(the)f (appropriate)g(actions)g(to)h(resolv)m(e)g(them.)39 b(If)27 b(a)g(source)g(disco)m(v)m(ers)0 1831 y(at)39 b(an)m(y)g(time)g(that)g (another)g(source)g(is)f(using)g(the)h(same)g(SSR)m(C)e(iden)m (ti\014er)i(as)f(its)h(o)m(wn,)i(it)e Fi(must)e Fo(send)h(an)0 1944 y(R)-8 b(TCP)37 b(BYE)h(pac)m(k)m(et)i(for)d(the)h(old)f(iden)m (ti\014er)h(and)f(c)m(ho)s(ose)i(another)e(random)g(one.)63 b(\(As)38 b(explained)f(b)s(elo)m(w,)0 2057 y(this)c(step)h(is)f(tak)m (en)h(only)g(once)g(in)f(case)h(of)g(a)g(lo)s(op.\))99 b(If)33 b(a)h(receiv)m(er)g(disco)m(v)m(ers)h(that)f(t)m(w)m(o)h(other) e(sources)h(are)0 2170 y(colliding,)f(it)f Fi(ma)-6 b(y)33 b Fo(k)m(eep)f(the)g(pac)m(k)m(ets)h(from)e(one)h(and)f(discard)g(the)h (pac)m(k)m(ets)h(from)e(the)h(other)g(when)e(this)i(can)0 2283 y(b)s(e)e(detected)i(b)m(y)e(di\013eren)m(t)h(source)f(transp)s (ort)g(addresses)g(or)g(CNAMEs.)41 b(The)30 b(t)m(w)m(o)i(sources)e (are)h(exp)s(ected)g(to)0 2396 y(resolv)m(e)h(the)e(collision)i(so)f (that)g(the)f(situation)i(do)s(esn't)e(last.)0 2548 y(Because)h(the)e (random)g(SSR)m(C)f(iden)m(ti\014ers)h(are)h(k)m(ept)g(globally)h (unique)d(for)h(eac)m(h)i(R)-8 b(TP)29 b(session,)h(they)f(can)h(also)0 2661 y(b)s(e)c(used)f(to)i(detect)g(lo)s(ops)g(that)f(ma)m(y)h(b)s(e)f (in)m(tro)s(duced)f(b)m(y)h(mixers)g(or)g(translators.)40 b(A)27 b(lo)s(op)f(causes)h(duplication)0 2774 y(of)g(data)h(and)f(con) m(trol)i(information,)f(either)g(unmo)s(di\014ed)d(or)i(p)s(ossibly)g (mixed,)h(as)f(in)g(the)g(follo)m(wing)i(examples:)136 2986 y Fj(\017)46 b Fo(A)28 b(translator)h(ma)m(y)f(incorrectly)h(forw) m(ard)e(a)i(pac)m(k)m(et)g(to)g(the)f(same)g(m)m(ulticast)i(group)d (from)g(whic)m(h)h(it)g(has)227 3099 y(receiv)m(ed)33 b(the)f(pac)m(k)m(et,)i(either)e(directly)g(or)g(through)e(a)i(c)m (hain)g(of)g(translators.)45 b(In)31 b(that)h(case,)h(the)f(same)227 3212 y(pac)m(k)m(et)h(app)s(ears)c(sev)m(eral)j(times,)f(originating)h (from)e(di\013eren)m(t)h(net)m(w)m(ork)g(sources.)136 3394 y Fj(\017)46 b Fo(Tw)m(o)35 b(translators)h(incorrectly)g(set)g (up)e(in)g(parallel,)k(i.e.,)g(with)c(the)h(same)h(m)m(ulticast)g (groups)f(on)g(b)s(oth)227 3506 y(sides,)44 b(w)m(ould)d(b)s(oth)g (forw)m(ard)f(pac)m(k)m(ets)j(from)e(one)g(m)m(ulticast)i(group)e(to)h (the)f(other.)74 b(Unidirectional)227 3619 y(translators)31 b(w)m(ould)f(pro)s(duce)g(t)m(w)m(o)h(copies;)h(bidirectional)f (translators)g(w)m(ould)g(form)e(a)i(lo)s(op.)136 3801 y Fj(\017)46 b Fo(A)28 b(mixer)f(can)h(close)g(a)g(lo)s(op)f(b)m(y)h (sending)e(to)j(the)e(same)h(transp)s(ort)e(destination)i(up)s(on)e (whic)m(h)h(it)h(receiv)m(es)227 3914 y(pac)m(k)m(ets,)37 b(either)e(directly)f(or)g(through)g(another)g(mixer)g(or)g (translator.)52 b(In)34 b(this)g(case)h(a)f(source)g(migh)m(t)227 4027 y(sho)m(w)d(up)e(b)s(oth)g(as)i(an)f(SSR)m(C)g(on)g(a)h(data)g (pac)m(k)m(et)h(and)e(a)h(CSR)m(C)e(in)h(a)h(mixed)f(data)h(pac)m(k)m (et.)0 4239 y(A)g(source)f(ma)m(y)i(disco)m(v)m(er)g(that)f(its)g(o)m (wn)f(pac)m(k)m(ets)j(are)e(b)s(eing)f(lo)s(op)s(ed,)h(or)f(that)h(pac) m(k)m(ets)i(from)d(another)h(source)0 4352 y(are)g(b)s(eing)f(lo)s(op)s (ed)g(\(a)h(third-part)m(y)f(lo)s(op\).)0 4504 y(Both)36 b(lo)s(ops)g(and)f(collisions)i(in)f(the)g(random)f(selection)i(of)f(a) g(source)g(iden)m(ti\014er)g(result)g(in)f(pac)m(k)m(ets)j(arriving)0 4617 y(with)32 b(the)g(same)g(SSR)m(C)f(iden)m(ti\014er)h(but)g(a)g (di\013eren)m(t)g(source)h(transp)s(ort)e(address,)g(whic)m(h)h(ma)m(y) h(b)s(e)e(that)i(of)f(the)0 4730 y(end)37 b(system)g(originating)i(the) f(pac)m(k)m(et)h(or)f(an)f(in)m(termediate)i(system.)62 b(Therefore,)39 b(if)f(a)g(source)f(c)m(hanges)i(its)0 4843 y(source)34 b(transp)s(ort)f(address,)h(it)g Fi(ma)-6 b(y)35 b Fo(also)g(c)m(ho)s(ose)f(a)h(new)e(SSR)m(C)g(iden)m(ti\014er)h (to)g(a)m(v)m(oid)h(b)s(eing)f(in)m(terpreted)g(as)0 4956 y(a)c(lo)s(op)s(ed)g(source.)40 b(\(This)30 b(is)g(not)g Fi(must)f Fo(b)s(ecause)g(in)h(some)g(applications)h(of)f(R)-8 b(TP)30 b(sources)g(ma)m(y)g(b)s(e)g(exp)s(ected)0 5068 y(to)i(c)m(hange)f(addresses)g(during)e(a)i(session.\))43 b(Note)32 b(that)f(if)g(a)g(translator)h(restarts)f(and)f(consequen)m (tly)i(c)m(hanges)0 5181 y(the)39 b(source)h(transp)s(ort)e(address)h (\(e.g.,)k(c)m(hanges)d(the)g(UDP)f(source)h(p)s(ort)e(n)m(um)m(b)s (er\))h(on)g(whic)m(h)g(it)h(forw)m(ards)0 5294 y(pac)m(k)m(ets,)c (then)c(all)i(those)f(pac)m(k)m(ets)i(will)e(app)s(ear)g(to)g(receiv)m (ers)i(to)e(b)s(e)g(lo)s(op)s(ed)f(b)s(ecause)h(the)g(SSR)m(C)f(iden)m (ti\014ers)0 5407 y(are)k(applied)f(b)m(y)g(the)g(original)i(source)e (and)g(will)g(not)h(c)m(hange.)56 b(This)34 b(problem)h(can)h(b)s(e)e (a)m(v)m(oided)j(b)m(y)e(k)m(eeping)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(50])p eop %%Page: 51 51 51 50 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(the)h(source)h(transp)s(ort)e(address)h (\014xed)f(across)i(restarts,)g(but)f(in)f(an)m(y)i(case)g(will)g(b)s (e)e(resolv)m(ed)j(after)e(a)h(timeout)0 511 y(at)f(the)g(receiv)m (ers.)0 663 y(Lo)s(ops)g(or)g(collisions)i(o)s(ccurring)e(on)g(the)g (far)g(side)g(of)h(a)g(translator)g(or)f(mixer)g(cannot)h(b)s(e)e (detected)j(using)e(the)0 776 y(source)j(transp)s(ort)g(address)f(if)h (all)h(copies)g(of)g(the)f(pac)m(k)m(ets)i(go)f(through)e(the)i (translator)g(or)f(mixer,)h(ho)m(w)m(ev)m(er,)0 889 y(collisions)27 b(ma)m(y)f(still)g(b)s(e)f(detected)i(when)d(c)m(h)m(unks)h(from)g(t)m (w)m(o)i(R)-8 b(TCP)25 b(SDES)f(pac)m(k)m(ets)k(con)m(tain)e(the)g (same)g(SSR)m(C)0 1002 y(iden)m(ti\014er)31 b(but)e(di\013eren)m(t)i (CNAMEs.)0 1154 y(T)-8 b(o)34 b(detect)h(and)e(resolv)m(e)i(these)f (con\015icts,)h(an)e(R)-8 b(TP)34 b(implemen)m(tation)h Fi(must)d Fo(include)i(an)f(algorithm)i(similar)0 1267 y(to)j(the)g(one)g(describ)s(ed)e(b)s(elo)m(w,)k(though)d(the)h (implemen)m(tation)h Fi(ma)-6 b(y)39 b Fo(c)m(ho)s(ose)f(a)g (di\013eren)m(t)g(p)s(olicy)g(for)f(whic)m(h)0 1380 y(pac)m(k)m(ets)27 b(from)e(colliding)h(third-part)m(y)f(sources)g(are)h(k)m(ept.)39 b(The)25 b(algorithm)h(describ)s(ed)e(b)s(elo)m(w)50 b(ignores)26 b(pac)m(k)m(ets)0 1493 y(from)35 b(a)h(new)e(source)i(or)f (lo)s(op)h(that)g(collide)g(with)f(an)h(established)f(source.)56 b(It)35 b(resolv)m(es)i(collisions)g(with)e(the)0 1606 y(participan)m(t's)k(o)m(wn)f(SSR)m(C)f(iden)m(ti\014er)h(b)m(y)g (sending)f(an)h(R)-8 b(TCP)37 b(BYE)i(for)e(the)i(old)f(iden)m (ti\014er)g(and)f(c)m(ho)s(osing)0 1719 y(a)f(new)f(one.)56 b(Ho)m(w)m(ev)m(er,)39 b(when)34 b(the)i(collision)h(w)m(as)f(induced)e (b)m(y)h(a)h(lo)s(op)g(of)f(the)h(participan)m(t's)g(o)m(wn)g(pac)m(k)m (ets,)0 1832 y(the)28 b(algorithm)i(will)e(c)m(ho)s(ose)i(a)e(new)g (iden)m(ti\014er)g(only)h(once)g(and)e(thereafter)i(ignore)g(pac)m(k)m (ets)h(from)e(the)h(lo)s(oping)0 1945 y(source)i(transp)s(ort)e (address.)40 b(This)29 b(is)i(required)e(to)j(a)m(v)m(oid)f(a)g(\015o)s (o)s(d)f(of)g(BYE)h(pac)m(k)m(ets.)0 2097 y(This)f(algorithm)h (requires)f(k)m(eeping)i(a)f(table)g(indexed)f(b)m(y)h(the)g(source)f (iden)m(ti\014er)h(and)f(con)m(taining)i(the)f(source)0 2210 y(transp)s(ort)d(addresses)f(from)h(the)h(\014rst)f(R)-8 b(TP)28 b(pac)m(k)m(et)j(and)c(\014rst)h(R)-8 b(TCP)28 b(pac)m(k)m(et)i(receiv)m(ed)g(with)e(that)h(iden)m(ti\014er,)0 2322 y(along)43 b(with)f(other)g(state)h(for)f(that)h(source.)75 b(Tw)m(o)42 b(source)h(transp)s(ort)e(addresses)g(are)h(required)g (since,)j(for)0 2435 y(example,)31 b(the)f(UDP)h(source)f(p)s(ort)f(n)m (um)m(b)s(ers)g(ma)m(y)i(b)s(e)e(di\013eren)m(t)i(on)f(R)-8 b(TP)30 b(and)f(R)-8 b(TCP)30 b(pac)m(k)m(ets.)42 b(Ho)m(w)m(ev)m(er,) 32 b(it)0 2548 y(ma)m(y)f(b)s(e)f(assumed)f(that)i(the)g(net)m(w)m(ork) g(address)f(is)g(the)h(same)f(in)g(b)s(oth)g(source)h(transp)s(ort)e (addresses.)0 2700 y(Eac)m(h)40 b(SSR)m(C)e(or)h(CSR)m(C)f(iden)m (ti\014er)h(receiv)m(ed)h(in)f(an)g(R)-8 b(TP)39 b(or)g(R)-8 b(TCP)38 b(pac)m(k)m(et)j(is)e(lo)s(ok)m(ed)h(up)e(in)h(the)g(source)0 2813 y(iden)m(ti\014er)31 b(table)h(in)e(order)h(to)g(pro)s(cess)g (that)g(data)h(or)f(con)m(trol)h(information.)42 b(The)31 b(source)g(transp)s(ort)f(address)0 2926 y(from)d(the)i(pac)m(k)m(et)g (is)f(compared)g(to)h(the)f(corresp)s(onding)f(source)h(transp)s(ort)f (address)g(in)h(the)g(table)h(to)f(detect)i(a)0 3039 y(lo)s(op)23 b(or)g(collision)i(if)d(they)i(don't)e(matc)m(h.)40 b(F)-8 b(or)23 b(con)m(trol)i(pac)m(k)m(ets,)h(eac)m(h)e(elemen)m(t)h (with)d(its)i(o)m(wn)f(SSR)m(C)e(iden)m(ti\014er,)0 3152 y(for)k(example)h(an)f(SDES)g(c)m(h)m(unk,)h(requires)f(a)h(separate)g (lo)s(okup.)39 b(\(The)25 b(SSR)m(C)f(iden)m(ti\014er)i(in)f(a)g (reception)i(rep)s(ort)0 3265 y(blo)s(c)m(k)i(is)g(an)g(exception)g(b)s (ecause)g(it)g(iden)m(ti\014es)g(a)h(source)e(heard)h(b)m(y)f(the)h (rep)s(orter,)g(and)f(that)h(SSR)m(C)f(iden)m(ti\014er)0 3378 y(is)e(unrelated)g(to)h(the)f(source)g(transp)s(ort)f(address)h (of)g(the)g(R)-8 b(TCP)25 b(pac)m(k)m(et)j(sen)m(t)f(b)m(y)f(the)g(rep) s(orter.\))39 b(If)26 b(the)g(SSR)m(C)0 3491 y(or)37 b(CSR)m(C)f(is)g(not)h(found,)h(a)f(new)f(en)m(try)h(is)g(created.)61 b(These)36 b(table)i(en)m(tries)f(are)g(remo)m(v)m(ed)h(when)e(an)g(R) -8 b(TCP)0 3604 y(BYE)27 b(pac)m(k)m(et)h(is)e(receiv)m(ed)i(with)e (the)h(corresp)s(onding)e(SSR)m(C)h(iden)m(ti\014er)g(and)g(v)-5 b(alidated)27 b(b)m(y)g(a)f(matc)m(hing)i(source)0 3717 y(transp)s(ort)i(address,)f(or)i(after)g(no)f(pac)m(k)m(ets)i(ha)m(v)m (e)g(arriv)m(ed)e(for)g(a)h(relativ)m(ely)i(long)e(time)g(\(see)g (Section)g(6.2.1\).)0 3869 y(Note)j(that)f(if)g(t)m(w)m(o)h(sources)f (on)f(the)h(same)g(host)g(are)g(transmitting)g(with)g(the)g(same)g (source)f(iden)m(ti\014er)h(at)h(the)0 3982 y(time)27 b(a)g(receiv)m(er)h(b)s(egins)e(op)s(eration,)i(it)f(w)m(ould)g(b)s(e)e (p)s(ossible)i(that)g(the)f(\014rst)g(R)-8 b(TP)26 b(pac)m(k)m(et)j (receiv)m(ed)f(came)f(from)0 4094 y(one)36 b(of)g(the)g(sources)g (while)g(the)g(\014rst)f(R)-8 b(TCP)35 b(pac)m(k)m(et)j(receiv)m(ed)f (came)g(from)e(the)h(other.)58 b(This)35 b(w)m(ould)g(cause)0 4207 y(the)j(wrong)f(R)-8 b(TCP)37 b(information)h(to)g(b)s(e)f(asso)s (ciated)i(with)e(the)h(R)-8 b(TP)37 b(data,)j(but)d(this)h(situation)g (should)f(b)s(e)0 4320 y(su\016cien)m(tly)31 b(rare)f(and)g(harmless)g (that)h(it)g(ma)m(y)g(b)s(e)f(disregarded.)0 4472 y(In)f(order)h(to)g (trac)m(k)i(lo)s(ops)e(of)g(the)g(participan)m(t's)h(o)m(wn)f(data)h (pac)m(k)m(ets,)h(the)e(implemen)m(tation)i Fi(must)c Fo(also)61 b(k)m(eep)0 4585 y(a)26 b(separate)h(list)g(of)f(source)g (transp)s(ort)f(addresses)g(\(not)h(iden)m(ti\014ers\))h(that)f(ha)m(v) m(e)h(b)s(een)e(found)g(to)h(b)s(e)g(con\015icting.)0 4698 y(As)31 b(in)g(the)h(source)g(iden)m(ti\014er)f(table,)i(t)m(w)m (o)g(source)e(transp)s(ort)g(addresses)g Fi(must)f Fo(b)s(e)h(k)m(ept)h (to)g(separately)h(trac)m(k)0 4811 y(con\015icting)d(R)-8 b(TP)30 b(and)e(R)-8 b(TCP)29 b(pac)m(k)m(ets.)42 b(Note)31 b(that)f(the)g(con\015icting)g(address)f(list)h(should)e(b)s(e)h (short,)g(usually)0 4924 y(empt)m(y)-8 b(.)56 b(Eac)m(h)36 b(elemen)m(t)h(in)e(this)h(list)g(stores)f(the)h(source)g(addresses)e (plus)h(the)g(time)h(when)f(the)g(most)h(recen)m(t)0 5037 y(con\015icting)k(pac)m(k)m(et)i(w)m(as)e(receiv)m(ed.)69 b(An)39 b(elemen)m(t)i Fi(ma)-6 b(y)40 b Fo(b)s(e)f(remo)m(v)m(ed)i (from)d(the)i(list)g(when)f(no)g(con\015icting)0 5150 y(pac)m(k)m(et)45 b(has)d(arriv)m(ed)h(from)g(that)g(source)g(for)g(a)g (time)g(on)g(the)g(order)f(of)h(10)h(R)-8 b(TCP)42 b(rep)s(ort)g(in)m (terv)-5 b(als)44 b(\(see)0 5263 y(Section)31 b(6.2\).)0 5656 y(Sc)m(h)m(ulzrinne,)f(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(51])p eop %%Page: 52 52 52 51 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(F)-8 b(or)28 b(the)g(algorithm)g(as)g(sho)m (wn,)g(it)g(is)f(assumed)g(that)h(the)g(participan)m(t's)g(o)m(wn)g (source)f(iden)m(ti\014er)h(and)f(state)i(are)0 511 y(included)24 b(in)h(the)h(source)f(iden)m(ti\014er)h(table.)40 b(The)24 b(algorithm)j(could)e(b)s(e)f(restructured)h(to)h(\014rst)e(mak)m(e)i (a)g(separate)0 624 y(comparison)31 b(against)g(the)g(participan)m(t's) g(o)m(wn)g(source)f(iden)m(ti\014er.)191 876 y Fh(if)47 b(\(SSRC)f(or)i(CSRC)e(identifier)f(is)i(not)g(found)g(in)g(the)g (source)382 989 y(identifier)e(table\))h({)382 1102 y(create)g(a)h(new) g(entry)g(storing)e(the)i(data)g(or)g(control)f(source)573 1215 y(transport)f(address,)h(the)g(SSRC)h(or)g(CSRC)g(and)g(other)f (state;)191 1328 y(})191 1553 y(/*)h(Identifier)e(is)i(found)g(in)g (the)g(table)f(*/)191 1779 y(else)h(if)g(\(table)f(entry)g(was)h (created)f(on)h(receipt)f(of)h(a)h(control)d(packet)620 1892 y(and)i(this)g(is)g(the)g(first)f(data)h(packet)f(or)h(vice)g (versa\))f({)382 2005 y(store)g(the)h(source)f(transport)f(address)h (from)h(this)g(packet;)191 2118 y(})191 2231 y(else)g(if)g(\(source)f (transport)f(address)h(from)g(the)h(packet)f(does)h(not)g(match)620 2344 y(the)g(one)g(saved)g(in)g(the)g(table)f(entry)g(for)h(this)g (identifier\))e({)382 2570 y(/*)i(An)g(identifier)e(collision)g(or)j(a) f(loop)g(is)g(indicated)e(*/)382 2795 y(if)i(\(source)f(identifier)f (is)i(not)g(the)g(participant's)d(own\))j({)573 2908 y(/*)g(OPTIONAL)e(error)i(counter)f(step)g(*/)573 3021 y(if)h(\(source)f(identifier)f(is)i(from)g(an)g(RTCP)f(SDES)h(chunk)764 3134 y(containing)e(a)i(CNAME)f(item)h(that)g(differs)f(from)g(the)h (CNAME)764 3247 y(in)g(the)g(table)f(entry\))g({)764 3360 y(count)g(a)h(third-party)e(collision;)573 3473 y(})i(else)g({)764 3586 y(count)f(a)h(third-party)e(loop;)573 3699 y(})573 3812 y(abort)h(processing)f(of)i(data)g(packet)f(or)h (control)f(element;)573 3925 y(/*)h(MAY)g(choose)f(a)h(different)f (policy)g(to)h(keep)g(new)f(source)h(*/)382 4037 y(})382 4263 y(/*)g(A)g(collision)f(or)h(loop)g(of)g(the)g(participant's)d(own) j(packets)f(*/)382 4489 y(else)g(if)i(\(source)d(transport)h(address)g (is)h(found)f(in)h(the)g(list)g(of)811 4602 y(conflicting)e(data)i(or)g (control)f(source)g(transport)811 4715 y(addresses\))f({)573 4828 y(/*)i(OPTIONAL)e(error)i(counter)f(step)g(*/)573 4941 y(if)h(\(source)f(identifier)f(is)i(not)g(from)f(an)i(RTCP)e(SDES) h(chunk)764 5054 y(containing)e(a)i(CNAME)f(item)h(or)g(CNAME)g(is)g (the)764 5167 y(participant's)d(own\))i({)764 5279 y(count)g (occurrence)f(of)i(own)g(traffic)f(looped;)573 5392 y(})0 5656 y Fo(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(52])p eop %%Page: 53 53 53 52 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)573 399 y Fh(mark)46 b(current)g(time)h(in)g (conflicting)e(address)h(list)g(entry;)573 511 y(abort)g(processing)f (of)i(data)g(packet)f(or)h(control)f(element;)382 624 y(})382 850 y(/*)h(New)g(collision,)e(change)h(SSRC)h(identifier)e(*/) 382 1076 y(else)h({)573 1189 y(log)h(occurrence)e(of)i(a)g(collision;) 573 1302 y(create)f(a)h(new)g(entry)g(in)g(the)g(conflicting)d(data)j (or)g(control)764 1415 y(source)f(transport)f(address)h(list)g(and)h (mark)g(current)f(time;)573 1528 y(send)g(an)i(RTCP)e(BYE)h(packet)f (with)h(the)g(old)g(SSRC)f(identifier;)573 1641 y(choose)g(a)h(new)g (SSRC)g(identifier;)573 1753 y(create)f(a)h(new)g(entry)g(in)g(the)g (source)f(identifier)f(table)h(with)764 1866 y(the)h(old)f(SSRC)h(plus) g(the)g(source)f(transport)f(address)h(from)764 1979 y(the)h(data)f(or)h(control)f(packet)g(being)h(processed;)382 2092 y(})191 2205 y(})0 2457 y Fo(In)41 b(this)i(algorithm,)j(pac)m(k)m (ets)e(from)e(a)g(newly)g(con\015icting)h(source)g(address)e(will)i(b)s (e)e(ignored)i(and)e(pac)m(k)m(ets)0 2570 y(from)33 b(the)g(original)i (source)e(address)f(will)i(b)s(e)e(k)m(ept.)50 b(If)33 b(no)g(pac)m(k)m(ets)i(arriv)m(e)f(from)f(the)g(original)i(source)e (for)g(an)0 2683 y(extended)i(p)s(erio)s(d,)g(the)g(table)h(en)m(try)g (will)f(b)s(e)g(timed)g(out)g(and)g(the)g(new)f(source)i(will)f(b)s(e)f (able)i(to)g(tak)m(e)g(o)m(v)m(er.)0 2795 y(This)d(migh)m(t)h(o)s(ccur) f(if)h(the)f(original)i(source)f(detects)g(the)g(collision)h(and)e(mo)m (v)m(es)i(to)f(a)g(new)f(source)g(iden)m(ti\014er,)0 2908 y(but)d(in)g(the)g(usual)g(case)h(an)f(R)-8 b(TCP)30 b(BYE)h(pac)m(k)m(et)h(will)f(b)s(e)e(receiv)m(ed)j(from)e(the)g (original)i(source)e(to)h(delete)h(the)0 3021 y(state)g(without)e(ha)m (ving)h(to)g(w)m(ait)h(for)e(a)h(timeout.)0 3173 y(If)38 b(the)i(original)g(source)f(address)f(w)m(as)h(receiv)m(ed)h(through)f (a)g(mixer)g(\(i.e.,)k(learned)c(as)g(a)g(CSR)m(C\))g(and)f(later)0 3286 y(the)32 b(same)h(source)f(is)h(receiv)m(ed)g(directly)-8 b(,)34 b(the)f(receiv)m(er)g(ma)m(y)g(b)s(e)f(w)m(ell)h(advised)f(to)h (switc)m(h)g(to)g(the)f(new)g(source)0 3399 y(address)44 b(unless)g(other)h(sources)g(in)f(the)h(mix)f(w)m(ould)h(b)s(e)f(lost.) 85 b(F)-8 b(urthermore,)48 b(for)c(applications)i(suc)m(h)f(as)0 3512 y(telephon)m(y)35 b(in)g(whic)m(h)f(some)h(sources)g(suc)m(h)f(as) h(mobile)h(en)m(tities)g(ma)m(y)f(c)m(hange)h(addresses)e(during)g(the) h(course)0 3625 y(of)g(an)g(R)-8 b(TP)35 b(session,)h(the)f(R)-8 b(TP)35 b(implemen)m(tation)i Fi(should)c Fo(mo)s(dify)h(the)h (collision)i(detection)f(algorithm)g(to)0 3738 y(accept)44 b(pac)m(k)m(ets)g(from)d(the)i(new)f(source)g(transp)s(ort)f(address.) 76 b(T)-8 b(o)42 b(guard)g(against)h(\015ip-\015opping)e(b)s(et)m(w)m (een)0 3851 y(addresses)c(if)g(a)g(gen)m(uine)h(collision)h(do)s(es)d (o)s(ccur,)j(the)f(algorithm)g Fi(should)d Fo(include)i(some)h(means)f (to)h(detect)0 3964 y(this)30 b(case)i(and)d(a)m(v)m(oid)j(switc)m (hing.)0 4116 y(When)g(a)h(new)f(SSR)m(C)g(iden)m(ti\014er)h(is)f(c)m (hosen)i(due)e(to)h(a)g(collision,)i(the)e(candidate)g(iden)m(ti\014er) g Fi(should)e Fo(\014rst)h(b)s(e)0 4229 y(lo)s(ok)m(ed)h(up)e(in)h(the) g(source)h(iden)m(ti\014er)f(table)h(to)g(see)g(if)f(it)h(w)m(as)f (already)h(in)f(use)g(b)m(y)g(some)g(other)h(source.)46 b(If)31 b(so,)0 4342 y(another)g(candidate)g Fi(must)59 b Fo(b)s(e)30 b(generated)h(and)f(the)h(pro)s(cess)f(rep)s(eated.)0 4494 y(A)36 b(lo)s(op)h(of)f(data)h(pac)m(k)m(ets)h(to)f(a)f(m)m (ulticast)i(destination)f(can)f(cause)h(sev)m(ere)g(net)m(w)m(ork)g (\015o)s(o)s(ding.)57 b(All)37 b(mixers)0 4607 y(and)g(translators)i Fi(must)75 b Fo(implemen)m(t)38 b(a)g(lo)s(op)g(detection)i(algorithm)f (lik)m(e)g(the)f(one)g(here)g(so)g(that)h(they)f(can)0 4719 y(break)28 b(lo)s(ops.)40 b(This)28 b(should)f(limit)i(the)g (excess)g(tra\016c)g(to)g(no)f(more)h(than)f(one)h(duplicate)g(cop)m(y) g(of)f(the)h(original)0 4832 y(tra\016c,)40 b(whic)m(h)d(ma)m(y)h(allo) m(w)h(the)f(session)f(to)i(con)m(tin)m(ue)f(so)g(that)g(the)g(cause)g (of)g(the)f(lo)s(op)h(can)g(b)s(e)e(found)h(and)0 4945 y(\014xed.)i(Ho)m(w)m(ev)m(er,)31 b(in)d(extreme)g(cases)h(where)f(a)g (mixer)g(or)g(translator)h(do)s(es)e(not)i(prop)s(erly)d(break)i(the)g (lo)s(op)h(and)0 5058 y(high)g(tra\016c)h(lev)m(els)h(result,)f(it)g (ma)m(y)h(b)s(e)d(necessary)i(for)g(end)f(systems)g(to)h(cease)h (transmitting)g(data)f(or)f(con)m(trol)0 5171 y(pac)m(k)m(ets)36 b(en)m(tirely)-8 b(.)52 b(This)33 b(decision)h(ma)m(y)h(dep)s(end)d(up) s(on)g(the)i(application.)52 b(An)34 b(error)f(condition)i Fi(should)d Fo(b)s(e)0 5284 y(indicated)c(as)g(appropriate.)40 b(T)-8 b(ransmission)27 b Fi(ma)-6 b(y)57 b Fo(b)s(e)27 b(attempted)i(again)g(p)s(erio)s(dically)f(after)g(a)h(long,)g(random)0 5397 y(time)i(\(on)g(the)f(order)g(of)h(min)m(utes\).)0 5656 y(Sc)m(h)m(ulzrinne,)f(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(53])p eop %%Page: 54 54 54 53 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fn(8.3)112 b(Use)38 b(with)f(La)m(y)m(ered)i (Enco)s(dings)0 609 y Fo(F)-8 b(or)30 b(la)m(y)m(ered)g(enco)s(dings)f (transmitted)g(on)g(separate)h(R)-8 b(TP)29 b(sessions)g(\(see)g (Section)h(2.4\),)h(a)e(single)h(SSR)m(C)e(iden-)0 722 y(ti\014er)34 b(space)g Fi(should)f Fo(b)s(e)g(used)g(across)i(the)f (sessions)g(of)g(all)h(la)m(y)m(ers)g(and)e(the)h(core)h(\(base\))g(la) m(y)m(er)g Fi(should)e Fo(b)s(e)0 835 y(used)i(for)h(SSR)m(C)f(iden)m (ti\014er)h(allo)s(cation)j(and)c(collision)j(resolution.)58 b(When)36 b(a)g(source)h(disco)m(v)m(ers)g(that)g(it)f(has)0 948 y(collided,)29 b(it)f(transmits)f(an)g(R)-8 b(TCP)26 b(BYE)i(pac)m(k)m(et)h(on)e(only)g(the)h(base)f(la)m(y)m(er)i(but)d(c)m (hanges)i(the)g(SSR)m(C)e(iden)m(ti\014er)0 1061 y(to)31 b(the)g(new)f(v)-5 b(alue)30 b(in)g(all)i(la)m(y)m(ers.)0 1386 y Fm(9.)135 b(Securit)l(y)0 1629 y Fo(Lo)m(w)m(er)44 b(la)m(y)m(er)g(proto)s(cols)g(ma)m(y)f(ev)m(en)m(tually)i(pro)m(vide)e (all)h(the)f(securit)m(y)g(services)h(that)f(ma)m(y)h(b)s(e)e(desired)g (for)0 1741 y(applications)c(of)e(R)-8 b(TP)g(,)37 b(including)f (authen)m(tication,)41 b(in)m(tegrit)m(y)-8 b(,)41 b(and)36 b(con\014den)m(tialit)m(y)-8 b(.)61 b(These)36 b(services)i(ha)m(v)m(e) 0 1854 y(b)s(een)j(sp)s(eci\014ed)f(for)i(IP)f(in)g([27)q(].)74 b(Since)41 b(the)h(initial)g(audio)g(and)f(video)h(applications)g (using)f(R)-8 b(TP)41 b(needed)0 1967 y(a)h(con\014den)m(tialit)m(y)j (service)e(b)s(efore)e(suc)m(h)h(services)h(w)m(ere)f(a)m(v)-5 b(ailable)45 b(for)d(the)g(IP)g(la)m(y)m(er,)47 b(the)42 b(con\014den)m(tialit)m(y)0 2080 y(service)35 b(describ)s(ed)e(in)h (the)g(next)h(section)g(w)m(as)g(de\014ned)e(for)h(use)g(with)g(R)-8 b(TP)34 b(and)f(R)-8 b(TCP.)52 b(That)34 b(description)0 2193 y(is)h(included)f(here)h(to)h(co)s(dify)f(existing)g(practice.)56 b(New)35 b(applications)i(of)e(R)-8 b(TP)34 b Fi(ma)-6 b(y)36 b Fo(implemen)m(t)g(this)f(R)-8 b(TP-)0 2306 y(sp)s(eci\014c)29 b(con\014den)m(tialit)m(y)i(service)f(for)f(bac)m(kw)m(ard)h (compatibilit)m(y)-8 b(,)32 b(and/or)e(they)g Fi(ma)-6 b(y)31 b Fo(implemen)m(t)f(alternativ)m(e)0 2419 y(securit)m(y)k (services.)49 b(The)32 b(o)m(v)m(erhead)i(on)f(the)g(R)-8 b(TP)33 b(proto)s(col)h(for)e(this)h(con\014den)m(tialit)m(y)i(service) f(is)f(lo)m(w,)i(so)e(the)0 2532 y(p)s(enalt)m(y)e(will)f(b)s(e)g (minimal)h(if)f(this)g(service)i(is)e(obsoleted)h(b)m(y)g(other)f (services)h(in)f(the)h(future.)0 2684 y(Alternativ)m(ely)-8 b(,)27 b(other)c(services,)i(other)e(implemen)m(tations)h(of)f (services)g(and)f(other)h(algorithms)h(ma)m(y)f(b)s(e)f(de\014ned)0 2797 y(for)35 b(R)-8 b(TP)34 b(in)h(the)g(future.)53 b(In)34 b(particular,)i(an)f(R)-8 b(TP)34 b(pro\014le)h(called)h (Secure)e(Real-time)j(T)-8 b(ransp)s(ort)34 b(Proto)s(col)0 2910 y(\(SR)-8 b(TP\))39 b([28)q(])g(is)f(b)s(eing)h(dev)m(elop)s(ed)g (to)g(pro)m(vide)g(con\014den)m(tialit)m(y)i(of)e(the)f(R)-8 b(TP)39 b(pa)m(yload)h(while)e(lea)m(ving)j(the)0 3023 y(R)-8 b(TP)42 b(header)g(in)f(the)i(clear)g(so)f(that)h(link-lev)m(el) h(header)d(compression)h(algorithms)h(can)g(still)g(op)s(erate.)76 b(It)0 3136 y(is)39 b(exp)s(ected)g(that)g(SR)-8 b(TP)38 b(will)g(b)s(e)g(the)h(correct)h(c)m(hoice)g(for)f(man)m(y)f (applications.)67 b(SR)-8 b(TP)37 b(is)i(based)f(on)h(the)0 3248 y(Adv)-5 b(anced)36 b(Encryption)g(Standard)f(\(AES\))h(and)g(pro) m(vides)g(stronger)g(securit)m(y)h(than)f(the)h(service)g(describ)s(ed) 0 3361 y(here.)81 b(No)31 b(claim)g(is)f(made)g(that)h(the)f(metho)s (ds)g(presen)m(ted)g(here)g(are)g(appropriate)g(for)g(a)h(particular)f (securit)m(y)0 3474 y(need.)49 b(A)34 b(pro\014le)f(ma)m(y)g(sp)s (ecify)g(whic)m(h)g(services)h(and)f(algorithms)h(should)f(b)s(e)f (o\013ered)i(b)m(y)f(applications,)j(and)0 3587 y(ma)m(y)31 b(pro)m(vide)f(guidance)h(as)g(to)g(their)f(appropriate)h(use.)0 3739 y(Key)f(distribution)g(and)g(certi\014cates)i(are)f(outside)g(the) f(scop)s(e)h(of)f(this)g(do)s(cumen)m(t.)0 4022 y Fn(9.1)112 b(Con\014den)m(tialit)m(y)0 4233 y Fo(Con\014den)m(tialit)m(y)25 b(means)e(that)h(only)g(the)f(in)m(tended)g(receiv)m(er\(s\))j(can)e (deco)s(de)f(the)h(receiv)m(ed)h(pac)m(k)m(ets;)i(for)d(others,)0 4345 y(the)j(pac)m(k)m(et)h(con)m(tains)g(no)f(useful)f(information.)39 b(Con\014den)m(tialit)m(y)28 b(of)f(the)g(con)m(ten)m(t)h(is)f(ac)m (hiev)m(ed)h(b)m(y)f(encryption.)0 4498 y(When)k(it)g(is)g(desired)f (to)i(encrypt)e(R)-8 b(TP)31 b(or)g(R)-8 b(TCP)30 b(according)i(to)f (the)g(metho)s(d)f(sp)s(eci\014ed)g(in)h(this)g(section,)h(all)0 4610 y(the)27 b(o)s(ctets)h(that)f(will)g(b)s(e)f(encapsulated)i(for)e (transmission)h(in)f(a)h(single)h(lo)m(w)m(er-la)m(y)m(er)i(pac)m(k)m (et)e(are)f(encrypted)g(as)0 4723 y(a)k(unit.)40 b(F)-8 b(or)31 b(R)-8 b(TCP)g(,)30 b(a)h(32-bit)h(random)d(n)m(um)m(b)s(er)g (redra)m(wn)h(for)g(eac)m(h)h(unit)f Fi(must)f Fo(b)s(e)h(prep)s(ended) e(to)j(the)f(unit)0 4836 y(b)s(efore)g(encryption.)41 b(F)-8 b(or)31 b(R)-8 b(TP)g(,)31 b(no)f(pre\014x)g(is)g(prep)s(ended;) f(instead,)i(the)f(sequence)h(n)m(um)m(b)s(er)e(and)h(timestamp)0 4949 y(\014elds)f(are)h(initialized)h(with)e(random)g(o\013sets.)41 b(This)29 b(is)g(considered)h(to)g(b)s(e)f(a)g(w)m(eak)i (initialization)h(v)m(ector)f(\(IV\))0 5062 y(b)s(ecause)40 b(of)g(p)s(o)s(or)f(randomness)g(prop)s(erties.)69 b(In)40 b(addition,)j(if)d(the)g(subsequen)m(t)f(\014eld,)k(the)d(SSR)m(C,)f (can)i(b)s(e)0 5175 y(manipulated)30 b(b)m(y)h(an)f(enem)m(y)-8 b(,)31 b(there)g(is)f(further)f(w)m(eakness)i(of)g(the)f(encryption)h (metho)s(d.)0 5327 y(F)-8 b(or)31 b(R)-8 b(TCP)g(,)30 b(an)g(implemen)m(tation)i Fi(ma)-6 b(y)31 b Fo(segregate)i(the)d (individual)g(R)-8 b(TCP)29 b(pac)m(k)m(ets)j(in)e(a)h(comp)s(ound)d(R) -8 b(TCP)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(54])p eop %%Page: 55 55 55 54 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(pac)m(k)m(et)40 b(in)m(to)f(t)m(w)m(o)g (separate)g(comp)s(ound)d(R)-8 b(TCP)76 b(pac)m(k)m(ets,)42 b(one)c(to)g(b)s(e)g(encrypted)f(and)h(one)g(to)g(b)s(e)g(sen)m(t)g(in) 0 511 y(the)d(clear.)56 b(F)-8 b(or)36 b(example,)h(SDES)e(information) g(migh)m(t)h(b)s(e)f(encrypted)f(while)h(reception)h(rep)s(orts)f(w)m (ere)g(sen)m(t)0 624 y(in)j(the)h(clear)h(to)g(accommo)s(date)g (third-part)m(y)f(monitors)g(that)g(are)g(not)g(privy)f(to)i(the)f (encryption)g(k)m(ey)-8 b(.)67 b(In)0 737 y(this)32 b(example,)h (depicted)f(in)g(Fig.)h(4,)g(the)f(SDES)f(information)h Fi(must)f Fo(b)s(e)g(app)s(ended)f(to)j(an)f(RR)f(pac)m(k)m(et)j(with)0 850 y(no)c(rep)s(orts)g(\(and)f(the)i(random)e(n)m(um)m(b)s(er\))g(to)i (satisfy)g(the)f(requiremen)m(t)h(that)g(all)g(comp)s(ound)d(R)-8 b(TCP)30 b(pac)m(k)m(ets)0 963 y(b)s(egin)k(with)g(an)g(SR)f(or)h(RR)g (pac)m(k)m(et.)54 b(The)34 b(SDES)g(CNAME)g(item)h(is)f(required)f(in)h (either)h(the)f(encrypted)g(or)0 1076 y(unencrypted)e(pac)m(k)m(et,)37 b(but)c(not)h(b)s(oth.)50 b(The)33 b(same)h(SDES)f(information)h Fi(should)i(not)d Fo(b)s(e)g(carried)h(in)g(b)s(oth)0 1189 y(pac)m(k)m(ets)e(as)f(this)f(ma)m(y)h(compromise)g(the)f (encryption.)0 2565 y currentpoint currentpoint translate 1.32956 1.32956 scale neg exch neg exch translate 0 2565 a @beginspecial 0 @llx 0 @lly 352 @urx 115 @ury 3520 @rwi @setspecial %%BeginDocument: rtcp_crypt.ps %!PS-Adobe-2.0 EPSF-2.0 %%Title: rtcp_crypt.fig %%Creator: fig2dev Version 3.1 Patchlevel 1 %%CreationDate: Fri Oct 13 18:06:02 1995 %%For: hgs@lupus (Henning Schulzrinne) %%Orientation: Portrait %%BoundingBox: 0 0 352 115 %%Pages: 0 %%BeginSetup %%IncludeFeature: *PageSize Letter %%EndSetup %%EndComments /$F2psDict 200 dict def $F2psDict begin $F2psDict /mtrx matrix put /col-1 {} def /col0 {0.000 0.000 0.000 srgb} bind def /col1 {0.000 0.000 1.000 srgb} bind def /col2 {0.000 1.000 0.000 srgb} bind def /col3 {0.000 1.000 1.000 srgb} bind def /col4 {1.000 0.000 0.000 srgb} bind def /col5 {1.000 0.000 1.000 srgb} bind def /col6 {1.000 1.000 0.000 srgb} bind def /col7 {1.000 1.000 1.000 srgb} bind def /col8 {0.000 0.000 0.560 srgb} bind def /col9 {0.000 0.000 0.690 srgb} bind def /col10 {0.000 0.000 0.820 srgb} bind def /col11 {0.530 0.810 1.000 srgb} bind def /col12 {0.000 0.560 0.000 srgb} bind def /col13 {0.000 0.690 0.000 srgb} bind def /col14 {0.000 0.820 0.000 srgb} bind def /col15 {0.000 0.560 0.560 srgb} bind def /col16 {0.000 0.690 0.690 srgb} bind def /col17 {0.000 0.820 0.820 srgb} bind def /col18 {0.560 0.000 0.000 srgb} bind def /col19 {0.690 0.000 0.000 srgb} bind def /col20 {0.820 0.000 0.000 srgb} bind def /col21 {0.560 0.000 0.560 srgb} bind def /col22 {0.690 0.000 0.690 srgb} bind def /col23 {0.820 0.000 0.820 srgb} bind def /col24 {0.500 0.190 0.000 srgb} bind def /col25 {0.630 0.250 0.000 srgb} bind def /col26 {0.750 0.380 0.000 srgb} bind def /col27 {1.000 0.500 0.500 srgb} bind def /col28 {1.000 0.630 0.630 srgb} bind def /col29 {1.000 0.750 0.750 srgb} bind def /col30 {1.000 0.880 0.880 srgb} bind def /col31 {1.000 0.840 0.000 srgb} bind def end save -32.0 186.0 translate 1 -1 scale /clp {closepath} bind def /ef {eofill} bind def /gr {grestore} bind def /gs {gsave} bind def /l {lineto} bind def /m {moveto} bind def /n {newpath} bind def /s {stroke} bind def /slc {setlinecap} bind def /slj {setlinejoin} bind def /slw {setlinewidth} bind def /srgb {setrgbcolor} bind def /rot {rotate} bind def /sc {scale} bind def /tr {translate} bind def /tnt {dup dup currentrgbcolor 4 -2 roll dup 1 exch sub 3 -1 roll mul add 4 -2 roll dup 1 exch sub 3 -1 roll mul add 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} bind def /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 4 -2 roll mul srgb} bind def /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 10 setmiterlimit 0.06299 0.06299 sc 7.500 slw % Polyline n 3030 1575 m 2925 1575 2925 1920 105 arcto 4 {pop} repeat 2925 2025 3270 2025 105 arcto 4 {pop} repeat 3375 2025 3375 1680 105 arcto 4 {pop} repeat 3375 1575 3030 1575 105 arcto 4 {pop} repeat clp gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 3030 1575 m 2925 1575 2925 1920 105 arcto 4 {pop} repeat 2925 2025 5970 2025 105 arcto 4 {pop} repeat 6075 2025 6075 1680 105 arcto 4 {pop} repeat 6075 1575 3030 1575 105 arcto 4 {pop} repeat clp gs col-1 s gr % Polyline n 4275 1575 m 4275 2025 l gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 5130 1575 m 5130 2025 l gs col6 1.00 shd ef gr gs col-1 s gr /Times-Roman findfont 180.00 scalefont setfont 3150 1890 m gs 1 -1 sc (SR) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 3735 1800 m gs 1 -1 sc (sender) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 3735 1935 m gs 1 -1 sc (report) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 3555 2025 m gs 1 -1 sc 90.0 rot (SSRC) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 4455 2025 m gs 1 -1 sc 90.0 rot (SSRC) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 5310 2025 m gs 1 -1 sc 90.0 rot (SSRC) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 5490 1845 m gs 1 -1 sc (site 2) col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 4590 1845 m gs 1 -1 sc (site 1) col-1 show gr % Polyline n 1455 1575 m 1350 1575 1350 1920 105 arcto 4 {pop} repeat 1350 2025 2595 2025 105 arcto 4 {pop} repeat 2700 2025 2700 1680 105 arcto 4 {pop} repeat 2700 1575 1455 1575 105 arcto 4 {pop} repeat clp gs col-1 s gr % Polyline n 1455 1575 m 1350 1575 1350 1920 105 arcto 4 {pop} repeat 1350 2025 1695 2025 105 arcto 4 {pop} repeat 1800 2025 1800 1680 105 arcto 4 {pop} repeat 1800 1575 1455 1575 105 arcto 4 {pop} repeat clp gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 1005 1575 m 900 1575 900 1920 105 arcto 4 {pop} repeat 900 2025 1245 2025 105 arcto 4 {pop} repeat 1350 2025 1350 1680 105 arcto 4 {pop} repeat 1350 1575 1005 1575 105 arcto 4 {pop} repeat clp gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 2925 1575 m 6075 1575 l 6075 2025 l 2925 2025 l clp gs col-1 s gr % Polyline n 2025 2160 m 2700 2160 l gs col-1 s gr n 2604.00 2130.00 m 2700.00 2160.00 l 2604.00 2190.00 l 2580.50 2160.50 l 2604.00 2130.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 2700 2115 m 2700 2205 l gs col-1 s gr % Polyline n 2925 2115 m 2925 2205 l gs col-1 s gr % Polyline n 2925 2160 m 4050 2160 l gs col-1 s gr n 3021.00 2190.00 m 2925.00 2160.00 l 3021.00 2130.00 l 3045.50 2160.50 l 3021.00 2190.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 4950 2160 m 6075 2160 l gs col-1 s gr n 5979.00 2130.00 m 6075.00 2160.00 l 5979.00 2190.00 l 5955.50 2160.50 l 5979.00 2130.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 6075 2115 m 6075 2205 l gs col-1 s gr % Polyline n 780 1575 m 675 1575 675 1920 105 arcto 4 {pop} repeat 675 2025 795 2025 105 arcto 4 {pop} repeat 900 2025 900 1680 105 arcto 4 {pop} repeat 900 1575 780 1575 105 arcto 4 {pop} repeat clp gs 0.80 setgray ef gr gs col-1 s gr % Polyline n 675 2160 m 1350 2160 l gs col-1 s gr n 771.00 2190.00 m 675.00 2160.00 l 771.00 2130.00 l 795.50 2160.50 l 771.00 2190.00 l clp gs 0.00 setgray ef gr gs col-1 s gr % Polyline n 675 2115 m 675 2205 l gs col-1 s gr % Polyline n 1005 2475 m 900 2475 900 2820 105 arcto 4 {pop} repeat 900 2925 1245 2925 105 arcto 4 {pop} repeat 1350 2925 1350 2580 105 arcto 4 {pop} repeat 1350 2475 1005 2475 105 arcto 4 {pop} repeat clp gs col6 1.00 shd ef gr gs col-1 s gr % Polyline n 675 1575 m 2700 1575 l 2700 2025 l 675 2025 l clp gs col-1 s gr % Polyline n 765 1350 m 765 1800 l gs col-1 s gr n 795.00 1680.00 m 765.00 1800.00 l 735.00 1680.00 l gs col-1 s gr /Times-Roman findfont 150.00 scalefont setfont 1125 1800 m gs 1 -1 sc (RR) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 165.00 scalefont setfont 1980 2025 m gs 1 -1 sc 90.0 rot (SSRC) col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 2025 1845 m gs 1 -1 sc (CNAME) col-1 show gr /Times-Roman findfont 135.00 scalefont setfont 1125 1962 m gs 1 -1 sc (\(empty\)) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 1575 1845 m gs 1 -1 sc (SDES) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 4500 2205 m gs 1 -1 sc (not encrypted) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 4455 1485 m gs 1 -1 sc (UDP packet) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 1530 1485 m gs 1 -1 sc (UDP packet) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 1665 2205 m gs 1 -1 sc (encrypted) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 135.00 scalefont setfont 810 1215 m gs 1 -1 sc (32-bit) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 135.00 scalefont setfont 810 1305 m gs 1 -1 sc (random int.) dup stringwidth pop 2 div neg 0 rmoveto col-1 show gr /Times-Roman findfont 150.00 scalefont setfont 1485 2700 m gs 1 -1 sc (fixed RTCP packet header) col-1 show gr $F2psEnd restore %%EndDocument @endspecial 0 2565 a currentpoint currentpoint translate 1 1.32956 div 1 1.32956 div scale neg exch neg exch translate 0 2565 a 855 2761 a Fo(Figure)h(4:)41 b(Encrypted)29 b(and)h(non-encrypted)g(R)-8 b(TCP)29 b(pac)m(k)m(ets)0 2958 y(The)34 b(presence)h(of)h(encryption)e(and)h (the)g(use)g(of)g(the)g(correct)h(k)m(ey)g(are)f(con\014rmed)f(b)m(y)h (the)g(receiv)m(er)i(through)0 3071 y(header)e(or)g(pa)m(yload)g(v)-5 b(alidit)m(y)37 b(c)m(hec)m(ks.)55 b(Examples)35 b(of)g(suc)m(h)g(v)-5 b(alidit)m(y)36 b(c)m(hec)m(ks)g(for)f(R)-8 b(TP)35 b(and)f(R)-8 b(TCP)34 b(headers)0 3184 y(are)d(giv)m(en)g(in)f(App)s(endices)g(A.1)h (and)f(A.2.)0 3336 y(T)-8 b(o)38 b(b)s(e)e(consisten)m(t)j(with)e (existing)h(implemen)m(tations)h(of)f(the)f(initial)i(sp)s (eci\014cation)f(of)f(R)-8 b(TP)37 b(in)g(RF)m(C)h(1889,)0 3449 y(the)26 b(default)g(encryption)g(algorithm)h(is)f(the)h(Data)g (Encryption)f(Standard)f(\(DES\))h(algorithm)h(in)f(cipher)f(blo)s(c)m (k)0 3561 y(c)m(haining)41 b(\(CBC\))g(mo)s(de,)i(as)e(describ)s(ed)e (in)h(Section)i(1.1)f(of)g(RF)m(C)g(1423)h([29)q(],)i(except)d(that)h (padding)d(to)j(a)0 3674 y(m)m(ultiple)26 b(of)g(8)f(o)s(ctets)i(is)e (indicated)h(as)g(describ)s(ed)e(for)h(the)h(P)f(bit)g(in)g(Section)i (5.1.)40 b(The)25 b(initialization)j(v)m(ector)f(is)0 3787 y(zero)h(b)s(ecause)f(random)g(v)-5 b(alues)27 b(are)h(supplied)e (in)h(the)g(R)-8 b(TP)27 b(header)g(or)g(b)m(y)g(the)h(random)e (pre\014x)g(for)h(comp)s(ound)0 3900 y(R)-8 b(TCP)30 b(pac)m(k)m(ets.)42 b(F)-8 b(or)32 b(details)f(on)f(the)h(use)f(of)g (CBC)g(initialization)k(v)m(ectors,)e(see)f([30)q(].)0 4052 y(Implemen)m(tations)38 b(that)f(supp)s(ort)f(the)h(encryption)g (metho)s(d)f(sp)s(eci\014ed)g(here)h Fi(should)e Fo(alw)m(a)m(ys)k (supp)s(ort)c(the)0 4165 y(DES)d(algorithm)h(in)f(CBC)f(mo)s(de)h(as)g (the)g(default)h(cipher)e(for)h(this)g(metho)s(d)64 b(to)32 b(maximize)i(in)m(terop)s(erabilit)m(y)-8 b(.)0 4278 y(This)42 b(metho)s(d)f(w)m(as)i(c)m(hosen)g(b)s(ecause)f(it)h(has)f(b) s(een)g(demonstrated)g(to)h(b)s(e)f(easy)h(and)e(practical)j(to)f(use)f (in)0 4391 y(exp)s(erimen)m(tal)d(audio)e(and)h(video)g(to)s(ols)g(in)g (op)s(eration)g(on)g(the)g(In)m(ternet.)63 b(Ho)m(w)m(ev)m(er,)42 b(DES)37 b(has)h(since)g(b)s(een)0 4504 y(found)c(to)j(b)s(e)d(to)s(o)j (easily)f(brok)m(en.)57 b(It)35 b(is)h Fi(recommended)d Fo(that)j(stronger)g(encryption)f(algorithms)h(suc)m(h)g(as)0 4617 y(T)-8 b(riple-DES)39 b(b)s(e)f(used)g(in)h(place)g(of)g(the)g (default)g(algorithm.)68 b(F)-8 b(urthermore,)41 b(secure)e(CBC)f(mo)s (de)g(requires)0 4730 y(that)i(the)g(\014rst)f(blo)s(c)m(k)h(of)g(eac)m (h)h(pac)m(k)m(et)g(b)s(e)e(X)m(ORed)h(with)f(a)h(random,)i(indep)s (enden)m(t)c(IV)h(of)h(the)g(same)g(size)0 4843 y(as)34 b(the)f(cipher's)g(blo)s(c)m(k)h(size.)50 b(F)-8 b(or)34 b(R)-8 b(TCP)g(,)33 b(this)h(is)f(\(partially\))i(ac)m(hiev)m(ed)g(b)m (y)e(prep)s(ending)f(eac)m(h)i(pac)m(k)m(et)h(with)0 4956 y(a)42 b(32-bit)i(random)d(n)m(um)m(b)s(er,)j(indep)s(enden)m(tly) d(c)m(hosen)h(for)g(eac)m(h)h(pac)m(k)m(et.)78 b(F)-8 b(or)42 b(R)-8 b(TP)g(,)43 b(the)f(timestamp)h(and)0 5068 y(sequence)g(n)m(um)m(b)s(er)e(start)i(from)e(random)h(v)-5 b(alues,)46 b(but)c(consecutiv)m(e)i(pac)m(k)m(ets)g(will)f(not)f(b)s (e)g(indep)s(enden)m(tly)0 5181 y(randomized.)53 b(It)35 b(should)e(b)s(e)h(noted)h(that)g(the)g(randomness)e(in)h(b)s(oth)g (cases)h(\(R)-8 b(TP)35 b(and)f(R)-8 b(TCP\))34 b(is)h(limited.)0 5294 y(High-securit)m(y)i(applications)g Fi(should)c Fo(consider)j(other,)h(more)f(con)m(v)m(en)m(tional,)k(protection)d (means.)111 b(Other)0 5407 y(encryption)23 b(algorithms)i Fi(ma)-6 b(y)24 b Fo(b)s(e)f(sp)s(eci\014ed)g(dynamically)h(for)f(a)h (session)g(b)m(y)f(non-R)-8 b(TP)23 b(means.)39 b(In)22 b(particular,)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(55])p eop %%Page: 56 56 56 55 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(the)j(SR)-8 b(TP)31 b(pro\014le)h([28)q(])h (based)f(on)g(AES)g(is)g(b)s(eing)g(dev)m(elop)s(ed)h(to)g(tak)m(e)h (in)m(to)f(accoun)m(t)h(kno)m(wn)e(plain)m(text)i(and)0 511 y(CBC)c(plain)m(text)i(manipulation)e(concerns,)h(and)f(will)h(b)s (e)e(the)i(correct)g(c)m(hoice)i(in)d(the)g(future.)0 663 y(As)36 b(an)g(alternativ)m(e)j(to)e(encryption)f(at)h(the)g(IP)f (lev)m(el)i(or)e(at)h(the)73 b(R)-8 b(TP)36 b(lev)m(el)i(as)e(describ)s (ed)f(ab)s(o)m(v)m(e,)k(pro\014les)0 776 y Fi(ma)-6 b(y)33 b Fo(de\014ne)d(additional)j(pa)m(yload)f(t)m(yp)s(es)g(for)f (encrypted)g(enco)s(dings.)44 b(Those)31 b(enco)s(dings)g Fi(must)g Fo(sp)s(ecify)g(ho)m(w)0 889 y(padding)23 b(and)h(other)g (asp)s(ects)h(of)f(the)h(encryption)f(are)h(to)g(b)s(e)e(handled.)38 b(This)23 b(metho)s(d)h(allo)m(ws)i(encrypting)e(only)0 1002 y(the)36 b(data)g(while)f(lea)m(ving)i(the)f(headers)f(in)g(the)h (clear)g(for)g(applications)g(where)f(that)h(is)g(desired.)55 b(It)36 b(ma)m(y)g(b)s(e)0 1115 y(particularly)d(useful)f(for)g(hardw)m (are)g(devices)i(that)f(will)g(handle)f(b)s(oth)g(decryption)g(and)g (deco)s(ding.)48 b(It)32 b(is)h(also)0 1228 y(v)-5 b(aluable)38 b(for)f(applications)i(where)e(link-lev)m(el)i(compression)f(of)f(R)-8 b(TP)37 b(and)g(lo)m(w)m(er-la)m(y)m(er)k(headers)c(is)g(desired)0 1341 y(and)32 b(con\014den)m(tialit)m(y)i(of)e(the)g(pa)m(yload)h (\(but)f(not)h(addresses\))e(is)i(su\016cien)m(t)f(since)h(encryption)f (of)g(the)g(headers)0 1454 y(precludes)e(compression.)0 1732 y Fn(9.2)112 b(Authen)m(tication)38 b(and)g(Message)h(In)m(tegrit) m(y)0 1943 y Fo(Authen)m(tication)g(and)e(message)h(in)m(tegrit)m(y)h (services)f(are)g(not)f(de\014ned)f(at)i(the)g(R)-8 b(TP)37 b(lev)m(el)76 b(since)37 b(these)h(ser-)0 2056 y(vices)32 b(w)m(ould)g(not)g(b)s(e)f(directly)h(feasible)h(without)e(a)h(k)m(ey)h (managemen)m(t)g(infrastructure.)44 b(It)32 b(is)f(exp)s(ected)h(that)0 2169 y(authen)m(tication)h(and)c(in)m(tegrit)m(y)k(services)e(will)g(b) s(e)e(pro)m(vided)h(b)m(y)g(lo)m(w)m(er)i(la)m(y)m(er)g(proto)s(cols.)0 2491 y Fm(10.)135 b(Congestion)47 b(Con)l(trol)0 2733 y Fo(All)33 b(transp)s(ort)f(proto)s(cols)h(used)f(on)h(the)g(In)m (ternet)g(need)f(to)h(address)f(congestion)i(con)m(trol)g(in)f(some)g (w)m(a)m(y)g([31)q(].)0 2846 y(R)-8 b(TP)31 b(is)f(not)h(an)g (exception,)h(but)e(b)s(ecause)h(the)g(data)g(transp)s(orted)f(o)m(v)m (er)i(R)-8 b(TP)30 b(is)h(often)g(inelastic)i(\(generated)0 2959 y(at)e(a)g(\014xed)e(or)i(con)m(trolled)g(rate\),)h(the)f(means)f (to)h(con)m(trol)h(congestion)f(in)f(R)-8 b(TP)30 b(ma)m(y)h(b)s(e)f (quite)h(di\013eren)m(t)f(from)0 3072 y(those)42 b(for)f(other)g (transp)s(ort)g(proto)s(cols)h(suc)m(h)f(as)g(TCP.)72 b(In)41 b(one)g(sense,)k(inelasticit)m(y)f(reduces)c(the)i(risk)f(of)0 3184 y(congestion)31 b(b)s(ecause)e(the)g(R)-8 b(TP)29 b(stream)h(will)f(not)h(expand)e(to)i(consume)f(all)h(a)m(v)-5 b(ailable)32 b(bandwidth)27 b(as)i(a)h(TCP)0 3297 y(stream)37 b(can.)60 b(Ho)m(w)m(ev)m(er,)41 b(inelasticit)m(y)e(also)f(means)f (that)g(the)g(R)-8 b(TP)37 b(stream)g(cannot)g(arbitrarily)g(reduce)g (its)0 3410 y(load)31 b(on)f(the)h(net)m(w)m(ork)g(to)g(eliminate)h (congestion)g(when)d(it)i(o)s(ccurs.)0 3562 y(Since)j(R)-8 b(TP)34 b(ma)m(y)h(b)s(e)e(used)g(for)h(a)h(wide)e(v)-5 b(ariet)m(y)36 b(of)e(applications)h(in)f(man)m(y)g(di\013eren)m(t)h (con)m(texts,)i(there)d(is)g(no)0 3675 y(single)f(congestion)i(con)m (trol)f(mec)m(hanism)f(that)g(will)h(w)m(ork)e(for)h(all.)49 b(Therefore,)33 b(congestion)h(con)m(trol)h Fi(should)0 3788 y Fo(b)s(e)g(de\014ned)g(in)h(eac)m(h)h(R)-8 b(TP)36 b(pro\014le)f(as)i(appropriate.)57 b(F)-8 b(or)37 b(some)f(pro\014les,) i(it)e(ma)m(y)h(b)s(e)e(su\016cien)m(t)h(to)h(include)0 3901 y(an)e(applicabilit)m(y)i(statemen)m(t)h(restricting)e(the)g(use)f (of)g(that)h(pro\014le)f(to)h(en)m(vironmen)m(ts)g(where)f(congestion)i (is)0 4014 y(a)m(v)m(oided)31 b(b)m(y)e(engineering.)41 b(F)-8 b(or)30 b(other)f(pro\014les,)h(sp)s(eci\014c)f(metho)s(ds)f (suc)m(h)h(as)h(data)g(rate)g(adaptation)g(based)f(on)0 4127 y(R)-8 b(TCP)30 b(feedbac)m(k)h(ma)m(y)g(b)s(e)f(required.)0 4449 y Fm(11.)135 b(R)-11 b(TP)45 b(o)l(v)l(er)h(Net)l(w)l(ork)g(and)f (T)-11 b(ransp)t(ort)44 b(Proto)t(cols)0 4691 y Fo(This)27 b(section)i(describ)s(es)e(issues)g(sp)s(eci\014c)h(to)h(carrying)f(R) -8 b(TP)27 b(pac)m(k)m(ets)j(within)d(particular)h(net)m(w)m(ork)h(and) e(trans-)0 4803 y(p)s(ort)h(proto)s(cols.)41 b(The)28 b(follo)m(wing)i(rules)e(apply)g(unless)f(sup)s(erseded)g(b)m(y)h (proto)s(col-sp)s(eci\014c)i(de\014nitions)e(outside)0 4916 y(this)i(sp)s(eci\014cation.)0 5068 y(R)-8 b(TP)26 b(relies)g(on)g(the)g(underlying)f(proto)s(col\(s\))j(to)e(pro)m(vide)g (dem)m(ultiplexing)h(of)f(R)-8 b(TP)26 b(data)h(and)e(R)-8 b(TCP)25 b(con)m(trol)0 5181 y(streams.)49 b(F)-8 b(or)34 b(UDP)g(and)e(similar)i(proto)s(cols,)g(R)-8 b(TP)33 b Fi(should)f Fo(use)g(an)h(ev)m(en)h(destination)g(p)s(ort)f(n)m(um)m (b)s(er)f(and)0 5294 y(the)g(corresp)s(onding)e(R)-8 b(TCP)31 b(stream)h Fi(should)e Fo(use)h(the)h(next)g(higher)f(\(o)s (dd\))g(destination)h(p)s(ort)f(n)m(um)m(b)s(er.)43 b(F)-8 b(or)0 5407 y(applications)36 b(that)f(tak)m(e)i(a)e(single)h(p)s(ort)e (n)m(um)m(b)s(er)f(as)i(a)h(parameter)f(and)f(deriv)m(e)h(the)g(R)-8 b(TP)35 b(and)f(R)-8 b(TCP)35 b(p)s(ort)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(56])p eop %%Page: 57 57 57 56 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(pair)38 b(from)g(that)h(n)m(um)m(b)s(er,)g(if) f(an)h(o)s(dd)e(n)m(um)m(b)s(er)g(is)h(supplied)f(then)h(the)h (application)g Fi(should)e Fo(replace)i(that)0 511 y(n)m(um)m(b)s(er)28 b(with)i(the)g(next)g(lo)m(w)m(er)h(\(ev)m(en\))g(n)m(um)m(b)s(er)d(to) j(use)e(as)h(the)g(base)g(of)g(the)g(p)s(ort)f(pair.)40 b(F)-8 b(or)30 b(applications)h(in)0 624 y(whic)m(h)c(the)g(R)-8 b(TP)27 b(and)f(R)-8 b(TCP)26 b(destination)i(p)s(ort)f(n)m(um)m(b)s (ers)e(are)j(sp)s(eci\014ed)e(via)h(explicit,)j(separate)e(parameters)0 737 y(\(using)38 b(a)h(signaling)g(proto)s(col)h(or)e(other)h(means\),) i(the)d(application)i Fi(ma)-6 b(y)40 b Fo(disregard)d(the)i (restrictions)g(that)0 850 y(the)33 b(p)s(ort)g(n)m(um)m(b)s(ers)f(b)s (e)g(ev)m(en/o)s(dd)i(and)e(consecutiv)m(e)j(although)f(the)f(use)g(of) h(an)f(ev)m(en/o)s(dd)g(p)s(ort)g(pair)g(is)g(still)0 963 y(encouraged.)54 b(The)34 b(R)-8 b(TP)34 b(and)g(R)-8 b(TCP)34 b(p)s(ort)g(n)m(um)m(b)s(ers)f Fi(must)38 b(not)33 b Fo(b)s(e)h(the)h(same)g(since)g(R)-8 b(TP)34 b(relies)h(on)g(the)0 1076 y(p)s(ort)30 b(n)m(um)m(b)s(ers)f(to)i(dem)m(ultiplex)g(the)f(R)-8 b(TP)30 b(data)i(and)d(R)-8 b(TCP)30 b(con)m(trol)i(streams.)0 1228 y(In)i(a)h(unicast)g(session,)h(b)s(oth)e(participan)m(ts)i(need)e (to)i(iden)m(tify)f(a)g(p)s(ort)f(pair)g(for)h(receiving)h(R)-8 b(TP)34 b(and)g(R)-8 b(TCP)0 1341 y(pac)m(k)m(ets.)67 b(Both)39 b(participan)m(ts)h Fi(ma)-6 b(y)39 b Fo(use)g(the)f(same)h (p)s(ort)f(pair.)65 b(A)39 b(participan)m(t)g Fi(must)j(not)c Fo(assume)g(that)0 1454 y(the)j(source)g(p)s(ort)f(of)g(the)h(incoming) g(R)-8 b(TP)41 b(or)f(R)-8 b(TCP)41 b(pac)m(k)m(et)h(can)f(b)s(e)f (used)g(as)h(the)g(destination)g(p)s(ort)f(for)0 1567 y(outgoing)33 b(R)-8 b(TP)32 b(or)g(R)-8 b(TCP)31 b(pac)m(k)m(ets.)47 b(When)32 b(R)-8 b(TP)32 b(data)g(pac)m(k)m(ets)i(are)e(b)s(eing)g(sen) m(t)g(in)g(b)s(oth)f(directions,)i(eac)m(h)0 1680 y(participan)m(t's)h (R)-8 b(TCP)32 b(SR)g(pac)m(k)m(ets)i Fi(must)d Fo(b)s(e)h(sen)m(t)h (to)h(the)e(p)s(ort)g(that)h(the)g(other)g(participan)m(t)g(has)g(sp)s (eci\014ed)0 1793 y(for)f(reception)h(of)f(R)-8 b(TCP.)45 b(The)32 b(R)-8 b(TCP)32 b(SR)f(pac)m(k)m(ets)j(com)m(bine)f(sender)e (information)i(for)e(the)i(outgoing)g(data)0 1905 y(plus)c(reception)i (rep)s(ort)e(information)h(for)g(the)g(incoming)g(data.)41 b(If)30 b(a)g(side)g(is)g(not)g(activ)m(ely)i(sending)d(data)i(\(see)0 2018 y(Section)g(6.4\),)h(an)f(R)-8 b(TCP)29 b(RR)h(pac)m(k)m(et)j(is)d (sen)m(t)h(instead.)0 2170 y(It)36 b(is)g Fi(recommended)e Fo(that)i(la)m(y)m(ered)i(enco)s(ding)e(applications)h(\(see)g(Section) g(2.4\))g(use)f(a)g(set)h(of)f(con)m(tiguous)0 2283 y(p)s(ort)31 b(n)m(um)m(b)s(ers.)45 b(The)32 b(p)s(ort)f(n)m(um)m(b)s(ers)g Fi(must)g Fo(b)s(e)g(distinct)i(b)s(ecause)f(of)g(a)h(widespread)e (de\014ciency)h(in)g(existing)0 2396 y(op)s(erating)k(systems)g(that)h (prev)m(en)m(ts)g(use)e(of)i(the)f(same)g(p)s(ort)g(with)f(m)m(ultiple) i(m)m(ulticast)h(addresses,)f(and)e(for)0 2509 y(unicast,)43 b(there)d(is)g(only)g(one)g(p)s(ermissible)f(address.)68 b(Th)m(us)39 b(for)g(la)m(y)m(er)j(n,)f(the)g(data)f(p)s(ort)f(is)h(P)g (+)f(2n,)k(and)0 2622 y(the)35 b(con)m(trol)h(p)s(ort)e(is)h(P)f(+)h (2n)f(+)h(1.)54 b(When)34 b(IP)h(m)m(ulticast)h(is)f(used,)g(the)g (addresses)f Fi(must)g Fo(also)h(b)s(e)g(distinct)0 2735 y(b)s(ecause)24 b(m)m(ulticast)j(routing)d(and)g(group)g(mem)m(b)s (ership)f(are)i(managed)g(on)f(an)h(address)e(gran)m(ularit)m(y)-8 b(.)41 b(Ho)m(w)m(ev)m(er,)0 2848 y(allo)s(cation)24 b(of)e(con)m(tiguous)h(IP)e(m)m(ulticast)i(addresses)f(cannot)g(b)s(e)f (assumed)g(b)s(ecause)h(some)g(groups)f(ma)m(y)h(require)0 2961 y(di\013eren)m(t)31 b(scop)s(es)f(and)g(ma)m(y)h(therefore)g(b)s (e)e(allo)s(cated)k(from)d(di\013eren)m(t)h(address)e(ranges.)0 3113 y(The)i(previous)f(paragraph)h(con\015icts)h(with)f(the)g(SDP)g (sp)s(eci\014cation,)h(RF)m(C)g(2327)h([15)q(],)f(whic)m(h)f(sa)m(ys)g (that)h(it)g(is)0 3226 y(illegal)c(for)e(b)s(oth)f(m)m(ultiple)h (addresses)g(and)f(m)m(ultiple)h(p)s(orts)f(to)i(b)s(e)e(sp)s (eci\014ed)g(in)h(the)g(same)g(session)g(description)0 3339 y(b)s(ecause)45 b(the)h(asso)s(ciation)h(of)e(addresses)g(with)g (p)s(orts)f(could)h(b)s(e)g(am)m(biguous.)85 b(It)46 b(is)f(in)m(tended)g(that)h(this)0 3452 y(restriction)38 b(will)e(b)s(e)g(relaxed)i(in)e(a)h(revision)g(of)f(RF)m(C)h(2327)i(to) e(allo)m(w)h(an)e(equal)i(n)m(um)m(b)s(er)d(of)i(addresses)f(and)0 3564 y(p)s(orts)30 b(to)h(b)s(e)e(sp)s(eci\014ed)h(with)g(a)h (one-to-one)h(mapping)e(implied.)0 3717 y(R)-8 b(TP)21 b(data)g(pac)m(k)m(ets)h(con)m(tain)h(no)d(length)h(\014eld)g(or)f (other)h(delineation,)j(therefore)e(R)-8 b(TP)20 b(relies)i(on)e(the)h (underlying)0 3829 y(proto)s(col\(s\))29 b(to)g(pro)m(vide)f(a)g (length)g(indication.)41 b(The)27 b(maxim)m(um)h(length)g(of)g(R)-8 b(TP)28 b(pac)m(k)m(ets)i(is)e(limited)g(only)g(b)m(y)0 3942 y(the)j(underlying)e(proto)s(cols.)0 4094 y(If)43 b(R)-8 b(TP)42 b(pac)m(k)m(ets)j(are)f(to)f(b)s(e)g(carried)g(in)g(an)g (underlying)e(proto)s(col)j(that)g(pro)m(vides)f(the)g(abstraction)h (of)g(a)0 4207 y(con)m(tin)m(uous)g(o)s(ctet)h(stream)f(rather)g(than)f (messages)i(\(pac)m(k)m(ets\),)50 b(an)43 b(encapsulation)i(of)f(the)g (R)-8 b(TP)43 b(pac)m(k)m(ets)0 4320 y Fi(must)23 b Fo(b)s(e)g (de\014ned)g(to)i(pro)m(vide)f(a)h(framing)e(mec)m(hanism.)39 b(F)-8 b(raming)25 b(is)f(also)h(needed)f(if)g(the)g(underlying)f (proto)s(col)0 4433 y(ma)m(y)34 b(con)m(tain)h(padding)d(so)i(that)g (the)f(exten)m(t)i(of)e(the)h(R)-8 b(TP)33 b(pa)m(yload)h(cannot)g(b)s (e)f(determined.)49 b(The)33 b(framing)0 4546 y(mec)m(hanism)e(is)f (not)h(de\014ned)e(here.)0 4698 y(A)h(pro\014le)f Fi(ma)-6 b(y)30 b Fo(sp)s(ecify)f(a)h(framing)g(metho)s(d)f(to)h(b)s(e)f(used)f (ev)m(en)i(when)f(R)-8 b(TP)29 b(is)h(carried)f(in)h(proto)s(cols)g (that)g(do)0 4811 y(pro)m(vide)37 b(framing)g(in)g(order)f(to)i(allo)m (w)h(carrying)e(sev)m(eral)h(R)-8 b(TP)37 b(pac)m(k)m(ets)i(in)e(one)g (lo)m(w)m(er-la)m(y)m(er)j(proto)s(col)e(data)0 4924 y(unit,)i(suc)m(h)e(as)g(a)g(UDP)h(pac)m(k)m(et.)66 b(Carrying)37 b(sev)m(eral)j(R)-8 b(TP)38 b(pac)m(k)m(ets)i(in)d(one)i(net)m(w)m(ork) g(or)f(transp)s(ort)f(pac)m(k)m(et)0 5037 y(reduces)30 b(header)g(o)m(v)m(erhead)i(and)e(ma)m(y)g(simplify)g(sync)m (hronization)i(b)s(et)m(w)m(een)f(di\013eren)m(t)g(streams.)0 5656 y(Sc)m(h)m(ulzrinne,)f(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(57])p eop %%Page: 58 58 58 57 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fm(12.)135 b(Summary)45 b(of)g(Proto)t(col)h (Constan)l(ts)0 641 y Fo(This)30 b(section)h(con)m(tains)h(a)e(summary) g(listing)h(of)f(the)h(constan)m(ts)h(de\014ned)d(in)h(this)g(sp)s (eci\014cation.)0 793 y(The)d(R)-8 b(TP)27 b(pa)m(yload)h(t)m(yp)s(e)g (\(PT\))f(constan)m(ts)h(are)g(de\014ned)e(in)h(pro\014les)g(rather)g (than)g(this)g(do)s(cumen)m(t.)40 b(Ho)m(w)m(ev)m(er,)0 906 y(the)35 b(o)s(ctet)i(of)f(the)f(R)-8 b(TP)35 b(header)g(whic)m(h)g (con)m(tains)i(the)e(mark)m(er)h(bit\(s\))f(and)g(pa)m(yload)h(t)m(yp)s (e)g Fi(must)e Fo(a)m(v)m(oid)j(the)0 1018 y(reserv)m(ed)j(v)-5 b(alues)40 b(200)h(and)d(201)j(\(decimal\))h(to)e(distinguish)f(R)-8 b(TP)39 b(pac)m(k)m(ets)i(from)f(the)f(R)-8 b(TCP)39 b(SR)g(and)g(RR)0 1131 y(pac)m(k)m(et)j(t)m(yp)s(es)e(for)f(the)i (header)e(v)-5 b(alidation)42 b(pro)s(cedure)c(describ)s(ed)h(in)h(App) s(endix)e(A.1.)70 b(F)-8 b(or)41 b(the)f(standard)0 1244 y(de\014nition)j(of)g(one)g(mark)m(er)g(bit)g(and)g(a)g(7-bit)h(pa)m (yload)g(t)m(yp)s(e)f(\014eld)g(as)g(sho)m(wn)f(in)h(this)g(sp)s (eci\014cation,)k(this)0 1357 y(restriction)31 b(means)g(that)g(pa)m (yload)g(t)m(yp)s(es)f(72)i(and)d(73)j(are)e(reserv)m(ed.)0 1640 y Fn(12.1)112 b(R)-9 b(TCP)36 b(P)m(ac)m(k)m(et)h(T)m(yp)s(es)50 1844 y Fo(abbrev.)99 b(name)640 b(v)-5 b(alue)50 1957 y(SR)277 b(sender)30 b(rep)s(ort)390 b(200)50 2070 y(RR)261 b(receiv)m(er)32 b(rep)s(ort)340 b(201)50 2183 y(SDES)162 b(source)31 b(description)206 b(202)50 2296 y(BYE)201 b(go)s(o)s(db)m(y)m(e)595 b(203)50 2409 y(APP)203 b (application-de\014ned)168 b(204)0 2653 y(These)26 b(t)m(yp)s(e)h(v)-5 b(alues)26 b(w)m(ere)h(c)m(hosen)g(in)f(the)h(range)g(200-204)i(for)d (impro)m(v)m(ed)h(header)f(v)-5 b(alidit)m(y)28 b(c)m(hec)m(king)g(of)e (R)-8 b(TCP)0 2766 y(pac)m(k)m(ets)35 b(compared)e(to)h(R)-8 b(TP)33 b(pac)m(k)m(ets)i(or)e(other)g(unrelated)g(pac)m(k)m(ets.)51 b(When)33 b(the)g(R)-8 b(TCP)33 b(pac)m(k)m(et)i(t)m(yp)s(e)e(\014eld)0 2879 y(is)g(compared)h(to)g(the)g(corresp)s(onding)e(o)s(ctet)j(of)f (the)f(R)-8 b(TP)33 b(header,)i(this)e(range)h(corresp)s(onds)e(to)i (the)g(mark)m(er)0 2992 y(bit)h(b)s(eing)f(1)h(\(whic)m(h)g(it)g (usually)g(is)f(not)h(in)g(data)g(pac)m(k)m(ets\))i(and)d(to)h(the)g (high)g(bit)f(of)h(the)g(standard)f(pa)m(yload)0 3105 y(t)m(yp)s(e)c(\014eld)f(b)s(eing)h(1)g(\(since)h(the)f(static)h(pa)m (yload)g(t)m(yp)s(es)f(are)g(t)m(ypically)i(de\014ned)c(in)i(the)g(lo)m (w)h(half)7 b(\).)41 b(This)29 b(range)0 3218 y(w)m(as)37 b(also)h(c)m(hosen)g(to)g(b)s(e)e(some)i(distance)f(n)m(umerically)h (from)f(0)g(and)g(255)h(since)g(all-zeros)h(and)d(all-ones)j(are)0 3330 y(common)31 b(data)g(patterns.)0 3482 y(Since)40 b(all)h(comp)s(ound)d(R)-8 b(TCP)40 b(pac)m(k)m(ets)i Fi(must)d Fo(b)s(egin)g(with)h(SR)f(or)h(RR,)g(these)h(co)s(des)f(w)m (ere)g(c)m(hosen)h(as)f(an)0 3595 y(ev)m(en/o)s(dd)34 b(pair)g(to)h(allo)m(w)h(the)f(R)-8 b(TCP)33 b(v)-5 b(alidit)m(y)36 b(c)m(hec)m(k)g(to)f(test)g(the)f(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i (bits)f(with)g(mask)0 3708 y(and)c(v)-5 b(alue.)0 3860 y(Additional)31 b(R)-8 b(TCP)30 b(pac)m(k)m(et)i(t)m(yp)s(es)f(ma)m(y)g (b)s(e)e(registered)i(through)f(IANA)h(\(see)g(Section)g(15\).)0 4143 y Fn(12.2)112 b(SDES)38 b(T)m(yp)s(es)50 4347 y Fo(abbrev.)151 b(name)1047 b(v)-5 b(alue)50 4460 y(END)248 b(end)29 b(of)i(SDES)f(list)759 b(0)50 4573 y(CNAME)100 b(canonical)32 b(name)807 b(1)50 4686 y(NAME)166 b(user)29 b(name)1014 b(2)50 4799 y(EMAIL)144 b(user's)29 b(electronic)k(mail)e (address)258 b(3)50 4912 y(PHONE)116 b(user's)29 b(phone)h(n)m(um)m(b)s (er)595 b(4)50 5025 y(LOC)253 b(geographic)31 b(user)f(lo)s(cation)457 b(5)50 5138 y(TOOL)182 b(name)30 b(of)h(application)g(or)g(to)s(ol)338 b(6)50 5251 y(NOTE)180 b(notice)31 b(ab)s(out)f(the)h(source)486 b(7)50 5364 y(PRIV)217 b(priv)-5 b(ate)30 b(extensions)706 b(8)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(58])p eop %%Page: 59 59 59 58 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(Additional)h(SDES)f(t)m(yp)s(es)g(ma)m(y)h(b)s (e)f(registered)h(through)f(IANA)g(\(see)i(Section)f(15\).)0 723 y Fm(13.)135 b(R)-11 b(TP)45 b(Pro\014les)g(and)g(P)l(a)l(yload)h (F)-11 b(ormat)45 b(Sp)t(eci\014cations)0 965 y Fo(A)35 b(complete)h(sp)s(eci\014cation)g(of)f(R)-8 b(TP)34 b(for)h(a)g (particular)g(application)h(will)f(require)g(one)g(or)g(more)g (companion)0 1078 y(do)s(cumen)m(ts)30 b(of)h(t)m(w)m(o)g(t)m(yp)s(es)g (describ)s(ed)e(here:)41 b(pro\014les,)30 b(and)f(pa)m(yload)j(format)f (sp)s(eci\014cations.)0 1230 y(R)-8 b(TP)29 b(ma)m(y)h(b)s(e)e(used)g (for)h(a)h(v)-5 b(ariet)m(y)30 b(of)f(applications)h(with)f(somewhat)h (di\013ering)f(requiremen)m(ts.)40 b(The)29 b(\015exibil-)0 1342 y(it)m(y)37 b(to)f(adapt)g(to)g(those)g(requiremen)m(ts)g(is)g (pro)m(vided)f(b)m(y)g(allo)m(wing)j(m)m(ultiple)e(c)m(hoices)h(in)f (the)f(main)h(proto)s(col)0 1455 y(sp)s(eci\014cation,)30 b(then)e(selecting)i(the)f(appropriate)f(c)m(hoices)i(or)f(de\014ning)e (extensions)i(for)f(a)h(particular)g(en)m(viron-)0 1568 y(men)m(t)d(and)f(class)i(of)e(applications)i(in)f(a)g(separate)g Fk(pr)-5 b(o\014le)28 b Fo(do)s(cumen)m(t.)39 b(T)m(ypically)27 b(an)e(application)i(will)f(op)s(erate)0 1681 y(under)e(only)i(one)g (pro\014le)f(in)h(a)g(particular)g(R)-8 b(TP)25 b(session,)i(so)f (there)g(is)g(no)f(explicit)j(indication)e(within)f(the)h(R)-8 b(TP)0 1794 y(proto)s(col)38 b(itself)h(as)e(to)i(whic)m(h)e(pro\014le) g(is)h(in)f(use.)123 b(A)38 b(pro\014le)f(for)g(audio)h(and)f(video)h (applications)g(ma)m(y)h(b)s(e)0 1907 y(found)29 b(in)h(the)h (companion)f(RF)m(C)h(3551.)42 b(Pro\014les)31 b(are)f(t)m(ypically)j (titled)e(\\R)-8 b(TP)31 b(Pro\014le)f(for)g(.)16 b(.)f(.)g(".)0 2059 y(The)38 b(second)g(t)m(yp)s(e)h(of)f(companion)g(do)s(cumen)m(t)h (is)f(a)h Fk(p)-5 b(aylo)g(ad)43 b(format)d Fo(sp)s(eci\014cation,)h (whic)m(h)d(de\014nes)f(ho)m(w)i(a)0 2172 y(particular)d(kind)g(of)g (pa)m(yload)h(data,)i(suc)m(h)d(as)g(H.261)i(enco)s(ded)e(video,)i (should)e(b)s(e)f(carried)h(in)g(R)-8 b(TP.)58 b(These)0 2285 y(do)s(cumen)m(ts)33 b(are)h(t)m(ypically)i(titled)f(\\R)-8 b(TP)33 b(P)m(a)m(yload)j(F)-8 b(ormat)35 b(for)e(XYZ)h(Audio/Video)h (Enco)s(ding".)50 b(P)m(a)m(yload)0 2398 y(formats)33 b(ma)m(y)g(b)s(e)f(useful)g(under)g(m)m(ultiple)h(pro\014les)f(and)h (ma)m(y)g(therefore)g(b)s(e)f(de\014ned)g(indep)s(enden)m(tly)g(of)h (an)m(y)0 2511 y(particular)i(pro\014le.)53 b(The)34 b(pro\014le)g(do)s(cumen)m(ts)g(are)h(then)f(resp)s(onsible)g(for)g (assigning)h(a)g(default)g(mapping)f(of)0 2624 y(that)d(format)g(to)g (a)g(pa)m(yload)g(t)m(yp)s(e)f(v)-5 b(alue)31 b(if)g(needed.)0 2776 y(Within)j(this)h(sp)s(eci\014cation,)h(the)e(follo)m(wing)i (items)f(ha)m(v)m(e)g(b)s(een)f(iden)m(ti\014ed)g(for)g(p)s(ossible)g (de\014nition)g(within)g(a)0 2889 y(pro\014le,)c(but)g(this)g(list)h (is)g(not)f(mean)m(t)i(to)f(b)s(e)e(exhaustiv)m(e:)0 3130 y Fl(R)-9 b(TP)36 b(data)e(header:)45 b Fo(The)30 b(o)s(ctet)h(in)f(the)g(R)-8 b(TP)29 b(data)i(header)f(that)g(con)m (tains)h(the)g(mark)m(er)f(bit)g(and)f(pa)m(yload)227 3243 y(t)m(yp)s(e)f(\014eld)f Fi(ma)-6 b(y)29 b Fo(b)s(e)e(rede\014ned) f(b)m(y)i(a)g(pro\014le)f(to)i(suit)e(di\013eren)m(t)h(requiremen)m (ts,)h(for)e(example)h(with)g(more)227 3356 y(or)j(few)m(er)f(mark)m (er)h(bits)f(\(Section)i(5.3,)f(p.)f(15\).)0 3541 y Fl(P)m(a)m(yload)36 b(t)m(yp)s(es:)45 b Fo(Assuming)34 b(that)g(a)h(pa)m(yload)g(t)m(yp)s (e)f(\014eld)g(is)g(included,)h(the)f(pro\014le)g(will)g(usually)g (de\014ne)g(a)227 3654 y(set)c(of)g(pa)m(yload)g(formats)g(\(e.g.,)i (media)d(enco)s(dings\))h(and)f(a)h(default)f(static)i(mapping)e(of)h (those)g(formats)227 3766 y(to)e(pa)m(yload)h(t)m(yp)s(e)f(v)-5 b(alues.)40 b(Some)27 b(of)h(the)f(pa)m(yload)i(formats)e(ma)m(y)i(b)s (e)d(de\014ned)h(b)m(y)g(reference)h(to)g(separate)227 3879 y(pa)m(yload)38 b(format)f(sp)s(eci\014cations.)60 b(F)-8 b(or)37 b(eac)m(h)h(pa)m(yload)g(t)m(yp)s(e)f(de\014ned,)g(the)g (pro\014le)f Fi(must)f Fo(sp)s(ecify)i(the)227 3992 y(R)-8 b(TP)30 b(timestamp)h(clo)s(c)m(k)h(rate)f(to)g(b)s(e)f(used)g (\(Section)h(5.1,)h(p.)e(13\).)0 4177 y Fl(R)-9 b(TP)36 b(data)e(header)h(additions:)45 b Fo(Additional)22 b(\014elds)f Fi(ma)-6 b(y)23 b Fo(b)s(e)d(app)s(ended)g(to)i(the)f(\014xed)g(R)-8 b(TP)21 b(data)h(header)f(if)227 4290 y(some)28 b(additional)g (functionalit)m(y)g(is)f(required)f(across)i(the)f(pro\014le's)g(class) h(of)f(applications)h(indep)s(enden)m(t)227 4402 y(of)j(pa)m(yload)g(t) m(yp)s(e)g(\(Section)g(5.3,)h(p.)e(15\).)0 4587 y Fl(R)-9 b(TP)36 b(data)e(header)h(extensions:)46 b Fo(The)20 b(con)m(ten)m(ts)j(of)e(the)g(\014rst)g(16)h(bits)f(of)g(the)g(R)-8 b(TP)21 b(data)g(header)g(extension)227 4700 y(structure)39 b Fi(must)f Fo(b)s(e)g(de\014ned)g(if)h(use)f(of)h(that)h(mec)m(hanism) f(is)g(to)h(b)s(e)e(allo)m(w)m(ed)j(under)c(the)j(pro\014le)e(for)227 4813 y(implemen)m(tation-sp)s(eci\014c)32 b(extensions)f(\(Section)h (5.3.1,)g(p.)e(16\).)0 4997 y Fl(R)-9 b(TCP)35 b(pac)m(k)m(et)g(t)m(yp) s(es:)46 b Fo(New)25 b(application-class-sp)s(eci\014c)i(R)-8 b(TCP)24 b(pac)m(k)m(et)i(t)m(yp)s(es)f Fi(ma)-6 b(y)25 b Fo(b)s(e)f(de\014ned)f(and)h(reg-)227 5110 y(istered)31 b(with)f(IANA.)0 5294 y Fl(R)-9 b(TCP)35 b(rep)s(ort)g(in)m(terv)-6 b(al:)46 b Fo(A)25 b(pro\014le)g Fi(should)f Fo(sp)s(ecify)h(that)h (the)g(v)-5 b(alues)25 b(suggested)i(in)e(Section)h(6.2)h(for)e(the)227 5407 y(constan)m(ts)36 b(emplo)m(y)m(ed)g(in)f(the)g(calculation)i(of)e (the)g(R)-8 b(TCP)34 b(rep)s(ort)g(in)m(terv)-5 b(al)36 b(will)f(b)s(e)g(used.)53 b(Those)35 b(are)0 5656 y(Sc)m(h)m(ulzrinne,) 30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(59])p eop %%Page: 60 60 60 59 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)227 399 y(the)36 b(R)-8 b(TCP)35 b(fraction)h(of)g (session)f(bandwidth,)h(the)f(minim)m(um)g(rep)s(ort)g(in)m(terv)-5 b(al,)38 b(and)d(the)h(bandwidth)227 511 y(split)31 b(b)s(et)m(w)m(een) g(senders)e(and)h(receiv)m(ers.)42 b(A)30 b(pro\014le)g Fi(ma)-6 b(y)31 b Fo(sp)s(ecify)f(alternate)i(v)-5 b(alues)31 b(if)f(they)g(ha)m(v)m(e)i(b)s(een)227 624 y(demonstrated)f(to)g(w)m (ork)f(in)g(a)h(scalable)h(manner.)0 812 y Fl(SR/RR)k(extension:)46 b Fo(An)36 b(extension)h(section)g Fi(ma)-6 b(y)38 b Fo(b)s(e)d(de\014ned)g(for)h(the)h(R)-8 b(TCP)36 b(SR)f(and)h(RR)g(pac) m(k)m(ets)i(if)227 925 y(there)25 b(is)f(additional)h(information)f (that)h(should)e(b)s(e)g(rep)s(orted)h(regularly)g(ab)s(out)g(the)g (sender)g(or)g(receiv)m(ers)227 1038 y(\(Section)32 b(6.4.3,)g(p.)e (35\).)0 1225 y Fl(SDES)35 b(use:)46 b Fo(The)23 b(pro\014le)g Fi(ma)-6 b(y)25 b Fo(sp)s(ecify)f(the)g(relativ)m(e)h(priorities)g(for) e(R)-8 b(TCP)24 b(SDES)f(items)h(to)g(b)s(e)g(transmitted)227 1338 y(or)34 b(excluded)g(en)m(tirely)i(\(Section)f(6.3.9\);)j(an)c (alternate)i(syn)m(tax)e(or)h(seman)m(tics)g(for)f(the)g(CNAME)g(item) 227 1451 y(\(Section)40 b(6.5.1\);)46 b(the)39 b(format)g(of)g(the)g (LOC)e(item)j(\(Section)g(6.5.5\);)45 b(the)39 b(seman)m(tics)h(and)e (use)h(of)g(the)227 1564 y(NOTE)30 b(item)h(\(Section)h(6.5.7\);)g(or)f (new)f(SDES)f(item)i(t)m(yp)s(es)g(to)g(b)s(e)f(registered)h(with)f (IANA.)0 1752 y Fl(Securit)m(y:)46 b Fo(A)34 b(pro\014le)g Fi(ma)-6 b(y)35 b Fo(sp)s(ecify)f(whic)m(h)g(securit)m(y)h(services)f (and)g(algorithms)h(should)e(b)s(e)g(o\013ered)i(b)m(y)f(ap-)227 1865 y(plications,)e(and)e Fi(ma)-6 b(y)31 b Fo(pro)m(vide)g(guidance)g (as)f(to)h(their)g(appropriate)f(use)g(\(Section)i(9,)f(p.)f(54\).)0 2052 y Fl(String-to-k)m(ey)35 b(mapping:)46 b Fo(A)33 b(pro\014le)g Fi(ma)-6 b(y)35 b Fo(sp)s(ecify)d(ho)m(w)i(a)f(user-pro)m (vided)g(passw)m(ord)f(or)i(pass)e(phrase)h(is)227 2165 y(mapp)s(ed)c(in)m(to)j(an)e(encryption)g(k)m(ey)-8 b(.)0 2353 y Fl(Congestion:)46 b Fo(A)23 b(pro\014le)f Fi(should)g Fo(sp)s(ecify)g(the)h(congestion)i(con)m(trol)f(b)s(eha)m(vior)f (appropriate)g(for)g(that)g(pro\014le.)0 2540 y Fl(Underlying)36 b(proto)s(col:)47 b Fo(Use)23 b(of)h(a)g(particular)g(underlying)e(net) m(w)m(ork)i(or)g(transp)s(ort)e(la)m(y)m(er)j(proto)s(col)g(to)f(carry) 227 2653 y(R)-8 b(TP)30 b(pac)m(k)m(ets)j Fi(ma)-6 b(y)31 b Fo(b)s(e)f(required.)0 2841 y Fl(T)-9 b(ransp)s(ort)35 b(mapping:)46 b Fo(A)f(mapping)f(of)h(R)-8 b(TP)45 b(and)f(R)-8 b(TCP)45 b(to)g(transp)s(ort-lev)m(el)h(addresses,)i(e.g.,)j(UDP)227 2954 y(p)s(orts,)30 b(other)h(than)f(the)g(standard)g(mapping)g (de\014ned)f(in)h(Section)h(11,)h(p.)e(56)h(ma)m(y)g(b)s(e)f(sp)s (eci\014ed.)0 3142 y Fl(Encapsulation:)46 b Fo(An)38 b(encapsulation)g(of)h(R)-8 b(TP)38 b(pac)m(k)m(ets)h(ma)m(y)g(b)s(e)e (de\014ned)g(to)i(allo)m(w)h(m)m(ultiple)e(R)-8 b(TP)38 b(data)227 3254 y(pac)m(k)m(ets)26 b(to)e(b)s(e)f(carried)h(in)g(one)g (lo)m(w)m(er-la)m(y)m(er)i(pac)m(k)m(et)g(or)e(to)g(pro)m(vide)g (framing)g(o)m(v)m(er)h(underlying)d(proto)s(cols)227 3367 y(that)31 b(do)g(not)f(already)h(do)f(so)h(\(Section)g(11,)h(p.)e (56\).)0 3619 y(It)f(is)g(not)g(exp)s(ected)h(that)f(a)h(new)e (pro\014le)h(will)g(b)s(e)g(required)f(for)h(ev)m(ery)g(application.)42 b(Within)29 b(one)h(application)0 3732 y(class,)44 b(it)d(w)m(ould)g(b) s(e)f(b)s(etter)h(to)g(extend)g(an)f(existing)i(pro\014le)e(rather)h (than)f(mak)m(e)i(a)f(new)f(one)h(in)f(order)g(to)0 3845 y(facilitate)29 b(in)m(terop)s(eration)e(among)f(the)h(applications)g (since)f(eac)m(h)h(will)g(t)m(ypically)h(run)c(under)h(only)h(one)g (pro\014le.)0 3958 y(Simple)34 b(extensions)g(suc)m(h)g(as)g(the)g (de\014nition)g(of)g(additional)h(pa)m(yload)g(t)m(yp)s(e)f(v)-5 b(alues)34 b(or)g(R)-8 b(TCP)34 b(pac)m(k)m(et)i(t)m(yp)s(es)0 4071 y(ma)m(y)g(b)s(e)g(accomplished)g(b)m(y)g(registering)h(them)e (through)g(IANA)i(and)e(publishing)f(their)i(descriptions)g(in)f(an)0 4184 y(addendum)28 b(to)k(the)e(pro\014le)g(or)h(in)f(a)g(pa)m(yload)i (format)e(sp)s(eci\014cation.)0 4509 y Fm(14.)135 b(Securit)l(y)46 b(Considerations)0 4751 y Fo(R)-8 b(TP)23 b(su\013ers)f(from)g(the)i (same)f(securit)m(y)h(liabilities)h(as)e(the)g(underlying)f(proto)s (cols.)39 b(F)-8 b(or)24 b(example,)h(an)e(imp)s(ostor)0 4864 y(can)29 b(fak)m(e)i(source)e(or)g(destination)h(net)m(w)m(ork)g (addresses,)f(or)g(c)m(hange)i(the)e(header)g(or)g(pa)m(yload.)41 b(Within)30 b(R)-8 b(TCP)g(,)0 4977 y(the)25 b(CNAME)f(and)g(NAME)h (information)g(ma)m(y)g(b)s(e)f(used)g(to)h(imp)s(ersonate)g(another)g (participan)m(t.)40 b(In)23 b(addition,)0 5090 y(R)-8 b(TP)35 b(ma)m(y)i(b)s(e)d(sen)m(t)j(via)f(IP)f(m)m(ulticast,)k(whic)m (h)c(pro)m(vides)g(no)h(direct)g(means)f(for)h(a)g(sender)e(to)j(kno)m (w)e(all)i(the)0 5203 y(receiv)m(ers)32 b(of)g(the)f(data)h(sen)m(t)g (and)e(therefore)i(no)f(measure)g(of)g(priv)-5 b(acy)d(.)44 b(Righ)m(tly)32 b(or)f(not,)h(users)e(ma)m(y)i(b)s(e)f(more)0 5316 y(sensitiv)m(e)g(to)f(priv)-5 b(acy)29 b(concerns)h(with)f(audio)g (and)g(video)h(comm)m(unication)h(than)e(they)g(ha)m(v)m(e)i(b)s(een)e (with)g(more)0 5656 y(Sc)m(h)m(ulzrinne,)h(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(60])p eop %%Page: 61 61 61 60 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(traditional)k(forms)e(of)h(net)m(w)m(ork)h (comm)m(unication)g([33)q(].)49 b(Therefore,)33 b(the)g(use)g(of)g (securit)m(y)g(mec)m(hanisms)g(with)0 511 y(R)-8 b(TP)30 b(is)h(imp)s(ortan)m(t.)40 b(These)31 b(mec)m(hanisms)f(are)h (discussed)e(in)h(Section)i(9.)0 663 y(R)-8 b(TP-lev)m(el)34 b(translators)f(or)g(mixers)f(ma)m(y)h(b)s(e)f(used)g(to)h(allo)m(w)h (R)-8 b(TP)32 b(tra\016c)h(to)g(reac)m(h)g(hosts)g(b)s(ehind)d(\014rew) m(alls.)0 776 y(Appropriate)24 b(\014rew)m(all)g(securit)m(y)g (principles)g(and)f(practices,)j(whic)m(h)e(are)g(b)s(ey)m(ond)f(the)h (scop)s(e)g(of)g(this)g(do)s(cumen)m(t,)0 889 y(should)39 b(b)s(e)f(follo)m(w)m(ed)k(in)d(the)h(design)f(and)g(installation)i(of) f(these)g(devices)g(and)f(in)g(the)h(admission)f(of)h(R)-8 b(TP)0 1002 y(applications)32 b(for)e(use)g(b)s(ehind)e(the)j(\014rew)m (all.)0 1328 y Fm(15.)135 b(IANA)45 b(Considerations)0 1570 y Fo(Additional)33 b(R)-8 b(TCP)33 b(pac)m(k)m(et)h(t)m(yp)s(es)f (and)f(SDES)g(item)i(t)m(yp)s(es)f(ma)m(y)g(b)s(e)f(registered)i (through)e(the)h(In)m(ternet)g(As-)0 1683 y(signed)h(Num)m(b)s(ers)f (Authorit)m(y)h(\(IANA\).)i(Since)e(these)g(n)m(um)m(b)s(er)f(spaces)i (are)f(small,)i(allo)m(wing)g(unconstrained)0 1796 y(registration)f(of) f(new)g(v)-5 b(alues)34 b(w)m(ould)f(not)h(b)s(e)f(pruden)m(t.)50 b(T)-8 b(o)34 b(facilitate)j(review)d(of)g(requests)g(and)f(to)h (promote)0 1909 y(shared)c(use)h(of)g(new)g(t)m(yp)s(es)g(among)h(m)m (ultiple)g(applications,)g(requests)f(for)g(registration)i(of)e(new)g (v)-5 b(alues)31 b(m)m(ust)0 2021 y(b)s(e)e(do)s(cumen)m(ted)h(in)g(an) f(RF)m(C)i(or)e(other)i(p)s(ermanen)m(t)e(and)g(readily)i(a)m(v)-5 b(ailable)32 b(reference)e(suc)m(h)g(as)g(the)g(pro)s(duct)0 2134 y(of)h(another)g(co)s(op)s(erativ)m(e)i(standards)d(b)s(o)s(dy)f (\(e.g.,)k(ITU-T\).)e(Other)f(requests)h(ma)m(y)h(also)g(b)s(e)e (accepted,)i(under)0 2247 y(the)c(advice)h(of)f(a)g(\\designated)h(exp) s(ert.")40 b(\(Con)m(tact)30 b(the)e(IANA)g(for)g(the)g(con)m(tact)i (information)e(of)g(the)g(curren)m(t)0 2360 y(exp)s(ert.\))0 2512 y(R)-8 b(TP)20 b(pro\014le)g(sp)s(eci\014cations)h Fi(should)d Fo(register)k(with)e(IANA)g(a)h(name)f(for)g(the)h (pro\014le)f(in)g(the)g(form)g(\\R)-8 b(TP/xxx",)0 2625 y(where)23 b(xxx)h(is)g(a)g(short)g(abbreviation)g(of)g(the)g (pro\014le)g(title.)40 b(These)23 b(names)h(are)g(for)g(use)f(b)m(y)h (higher-lev)m(el)h(con)m(trol)0 2738 y(proto)s(cols,)40 b(suc)m(h)d(as)h(the)f(Session)h(Description)g(Proto)s(col)h(\(SDP\),)f (RF)m(C)g(2327)h([15)q(],)g(to)g(refer)e(to)h(transp)s(ort)0 2851 y(metho)s(ds.)0 3177 y Fm(16.)135 b(In)l(tellectual)48 b(Prop)t(ert)l(y)d(Righ)l(ts)h(Statemen)l(t)0 3419 y Fo(The)35 b(IETF)h(tak)m(es)h(no)f(p)s(osition)f(regarding)h(the)g(v)-5 b(alidit)m(y)38 b(or)d(scop)s(e)h(of)g(an)m(y)g(in)m(tellectual)j(prop) s(ert)m(y)c(or)h(other)0 3532 y(righ)m(ts)26 b(that)g(migh)m(t)h(b)s(e) e(claimed)i(to)f(p)s(ertain)f(to)i(the)f(implemen)m(tation)h(or)f(use)f (of)h(the)g(tec)m(hnology)i(describ)s(ed)c(in)0 3644 y(this)i(do)s(cumen)m(t)f(or)h(the)g(exten)m(t)h(to)g(whic)m(h)e(an)m (y)h(license)h(under)e(suc)m(h)g(righ)m(ts)h(migh)m(t)h(or)f(migh)m(t)g (not)g(b)s(e)f(a)m(v)-5 b(ailable;)0 3757 y(neither)26 b(do)s(es)h(it)g(represen)m(t)f(that)h(it)g(has)f(made)h(an)m(y)g (e\013ort)g(to)g(iden)m(tify)g(an)m(y)g(suc)m(h)f(righ)m(ts.)40 b(Information)26 b(on)h(the)0 3870 y(IETF's)k(pro)s(cedures)e(with)i (resp)s(ect)g(to)g(righ)m(ts)h(in)e(standards-trac)m(k)i(and)e (standards-related)h(do)s(cumen)m(tation)0 3983 y(can)h(b)s(e)f(found)f (in)i(BCP-11.)45 b(Copies)32 b(of)g(claims)g(of)g(righ)m(ts)g(made)g(a) m(v)-5 b(ailable)34 b(for)d(publication)h(and)f(an)m(y)h(assur-)0 4096 y(ances)d(of)g(licenses)h(to)f(b)s(e)f(made)h(a)m(v)-5 b(ailable,)31 b(or)e(the)g(result)g(of)f(an)h(attempt)h(made)f(to)g (obtain)g(a)g(general)h(license)0 4209 y(or)j(p)s(ermission)f(for)h (the)g(use)g(of)h(suc)m(h)e(proprietary)h(righ)m(ts)h(b)m(y)f(implemen) m(tors)g(or)g(users)g(of)g(this)g(sp)s(eci\014cation)0 4322 y(can)e(b)s(e)e(obtained)i(from)f(the)h(IETF)f(Secretariat.)0 4474 y(The)j(IETF)f(in)m(vites)j(an)m(y)e(in)m(terested)h(part)m(y)g (to)g(bring)e(to)i(its)g(atten)m(tion)h(an)m(y)e(cop)m(yrigh)m(ts,)j (paten)m(ts)e(or)f(paten)m(t)0 4587 y(applications,)49 b(or)c(other)f(proprietary)g(righ)m(ts)h(whic)m(h)f(ma)m(y)h(co)m(v)m (er)h(tec)m(hnology)g(that)f(ma)m(y)g(b)s(e)f(required)f(to)0 4700 y(practice)32 b(this)e(standard.)40 b(Please)31 b(address)f(the)g(information)h(to)g(the)g(IETF)f(Executiv)m(e)i (Director.)0 5025 y Fm(17.)135 b(Ac)l(kno)l(wledgmen)l(ts)0 5267 y Fo(This)26 b(memorandum)f(is)h(based)g(on)h(discussions)e (within)h(the)h(IETF)f(Audio/Video)h(T)-8 b(ransp)s(ort)26 b(w)m(orking)g(group)0 5380 y(c)m(haired)k(b)m(y)f(Stephen)g(Casner)g (and)g(Colin)g(P)m(erkins.)41 b(The)29 b(curren)m(t)g(proto)s(col)i (has)e(its)h(origins)g(in)f(the)g(Net)m(w)m(ork)0 5656 y(Sc)m(h)m(ulzrinne,)h(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(61])p eop %%Page: 62 62 62 61 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(V)-8 b(oice)36 b(Proto)s(col)g(and)e(the)g(P)m (ac)m(k)m(et)j(Video)e(Proto)s(col)h(\(Dann)m(y)f(Cohen)e(and)h(Randy)g (Cole\))h(and)f(the)g(proto)s(col)0 511 y(implemen)m(ted)e(b)m(y)f(the) h(v)-5 b(at)32 b(application)g(\(V)-8 b(an)32 b(Jacobson)g(and)f(Stev)m (e)h(McCanne\).)44 b(Christian)31 b(Huitema)h(pro-)0 624 y(vided)39 b(ideas)g(for)g(the)g(random)f(iden)m(ti\014er)h (generator.)68 b(Extensiv)m(e)40 b(analysis)g(and)e(sim)m(ulation)i(of) f(the)h(timer)0 737 y(reconsideration)34 b(algorithm)h(w)m(as)f(done)f (b)m(y)g(Jonathan)h(Rosen)m(b)s(erg.)50 b(The)32 b(additions)i(for)f (la)m(y)m(ered)i(enco)s(dings)0 850 y(w)m(ere)c(sp)s(eci\014ed)f(b)m(y) g(Mic)m(hael)i(Sp)s(eer)d(and)h(Stev)m(e)i(McCanne.)0 1172 y Fm(App)t(endix)44 b(A.)134 b(Algorithms)0 1414 y Fo(W)-8 b(e)32 b(pro)m(vide)f(examples)h(of)f(C)f(co)s(de)h(for)g (asp)s(ects)g(of)g(R)-8 b(TP)31 b(sender)f(and)g(receiv)m(er)j (algorithms.)43 b(There)30 b(ma)m(y)i(b)s(e)0 1527 y(other)h(implemen)m (tation)h(metho)s(ds)e(that)h(are)g(faster)h(in)e(particular)h(op)s (erating)g(en)m(vironmen)m(ts)g(or)g(ha)m(v)m(e)h(other)0 1640 y(adv)-5 b(an)m(tages.)71 b(These)40 b(implemen)m(tation)h(notes)g (are)f(for)g(informational)h(purp)s(oses)d(only)i(and)f(are)h(mean)m(t) h(to)0 1753 y(clarify)31 b(the)g(R)-8 b(TP)30 b(sp)s(eci\014cation.)0 1905 y(The)d(follo)m(wing)i(de\014nitions)f(are)g(used)f(for)g(all)i (examples;)g(for)e(clarit)m(y)j(and)d(brevit)m(y)-8 b(,)29 b(the)f(structure)f(de\014nitions)0 2018 y(are)c(only)f(v)-5 b(alid)22 b(for)g(32-bit)i(big-endian)e(\(most)h(signi\014can)m(t)g(o)s (ctet)h(\014rst\))e(arc)m(hitectures.)39 b(Bit)23 b(\014elds)f(are)h (assumed)0 2131 y(to)34 b(b)s(e)e(pac)m(k)m(ed)j(tigh)m(tly)f(in)f (big-endian)h(bit)f(order,)g(with)g(no)g(additional)h(padding.)49 b(Mo)s(di\014cations)34 b(w)m(ould)f(b)s(e)0 2244 y(required)d(to)h (construct)f(a)h(p)s(ortable)g(implemen)m(tation.)0 2472 y Fh(/*)48 2584 y(*)47 b(rtp.h)94 b(--)h(RTP)47 b(header)f(file)48 2697 y(*/)0 2810 y(#include)g()0 3036 y(/*)48 3149 y(*)h(The)g(type)g(definitions)d(below)j(are)g(valid)f(for)h (32-bit)f(architectures)e(and)48 3262 y(*)j(may)g(have)g(to)g(be)g (adjusted)f(for)h(16-)f(or)i(64-bit)e(architectures.)48 3375 y(*/)0 3488 y(typedef)g(unsigned)f(char)95 b(u_int8;)0 3601 y(typedef)46 b(unsigned)f(short)i(u_int16;)0 3714 y(typedef)f(unsigned)f(int)143 b(u_int32;)0 3826 y(typedef)475 b(short)47 b(int16;)0 4052 y(/*)48 4165 y(*)g(Current)f(protocol)g (version.)48 4278 y(*/)0 4391 y(#define)g(RTP_VERSION)188 b(2)0 4617 y(#define)46 b(RTP_SEQ_MOD)f(\(1probation)35 b Fo(is)k(set)h(to)f(the)g(n)m (um)m(b)s(er)f(of)0 3662 y(sequen)m(tial)29 b(pac)m(k)m(ets)h(required) d(b)s(efore)h(declaring)g(a)h(source)f(v)-5 b(alid)28 b(\(parameter)h Fh(MIN_SEQUENTIAL)p Fo(\))24 b(and)k(other)0 3775 y(v)-5 b(ariables)31 b(are)g(initialized:)191 3987 y Fh(init_seq\(s,)45 b(seq\);)191 4100 y(s->max_seq)g(=)i(seq)g(-)h(1;) 191 4213 y(s->probation)c(=)k(MIN_SEQUENTIAL;)0 4426 y Fo(A)31 b(non-zero)g Fh(s->probation)c Fo(marks)j(the)h(source)f(as)h (not)g(y)m(et)g(v)-5 b(alid)31 b(so)g(the)g(state)h(ma)m(y)f(b)s(e)f (discarded)g(after)h(a)0 4539 y(short)f(timeout)h(rather)g(than)f(a)h (long)g(one,)f(as)h(discussed)f(in)g(Section)h(6.2.1.)0 4691 y(After)37 b(a)g(source)f(is)h(considered)f(v)-5 b(alid,)38 b(the)f(sequence)g(n)m(um)m(b)s(er)e(is)h(considered)h(v)-5 b(alid)36 b(if)h(it)g(is)f(no)h(more)f(than)0 4803 y Fh(MAX_DROPOUT)i Fo(ahead)j(of)h Fh(s->max_seq)c Fo(nor)i(more)i(than)e Fh(MAX_MISORDER)e Fo(b)s(ehind.)71 b(If)41 b(the)g(new)g(sequence)0 4916 y(n)m(um)m(b)s(er)25 b(is)i(ahead)g(of)g Fh(max_seq)e Fo(mo)s(dulo)h(the)h(R)-8 b(TP)27 b(sequence)g(n)m(um)m(b)s(er)f(range) h(\(16)h(bits\),)g(but)e(is)h(smaller)g(than)0 5029 y Fh(max_seq)p Fo(,)f(it)i(has)f(wrapp)s(ed)e(around)h(and)h(the)g (\(shifted\))h(coun)m(t)g(of)f(sequence)h(n)m(um)m(b)s(er)d(cycles)k (is)e(incremen)m(ted.)0 5142 y(A)j(v)-5 b(alue)31 b(of)g(one)g(is)f (returned)f(to)i(indicate)h(a)e(v)-5 b(alid)31 b(sequence)g(n)m(um)m(b) s(er.)0 5294 y(Otherwise,)j(the)f(v)-5 b(alue)34 b(zero)g(is)f (returned)f(to)i(indicate)g(that)g(the)g(v)-5 b(alidation)34 b(failed,)h(and)e(the)g(bad)g(sequence)0 5407 y(n)m(um)m(b)s(er)f(plus) h(1)68 b(is)33 b(stored.)51 b(If)33 b(the)h(next)f(pac)m(k)m(et)j (receiv)m(ed)f(carries)f(the)g(next)g(higher)f(sequence)h(n)m(um)m(b)s (er,)f(it)0 5656 y(Sc)m(h)m(ulzrinne,)d(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(66])p eop %%Page: 67 67 67 66 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(is)h(considered)f(the)h(v)-5 b(alid)31 b(start)g(of)g(a)g(new)f(pac)m(k)m(et)j(sequence)e (presumably)f(caused)g(b)m(y)h(an)f(extended)h(drop)s(out)0 511 y(or)36 b(a)h(source)f(restart.)58 b(Since)36 b(m)m(ultiple)h (complete)h(sequence)e(n)m(um)m(b)s(er)f(cycles)i(ma)m(y)g(ha)m(v)m(e)g (b)s(een)e(missed,)j(the)0 624 y(pac)m(k)m(et)32 b(loss)f(statistics)h (are)f(reset.)0 776 y(T)m(ypical)i(v)-5 b(alues)32 b(for)f(the)h (parameters)g(are)h(sho)m(wn,)e(based)h(on)f(a)h(maxim)m(um)g (misordering)f(time)i(of)f(2)g(seconds)0 889 y(at)f(50)h(pac)m(k)m (ets/second)g(and)e(a)h(maxim)m(um)g(drop)s(out)e(of)i(1)f(min)m(ute.) 42 b(The)30 b(drop)s(out)f(parameter)i Fh(MAX_DROPOUT)0 1002 y Fo(should)24 b(b)s(e)g(a)i(small)f(fraction)h(of)f(the)g(16-bit) i(sequence)e(n)m(um)m(b)s(er)f(space)h(to)h(giv)m(e)h(a)e(reasonable)h (probabilit)m(y)f(that)0 1115 y(new)36 b(sequence)h(n)m(um)m(b)s(ers)e (after)h(a)h(restart)g(will)g(not)g(fall)g(in)f(the)g(acceptable)j (range)d(for)h(sequence)f(n)m(um)m(b)s(ers)0 1228 y(from)30 b(b)s(efore)g(the)g(restart.)0 1455 y Fh(void)47 b(init_seq\(source)c (*s,)k(u_int16)f(seq\))0 1568 y({)191 1681 y(s->base_seq)f(=)i(seq;)191 1794 y(s->max_seq)e(=)i(seq;)191 1907 y(s->bad_seq)e(=)i(RTP_SEQ_MOD)e (+)j(1;)142 b(/*)47 b(so)h(seq)e(==)i(bad_seq)d(is)j(false)e(*/)191 2020 y(s->cycles)f(=)j(0;)191 2133 y(s->received)d(=)i(0;)191 2246 y(s->received_prior)c(=)k(0;)191 2359 y(s->expected_prior)c(=)k (0;)191 2472 y(/*)g(other)f(initialization)e(*/)0 2584 y(})0 2810 y(int)j(update_seq\(source)c(*s,)k(u_int16)f(seq\))0 2923 y({)191 3036 y(u_int16)g(udelta)g(=)h(seq)g(-)h(s->max_seq;)191 3149 y(const)e(int)h(MAX_DROPOUT)e(=)i(3000;)191 3262 y(const)f(int)h(MAX_MISORDER)e(=)i(100;)191 3375 y(const)f(int)h (MIN_SEQUENTIAL)d(=)k(2;)191 3601 y(/*)239 3714 y(*)f(Source)f(is)h (not)g(valid)g(until)f(MIN_SEQUENTIAL)e(packets)i(with)239 3826 y(*)h(sequential)e(sequence)h(numbers)f(have)i(been)g(received.) 239 3939 y(*/)191 4052 y(if)g(\(s->probation\))d({)382 4165 y(/*)j(packet)f(is)h(in)g(sequence)f(*/)382 4278 y(if)h(\(seq)g(==)g(s->max_seq)e(+)i(1\))g({)573 4391 y(s->probation--;)573 4504 y(s->max_seq)e(=)i(seq;)573 4617 y(if)g(\(s->probation)d(==)j(0\))g({)764 4730 y(init_seq\(s,)d (seq\);)764 4843 y(s->received++;)764 4956 y(return)i(1;)573 5068 y(})382 5181 y(})h(else)g({)573 5294 y(s->probation)d(=)k (MIN_SEQUENTIAL)c(-)j(1;)573 5407 y(s->max_seq)e(=)i(seq;)0 5656 y Fo(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(67])p eop %%Page: 68 68 68 67 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)382 399 y Fh(})382 511 y(return)46 b(0;)191 624 y(})h(else)g(if)g(\(udelta)f(max_seq\))e({)573 963 y(/*)620 1076 y(*)j(Sequence)d(number)i(wrapped)e(-)j(count)e(another)g(64K)h (cycle.)620 1189 y(*/)573 1302 y(s->cycles)e(+=)i(RTP_SEQ_MOD;)382 1415 y(})382 1528 y(s->max_seq)e(=)i(seq;)191 1641 y(})g(else)g(if)g (\(udelta)f(bad_seq\))e({)573 1979 y(/*)620 2092 y(*)j(Two)f(sequential)e(packets)h(--)h(assume)f (that)h(the)f(other)h(side)620 2205 y(*)h(restarted)d(without)h (telling)g(us)h(so)g(just)g(re-sync)620 2318 y(*)h(\(i.e.,)e(pretend)g (this)g(was)h(the)g(first)g(packet\).)620 2431 y(*/)573 2544 y(init_seq\(s,)d(seq\);)382 2657 y(})382 2770 y(else)i({)573 2883 y(s->bad_seq)f(=)i(\(seq)g(+)g(1\))g(&)h(\(RTP_SEQ_MOD-1\);)573 2995 y(return)e(0;)382 3108 y(})191 3221 y(})h(else)g({)382 3334 y(/*)g(duplicate)e(or)i(reordered)f(packet)g(*/)191 3447 y(})191 3560 y(s->received++;)191 3673 y(return)g(1;)0 3786 y(})0 4029 y Fo(The)29 b(v)-5 b(alidit)m(y)32 b(c)m(hec)m(k)f(can) f(b)s(e)f(made)h(stronger)g(requiring)g(more)g(than)f(t)m(w)m(o)j(pac)m (k)m(ets)f(in)f(sequence.)41 b(The)29 b(disad-)0 4142 y(v)-5 b(an)m(tages)32 b(are)f(that)g(a)g(larger)h(n)m(um)m(b)s(er)d (of)i(initial)g(pac)m(k)m(ets)i(will)e(b)s(e)f(discarded)f(\(or)i(dela) m(y)m(ed)h(in)f(a)f(queue\))62 b(and)0 4255 y(that)26 b(high)g(pac)m(k)m(et)h(loss)f(rates)g(could)g(prev)m(en)m(t)g(v)-5 b(alidation.)41 b(Ho)m(w)m(ev)m(er,)29 b(b)s(ecause)c(the)h(R)-8 b(TCP)25 b(header)h(v)-5 b(alidation)0 4367 y(is)28 b(relativ)m(ely)j (strong,)d(if)g(an)g(R)-8 b(TCP)28 b(pac)m(k)m(et)i(is)e(receiv)m(ed)h (from)f(a)h(source)f(b)s(efore)f(the)i(data)f(pac)m(k)m(ets,)j(the)d (coun)m(t)0 4480 y(could)33 b(b)s(e)g(adjusted)f(so)i(that)g(only)f(t)m (w)m(o)i(pac)m(k)m(ets)g(are)f(required)e(in)h(sequence.)50 b(If)32 b(initial)j(data)f(loss)g(for)f(a)g(few)0 4593 y(seconds)27 b(can)g(b)s(e)g(tolerated,)j(an)d(application)h Fi(ma)-6 b(y)28 b Fo(c)m(ho)s(ose)g(to)g(discard)f(all)h(data)f(pac)m (k)m(ets)i(from)e(a)g(source)h(un)m(til)0 4706 y(a)j(v)-5 b(alid)30 b(R)-8 b(TCP)30 b(pac)m(k)m(et)j(has)d(b)s(een)f(receiv)m(ed) j(from)e(that)h(source.)0 4858 y(Dep)s(ending)k(on)h(the)g(application) h(and)f(enco)s(ding,)h(algorithms)g(ma)m(y)f(exploit)h(additional)g (kno)m(wledge)g(ab)s(out)0 4971 y(the)27 b(pa)m(yload)h(format)g(for)f (further)e(v)-5 b(alidation.)41 b(F)-8 b(or)28 b(pa)m(yload)g(t)m(yp)s (es)f(where)g(the)g(timestamp)h(incremen)m(t)g(is)f(the)0 5084 y(same)g(for)f(all)h(pac)m(k)m(ets,)j(the)c(timestamp)h(v)-5 b(alues)27 b(can)g(b)s(e)e(predicted)i(from)f(the)g(previous)g(pac)m(k) m(et)j(receiv)m(ed)e(from)0 5197 y(the)k(same)f(source)h(using)f(the)g (sequence)h(n)m(um)m(b)s(er)e(di\013erence)i(\(assuming)f(no)h(c)m (hange)g(in)f(pa)m(yload)h(t)m(yp)s(e\).)0 5349 y(A)c(strong)g (\\fast-path")i(c)m(hec)m(k)f(is)f(p)s(ossible)g(since)g(with)f(high)h (probabilit)m(y)h(the)f(\014rst)f(four)g(o)s(ctets)i(in)f(the)g(header) 0 5656 y(Sc)m(h)m(ulzrinne,)j(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(68])p eop %%Page: 69 69 69 68 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(of)g(a)g(newly)f(receiv)m(ed)i(R)-8 b(TP)30 b(data)g(pac)m(k)m(et)h(will)f(b)s(e)f(just)g(the)h(same)g(as)g (that)g(of)g(the)g(previous)f(pac)m(k)m(et)j(from)d(the)0 511 y(same)j(SSR)m(C)f(except)h(that)g(the)g(sequence)g(n)m(um)m(b)s (er)e(will)i(ha)m(v)m(e)h(increased)f(b)m(y)f(one.)45 b(Similarly)-8 b(,)33 b(a)f(single-en)m(try)0 624 y(cac)m(he)k(ma)m(y)f (b)s(e)f(used)g(for)h(faster)g(SSR)m(C)e(lo)s(okups)i(in)f (applications)i(where)e(data)h(is)g(t)m(ypically)h(receiv)m(ed)g(from)0 737 y(one)31 b(source)f(at)h(a)g(time.)0 1018 y Fn(A.2)112 b(R)-9 b(TCP)36 b(Header)i(V)-9 b(alidit)m(y)37 b(Chec)m(ks)0 1229 y Fo(The)30 b(follo)m(wing)i(c)m(hec)m(ks)g(should)d(b)s(e)h (applied)g(to)h(R)-8 b(TCP)30 b(pac)m(k)m(ets.)136 1446 y Fj(\017)46 b Fo(R)-8 b(TP)30 b(v)m(ersion)h(\014eld)f(m)m(ust)h (equal)f(2.)136 1629 y Fj(\017)46 b Fo(The)30 b(pa)m(yload)i(t)m(yp)s (e)f(\014eld)f(of)h(the)f(\014rst)g(R)-8 b(TCP)30 b(pac)m(k)m(et)j(in)d (a)h(comp)s(ound)e(pac)m(k)m(et)k(m)m(ust)d(b)s(e)g(equal)h(to)h(SR)227 1742 y(or)f(RR.)136 1926 y Fj(\017)46 b Fo(The)28 b(padding)f(bit)h (\(P\))h(should)e(b)s(e)h(zero)h(for)f(the)g(\014rst)f(pac)m(k)m(et)k (of)d(a)g(comp)s(ound)f(R)-8 b(TCP)28 b(pac)m(k)m(et)i(b)s(ecause)227 2039 y(padding)g(should)f(only)i(b)s(e)e(applied,)i(if)f(it)h(is)f (needed,)h(to)g(the)f(last)i(pac)m(k)m(et.)136 2223 y Fj(\017)46 b Fo(The)35 b(length)i(\014elds)e(of)h(the)f(individual)h(R) -8 b(TCP)35 b(pac)m(k)m(ets)i(m)m(ust)f(add)f(up)f(to)j(the)f(o)m(v)m (erall)i(length)e(of)g(the)227 2336 y(comp)s(ound)29 b(R)-8 b(TCP)30 b(pac)m(k)m(et)i(as)f(receiv)m(ed.)42 b(This)30 b(is)g(a)h(fairly)f(strong)h(c)m(hec)m(k.)0 2552 y(The)21 b(co)s(de)h(fragmen)m(t)g(b)s(elo)m(w)g(p)s(erforms)e (all)j(of)e(these)h(c)m(hec)m(ks.)40 b(The)21 b(pac)m(k)m(et)i(t)m(yp)s (e)f(is)g(not)g(c)m(hec)m(k)m(ed)h(for)f(subsequen)m(t)0 2665 y(pac)m(k)m(ets)32 b(since)f(unkno)m(wn)e(pac)m(k)m(et)j(t)m(yp)s (es)f(ma)m(y)g(b)s(e)e(presen)m(t)i(and)e(should)h(b)s(e)g(ignored.)191 2905 y Fh(u_int32)46 b(len;)380 b(/*)48 b(length)e(of)h(compound)e (RTCP)i(packet)f(in)h(words)g(*/)191 3018 y(rtcp_t)f(*r;)476 b(/*)48 b(RTCP)e(header)g(*/)191 3131 y(rtcp_t)g(*end;)380 b(/*)48 b(end)f(of)g(compound)e(RTCP)i(packet)f(*/)191 3357 y(if)h(\(\(*\(u_int16)e(*\)r)i(&)g(RTCP_VALID_MASK\))d(!=)j (RTCP_VALID_VALUE\))c({)382 3470 y(/*)k(something)e(wrong)i(with)f (packet)g(format)g(*/)191 3583 y(})191 3696 y(end)h(=)g(\(rtcp_t)f (*\)\(\(u_int32)f(*\)r)i(+)g(len\);)191 3921 y(do)g(r)h(=)f(\(rtcp_t)f (*\)\(\(u_int32)f(*\)r)h(+)i(r->common.length)43 b(+)48 b(1\);)191 4034 y(while)e(\(r)h(common.version)c(==)k (2\);)191 4260 y(if)g(\(r)g(!=)g(end\))g({)382 4373 y(/*)g(something)e (wrong)i(with)f(packet)g(format)g(*/)191 4486 y(})0 4858 y Fn(A.3)112 b(Determining)38 b(Num)m(b)s(er)g(of)g(P)m(ac)m(k)m(ets)e (Exp)s(ected)i(and)g(Lost)0 5068 y Fo(In)30 b(order)h(to)h(compute)g (pac)m(k)m(et)h(loss)e(rates,)i(the)e(n)m(um)m(b)s(er)f(of)h(R)-8 b(TP)31 b(pac)m(k)m(ets)j(exp)s(ected)d(and)g(actually)i(receiv)m(ed)0 5181 y(from)28 b(eac)m(h)i(source)e(needs)g(to)h(b)s(e)f(kno)m(wn,)h (using)f(p)s(er-source)g(state)h(information)g(de\014ned)e(in)i Fh(struct)46 b(source)0 5294 y Fo(referenced)31 b(via)g(p)s(oin)m(ter)g Fh(s)g Fo(in)f(the)h(co)s(de)g(b)s(elo)m(w.)42 b(The)31 b(n)m(um)m(b)s(er)e(of)i(pac)m(k)m(ets)i(receiv)m(ed)f(is)f(simply)f (the)h(coun)m(t)h(of)0 5407 y(pac)m(k)m(ets)37 b(as)f(they)g(arriv)m (e,)i(including)d(an)m(y)h(late)h(or)e(duplicate)h(pac)m(k)m(ets.)58 b(The)35 b(n)m(um)m(b)s(er)f(of)i(pac)m(k)m(ets)i(exp)s(ected)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(69])p eop %%Page: 70 70 70 69 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(can)k(b)s(e)g(computed)g(b)m(y)g(the)g(receiv) m(er)h(as)g(the)f(di\013erence)g(b)s(et)m(w)m(een)h(the)f(highest)g (sequence)h(n)m(um)m(b)s(er)e(receiv)m(ed)0 511 y(\()p Fh(s->max_seq)p Fo(\))c(and)i(the)g(\014rst)g(sequence)g(n)m(um)m(b)s (er)f(receiv)m(ed)j(\()p Fh(s->base_seq)p Fo(\).)41 b(Since)31 b(the)h(sequence)f(n)m(um)m(b)s(er)0 624 y(is)j(only)f(16)i(bits)e(and) g(will)h(wrap)f(around,)g(it)h(is)g(necessary)g(to)g(extend)g(the)f (highest)h(sequence)g(n)m(um)m(b)s(er)e(with)0 737 y(the)c(\(shifted\)) g(coun)m(t)h(of)f(sequence)g(n)m(um)m(b)s(er)f(wraparounds)f(\()p Fh(s->cycles)p Fo(\).)38 b(Both)28 b(the)g(receiv)m(ed)h(pac)m(k)m(et)h (coun)m(t)0 850 y(and)g(the)g(coun)m(t)h(of)g(cycles)g(are)g(main)m (tained)g(the)g(R)-8 b(TP)30 b(header)g(v)-5 b(alidit)m(y)32 b(c)m(hec)m(k)g(routine)e(in)h(App)s(endix)d(A.1.)191 1067 y Fh(extended_max)44 b(=)k(s->cycles)d(+)j(s->max_seq;)191 1180 y(expected)d(=)j(extended_max)c(-)k(s->base_seq)d(+)i(1;)0 1397 y Fo(The)37 b(n)m(um)m(b)s(er)g(of)h(pac)m(k)m(ets)h(lost)g(is)f (de\014ned)e(to)j(b)s(e)e(the)h(n)m(um)m(b)s(er)e(of)i(pac)m(k)m(ets)i (exp)s(ected)e(less)g(the)g(n)m(um)m(b)s(er)f(of)0 1510 y(pac)m(k)m(ets)32 b(actually)g(receiv)m(ed:)191 1727 y Fh(lost)47 b(=)g(expected)f(-)h(s->received;)0 1944 y Fo(Since)33 b(this)f(signed)h(n)m(um)m(b)s(er)f(is)g(carried)h(in)g (24)g(bits,)h(it)f(should)f(b)s(e)g(clamp)s(ed)h(at)g(0x7\013\013f)h (for)e(p)s(ositiv)m(e)i(loss)f(or)0 2057 y(0x800000)g(for)e(negativ)m (e)h(loss)f(rather)f(than)g(wrapping)g(around.)0 2209 y(The)f(fraction)h(of)f(pac)m(k)m(ets)i(lost)g(during)d(the)h(last)h (rep)s(orting)f(in)m(terv)-5 b(al)31 b(\(since)f(the)f(previous)g(SR)g (or)g(RR)g(pac)m(k)m(et)0 2322 y(w)m(as)44 b(sen)m(t\))h(is)f (calculated)i(from)d(di\013erences)h(in)g(the)g(exp)s(ected)g(and)f (receiv)m(ed)i(pac)m(k)m(et)h(coun)m(ts)e(across)h(the)0 2435 y(in)m(terv)-5 b(al,)50 b(where)44 b Fh(expected_prior)c Fo(and)k Fh(received_prior)d Fo(are)k(the)g(v)-5 b(alues)44 b(sa)m(v)m(ed)i(when)e(the)g(previous)0 2548 y(reception)31 b(rep)s(ort)f(w)m(as)h(generated:)191 2765 y Fh(expected_interval)43 b(=)k(expected)f(-)h(s->expected_prior;)191 2878 y(s->expected_prior)c (=)k(expected;)191 2991 y(received_interval)c(=)k(s->received)e(-)j (s->received_prior;)191 3104 y(s->received_prior)43 b(=)k(s->received;) 191 3217 y(lost_interval)d(=)k(expected_interval)43 b(-)k (received_interval;)191 3329 y(if)g(\(expected_interval)c(==)k(0)h(||)f (lost_interval)d(src)g(=)h(src;)191 737 y(rsp)g(=)g(&s->item[0];)191 963 y(/*)g(SDES)g(items)f(*/)191 1076 y(for)h(\(i)g(=)g(0;)h(i)f(type)e(=)j(type[i];)382 1302 y(len)f(=)g(length[i];)382 1415 y(if)g(\(len)g(>)g(RTP_MAX_SDES\)) d({)573 1528 y(/*)j(invalid)f(length,)g(may)g(want)h(to)g(take)g(other) f(action)g(*/)573 1641 y(len)h(=)g(RTP_MAX_SDES;)382 1753 y(})382 1866 y(rsp->length)e(=)i(len;)382 1979 y (memcpy\(rsp->data,)c(value[i],)i(len\);)382 2092 y(rsp)i(=)g (\(rtcp_sdes_item_t)c(*\)&rsp->data[len];)191 2205 y(})191 2431 y(/*)k(terminate)e(with)i(end)g(marker)f(and)h(pad)g(to)g(next)g (4-octet)e(boundary)h(*/)191 2544 y(len)h(=)g(\(\(char)f(*\))i(rsp\))e (-)i(b;)191 2657 y(pad)f(=)g(4)h(-)f(\(len)g(&)g(0x3\);)191 2770 y(b)g(=)h(\(char)e(*\))h(rsp;)191 2883 y(while)f(\(pad--\))g(*b++) h(=)g(RTCP_SDES_END;)191 3108 y(return)f(b;)0 3221 y(})0 3594 y Fn(A.5)112 b(P)m(arsing)38 b(R)-9 b(TCP)36 b(SDES)h(P)m(ac)m(k)m (ets)0 3805 y Fo(This)g(function)h(parses)g(an)h(SDES)e(pac)m(k)m(et,) 43 b(calling)c(functions)f Fh(find_member\(\))d Fo(to)k(\014nd)e(a)h(p) s(oin)m(ter)h(to)g(the)0 3918 y(information)33 b(for)f(a)i(session)e (mem)m(b)s(er)g(giv)m(en)i(the)f(SSR)m(C)f(iden)m(ti\014er)h(and)f Fh(member_sdes\(\))d Fo(to)k(store)h(the)e(new)0 4031 y(SDES)i(information)h(for)g(that)g(mem)m(b)s(er.)53 b(This)34 b(function)h(exp)s(ects)g(a)g(p)s(oin)m(ter)g(to)g(the)g (header)g(of)g(the)f(R)-8 b(TCP)0 4144 y(pac)m(k)m(et.)0 4391 y Fh(void)47 b(rtp_read_sdes\(rtcp_t)42 b(*r\))0 4504 y({)191 4617 y(int)47 b(count)f(=)i(r->common.count;)191 4730 y(rtcp_sdes_t)d(*sd)i(=)g(&r->r.sdes;)191 4843 y(rtcp_sdes_item_t) c(*rsp,)k(*rspn;)191 4956 y(rtcp_sdes_item_t)c(*end)k(=)g (\(rtcp_sdes_item_t)c(*\))1336 5068 y(\(\(u_int32)j(*\)r)h(+)g (r->common.length)c(+)48 b(1\);)191 5181 y(source)e(*s;)191 5407 y(while)g(\(--count)g(>=)h(0\))g({)0 5656 y Fo(Sc)m(h)m(ulzrinne,) 30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(71])p eop %%Page: 72 72 72 71 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)382 399 y Fh(rsp)47 b(=)g(&sd->item[0];)382 511 y(if)g(\(rsp)g(>=)g(end\))f(break;)382 624 y(s)h(=)h (find_member\(sd->src\);)382 850 y(for)f(\(;)g(rsp->type;)e(rsp)i(=)g (rspn)g(\))g({)573 963 y(rspn)f(=)i(\(rtcp_sdes_item_t)43 b(*\)\(\(char*\)rsp+rsp->lengt)o(h+2\))o(;)573 1076 y(if)k(\(rspn)f(>=) h(end\))g({)764 1189 y(rsp)g(=)g(rspn;)764 1302 y(break;)573 1415 y(})573 1528 y(member_sdes\(s,)d(rsp->type,)h(rsp->data,)g (rsp->length\);)382 1641 y(})382 1753 y(sd)i(=)g(\(rtcp_sdes_t)e(*\)) 620 1866 y(\(\(u_int32)h(*\)sd)g(+)i(\(\(\(char)e(*\)rsp)g(-)h(\(char)g (*\)sd\))f(>>)h(2\)+1\);)191 1979 y(})191 2092 y(if)g(\(count)f(>=)h (0\))h({)382 2205 y(/*)f(invalid)f(packet)g(format)g(*/)191 2318 y(})0 2431 y(})0 2804 y Fn(A.6)112 b(Generating)38 b(a)g(Random)g(32-bit)g(Iden)m(ti\014er)0 3015 y Fo(The)e(follo)m(wing) i(subroutine)e(generates)h(a)g(random)f(32-bit)i(iden)m(ti\014er)f (using)f(the)h(MD5)g(routines)g(published)0 3128 y(in)i(RF)m(C)g(1321)h ([32)r(].)66 b(The)39 b(system)g(routines)f(ma)m(y)i(not)f(b)s(e)f (presen)m(t)h(on)g(all)h(op)s(erating)f(systems,)j(but)c(they)0 3241 y(should)33 b(serv)m(e)h(as)g(hin)m(ts)g(as)g(to)h(what)f(kinds)e (of)i(information)h(ma)m(y)f(b)s(e)f(used.)51 b(Other)33 b(system)h(calls)h(that)f(ma)m(y)0 3354 y(b)s(e)c(appropriate)g (include)136 3581 y Fj(\017)46 b Fh(getdomainname\(\))p Fo(,)136 3768 y Fj(\017)g Fh(getwd\(\))p Fo(,)29 b(or)136 3956 y Fj(\017)46 b Fh(getrusage\(\))p Fo(.)0 4183 y(\\Liv)m(e")33 b(video)e(or)g(audio)g(samples)g(are)g(also)h(a)f(go)s(o)s(d)f(source)h (of)g(random)f(n)m(um)m(b)s(ers,)g(but)g(care)i(m)m(ust)f(b)s(e)f(tak)m (en)0 4296 y(to)h(a)m(v)m(oid)h(using)e(a)h(turned-o\013)f(microphone)g (or)g(blinded)f(camera)j(as)e(a)h(source)g([17)q(].)0 4448 y(Use)d(of)g(this)g(or)g(a)g(similar)g(routine)g(is)g(recommended) f(to)h(generate)i(the)e(initial)h(seed)f(for)f(the)h(random)f(n)m(um)m (b)s(er)0 4561 y(generator)e(pro)s(ducing)d(the)h(R)-8 b(TCP)23 b(p)s(erio)s(d)f(\(as)i(sho)m(wn)f(in)g(App)s(endix)f(A.7\),)k (to)e(generate)h(the)f(initial)g(v)-5 b(alues)24 b(for)0 4673 y(the)32 b(sequence)g(n)m(um)m(b)s(er)f(and)g(timestamp,)i(and)e (to)h(generate)i(SSR)m(C)d(v)-5 b(alues.)45 b(Since)32 b(this)f(routine)h(is)g(lik)m(ely)h(to)0 4786 y(b)s(e)d(CPU-in)m (tensiv)m(e,)j(its)e(direct)g(use)g(to)g(generate)i(R)-8 b(TCP)30 b(p)s(erio)s(ds)f(is)i(inappropriate)g(b)s(ecause)f (predictabilit)m(y)0 4899 y(is)e(not)g(an)g(issue.)40 b(Note)30 b(that)e(this)g(routine)g(pro)s(duces)f(the)i(same)f(result)g (on)g(rep)s(eated)g(calls)i(un)m(til)e(the)g(v)-5 b(alue)29 b(of)0 5012 y(the)i(system)f(clo)s(c)m(k)i(c)m(hanges)f(unless)f (di\013eren)m(t)h(v)-5 b(alues)30 b(are)h(supplied)e(for)h(the)h Fh(type)e Fo(argumen)m(t.)0 5264 y Fh(/*)48 5377 y(*)47 b(Generate)f(a)h(random)f(32-bit)g(quantity.)0 5656 y Fo(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(72])p eop %%Page: 73 73 73 72 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)48 399 y Fh(*/)0 511 y(#include)46 b()139 b(/*)47 b(u_long)f(*/)0 624 y(#include)g()187 b(/*)47 b(gettimeofday\(\))d(*/)0 737 y(#include)i()283 b(/*)47 b(get..\(\))f(*/)0 850 y(#include)g()331 b(/*)47 b(printf\(\))f(*/)0 963 y(#include)g()379 b(/*)47 b(clock\(\))f(*/)0 1076 y(#include)g()d(/*)k (uname\(\))f(*/)0 1189 y(#include)g("global.h")283 b(/*)47 b(from)g(RFC)g(1321)g(*/)0 1302 y(#include)f("md5.h")427 b(/*)47 b(from)g(RFC)g(1321)g(*/)0 1528 y(#define)f(MD_CTX)g(MD5_CTX)0 1641 y(#define)g(MDInit)g(MD5Init)0 1753 y(#define)g(MDUpdate)f (MD5Update)0 1866 y(#define)h(MDFinal)g(MD5Final)0 2092 y(static)g(u_long)g(md_32\(char)f(*string,)h(int)h(length\))0 2205 y({)191 2318 y(MD_CTX)f(context;)191 2431 y(union)g({)382 2544 y(char)142 b(c[16];)382 2657 y(u_long)46 b(x[4];)191 2770 y(})h(digest;)191 2883 y(u_long)f(r;)191 2995 y(int)h(i;)191 3221 y(MDInit)f(\(&context\);)191 3334 y(MDUpdate)f(\(&context,)g (string,)h(length\);)191 3447 y(MDFinal)g(\(\(unsigned)f(char)h (*\)&digest,)f(&context\);)191 3560 y(r)i(=)h(0;)191 3673 y(for)f(\(i)g(=)g(0;)h(i)f(ts)p Fo(,)g(the)g(timestamp)h(from)e (the)h(incoming)h(pac)m(k)m(et,)j(and)0 4031 y Fh(arrival)p Fo(,)35 b(the)h(curren)m(t)g(time)g(in)g(the)f(same)i(units.)56 b(Here)36 b Fh(s)f Fo(p)s(oin)m(ts)h(to)g(state)i(for)d(the)h(source;)j Fh(s->transit)0 4144 y Fo(holds)33 b(the)g(relativ)m(e)j(transit)e (time)g(for)f(the)g(previous)g(pac)m(k)m(et,)j(and)d Fh(s->jitter)e Fo(holds)i(the)g(estimated)i(jitter.)0 4257 y(The)24 b(jitter)h(\014eld)f(of)h(the)f(reception)h(rep)s(ort)f (is)h(measured)e(in)i(timestamp)g(units)e(and)h(expressed)g(as)h(an)f (unsigned)0 4370 y(in)m(teger,)37 b(but)c(the)h(jitter)h(estimate)h(is) e(k)m(ept)h(in)f(a)h(\015oating)g(p)s(oin)m(t.)52 b(As)34 b(eac)m(h)h(data)g(pac)m(k)m(et)h(arriv)m(es,)g(the)e(jitter)0 4483 y(estimate)e(is)f(up)s(dated:)191 4710 y Fh(int)47 b(transit)f(=)h(arrival)f(-)h(r->ts;)191 4823 y(int)g(d)g(=)h(transit)e (-)h(s->transit;)191 4936 y(s->transit)e(=)i(transit;)191 5048 y(if)g(\(d)g(jitter)d(+=)i (\(1./16.\))f(*)h(\(\(double\)d)e(-)j(s->jitter\);)0 5656 y Fo(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(80])p eop %%Page: 81 81 81 80 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(When)c(a)h(reception)h(rep)s(ort)e(blo)s(c)m (k)h(\(to)g(whic)m(h)g Fh(rr)f Fo(p)s(oin)m(ts\))g(is)h(generated)g (for)g(this)f(mem)m(b)s(er,)h(the)g(curren)m(t)f(jitter)0 511 y(estimate)32 b(is)f(returned:)191 723 y Fh(rr->jitter)45 b(=)i(\(u_int32\))f(s->jitter;)0 935 y Fo(Alternativ)m(ely)-8 b(,)40 b(the)c(jitter)g(estimate)h(can)f(b)s(e)f(k)m(ept)h(as)g(an)g (in)m(teger,)i(but)d(scaled)i(to)f(reduce)f(round-o\013)g(error.)0 1048 y(The)30 b(calculation)i(is)f(the)f(same)h(except)h(for)e(the)g (last)i(line:)191 1260 y Fh(s->jitter)45 b(+=)i(d)h(-)f(\(\(s->jitter)e (+)i(8\))h(>>)f(4\);)0 1472 y Fo(In)30 b(this)g(case,)i(the)e(estimate) i(is)f(sampled)f(for)g(the)g(reception)i(rep)s(ort)d(as:)191 1684 y Fh(rr->jitter)45 b(=)i(s->jitter)f(>>)h(4;)0 2007 y Fm(App)t(endix)d(B.)134 b(Changes)46 b(from)f(RF)l(C)g(1889)0 2249 y Fo(Most)26 b(of)f(this)g(RF)m(C)g(is)g(iden)m(tical)i(to)f(RF)m (C)f(1889.)41 b(There)24 b(are)i(no)f(c)m(hanges)h(in)e(the)i(pac)m(k)m (et)h(formats)e(on)g(the)g(wire,)0 2362 y(only)33 b(c)m(hanges)g(to)h (the)e(rules)g(and)g(algorithms)i(go)m(v)m(erning)g(ho)m(w)f(the)f (proto)s(col)i(is)e(used.)47 b(The)32 b(biggest)i(c)m(hange)0 2475 y(is)c(an)h(enhancemen)m(t)g(to)g(the)f(scalable)i(timer)f (algorithm)g(for)f(calculating)j(when)c(to)j(send)d(R)-8 b(TCP)30 b(pac)m(k)m(ets:)136 2687 y Fj(\017)46 b Fo(The)23 b(algorithm)i(for)e(calculating)j(the)e(R)-8 b(TCP)23 b(transmission)g(in)m(terv)-5 b(al)25 b(sp)s(eci\014ed)e(in)g(Sections) h(6.2)h(and)e(6.3)227 2799 y(and)i(illustrated)g(in)g(App)s(endix)e (A.7)j(is)f(augmen)m(ted)h(to)f(include)g(\\reconsideration")i(to)e (minimize)h(trans-)227 2912 y(mission)31 b(in)f(excess)i(of)f(the)g(in) m(tended)g(rate)g(when)f(man)m(y)h(participan)m(ts)h(join)e(a)i (session)e(sim)m(ultaneously)-8 b(,)227 3025 y(and)29 b(\\rev)m(erse)i(reconsideration")g(to)f(reduce)f(the)h(incidence)g (and)f(duration)g(of)h(false)g(participan)m(t)h(time-)227 3138 y(outs)i(when)e(the)h(n)m(um)m(b)s(er)f(of)h(participan)m(ts)h (drops)e(rapidly)-8 b(.)46 b(Rev)m(erse)33 b(reconsideration)h(is)e (also)h(used)e(to)227 3251 y(p)s(ossibly)c(shorten)h(the)g(dela)m(y)h (b)s(efore)f(sending)f(R)-8 b(TCP)28 b(SR)f(when)g(transitioning)i (from)f(passiv)m(e)g(receiv)m(er)227 3364 y(to)j(activ)m(e)i(sender)d (mo)s(de.)136 3546 y Fj(\017)46 b Fo(Section)38 b(6.3.7)h(sp)s (eci\014es)e(new)f(rules)h(con)m(trolling)i(when)d(an)h(R)-8 b(TCP)37 b(BYE)g(pac)m(k)m(et)i(should)d(b)s(e)h(sen)m(t)g(in)227 3659 y(order)30 b(to)h(a)m(v)m(oid)h(a)f(\015o)s(o)s(d)e(of)i(pac)m(k)m (ets)h(when)d(man)m(y)i(participan)m(ts)g(lea)m(v)m(e)i(a)e(session)f (sim)m(ultaneously)-8 b(.)136 3840 y Fj(\017)46 b Fo(The)37 b(requiremen)m(t)h(to)h(retain)f(state)h(for)e(inactiv)m(e)j (participan)m(ts)e(for)f(a)h(p)s(erio)s(d)f(long)h(enough)f(to)i(span) 227 3953 y(t)m(ypical)34 b(net)m(w)m(ork)f(partitions)g(w)m(as)g(remo)m (v)m(ed)g(from)f(Section)h(6.2.1.)49 b(In)32 b(a)g(session)h(where)f (man)m(y)g(partic-)227 4066 y(ipan)m(ts)g(join)g(for)g(a)g(brief)f (time)i(and)e(fail)h(to)h(send)e(BYE,)h(this)g(requiremen)m(t)g(w)m (ould)f(cause)i(a)f(signi\014can)m(t)227 4179 y(o)m(v)m(erestimate)j (of)d(the)g(n)m(um)m(b)s(er)f(of)h(participan)m(ts.)46 b(The)31 b(reconsideration)i(algorithm)f(added)g(in)f(this)h(re-)227 4292 y(vision)i(comp)s(ensates)g(for)g(the)g(large)g(n)m(um)m(b)s(er)f (of)h(new)f(participan)m(ts)i(joining)e(sim)m(ultaneously)i(when)e(a) 227 4405 y(partition)e(heals.)0 4617 y(It)f(should)f(b)s(e)h(noted)g (that)h(these)f(enhancemen)m(ts)h(only)f(ha)m(v)m(e)h(a)g(signi\014can) m(t)g(e\013ect)g(when)e(the)i(n)m(um)m(b)s(er)d(of)j(ses-)0 4730 y(sion)h(participan)m(ts)g(is)g(large)g(\(thousands\))f(and)g (most)h(of)g(the)g(participan)m(ts)g(join)g(or)f(lea)m(v)m(e)j(at)e (the)g(same)g(time.)0 4843 y(This)27 b(mak)m(es)i(testing)g(in)f(a)g (liv)m(e)i(net)m(w)m(ork)f(di\016cult.)40 b(Ho)m(w)m(ev)m(er,)30 b(the)f(algorithm)g(w)m(as)f(sub)5 b(jected)28 b(to)h(a)f(thorough)0 4956 y(analysis)36 b(and)f(sim)m(ulation)i(to)f(v)m(erify)g(its)g(p)s (erformance.)55 b(F)-8 b(urthermore,)37 b(the)f(enhanced)f(algorithm)i (w)m(as)f(de-)0 5068 y(signed)30 b(to)g(in)m(terop)s(erate)h(with)e (the)h(algorithm)g(in)g(RF)m(C)g(1889)h(suc)m(h)e(that)h(the)g(degree)h (of)e(reduction)h(in)f(excess)0 5181 y(R)-8 b(TCP)29 b(bandwidth)f(during)g(a)i(step)f(join)h(is)f(prop)s(ortional)h(to)g (the)g(fraction)g(of)g(participan)m(ts)g(that)g(implemen)m(t)0 5294 y(the)h(enhanced)f(algorithm.)43 b(In)m(terop)s(eration)32 b(of)f(the)g(t)m(w)m(o)h(algorithms)g(has)e(b)s(een)g(v)m(eri\014ed)h (exp)s(erimen)m(tally)h(on)0 5407 y(liv)m(e)g(net)m(w)m(orks.)0 5656 y(Sc)m(h)m(ulzrinne,)e(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(81])p eop %%Page: 82 82 82 81 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y(Other)g(functional)h(c)m(hanges)g(w)m(ere:)136 625 y Fj(\017)46 b Fo(Section)37 b(6.2.1)h(sp)s(eci\014es)d(that)i (implemen)m(tations)g(ma)m(y)f(store)h(only)f(a)g(sampling)g(of)g(the)g (participan)m(ts')227 738 y(SSR)m(C)20 b(iden)m(ti\014ers)g(to)h(allo)m (w)h(scaling)f(to)g(v)m(ery)g(large)g(sessions.)37 b(Algorithms)21 b(are)g(sp)s(eci\014ed)e(in)h(RF)m(C)h(2762)h([21)q(].)136 926 y Fj(\017)46 b Fo(In)37 b(Section)i(6.2)g(it)f(is)g(sp)s(eci\014ed) f(that)h(R)-8 b(TCP)37 b(sender)g(and)g(non-sender)g(bandwidths)f(ma)m (y)i(b)s(e)f(set)i(as)227 1039 y(separate)33 b(parameters)f(of)g(the)h (session)f(rather)f(than)h(a)g(strict)h(p)s(ercen)m(tage)g(of)f(the)g (session)h(bandwidth,)227 1152 y(and)c(ma)m(y)h(b)s(e)f(set)h(to)g (zero.)41 b(The)29 b(requiremen)m(t)h(that)g(R)-8 b(TCP)28 b(w)m(as)i(mandatory)g(for)f(R)-8 b(TP)29 b(sessions)g(using)227 1265 y(IP)k(m)m(ulticast)i(w)m(as)e(relaxed.)50 b(Ho)m(w)m(ev)m(er,)36 b(a)d(clari\014cation)i(w)m(as)f(also)g(added)e(that)i(turning)e(o\013) h(R)-8 b(TCP)33 b(is)227 1377 y Fi(not)h(recommended)p Fo(.)136 1565 y Fj(\017)46 b Fo(In)27 b(Sections)h(6.2,)h(6.3.1)g(and)e (App)s(endix)f(A.7,)j(it)e(is)h(sp)s(eci\014ed)e(that)i(the)g(fraction) g(of)f(participan)m(ts)i(b)s(elo)m(w)227 1678 y(whic)m(h)e(senders)f (get)i(dedicated)f(R)-8 b(TCP)27 b(bandwidth)e(c)m(hanges)j(from)e(the) h(\014xed)f(1/4)j(to)e(a)h(ratio)f(based)g(on)227 1791 y(the)e(R)-8 b(TCP)24 b(sender)f(and)h(non-sender)f(bandwidth)g (parameters)i(when)e(those)i(are)g(giv)m(en.)39 b(The)24 b(condition)227 1904 y(that)29 b(no)g(bandwidth)d(is)j(dedicated)g(to)g (senders)f(when)f(there)i(are)f(no)h(senders)e(w)m(as)i(remo)m(v)m(ed)h (since)e(that)227 2017 y(is)43 b(exp)s(ected)h(to)g(b)s(e)e(a)h (transitory)h(state.)80 b(It)43 b(also)h(k)m(eeps)f(non-senders)f(from) h(using)f(sender)g(R)-8 b(TCP)227 2130 y(bandwidth)29 b(when)g(that)i(is)g(not)f(in)m(tended.)136 2317 y Fj(\017)46 b Fo(Also)31 b(in)f(Section)g(6.2)h(it)g(is)f(sp)s(eci\014ed)f(that)h (the)h(minim)m(um)e(R)-8 b(TCP)29 b(in)m(terv)-5 b(al)31 b(ma)m(y)g(b)s(e)e(scaled)i(to)f(smaller)227 2430 y(v)-5 b(alues)35 b(for)e(high)h(bandwidth)e(sessions,)j(and)e(that)i(the)f (initial)h(R)-8 b(TCP)34 b(dela)m(y)g(ma)m(y)h(b)s(e)e(set)i(to)f(zero) h(for)227 2543 y(unicast)c(sessions.)136 2731 y Fj(\017)46 b Fo(Timing)30 b(out)h(a)f(participan)m(t)h(is)f(to)h(b)s(e)f(based)f (on)h(inactivit)m(y)j(for)c(a)i(n)m(um)m(b)s(er)e(of)h(R)-8 b(TCP)29 b(rep)s(ort)h(in)m(terv)-5 b(als)227 2844 y(calculated)33 b(using)c(the)i(receiv)m(er)h(R)-8 b(TCP)30 b(bandwidth)e(fraction)j (ev)m(en)g(for)g(activ)m(e)h(senders.)136 3031 y Fj(\017)46 b Fo(Sections)40 b(7.2)g(and)e(7.3)i(sp)s(ecify)f(that)g(translators)h (and)e(mixers)h(should)f(send)g(BYE)h(pac)m(k)m(ets)i(for)e(the)227 3144 y(sources)31 b(they)f(are)h(no)f(longer)h(forw)m(arding.)136 3332 y Fj(\017)46 b Fo(Rule)c(c)m(hanges)h(for)e(la)m(y)m(ered)i(enco)s (dings)e(are)h(de\014ned)f(in)g(Sections)h(2.4,)k(6.3.9,)h(8.3)42 b(and)g(11.)75 b(In)41 b(the)227 3445 y(last)d(of)e(these,)j(it)e(is)g (noted)f(that)h(the)g(address)f(and)g(p)s(ort)g(assignmen)m(t)h(rule)f (con\015icts)h(with)f(the)h(SDP)227 3558 y(sp)s(eci\014cation,)25 b(RF)m(C)e(2327)g([15)r(],)h(but)d(it)i(is)f(in)m(tended)g(that)h(this) f(restriction)h(will)f(b)s(e)g(relaxed)g(in)g(a)h(revision)227 3671 y(of)31 b(RF)m(C)g(2327.)136 3858 y Fj(\017)46 b Fo(The)29 b(con)m(v)m(en)m(tion)i(for)e(using)g(ev)m(en/o)s(dd)g(p)s (ort)f(pairs)h(for)g(R)-8 b(TP)29 b(and)f(R)-8 b(TCP)29 b(in)f(Section)i(11)g(w)m(as)g(clari\014ed)227 3971 y(to)j(refer)g(to)g (destination)g(p)s(orts.)46 b(The)32 b(requiremen)m(t)h(to)g(use)f(an)g (ev)m(en/o)s(dd)h(p)s(ort)f(pair)g(w)m(as)h(remo)m(v)m(ed)g(if)227 4084 y(the)i(t)m(w)m(o)h(p)s(orts)e(are)i(sp)s(eci\014ed)e(explicitly) -8 b(.)56 b(F)-8 b(or)35 b(unicast)h(R)-8 b(TP)34 b(sessions,)i (distinct)g(p)s(ort)e(pairs)g(ma)m(y)i(b)s(e)227 4197 y(used)30 b(for)g(the)h(t)m(w)m(o)g(ends)f(\(Sections)h(3,)g(7.1)h(and) d(11\).)136 4385 y Fj(\017)46 b Fo(A)27 b(new)f(Section)h(10)g(w)m(as)g (added)f(to)h(explain)g(the)g(requiremen)m(t)f(for)h(congestion)h(con)m (trol)g(in)e(applications)227 4497 y(using)k(R)-8 b(TP)g(.)136 4685 y Fj(\017)46 b Fo(In)38 b(Section)h(8.2,)j(the)d(requiremen)m(t)f (that)h(a)g(new)f(SSR)m(C)g(iden)m(ti\014er)g Fi(must)g Fo(b)s(e)f(c)m(hosen)i(whenev)m(er)g(the)227 4798 y(source)30 b(transp)s(ort)f(address)f(is)i(c)m(hanged)g(has)g(b)s(een)e(relaxed)j (to)f(sa)m(y)g(that)g(a)g(new)f(SSR)m(C)g(iden)m(ti\014er)h Fi(ma)-6 b(y)227 4911 y Fo(b)s(e)41 b(c)m(hosen.)75 b(Corresp)s (ondingly)-8 b(,)43 b(it)f(w)m(as)g(clari\014ed)g(that)g(an)g(implemen) m(tation)h Fi(ma)-6 b(y)42 b Fo(c)m(ho)s(ose)h(to)f(k)m(eep)227 5024 y(pac)m(k)m(ets)33 b(from)e(the)h(new)f(source)g(address)g(rather) g(than)g(the)h(existing)g(source)g(address)e(when)h(an)g(SSR)m(C)227 5137 y(collision)37 b(o)s(ccurs)e(b)s(et)m(w)m(een)h(t)m(w)m(o)g(other) g(participan)m(ts,)h(and)e Fi(should)e Fo(do)i(so)h(for)f(applications) h(suc)m(h)f(as)227 5250 y(telephon)m(y)40 b(in)f(whic)m(h)f(some)i (sources)f(suc)m(h)f(as)i(mobile)f(en)m(tities)i(ma)m(y)f(c)m(hange)g (addresses)e(during)g(the)227 5363 y(course)31 b(of)f(an)h(R)-8 b(TP)30 b(session.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(82])p eop %%Page: 83 83 83 82 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)136 399 y Fj(\017)46 b Fo(An)33 b(inden)m(tation)i (bug)d(in)i(the)f(RF)m(C)h(1889)h(prin)m(ting)e(of)h(the)f(pseudo-co)s (de)h(for)f(the)g(collision)i(detection)227 511 y(and)23 b(resolution)h(algorithm)g(in)f(Section)h(8.2)h(has)e(b)s(een)f (corrected)j(b)m(y)e(translating)h(the)g(syn)m(tax)g(to)g(pseudo)227 624 y(C)35 b(language,)i(and)e(the)g(algorithm)h(has)e(b)s(een)h(mo)s (di\014ed)e(to)j(remo)m(v)m(e)g(the)g(restriction)f(that)h(b)s(oth)e(R) -8 b(TP)227 737 y(and)30 b(R)-8 b(TCP)30 b(m)m(ust)g(b)s(e)g(sen)m(t)h (from)f(the)g(same)h(source)g(p)s(ort)e(n)m(um)m(b)s(er.)136 925 y Fj(\017)46 b Fo(The)29 b(description)h(of)f(the)h(padding)f(mec)m (hanism)g(for)h(R)-8 b(TCP)28 b(pac)m(k)m(ets)k(w)m(as)e(clari\014ed)f (and)g(it)h(is)g(sp)s(eci\014ed)227 1038 y(that)h(padding)g Fi(must)e Fo(only)i(b)s(e)f(applied)g(to)h(the)f(last)i(pac)m(k)m(et)g (of)e(a)h(comp)s(ound)e(R)-8 b(TCP)30 b(pac)m(k)m(et.)136 1225 y Fj(\017)46 b Fo(In)29 b(Section)i(A.1,)g(initialization)i(of)c (base)p 1661 1225 28 4 v 33 w(seq)h(w)m(as)h(corrected)f(to)h(b)s(e)e (seq)h(rather)g(than)f(seq)h(-)g(1,)h(and)e(the)227 1338 y(text)40 b(w)m(as)g(corrected)g(to)f(sa)m(y)h(the)f(bad)f(sequence)i (n)m(um)m(b)s(er)d(plus)h(1)i(is)f(stored.)66 b(The)39 b(initialization)j(of)227 1451 y(max)p 401 1451 V 33 w(seq)27 b(and)e(other)h(v)-5 b(ariables)27 b(for)f(the)h(algorithm)g (w)m(as)f(separated)h(from)f(the)g(text)h(to)g(mak)m(e)g(clear)g(that) 227 1564 y(this)g(initialization)j(m)m(ust)c(b)s(e)g(done)h(in)f (addition)h(to)h(calling)g(the)f(init)p 2626 1564 V 33 w(seq\(\))h(function)e(\(and)h(a)g(few)f(w)m(ords)227 1677 y(lost)31 b(in)g(RF)m(C)f(1889)i(when)e(pro)s(cessing)g(the)g(do)s (cumen)m(t)h(from)f(source)g(to)h(output)f(form)g(w)m(ere)h (restored\).)136 1865 y Fj(\017)46 b Fo(Clamping)37 b(of)g(n)m(um)m(b)s (er)f(of)h(pac)m(k)m(ets)i(lost)e(in)g(Section)h(A.3)g(w)m(as)f (corrected)h(to)g(use)e(b)s(oth)h(p)s(ositiv)m(e)h(and)227 1978 y(negativ)m(e)33 b(limits.)136 2165 y Fj(\017)46 b Fo(The)37 b(sp)s(eci\014cation)h(of)f(\\relativ)m(e")j(NTP)d (timestamp)g(in)g(the)g(R)-8 b(TCP)37 b(SR)f(section)i(no)m(w)f (de\014nes)f(these)227 2278 y(timestamps)e(to)g(b)s(e)e(based)h(on)g (the)g(most)h(common)f(system-sp)s(eci\014c)g(clo)s(c)m(k,)j(suc)m(h)c (as)i(system)f(uptime,)227 2391 y(rather)j(than)f(on)g(session)h (elapsed)f(time)h(whic)m(h)f(w)m(ould)h(not)f(b)s(e)g(the)h(same)f(for) h(m)m(ultiple)g(applications)227 2504 y(started)31 b(on)f(the)h(same)g (mac)m(hine)g(at)g(di\013eren)m(t)g(times.)0 2731 y(Non-functional)g(c) m(hanges:)136 2957 y Fj(\017)46 b Fo(It)28 b(is)f(sp)s(eci\014ed)f (that)i(a)g(receiv)m(er)g Fi(must)e Fo(ignore)i(pac)m(k)m(ets)h(with)e (pa)m(yload)h(t)m(yp)s(es)g(it)f(do)s(es)g(not)h(understand.)136 3145 y Fj(\017)46 b Fo(In)29 b(Fig.)h(2,)g(the)f(\015oating)h(p)s(oin)m (t)f(NTP)g(timestamp)g(v)-5 b(alue)30 b(w)m(as)f(corrected,)i(some)f (missing)e(leading)i(zeros)227 3258 y(w)m(ere)h(added)f(in)g(a)h(hex)f (n)m(um)m(b)s(er,)f(and)h(the)g(UTC)g(timezone)i(w)m(as)f(sp)s (eci\014ed.)136 3446 y Fj(\017)46 b Fo(The)30 b(inconsequence)h(of)g (NTP)f(timestamps)g(wrapping)g(around)f(in)h(the)h(y)m(ear)g(2036)h(is) e(explained.)136 3633 y Fj(\017)46 b Fo(The)40 b(p)s(olicy)g(for)g (registration)h(of)g(R)-8 b(TCP)39 b(pac)m(k)m(et)j(t)m(yp)s(es)e(and)f (SDES)h(t)m(yp)s(es)g(w)m(as)g(clari\014ed)g(in)g(a)g(new)227 3746 y(Section)c(15,)i(IANA)e(Considerations.)56 b(The)35 b(suggestion)h(that)g(exp)s(erimen)m(ters)g(register)g(the)f(n)m(um)m (b)s(ers)227 3859 y(they)d(need)g(and)f(then)h(unregister)g(those)g (whic)m(h)g(pro)m(v)m(e)h(to)f(b)s(e)g(unneeded)e(has)i(b)s(een)f(remo) m(v)m(ed)i(in)f(fa)m(v)m(or)227 3972 y(of)f(using)f(APP)g(and)g(PRIV.) 40 b(Registration)32 b(of)f(pro\014le)f(names)g(w)m(as)h(also)g(sp)s (eci\014ed.)136 4160 y Fj(\017)46 b Fo(The)31 b(reference)g(for)f(the)h (UTF-8)h(c)m(haracter)g(set)g(w)m(as)f(c)m(hanged)g(from)g(an)f(X/Op)s (en)g(Preliminary)h(Sp)s(eci-)227 4273 y(\014cation)h(to)f(b)s(e)e(RF)m (C)i(2279.)136 4460 y Fj(\017)46 b Fo(The)32 b(reference)h(for)e(RF)m (C)i(1597)h(w)m(as)e(up)s(dated)f(to)i(RF)m(C)g(1918)h(and)d(the)i (reference)f(for)g(RF)m(C)h(2543)h(w)m(as)227 4573 y(up)s(dated)29 b(to)i(RF)m(C)g(3261.)136 4761 y Fj(\017)46 b Fo(The)30 b(last)h(paragraph)f(of)g(the)h(in)m(tro)s(duction)f(in)g(RF)m(C)h (1889,)h(whic)m(h)e(cautioned)h(implemen)m(tors)g(to)g(limit)227 4874 y(deplo)m(ymen)m(t)h(in)e(the)g(In)m(ternet,)h(w)m(as)g(remo)m(v)m (ed)g(b)s(ecause)g(it)g(w)m(as)f(deemed)h(no)f(longer)h(relev)-5 b(an)m(t.)136 5061 y Fj(\017)46 b Fo(A)36 b(non-normativ)m(e)g(note)g (regarding)f(the)h(use)f(of)g(R)-8 b(TP)35 b(with)g(Source-Sp)s (eci\014c)g(Multicast)i(\(SSM\))f(w)m(as)227 5174 y(added)30 b(in)g(Section)h(6.)0 5656 y(Sc)m(h)m(ulzrinne,)f(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(83])p eop %%Page: 84 84 84 83 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)136 399 y Fj(\017)46 b Fo(The)21 b(de\014nition)g(of)g (\\R)-8 b(TP)21 b(session")h(in)f(Section)g(3)h(w)m(as)f(expanded)g(to) g(ac)m(kno)m(wledge)j(that)e(a)f(single)h(session)227 511 y(ma)m(y)41 b(use)e(m)m(ultiple)i(destination)f(transp)s(ort)f (addresses)h(\(as)g(w)m(as)g(alw)m(a)m(ys)h(the)f(case)h(for)f(a)g (translator)227 624 y(or)45 b(mixer\))g(and)f(to)i(explain)f(that)h (the)f(distinguishing)f(feature)h(of)g(an)g(R)-8 b(TP)44 b(session)h(is)g(that)h(eac)m(h)227 737 y(corresp)s(onds)35 b(to)h(a)g(separate)h(SSR)m(C)e(iden)m(ti\014er)h(space.)58 b(A)35 b(new)h(de\014nition)f(of)h(\\m)m(ultimedia)h(session")227 850 y(w)m(as)31 b(added)f(to)h(reduce)f(confusion)g(ab)s(out)g(the)h(w) m(ord)f(\\session".)136 1033 y Fj(\017)46 b Fo(The)32 b(meaning)g(of)g(\\sampling)g(instan)m(t")i(w)m(as)e(explained)g(in)g (more)g(detail)h(as)f(part)g(of)g(the)g(de\014nition)g(of)227 1146 y(the)f(timestamp)g(\014eld)f(of)g(the)h(R)-8 b(TP)30 b(header)g(in)g(Section)i(5.1.)136 1328 y Fj(\017)46 b Fo(Small)24 b(clari\014cations)h(of)e(the)h(text)g(ha)m(v)m(e)g(b)s (een)f(made)g(in)g(sev)m(eral)i(places,)h(some)d(in)g(resp)s(onse)g(to) h(questions)227 1441 y(from)30 b(readers.)41 b(In)29 b(particular:)330 1624 y Fl({)45 b Fo(In)d(RF)m(C)g(1889,)47 b(the)42 b(\014rst)f(\014v)m(e)i(w)m(ords)e(of)h(the)g(second)h(sen)m (tence)g(of)f(Section)h(2.2)g(w)m(ere)f(lost)h(in)427 1737 y(pro)s(cessing)30 b(the)h(do)s(cumen)m(t)f(from)g(source)h(to)g (output)f(form,)g(but)g(are)g(no)m(w)h(restored.)330 1878 y Fl({)45 b Fo(A)33 b(de\014nition)g(for)g(\\R)-8 b(TP)33 b(media)h(t)m(yp)s(e")f(w)m(as)h(added)e(in)h(Section)h(3)f(to) h(allo)m(w)g(the)g(explanation)g(of)427 1991 y(m)m(ultiplexing)c(R)-8 b(TP)29 b(sessions)h(in)e(Section)i(5.2)h(to)f(b)s(e)e(more)i(clear)g (regarding)f(the)h(m)m(ultiplexing)g(of)427 2104 y(m)m(ultiple)39 b(media.)62 b(That)38 b(section)g(also)h(no)m(w)f(explains)f(that)h(m)m (ultiplexing)h(m)m(ultiple)f(sources)g(of)427 2217 y(the)g(same)g (medium)e(based)i(on)f(SSR)m(C)f(iden)m(ti\014ers)i(ma)m(y)g(b)s(e)f (appropriate)g(and)g(is)h(the)f(norm)g(for)427 2330 y(m)m(ulticast)32 b(sessions.)330 2471 y Fl({)45 b Fo(The)20 b(de\014nition)g(for)g (\\non-R)-8 b(TP)20 b(means")h(w)m(as)g(expanded)e(to)i(include)f (examples)h(of)g(other)f(proto)s(cols)427 2584 y(constituting)32 b(non-R)-8 b(TP)30 b(means.)330 2725 y Fl({)45 b Fo(The)23 b(description)g(of)g(the)g(session)h(bandwidth)d(parameter)i(is)h (expanded)e(in)h(Section)g(6.2,)j(including)427 2838 y(a)j(clari\014cation)i(that)e(the)g(con)m(trol)h(tra\016c)f(bandwidth) e(is)i(in)f(addition)h(to)g(the)g(session)g(bandwidth)427 2951 y(for)h(the)h(data)g(tra\016c.)330 3092 y Fl({)45 b Fo(The)c(e\013ect)i(of)f(v)-5 b(arying)41 b(pac)m(k)m(et)i(duration)e (on)h(the)f(jitter)h(calculation)i(w)m(as)e(explained)f(in)g(Sec-)427 3205 y(tion)31 b(6.4.4.)330 3346 y Fl({)45 b Fo(The)c(metho)s(d)f(for)h (terminating)h(and)f(padding)f(a)i(sequence)f(of)g(SDES)g(items)g(w)m (as)h(clari\014ed)f(in)427 3459 y(Section)31 b(6.5.)330 3600 y Fl({)45 b Fo(IPv6)27 b(address)f(examples)h(w)m(ere)g(added)f (in)h(the)g(description)f(of)h(SDES)f(CNAME)h(in)f(Section)i(6.5.1,)427 3713 y(and)i(\\example.com")j(w)m(as)e(used)e(in)h(place)i(of)e(other)h (example)g(domain)f(names.)330 3854 y Fl({)45 b Fo(The)23 b(Securit)m(y)h(section)g(added)f(a)h(formal)g(reference)f(to)h(IPSEC)f (no)m(w)g(that)h(it)g(is)f(a)m(v)-5 b(ailable,)28 b(and)22 b(sa)m(ys)427 3967 y(that)h(the)g(con\014den)m(tialit)m(y)h(metho)s(d)e (de\014ned)f(in)i(this)f(sp)s(eci\014cation)h(is)g(primarily)f(to)h(co) s(dify)f(existing)427 4080 y(practice.)50 b(It)34 b(is)f Fi(recommended)d Fo(that)k(stronger)f(encryption)g(algorithms)h(suc)m (h)e(as)i(T)-8 b(riple-DES)427 4193 y(b)s(e)24 b(used)g(in)g(place)i (of)f(the)g(default)f(algorithm,)k(and)c(noted)g(that)i(the)e(SR)-8 b(TP)24 b(pro\014le)h(based)f(on)g(AES)427 4306 y(will)h(b)s(e)f(the)h (correct)g(c)m(hoice)i(in)d(the)h(future.)37 b(A)25 b(caution)g(ab)s (out)g(the)f(w)m(eakness)h(of)g(the)g(R)-8 b(TP)24 b(header)427 4419 y(as)31 b(an)f(initialization)j(v)m(ector)f(w)m(as)e(added.)40 b(It)30 b(w)m(as)h(also)g(noted)f(that)h(pa)m(yload-only)h(encryption)e (is)427 4532 y(necessary)h(to)g(allo)m(w)h(for)e(header)g(compression.) 330 4673 y Fl({)45 b Fo(The)28 b(metho)s(d)g(for)h(partial)g (encryption)g(of)f(R)-8 b(TCP)28 b(w)m(as)h(clari\014ed;)h(in)e (particular,)i(SDES)e(CNAME)427 4786 y(is)j(carried)f(in)g(only)h(one)f (part)h(when)e(the)i(comp)s(ound)e(R)-8 b(TCP)29 b(pac)m(k)m(et)k(is)d (split.)330 4927 y Fl({)45 b Fo(It)24 b(is)g(clari\014ed)g(that)h(only) f(one)g(comp)s(ound)f(R)-8 b(TCP)23 b(pac)m(k)m(et)j(should)d(b)s(e)g (sen)m(t)h(p)s(er)f(rep)s(orting)h(in)m(terv)-5 b(al)427 5040 y(and)31 b(that)i(if)f(there)g(are)g(to)s(o)g(man)m(y)g(activ)m(e) i(sources)e(for)f(the)h(rep)s(orts)f(to)i(\014t)f(in)f(the)h(MTU,)g (then)g(a)427 5153 y(subset)e(of)h(the)f(sources)h(should)e(b)s(e)h (selected)i(round-robin)c(o)m(v)m(er)k(m)m(ultiple)f(in)m(terv)-5 b(als.)330 5294 y Fl({)45 b Fo(A)f(note)g(w)m(as)g(added)f(in)g(App)s (endix)f(A.1)j(that)f(pac)m(k)m(ets)h(ma)m(y)g(b)s(e)e(sa)m(v)m(ed)h (during)f(R)-8 b(TP)43 b(header)427 5407 y(v)-5 b(alidation)32 b(and)e(deliv)m(ered)h(up)s(on)e(success.)0 5656 y(Sc)m(h)m(ulzrinne,)h (et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(84])p eop %%Page: 85 85 85 84 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)330 399 y Fl({)45 b Fo(Section)26 b(7.3)h(no)m(w)e (explains)h(that)g(a)f(mixer)h(aggregating)i(SDES)c(pac)m(k)m(ets)k (uses)c(more)i(R)-8 b(TCP)25 b(band-)427 511 y(width)g(due)f(to)i (longer)g(pac)m(k)m(ets,)i(and)d(a)g(mixer)g(passing)g(through)g(R)-8 b(TCP)24 b(naturally)i(sends)e(pac)m(k)m(ets)427 624 y(at)31 b(higher)f(than)h(the)f(single)h(source)g(rate,)g(but)f(b)s (oth)f(b)s(eha)m(viors)i(are)f(v)-5 b(alid.)330 770 y Fl({)45 b Fo(Section)29 b(13)f(clari\014es)g(that)g(an)g(R)-8 b(TP)27 b(application)i(ma)m(y)f(use)f(m)m(ultiple)i(pro\014les)e(but)f (t)m(ypically)k(only)427 883 y(one)h(in)f(a)h(giv)m(en)g(session.)330 1029 y Fl({)45 b Fo(The)30 b(terms)g Fi(must)p Fo(,)g Fi(should)p Fo(,)f Fi(ma)-6 b(y)r Fo(,)30 b(etc.)h(are)g(used)f(as)g (de\014ned)f(in)h(RF)m(C)h(2119.)330 1176 y Fl({)45 b Fo(The)30 b(bibliograph)m(y)h(w)m(as)f(divided)g(in)m(to)h(normativ)m (e)h(and)e(informativ)m(e)h(references.)0 1501 y Fm(References)187 1745 y Fn(Normativ)m(e)37 b(References)45 1956 y Fo([1])47 b(Sc)m(h)m(ulzrinne,)33 b(H.)g(and)e(S.)i(Casner,)f(\\R)-8 b(TP)33 b(Pro\014le)f(for)g(Audio)h(and)f(Video)h(Conferences)f(with)g (Minimal)187 2068 y(Con)m(trol",)g(RF)m(C)e(3551,)j(July)c(2003.)45 2256 y([2])47 b(Bradner,)23 b(S.,)g(\\Key)e(W)-8 b(ords)22 b(for)f(Use)g(in)g(RF)m(Cs)h(to)g(Indicate)g(Requiremen)m(t)f(Lev)m (els",)k(BCP)c(14,)j(RF)m(C)e(2119,)187 2369 y(Marc)m(h)31 b(1997.)45 2557 y([3])47 b(P)m(ostel,)32 b(J.,)f(\\In)m(ternet)g(Proto) s(col",)h(STD)e(5,)h(RF)m(C)g(791,)h(Septem)m(b)s(er)d(1981.)45 2744 y([4])47 b(Mills,)35 b(D.,)g(\\Net)m(w)m(ork)g(Time)e(Proto)s(col) i(\(V)-8 b(ersion)34 b(3\))g(Sp)s(eci\014cation,)h(Implemen)m(tation)f (and)f(Analysis",)187 2857 y(RF)m(C)e(1305,)h(Marc)m(h)f(1992.)45 3045 y([5])47 b(Y)-8 b(ergeau,)32 b(F.,)f(\\UTF-8,)h(a)f(T)-8 b(ransformation)30 b(F)-8 b(ormat)32 b(of)e(ISO)g(10646",)j(RF)m(C)e (2279,)h(Jan)m(uary)e(1998.)45 3232 y([6])47 b(Mo)s(c)m(k)-5 b(ap)s(etris,)37 b(P)-8 b(.,)36 b(\\Domain)g(Names)f(-)f(Concepts)h (and)f(F)-8 b(acilities",)39 b(STD)34 b(13,)j(RF)m(C)d(1034,)k(No)m(v)m (em)m(b)s(er)187 3345 y(1987.)45 3533 y([7])47 b(Mo)s(c)m(k)-5 b(ap)s(etris,)39 b(P)-8 b(.,)38 b(\\Domain)f(Names)g(-)g(Implemen)m (tation)g(and)e(Sp)s(eci\014cation",)k(STD)d(13,)i(RF)m(C)f(1035,)187 3646 y(No)m(v)m(em)m(b)s(er)31 b(1987.)45 3834 y([8])47 b(Braden,)28 b(R.,)h(\\Requiremen)m(ts)g(for)f(In)m(ternet)g(Hosts)h(-) f(Application)h(and)e(Supp)s(ort",)g(STD)h(3,)h(RF)m(C)f(1123,)187 3946 y(Octob)s(er)i(1989.)45 4134 y([9])47 b(Resnic)m(k,)31 b(P)-8 b(.,)31 b(\\In)m(ternet)h(Message)g(F)-8 b(ormat",)32 b(RF)m(C)f(2822,)h(April)e(2001.)187 4415 y Fn(Informativ)m(e)38 b(References)0 4661 y Fo([10])47 b(Clark,)29 b(D.)g(and)e(D.)i(T)-8 b(ennenhouse,)28 b(\\Arc)m(hitectural)j(Considerations)d(for)g(a)h(New) f(Generation)i(of)e(Proto-)187 4774 y(cols,")37 b(in)d Fk(SIGCOMM)i(Symp)-5 b(osium)39 b(on)e(Communic)-5 b(ations)38 b(A)n(r)-5 b(chite)g(ctur)g(es)38 b(and)f(Pr)-5 b(oto)g(c)g(ols)p Fo(,)39 b(\(Philadel-)187 4887 y(phia,)56 b(P)m(ennsylv)-5 b(ania\),)58 b(pp.)51 b(200{208,)60 b(IEEE)51 b(Computer)f(Comm)m (unications)i(Review,)58 b(V)-8 b(ol.)53 b(20\(4\),)187 5000 y(Septem)m(b)s(er)30 b(1990.)0 5188 y([11])47 b(Sc)m(h)m (ulzrinne,)29 b(H.,)h(\\Issues)e(in)g(designing)h(a)g(transp)s(ort)f (proto)s(col)i(for)e(audio)h(and)f(video)h(conferences)h(and)187 5300 y(other)g(m)m(ultiparticipan)m(t)j(real-time)f(applications.")g (expired)e(In)m(ternet)h(Draft,)g(Octob)s(er)f(1993.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(85])p eop %%Page: 86 86 86 85 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y([12])47 b(Comer,)25 b(D.,)h Fk(Internetworking)i(with)g(TCP/IP)p Fo(,)23 b(v)m(ol.)j(1.)k(Englew)m (o)s(o)s(d)24 b(Cli\013s,)h(New)f(Jersey:)38 b(Pren)m(tice)25 b(Hall,)187 511 y(1991.)0 699 y([13])47 b(Rosen)m(b)s(erg,)27 b(J.,)g(Sc)m(h)m(ulzrinne,)g(H.,)g(Camarillo,)h(G.,)g(Johnston,)e(A.,)h (P)m(eterson,)h(J.,)f(Sparks,)f(R.,)h(Handley)-8 b(,)187 812 y(M.)31 b(and)f(E.)g(Sc)m(ho)s(oler,)h(\\SIP:)f(Session)g (Initiation)i(Proto)s(col",)g(RF)m(C)f(3261,)h(June)e(2002.)0 1000 y([14])47 b(In)m(ternational)38 b(T)-8 b(elecomm)m(unication)39 b(Union,)f(\\Visual)f(telephone)g(systems)g(and)f(equipmen)m(t)g(for)h (lo)s(cal)187 1112 y(area)i(net)m(w)m(orks)g(whic)m(h)f(pro)m(vide)g(a) h(non-guaran)m(teed)g(qualit)m(y)g(of)g(service",)j(Recommendation)d (H.323,)187 1225 y(T)-8 b(elecomm)m(unication)33 b(Standardization)e (Sector)g(of)f(ITU,)h(Genev)-5 b(a,)31 b(Switzerland,)g(July)e(2003.)0 1413 y([15])47 b(Handley)-8 b(,)31 b(M.)g(and)f(V.)h(Jacobson,)f (\\SDP:)h(Session)f(Description)i(Proto)s(col",)g(RF)m(C)f(2327,)h (April)e(1998.)0 1601 y([16])47 b(Sc)m(h)m(ulzrinne,)22 b(H.,)h(Rao,)h(A.)c(and)g(R.)g(Lanphier,)i(\\Real)g(Time)e(Streaming)h (Proto)s(col)g(\(R)-8 b(TSP\)",)21 b(RF)m(C)g(2326,)187 1714 y(April)30 b(1998.)0 1901 y([17])47 b(Eastlak)m(e)37 b(3rd,)f(D.,)g(Cro)s(c)m(k)m(er,)h(S.)e(and)f(J.)h(Sc)m(hiller,)i (\\Randomness)d(Recommendations)i(for)f(Securit)m(y",)187 2014 y(RF)m(C)c(1750,)h(Decem)m(b)s(er)f(1994.)0 2202 y([18])47 b(Bolot,)42 b(J.-C.,)e(T)-8 b(urletti,)41 b(T.)d(and)f(I.)h (W)-8 b(ak)m(eman,)42 b(\\Scalable)e(F)-8 b(eedbac)m(k)40 b(Con)m(trol)f(for)e(Multicast)j(Video)187 2315 y(Distribution)i(in)f (the)h(In)m(ternet",)k(in)c Fk(SIGCOMM)g(Symp)-5 b(osium)45 b(on)f(Communic)-5 b(ations)45 b(A)n(r)-5 b(chite)g(ctur)g(es)187 2428 y(and)33 b(Pr)-5 b(oto)g(c)g(ols,)33 b Fo(\(London,)e(England\),)f (pp.)g(58{67,)i(A)m(CM,)g(August)e(1994.)0 2615 y([19])47 b(Busse,)30 b(I.,)g(De\013ner,)h(B.)f(and)f(H.)h(Sc)m(h)m(ulzrinne,)g (\\Dynamic)h(QoS)f(Con)m(trol)g(of)g(Multimedia)h(Applications)187 2728 y(Based)g(on)f(R)-8 b(TP",)31 b Fk(Computer)j(Communic)-5 b(ations)p Fo(,)33 b(v)m(ol.)f(19,)f(pp.)f(49{58,)i(Jan)m(uary)e(1996.) 0 2916 y([20])47 b(Flo)m(yd,)e(S.)d(and)f(V.)h(Jacobson,)j(\\The)c (Sync)m(hronization)h(of)g(P)m(erio)s(dic)g(Routing)g(Messages",)47 b(in)41 b Fk(SIG-)187 3029 y(COMM)33 b(Symp)-5 b(osium)37 b(on)e(Communic)-5 b(ations)37 b(A)n(r)-5 b(chite)g(ctur)g(es)36 b(and)f(Pr)-5 b(oto)g(c)g(ols)36 b Fo(\(D.)d(P)-8 b(.)33 b(Sidh)m(u,)f(ed.\),)i(\(San)187 3142 y(F)-8 b(rancisco,)32 b(California\),)g(pp.)d(33{44,)k(A)m(CM,)e(Septem)m(b)s(er)f(1993.)42 b(Also)31 b(in)g([34)q(].)0 3329 y([21])47 b(Rosen)m(b)s(erg,)31 b(J.)g(and)f(H.)h(Sc)m(h)m(ulzrinne,)g(\\Sampling)g(of)g(the)g(Group)f (Mem)m(b)s(ership)g(in)g(R)-8 b(TP",)32 b(RF)m(C)f(2762,)187 3442 y(F)-8 b(ebruary)30 b(2000.)0 3630 y([22])47 b(Cadzo)m(w,)25 b(J.,)g Fk(F)-7 b(oundations)29 b(of)d(Digital)g(Signal)g(Pr)-5 b(o)g(c)g(essing)28 b(and)f(Data)f(A)n(nalysis)p Fo(.)k(New)23 b(Y)-8 b(ork,)26 b(New)d(Y)-8 b(ork:)187 3743 y(Macmillan,)32 b(1987.)0 3930 y([23])47 b(Hinden,)c(R.)e(and)f(S.)g(Deering,)45 b(\\In)m(ternet)c(Proto)s(col)h(V)-8 b(ersion)41 b(6)h(\(IPv6\))f (Addressing)f(Arc)m(hitecture",)187 4043 y(RF)m(C)31 b(3513,)h(April)e(2003.)0 4231 y([24])47 b(Rekh)m(ter,)35 b(Y.,)g(Mosk)m(o)m(witz,)i(B.,)f(Karren)m(b)s(erg,)d(D.,)j(de)d(Gro)s (ot,)i(G.)g(and)e(E.)g(Lear,)i(\\Address)e(Allo)s(cation)187 4344 y(for)d(Priv)-5 b(ate)31 b(In)m(ternets",)g(RF)m(C)g(1918,)i(F)-8 b(ebruary)30 b(1996.)0 4531 y([25])47 b(Lear,)31 b(E.,)g(F)-8 b(air,)32 b(E.,)e(Cro)s(c)m(k)m(er,)i(D.)f(and)f(T.)g(Kessler,)h(\\Net) m(w)m(ork)h(10)g(Considered)d(Harmful)h(\(Some)h(Prac-)187 4644 y(tices)g(Shouldn't)f(b)s(e)f(Co)s(di\014ed\)",)h(RF)m(C)h(1627,)i (July)c(1994.)0 4832 y([26])47 b(F)-8 b(eller,)30 b(W.,)g Fk(A)n(n)f(Intr)-5 b(o)g(duction)33 b(to)e(Pr)-5 b(ob)g(ability)32 b(The)-5 b(ory)32 b(and)g(its)e(Applic)-5 b(ations,)31 b Fo(v)m(ol.)e(1.)37 b(New)28 b(Y)-8 b(ork,)30 b(New)187 4945 y(Y)-8 b(ork:)41 b(John)30 b(Wiley)h(and)f(Sons,)g(third)f(ed.,)i (1968.)0 5132 y([27])47 b(Ken)m(t,)23 b(S.)d(and)g(R.)g(A)m(tkinson,)j (\\Securit)m(y)e(Arc)m(hitecture)h(for)e(the)h(In)m(ternet)g(Proto)s (col",)j(RF)m(C)d(2401,)j(No)m(v)m(em-)187 5245 y(b)s(er)29 b(1998.)0 5656 y(Sc)m(h)m(ulzrinne,)h(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(86])p eop %%Page: 87 87 87 86 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y([28])47 b(Baugher,)37 b(M.,)g(Blom,)h(R.,)f (Carrara,)g(E.,)g(McGrew,)g(D.,)h(Naslund,)e(M.,)h(Norrman,)f(K.)g(and) e(D.)i(Oran,)187 511 y(\\Secure)30 b(Real-time)j(T)-8 b(ransp)s(ort)29 b(Proto)s(col",)42 b(W)-8 b(ork)32 b(in)e(Progress,)g (April)h(2003.)0 699 y([29])47 b(Balenson,)25 b(D.,)g(\\Priv)-5 b(acy)23 b(Enhancemen)m(t)g(for)f(In)m(ternet)h(Electronic)h(Mail:)38 b(P)m(art)23 b(I)s(I)s(I",)f(RF)m(C)h(1423,)j(F)-8 b(ebru-)187 812 y(ary)30 b(1993.)0 1000 y([30])47 b(V)-8 b(o)m(ydo)s(c)m(k,)47 b(V.)c(and)f(S.)g(Ken)m(t,)k(\\Securit)m(y)d(Mec)m(hanisms)g(in)f (High-Lev)m(el)i(Net)m(w)m(ork)g(Proto)s(cols",)j Fk(A)n(CM)187 1112 y(Computing)34 b(Surveys,)c Fo(v)m(ol.)i(15,)f(pp.)f(135{171,)j (June)d(1983.)0 1300 y([31])47 b(Flo)m(yd,)31 b(S.,)g(\\Congestion)g (Con)m(trol)g(Principles",)g(BCP)g(41,)g(RF)m(C)g(2914,)h(Septem)m(b)s (er)e(2000.)0 1488 y([32])47 b(Riv)m(est,)32 b(R.,)e(\\The)h(MD5)g (Message-Digest)j(Algorithm",)e(RF)m(C)f(1321,)h(April)e(1992.)0 1675 y([33])47 b(Stubblebine,)29 b(S.,)g(\\Securit)m(y)i(Services)f (for)f(Multimedia)i(Conferencing",)f(in)g Fk(16th)j(National)h (Computer)187 1788 y(Se)-5 b(curity)33 b(Confer)-5 b(enc)g(e,)31 b Fo(\(Baltimore,)i(Maryland\),)e(pp.)e(391{395,)34 b(Septem)m(b)s(er)c (1993.)0 1976 y([34])47 b(Flo)m(yd,)28 b(S.)e(and)g(V.)h(Jacobson,)h (\\The)e(Sync)m(hronization)h(of)g(P)m(erio)s(dic)g(Routing)g (Messages",)j Fk(IEEE/A)n(CM)187 2089 y(T)-7 b(r)i(ansactions)35 b(on)e(Networking,)e Fo(v)m(ol.)g(2,)g(pp.)f(122{136,)k(April)c(1994.)0 5656 y(Sc)m(h)m(ulzrinne,)g(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(87])p eop %%Page: 88 88 88 87 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fm(Authors')45 b(Addresses)0 641 y Fo(Henning)30 b(Sc)m(h)m(ulzrinne)0 753 y(Departmen)m(t)i(of)e (Computer)g(Science)0 866 y(Colum)m(bia)h(Univ)m(ersit)m(y)0 979 y(1214)h(Amsterdam)e(Av)m(en)m(ue)0 1092 y(New)h(Y)-8 b(ork,)31 b(NY)f(10027)0 1205 y(United)h(States)0 1431 y(EMail:)42 b Fh(schulzrinne@cs.columbia.)o(edu)0 1683 y Fo(Stephen)29 b(L.)i(Casner)0 1796 y(P)m(ac)m(k)m(et)i(Design)0 1908 y(3400)f(Hillview)g(Av)m(en)m(ue,)f(Building)g(3)0 2021 y(P)m(alo)h(Alto,)g(CA)e(94304)0 2134 y(United)h(States)0 2360 y(EMail:)42 b Fh(casner@acm.org)0 2612 y Fo(Ron)30 b(F)-8 b(rederic)m(k)0 2725 y(Blue)31 b(Coat)g(Systems)f(Inc.)0 2838 y(650)i(Almanor)e(Av)m(en)m(ue)0 2950 y(Sunn)m(yv)-5 b(ale,)30 b(CA)g(94085)0 3063 y(United)h(States)0 3289 y(EMail:)42 b Fh(ronf@bluecoat.com)0 3541 y Fo(V)-8 b(an)31 b(Jacobson)0 3654 y(P)m(ac)m(k)m(et)i(Design)0 3767 y(3400)f(Hillview)g (Av)m(en)m(ue,)f(Building)g(3)0 3880 y(P)m(alo)h(Alto,)g(CA)e(94304)0 3993 y(United)h(States)0 4218 y(EMail:)42 b Fh(van@packetdesign.com)0 5656 y Fo(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(88])p eop %%Page: 89 89 89 88 bop 0 100 a Fo(RF)m(C)31 b(3550)1466 b(R)-8 b(TP)1464 b(July)30 b(2003)0 399 y Fm(F)-11 b(ull)45 b(Cop)l(yrigh)l(t)h (Statemen)l(t)0 641 y Fo(Cop)m(yrigh)m(t)31 b(\(C\))g(The)f(In)m (ternet)g(So)s(ciet)m(y)i(\(2003\).)43 b(All)31 b(Righ)m(ts)g(Reserv)m (ed.)0 793 y(This)e(do)s(cumen)m(t)h(and)g(translations)h(of)f(it)h(ma) m(y)g(b)s(e)e(copied)i(and)e(furnished)f(to)j(others,)g(and)e(deriv)-5 b(ativ)m(e)32 b(w)m(orks)0 906 y(that)g(commen)m(t)h(on)f(or)g (otherwise)g(explain)g(it)h(or)f(assist)g(in)f(its)i(implemen)m(tation) g(ma)m(y)g(b)s(e)e(prepared,)g(copied,)0 1018 y(published)g(and)i (distributed,)g(in)g(whole)g(or)g(in)g(part,)h(without)f(restriction)h (of)g(an)m(y)f(kind,)g(pro)m(vided)g(that)h(the)0 1131 y(ab)s(o)m(v)m(e)k(cop)m(yrigh)m(t)h(notice)g(and)d(this)h(paragraph)g (are)h(included)e(on)h(all)h(suc)m(h)f(copies)h(and)f(deriv)-5 b(ativ)m(e)39 b(w)m(orks.)0 1244 y(Ho)m(w)m(ev)m(er,)32 b(this)e(do)s(cumen)m(t)g(itself)h(ma)m(y)f(not)g(b)s(e)g(mo)s (di\014ed)e(in)i(an)m(y)g(w)m(a)m(y)-8 b(,)32 b(suc)m(h)e(as)g(b)m(y)g (remo)m(ving)g(the)h(cop)m(yrigh)m(t)0 1357 y(notice)38 b(or)e(references)g(to)h(the)g(In)m(ternet)f(So)s(ciet)m(y)i(or)e (other)g(In)m(ternet)h(organizations,)j(except)d(as)f(needed)g(for)0 1470 y(the)f(purp)s(ose)d(of)j(dev)m(eloping)g(In)m(ternet)g(standards) e(in)h(whic)m(h)g(case)i(the)e(pro)s(cedures)f(for)i(cop)m(yrigh)m(ts)g (de\014ned)0 1583 y(in)h(the)g(In)m(ternet)g(Standards)f(pro)s(cess)h (m)m(ust)g(b)s(e)f(follo)m(w)m(ed,)k(or)d(as)h(required)e(to)i (translate)g(it)g(in)m(to)g(languages)0 1696 y(other)31 b(than)f(English.)0 1848 y(The)22 b(limited)h(p)s(ermissions)e(gran)m (ted)j(ab)s(o)m(v)m(e)f(are)g(p)s(erp)s(etual)f(and)g(will)g(not)h(b)s (e)f(rev)m(ok)m(ed)i(b)m(y)e(the)h(In)m(ternet)g(So)s(ciet)m(y)0 1961 y(or)30 b(its)h(successors)g(or)f(assigns.)0 2113 y(This)36 b(do)s(cumen)m(t)g(and)h(the)g(information)g(con)m(tained)h (herein)e(is)h(pro)m(vided)f(on)h(an)f(\\AS)h(IS")g(basis)f(and)g(THE)0 2226 y(INTERNET)44 b(SOCIETY)f(AND)j(THE)e(INTERNET)g(ENGINEERING)h(T) -8 b(ASK)45 b(F)m(OR)m(CE)g(DISCLAIMS)0 2339 y(ALL)40 b(W)-10 b(ARRANTIES,)39 b(EXPRESS)f(OR)i(IMPLIED,)g(INCLUDING)g(BUT)g (NOT)f(LIMITED)g(TO)g(ANY)0 2452 y(W)-10 b(ARRANTY)45 b(THA)-8 b(T)44 b(THE)f(USE)h(OF)g(THE)g(INF)m(ORMA)-8 b(TION)44 b(HEREIN)g(WILL)g(NOT)g(INFRINGE)0 2565 y(ANY)f(RIGHTS)f(OR)g (ANY)h(IMPLIED)g(W)-10 b(ARRANTIES)42 b(OF)h(MER)m(CHANT)-8 b(ABILITY)43 b(OR)f(FITNESS)0 2677 y(F)m(OR)31 b(A)f(P)-8 b(AR)g(TICULAR)31 b(PURPOSE.)0 3003 y Fm(Ac)l(kno)l(wledgemen)l(t)0 3245 y Fo(F)-8 b(unding)30 b(for)g(the)h(RF)m(C)f(Editor)h(function)f (is)g(curren)m(tly)g(pro)m(vided)g(b)m(y)h(the)f(In)m(ternet)h(So)s (ciet)m(y)-8 b(.)0 5656 y(Sc)m(h)m(ulzrinne,)30 b(et)h(al.)1086 b(Standards)30 b(T)-8 b(rac)m(k)1086 b([P)m(age)32 b(89])p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF