|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T p
Length: 406587 (0x6343b) Types: TextFile Names: »part3.ps«
└─⟦4f9d7c866⟧ Bits:30007245 EUUGD6: Sikkerheds distributionen └─⟦d09ed6d6e⟧ »./papers/Routing_security/gene-thesis.tar.Z« └─⟦ffa606ded⟧ └─⟦this⟧ »part3.ps«
%!PS-Adobe-2.0 %%Creator: dvips, version 5.4 (C) 1986-90 Radical Eye Software %%Title: part3.dvi %%Pages: 26 1 %%BoundingBox: 0 0 612 792 %%EndComments %%BeginProcSet: tex.pro /TeXDict 200 dict def TeXDict begin /N /def load def /B{bind def}N /S /exch load def /X{S N}B /TR /translate load N /isls false N /vsize 10 N /@rigin{ isls{[0 1 -1 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale Resolution VResolution vsize neg mul TR}B /@letter{/vsize 10 N}B /@landscape{ /isls true N /vsize -1 N}B /@a4{/vsize 10.6929133858 N}B /@a3{/vsize 15.5531 N }B /@ledger{/vsize 16 N}B /@legal{/vsize 13 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 /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 /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 IE N end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[ }B /E{pop nn dup definefont setfont}B /ch-image{ch-data dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /ch-width{ch-data dup length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ctr 0 N /CharBuilder{save 3 1 roll S dup /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx 0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff .1 add]{ch-image}imagemask restore}B /D{ /cc X dup type /stringtype ne{]}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup length 1 sub dup 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}B /eop{clear SI restore showpage userdict /eop-hook known{eop-hook}if}B /@start{userdict /start-hook known{start-hook}if /VResolution X /Resolution X 1000 div /DVImag X /IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for}B /p /show load N /RMat[1 0 0 -1 0 0]N /BDot 8 string N /v{/ruley X /rulex X V}B /V{gsave TR -.1 -.1 TR rulex ruley scale 1 1 false RMat{BDot}imagemask grestore}B /a{moveto}B /delta 0 N /tail{ dup /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 /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 /w{0 rmoveto}B /x{0 S rmoveto}B /y{3 2 roll p a}B /bos{/SS save N}B /eos{clear SS restore}B 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 false N /BBcalc false N /p 3 def}B /@scaleunit 100 N /@hscale{@scaleunit div /hsc X}B /@vscale{ @scaleunit div /vsc X}B /@hsize{/hs X /CLIP true N}B /@vsize{/vs X /CLIP true N}B /@hoffset{/ho X}B /@voffset{/vo X}B /@angle{/ang X}B /@rwi{10 div /rwi X} B /@llx{/llx X}B /@lly{/lly X}B /@urx{/urx X}B /@ury{/ury X /BBcalc true N}B /magscale true def end /@MacSetUp{userdict /md known{userdict /md get type /dicttype eq{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}N /psfts{S 65536 div N}N /startTexFig{/psf$SavedState save N userdict maxlength dict begin /magscale false 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 @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}B /@setspecial{CLIP{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs neg 0 rlineto closepath clip}{initclip}ifelse ho vo TR hsc vsc scale ang rotate BBcalc{rwi urx llx sub div dup scale llx neg lly neg TR}if /showpage{}N /erasepage{}N /copypage{}N newpath}B /@endspecial{grestore clear SpecialSave restore end}B /@defspecial{SDict begin}B /@fedspecial{end}B /li{lineto}B /rl{rlineto}B /rc{rcurveto}B /np{/SaveX currentpoint /SaveY X N 1 setlinecap newpath}B /st{stroke SaveX SaveY moveto}B /fil{fill SaveX SaveY moveto}B /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}B end %%EndProcSet TeXDict begin 1000 300 300 @start /Fa 4 122 df<FCFC3C3C3C3C3C3C3C3C3C3C3C3C3C 3C3C3C3C3C3CFFFF08177F960B>108 D<FC7C00FD8E003E0F003E0F003C0F003C0F003C0F003C 0F003C0F003C0F003C0F003C0F003C0F00FF3FC0FF3FC0120F7E8E17>110 D<07F0001C1C00380E00700700700700F00780F00780F00780F00780F00780700700700700380E 001C1C0007F000110F7F8E14>I<FF0FC0FF0FC03C03001E06001E06000F0C000F0C0007980007 980003F80003F00003F00001E00001E00000C00000C00061C000F18000F38000E700003C000012 157F8E15>121 D E /Fb 1 107 df<C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0 C0C0C0C0C0C0C0C0C002217C980A>106 D E /Fc 67 123 df<003FE3F801F03F1C03C03E3E07 C07C3E0F807C3E0F807C1C0F807C000F807C000F807C000F807C000F807C00FFFFFFC0FFFFFFC0 0F807C000F807C000F807C000F807C000F807C000F807C000F807C000F807C000F807C000F807C 000F807C000F807C000F807C000F807C007FE1FFC07FE1FFC01F1D809C1C>11 D<78FCFCFEFE7A0202040408083040070E7D9C0D>39 D<0020004001800380030006000E001C00 1C003C0038003800780078007800F800F000F000F000F000F000F000F000F000F000F800780078 007800380038003C001C001C000E000600030003800180004000200B297C9E13>I<8000400030 00380018000C000E000700070007800380038003C003C003C003E001E001E001E001E001E001E0 01E001E001E003E003C003C003C0038003800780070007000E000C00180038003000400080000B 297D9E13>I<78FCFCFEFE7A0202040408083040070E7D850D>44 D<FFE0FFE0FFE0FFE00B047F 8A10>I<78FCFCFCFC7806067D850D>I<000180000380000380000700000700000700000E00000E 00001C00001C00001C0000380000380000380000700000700000E00000E00000E00001C00001C0 0001C0000380000380000380000700000700000E00000E00000E00001C00001C00001C00003800 00380000700000700000700000E00000E00000C0000011297D9E18>I<03F8000F1E001C07003C 07803803807803C07803C07803C0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F8 03E0F803E0F803E0F803E07803C07803C03803803C07801C07000F1E0003F800131B7E9A18>I< 00600001E0000FE000FFE000F3E00003E00003E00003E00003E00003E00003E00003E00003E000 03E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E0007FFF80 7FFF80111B7D9A18>I<07F8001FFE00383F80780FC0FC07C0FC07E0FC03E0FC03E07803E00007 E00007C00007C0000F80001F00001E0000380000700000E0000180600300600600600800E01FFF C03FFFC07FFFC0FFFFC0FFFFC0131B7E9A18>I<03F8001FFE003C1F003C0F807C07C07E07C07C 07C03807C0000F80000F80001E00003C0003F800001E00000F800007C00007C00007E03007E078 07E0FC07E0FC07E0FC07C0780F80781F001FFE0007F800131B7E9A18>I<000180000380000780 000F80001F80003F80006F8000CF80008F80018F80030F80060F800C0F80180F80300F80600F80 C00F80FFFFF8FFFFF8000F80000F80000F80000F80000F80000F8001FFF801FFF8151B7F9A18> I<1801801FFF001FFE001FFC001FF8001FC00018000018000018000018000019F8001E0E00180F 801007800007C00007E00007E00007E07807E0F807E0F807E0F807C0F007C0600F80381F001FFE 0007F000131B7E9A18>I<007E0003FF000781800F03C01E07C03C07C03C0380780000780000F8 0000F8F800FB0E00FA0780FC0380FC03C0F803E0F803E0F803E0F803E07803E07803E07803C03C 03C03C07801E0F0007FE0003F800131B7E9A18>I<6000007FFFE07FFFE07FFFC07FFF807FFF80 E00300C00600C00C00C0180000300000300000600000E00000E00001E00001C00003C00003C000 03C00003C00007C00007C00007C00007C00007C00007C000038000131C7D9B18>I<03F8000FFE 001E0F803807803803C07803C07803C07E03C07F83807FC7003FFE001FFC000FFE0007FF801DFF 80387FC0781FE0F007E0F003E0F001E0F001E0F001E07801C07803803E07801FFE0003F800131B 7E9A18>I<03F8000FFE001E0F003C07807807807803C0F803C0F803C0F803E0F803E0F803E0F8 03E07807E03807E03C0BE00E1BE003E3E00003E00003C00003C03807C07C07807C0700780F0038 3C001FF8000FE000131B7E9A18>I<78FCFCFCFC7800000000000078FCFCFCFC7806127D910D>I< 00038000000380000007C0000007C0000007C000000FE000000FE000001FF000001BF000001BF0 000031F8000031F8000061FC000060FC0000E0FE0000C07E0000C07E0001803F0001FFFF0003FF FF8003001F8003001F8006000FC006000FC00E000FE00C0007E0FFC07FFEFFC07FFE1F1C7E9B24 >65 D<FFFFF800FFFFFF000FC01F800FC00FC00FC007C00FC007E00FC007E00FC007E00FC007E0 0FC007E00FC007C00FC00F800FC03F000FFFFE000FC00F800FC007C00FC007E00FC003E00FC003 F00FC003F00FC003F00FC003F00FC003F00FC007E00FC007E00FC01FC0FFFFFF00FFFFFC001C1C 7E9B22>I<001FE02000FFF8E003F80FE007C003E00F8001E01F0000E03E0000E03E0000607E00 00607C000060FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC0000007C 0000607E0000603E0000603E0000C01F0000C00F80018007C0030003F80E0000FFFC00001FE000 1B1C7D9B22>I<FFFFF800FFFFFF000FC01FC00FC007E00FC001F00FC001F80FC000F80FC000FC 0FC0007C0FC0007C0FC0007E0FC0007E0FC0007E0FC0007E0FC0007E0FC0007E0FC0007E0FC000 7E0FC0007C0FC0007C0FC0007C0FC000F80FC000F80FC001F00FC007E00FC01FC0FFFFFF00FFFF F8001F1C7E9B25>I<FFFFFF00FFFFFF000FC01F000FC007000FC003000FC003800FC003800FC1 81800FC181800FC181800FC180000FC380000FFF80000FFF80000FC380000FC180000FC180000F C180600FC180600FC000E00FC000C00FC000C00FC001C00FC001C00FC003C00FC00F80FFFFFF80 FFFFFF801B1C7E9B1F>I<FFFFFF00FFFFFF000FC01F000FC007000FC003000FC003800FC00380 0FC001800FC181800FC181800FC180000FC180000FC380000FFF80000FFF80000FC380000FC180 000FC180000FC180000FC180000FC000000FC000000FC000000FC000000FC000000FC00000FFFF 0000FFFF0000191C7E9B1E>I<000FF008007FFE3801FC07F807E001F80F8000781F0000783F00 00383E0000387E0000187C000018FC000000FC000000FC000000FC000000FC000000FC000000FC 007FFFFC007FFF7C0001F87E0001F83E0001F83F0001F81F0001F80F8001F807E001F801FC07F8 007FFE78000FF818201C7D9B26>I<FFFC3FFFFFFC3FFF0FC003F00FC003F00FC003F00FC003F0 0FC003F00FC003F00FC003F00FC003F00FC003F00FC003F00FFFFFF00FFFFFF00FC003F00FC003 F00FC003F00FC003F00FC003F00FC003F00FC003F00FC003F00FC003F00FC003F00FC003F00FC0 03F0FFFC3FFFFFFC3FFF201C7E9B25>I<FFFFFFFF07E007E007E007E007E007E007E007E007E0 07E007E007E007E007E007E007E007E007E007E007E007E007E007E007E0FFFFFFFF101C7F9B12 >I<07FFF007FFF0001F80001F80001F80001F80001F80001F80001F80001F80001F80001F8000 1F80001F80001F80001F80001F80001F80001F80001F80301F80781F80FC1F80FC1F80FC1F0078 3E00387C000FF000141C7F9B19>I<FFFF00FFFF000FC0000FC0000FC0000FC0000FC0000FC000 0FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0030FC0030FC0030FC007 0FC0070FC0060FC00E0FC01E0FC07EFFFFFEFFFFFE181C7E9B1D>76 D<FFC00003FFFFE00007FF 0FE00007F00DF0000DF00DF0000DF00DF0000DF00CF80019F00CF80019F00C7C0031F00C7C0031 F00C3E0061F00C3E0061F00C1F00C1F00C1F00C1F00C1F00C1F00C0F8181F00C0F8181F00C07C3 01F00C07C301F00C03E601F00C03E601F00C01FC01F00C01FC01F00C01FC01F00C00F801F00C00 F801F0FFC0701FFFFFC0701FFF281C7E9B2D>I<FFE003FFFFE003FF0FF000300FF800300DFC00 300CFE00300C7E00300C3F00300C1F80300C1FC0300C0FE0300C07F0300C03F0300C01F8300C01 FC300C00FE300C007F300C003F300C001FB00C001FF00C000FF00C0007F00C0003F00C0001F00C 0000F00C0000F0FFC00070FFC00030201C7E9B25>I<003FE00001F07C0003C01E000F800F801F 0007C01E0003C03E0003E07E0003F07C0001F07C0001F0FC0001F8FC0001F8FC0001F8FC0001F8 FC0001F8FC0001F8FC0001F8FC0001F87C0001F07E0003F07E0003F03E0003E03F0007E01F0007 C00F800F8003C01E0001F07C00003FE0001D1C7D9B24>I<FFFFF800FFFFFE000FC03F800FC00F 800FC007C00FC007E00FC007E00FC007E00FC007E00FC007E00FC007C00FC007C00FC00F800FC0 3F000FFFFC000FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC000000F C000000FC000000FC00000FFFC0000FFFC00001B1C7E9B21>I<FFFFF00000FFFFFE00000FC03F 00000FC00F80000FC007C0000FC007E0000FC007E0000FC007E0000FC007E0000FC007E0000FC0 07C0000FC00F80000FC03E00000FFFF000000FC07C00000FC03E00000FC03F00000FC01F80000F C01F80000FC01F80000FC01F80000FC01F80000FC01F80000FC01F81800FC01F81800FC00FC180 FFFC07C300FFFC01FE00211C7E9B24>82 D<07F8201FFEE03C07E07801E07000E0F000E0F00060 F00060F80000FE0000FFE0007FFE003FFF003FFF800FFFC007FFE0007FE00003F00001F00000F0 C000F0C000F0C000E0E000E0F001C0FC03C0EFFF0083FC00141C7D9B1B>I<7FFFFFE07FFFFFE0 781F81E0701F80E0601F8060E01F8070C01F8030C01F8030C01F8030C01F8030001F8000001F80 00001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F 8000001F8000001F8000001F8000001F800007FFFE0007FFFE001C1C7E9B21>I<FFFC03FFFFFC 03FF0FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300F C000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC00030 07C0003007C0006003E000E001F001C000FC0780007FFE00000FF800201C7E9B25>I<FFFC01FF 80FFFC01FF800FC000180007E000300007E000300007F000700003F000600003F800E00001F800 C00001FC00C00000FC01800000FC018000007E030000007E030000007F070000003F060000003F 8E0000001F8C0000001FCC0000000FD80000000FD800000007F000000007F000000007F0000000 03E000000003E000000001C000000001C00000211C7F9B24>I<FFFC7FFE0FFCFFFC7FFE0FFC0F C007E000C00FC007F000C00FE003F001C007E003F0018007E007F8018003F007F8030003F007F8 030003F80CFC070001F80CFC060001F81CFE060001FC187E0E0000FC187E0C0000FC387F0C0000 7E303F1800007E303F1800007F601FB800003F601FB000003FE01FF000003FC00FF000001FC00F E000001FC00FE000000F8007C000000F8007C000000F0003C0000007000380000007000380002E 1C7F9B31>I<7FFE1FFE007FFE1FFE0007F001800003F803800001FC07000000FC06000000FE0C 0000007F1C0000003F380000003FB00000001FE00000000FE00000000FE000000007F000000003 F800000007F80000000FFC0000000CFE000000187E000000387F000000703F800000601F800000 C01FC00001C00FE000018007F000030007F000FFF03FFF80FFF03FFF80211C7F9B24>I<FFFC01 FF80FFFC01FF800FE000380007F000300003F800700003F800600001FC00C00000FE01C00000FE 018000007F030000003F870000003F860000001FCE0000000FFC0000000FF800000007F8000000 03F000000003F000000003F000000003F000000003F000000003F000000003F000000003F00000 0003F000000003F00000003FFF0000003FFF0000211C7F9B24>I<0FF8001C1E003E0F803E0780 3E07C01C07C00007C0007FC007E7C01F07C03C07C07C07C0F807C0F807C0F807C0780BC03E13F8 0FE1F815127F9117>97 D<FF0000FF00001F00001F00001F00001F00001F00001F00001F00001F 00001F00001F3F801FE1E01F80701F00781F003C1F003C1F003E1F003E1F003E1F003E1F003E1F 003E1F003C1F003C1F00781F80701EC1E01C3F00171D7F9C1B>I<03FC000E0E001C1F003C1F00 781F00780E00F80000F80000F80000F80000F80000F800007800007801803C01801C03000E0E00 03F80011127E9115>I<000FF0000FF00001F00001F00001F00001F00001F00001F00001F00001 F00001F001F9F00F07F01C03F03C01F07801F07801F0F801F0F801F0F801F0F801F0F801F0F801 F07801F07801F03C01F01C03F00F0FFE03F9FE171D7E9C1B>I<01FC000F07001C03803C01C078 01C07801E0F801E0F801E0FFFFE0F80000F80000F800007800007C00603C00601E00C00F038001 FC0013127F9116>I<007F0001E38003C7C00787C00F87C00F83800F80000F80000F80000F8000 0F8000FFF800FFF8000F80000F80000F80000F80000F80000F80000F80000F80000F80000F8000 0F80000F80000F80000F80007FF8007FF800121D809C0F>I<03F8F00E0F381E0F381C07303C07 803C07803C07803C07801C07001E0F000E0E001BF8001000001800001800001FFF001FFFC00FFF E01FFFF07801F8F00078F00078F000787000707800F01E03C007FF00151B7F9118>I<FF0000FF 00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F0FC01F31E01F40F01F 80F81F80F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F8FF E7FFFFE7FF181D7F9C1B>I<1E003F003F003F003F001E00000000000000000000000000FF00FF 001F001F001F001F001F001F001F001F001F001F001F001F001F001F00FFE0FFE00B1E7F9D0E> I<007800FC00FC00FC00FC007800000000000000000000000003FC03FC007C007C007C007C007C 007C007C007C007C007C007C007C007C007C007C007C007C007C707CF87CF878F8F070E01F800E 26839D0F>I<FF0000FF00001F00001F00001F00001F00001F00001F00001F00001F00001F0000 1F0FF81F0FF81F03801F07001F0C001F18001F70001FF8001FFC001FBC001F3E001F1F001F0F00 1F0F801F07C01F03E0FFC7FCFFC7FC161D7F9C19>I<FF00FF001F001F001F001F001F001F001F 001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F00FFE0 FFE00B1D7F9C0E>I<FF0FC07E00FF31E18F001F40F207801F80FC07C01F80FC07C01F00F807C0 1F00F807C01F00F807C01F00F807C01F00F807C01F00F807C01F00F807C01F00F807C01F00F807 C01F00F807C01F00F807C0FFE7FF3FF8FFE7FF3FF825127F9128>I<FF0FC0FF31E01F40F01F80 F81F80F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F8FFE7 FFFFE7FF18127F911B>I<01FC000F07801C01C03C01E07800F07800F0F800F8F800F8F800F8F8 00F8F800F8F800F87800F07800F03C01E01E03C00F078001FC0015127F9118>I<FF3F80FFE1E0 1F80F01F00781F007C1F003C1F003E1F003E1F003E1F003E1F003E1F003E1F003C1F007C1F0078 1F80F01FC1E01F3F001F00001F00001F00001F00001F00001F0000FFE000FFE000171A7F911B> I<FE3E00FE47001E8F801E8F801E8F801F07001F00001F00001F00001F00001F00001F00001F00 001F00001F00001F0000FFF000FFF00011127F9114>114 D<1FD830786018E018E018F000FF80 7FE07FF01FF807FC007CC01CC01CE01CE018F830CFC00E127E9113>I<03000300030003000700 07000F000F003FFCFFFC1F001F001F001F001F001F001F001F001F001F0C1F0C1F0C1F0C0F0807 9803F00E1A7F9913>I<FF07F8FF07F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00 F81F00F81F00F81F00F81F00F81F01F80F01F80786FF01F8FF18127F911B>I<FFC1FCFFC1FC1F 00601F80E00F80C00FC0C007C18007C18003E30003E30001F60001F60001FE0000FC0000FC0000 780000780000300016127F9119>I<FF8FF8FEFF8FF8FE1F03E0301F03E0301F83E0700F83F060 0F86F06007C6F0C007CEF8C007EC79C003EC7D8003F83D8001F83F0001F83F0001F01F0000F01E 0000E00E0000E00E001F127F9122>I<FFC7FCFFC7FC1F81800F838007C70003EE0001FC0001F8 0000F800007C0000FE0001DF00039F00070F800607C00C03E0FF07FCFF07FC16127F9119>I<FF C1FCFFC1FC1F00601F80E00F80C00FC0C007C18007C18003E30003E30001F70001F60000FE0000 FC0000FC00007800007800003000003000007000706000F86000F8C000F980007300003E000016 1A7F9119>I<3FFF803C1F00303F00303E00607C0060FC0060F80001F00003F00007E00007C180 0F81801F81801F03803E03007E07007C0F00FFFF0011127F9115>I E /Fd 4 107 df<400020C000606000C03001801803000C0600060C0003180001B00000E00000E00001 B000031800060C000C06001803003001806000C0C0006040002013147A9320>2 D<03C00FF01FF83FFC7FFE7FFEFFFFFFFFFFFFFFFF7FFE7FFE3FFC1FF80FF003C010107E9115> 15 D<FFFFFFE07FFFFFE000000000000000000000000000000000000000000000000000000000 FFFFFFE0FFFFFFE0000000000000000000000000000000000000000000000000000000007FFFFF E0FFFFFFE01B147E9320>17 D<C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0 C0C0C0C0C0C0C0C0C0C0C0C0C0C0C002297B9E0C>106 D E /Fe 45 122 df<000FF000007FFC0001F80E0003E01F0007C03F000F803F000F803F000F801E000F800C000F 8000000F8000000F8000000F800000FFFFFF00FFFFFF000F801F000F801F000F801F000F801F00 0F801F000F801F000F801F000F801F000F801F000F801F000F801F000F801F000F801F000F801F 000F801F000F801F000F801F000F801F007FF0FFE07FF0FFE01B237FA21F>12 D<0007F80FF000007FFE7FFC0001F80FF80E0003E00FE01F0007C01FC03F000F801F803F000F80 1F803F000F800F801E000F800F800C000F800F8000000F800F8000000F800F8000000F800F8000 00FFFFFFFFFF00FFFFFFFFFF000F800F801F000F800F801F000F800F801F000F800F801F000F80 0F801F000F800F801F000F800F801F000F800F801F000F800F801F000F800F801F000F800F801F 000F800F801F000F800F801F000F800F801F000F800F801F000F800F801F000F800F801F000F80 0F801F007FF07FF0FFE07FF07FF0FFE02B237FA22F>14 D<387CFEFEFE7C3807077C8610>46 D<00180000780001F800FFF800FFF80001F80001F80001F80001F80001F80001F80001F80001F8 0001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F8 0001F80001F80001F80001F8007FFFE07FFFE013207C9F1C>49 D<03FC000FFF003C1FC07007E0 7C07F0FE03F0FE03F8FE03F8FE01F87C01F83803F80003F80003F00003F00007E00007C0000F80 001F00003E0000380000700000E01801C0180380180700180E00380FFFF01FFFF03FFFF07FFFF0 FFFFF0FFFFF015207D9F1C>I<00FE0007FFC00F07E01E03F03F03F03F81F83F81F83F81F81F03 F81F03F00003F00003E00007C0001F8001FE0001FF000007C00001F00001F80000FC0000FC3C00 FE7E00FEFF00FEFF00FEFF00FEFF00FC7E01FC7801F81E07F00FFFC001FE0017207E9F1C>I<00 00E00001E00003E00003E00007E0000FE0001FE0001FE00037E00077E000E7E001C7E00187E003 07E00707E00E07E00C07E01807E03807E07007E0E007E0FFFFFEFFFFFE0007E00007E00007E000 07E00007E00007E00007E000FFFE00FFFE17207E9F1C>I<1000201E01E01FFFC01FFF801FFF00 1FFE001FF8001BC00018000018000018000018000019FC001FFF001E0FC01807E01803E00003F0 0003F00003F80003F83803F87C03F8FE03F8FE03F8FC03F0FC03F07007E03007C01C1F800FFF00 03F80015207D9F1C>I<001F8000FFE003F07007C0F00F01F81F01F83E01F83E01F87E00F07C00 007C0000FC0800FC7FC0FCFFE0FD80F0FF00F8FE007CFE007CFC007EFC007EFC007EFC007E7C00 7E7C007E7C007E3C007C3E007C1E00F80F00F00783E003FFC000FF0017207E9F1C>I<00007000 0000007000000000F800000000F800000000F800000001FC00000001FC00000003FE00000003FE 00000003FE00000006FF000000067F0000000E7F8000000C3F8000000C3F800000183FC0000018 1FC00000381FE00000300FE00000300FE00000600FF000006007F00000E007F80000FFFFF80000 FFFFF800018001FC00018001FC00038001FE00030000FE00030000FE000600007F000600007F00 FFE00FFFF8FFE00FFFF825227EA12A>65 D<FFFFFF8000FFFFFFE00007F001F80007F000FC0007 F0007E0007F0007E0007F0007F0007F0007F0007F0007F0007F0007F0007F0007F0007F0007E00 07F000FE0007F000FC0007F003F80007FFFFF00007FFFFF00007F001FC0007F0007E0007F0003F 0007F0003F8007F0001F8007F0001FC007F0001FC007F0001FC007F0001FC007F0001FC007F000 1FC007F0003F8007F0003F8007F0007F0007F001FE00FFFFFFF800FFFFFFC00022227EA128>I< 0003FE0080001FFF818000FF01E38001F8003F8003E0001F8007C0000F800F800007801F800007 803F000003803F000003807F000001807E000001807E00000180FE00000000FE00000000FE0000 0000FE00000000FE00000000FE00000000FE00000000FE000000007E000000007E000001807F00 0001803F000001803F000003801F800003000F8000030007C000060003F0000C0001F800380000 FF00F000001FFFC0000003FE000021227DA128>I<FFFFFF8000FFFFFFF00007F003FC0007F000 7E0007F0003F0007F0001F8007F0000FC007F00007E007F00007E007F00007F007F00003F007F0 0003F007F00003F007F00003F807F00003F807F00003F807F00003F807F00003F807F00003F807 F00003F807F00003F807F00003F807F00003F007F00003F007F00003F007F00007E007F00007E0 07F0000FC007F0001F8007F0003F0007F0007E0007F003FC00FFFFFFF000FFFFFF800025227EA1 2B>I<FFFFFFFCFFFFFFFC07F000FC07F0003C07F0001C07F0000C07F0000E07F0000E07F00006 07F0180607F0180607F0180607F0180007F0380007F0780007FFF80007FFF80007F0780007F038 0007F0180007F0180007F0180307F0180307F0000307F0000607F0000607F0000607F0000E07F0 000E07F0001E07F0003E07F001FCFFFFFFFCFFFFFFFC20227EA125>I<FFFFFFF8FFFFFFF807F0 01F807F0007807F0003807F0001807F0001C07F0001C07F0000C07F0000C07F0180C07F0180C07 F0180007F0180007F0380007F0780007FFF80007FFF80007F0780007F0380007F0180007F01800 07F0180007F0180007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F000 00FFFFE000FFFFE0001E227EA123>I<FFFFE0FFFFE003F80003F80003F80003F80003F80003F8 0003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F8 0003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F800FFFFE0FFFF E013227FA115>73 D<FFF000000FFFFFF800001FFF07F800001FE006FC000037E006FC000037E0 06FC000037E0067E000067E0067E000067E0063F0000C7E0063F0000C7E0061F800187E0061F80 0187E0060FC00307E0060FC00307E0060FC00307E00607E00607E00607E00607E00603F00C07E0 0603F00C07E00601F81807E00601F81807E00601F81807E00600FC3007E00600FC3007E006007E 6007E006007E6007E006003FC007E006003FC007E006001F8007E006001F8007E006001F8007E0 06000F0007E0FFF00F00FFFFFFF00600FFFF30227EA135>77 D<0007FC0000003FFF800000FC07 E00003F001F80007E000FC000FC0007E001F80003F001F80003F003F00001F803F00001F807F00 001FC07E00000FC07E00000FC0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE 00000FE0FE00000FE0FE00000FE0FE00000FE07E00000FC07F00001FC07F00001FC03F00001F80 3F80003F801F80003F000FC0007E0007E000FC0003F001F80000FC07E000003FFF80000007FC00 0023227DA12A>79 D<FFFFFF00FFFFFFE007F007F007F001FC07F000FC07F0007E07F0007E07F0 007F07F0007F07F0007F07F0007F07F0007F07F0007E07F0007E07F000FC07F001FC07F007F007 FFFFE007FFFF0007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F00000 07F0000007F0000007F0000007F0000007F00000FFFF8000FFFF800020227EA126>I<FFFFFE00 00FFFFFFC00007F007F00007F001F80007F000FC0007F0007E0007F0007F0007F0007F0007F000 7F0007F0007F0007F0007F0007F0007F0007F0007E0007F000FC0007F001F80007F007F00007FF FFC00007FFFF800007F00FE00007F007F00007F003F80007F001FC0007F001FC0007F001FC0007 F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0607F000FE0607F000FF0C FFFF803FF8FFFF800FF027227EA12A>82 D<01FC0407FF8C1F03FC3C007C7C003C78001C78001C F8000CF8000CFC000CFC0000FF0000FFE0007FFF007FFFC03FFFF01FFFF80FFFFC03FFFE003FFE 0003FF00007F00003F00003FC0001FC0001FC0001FE0001EE0001EF0003CFC003CFF00F8C7FFE0 80FF8018227DA11F>I<7FFFFFFF807FFFFFFF807E03F80F807803F807807003F803806003F801 80E003F801C0E003F801C0C003F800C0C003F800C0C003F800C0C003F800C00003F800000003F8 00000003F800000003F800000003F800000003F800000003F800000003F800000003F800000003 F800000003F800000003F800000003F800000003F800000003F800000003F800000003F8000000 03F800000003F800000003F8000003FFFFF80003FFFFF80022227EA127>I<07FC001FFF803F07 C03F03E03F01E03F01F01E01F00001F00001F0003FF003FDF01FC1F03F01F07E01F0FC01F0FC01 F0FC01F0FC01F07E02F07E0CF81FF87F07E03F18167E951B>97 D<FF000000FF0000001F000000 1F0000001F0000001F0000001F0000001F0000001F0000001F0000001F0000001F0000001F0000 001F0FE0001F3FF8001FF07C001F801E001F001F001F000F801F000F801F000FC01F000FC01F00 0FC01F000FC01F000FC01F000FC01F000FC01F000FC01F000F801F001F801F801F001FC03E001E E07C001C3FF800180FC0001A237EA21F>I<00FF8007FFE00F83F01F03F03E03F07E03F07C01E0 7C0000FC0000FC0000FC0000FC0000FC0000FC00007C00007E00007E00003E00301F00600FC0E0 07FF8000FE0014167E9519>I<0001FE000001FE0000003E0000003E0000003E0000003E000000 3E0000003E0000003E0000003E0000003E0000003E0000003E0001FC3E0007FFBE000F81FE001F 007E003E003E007E003E007C003E00FC003E00FC003E00FC003E00FC003E00FC003E00FC003E00 FC003E00FC003E007C003E007C003E003E007E001E00FE000F83BE0007FF3FC001FC3FC01A237E A21F>I<00FE0007FF800F87C01E01E03E01F07C00F07C00F8FC00F8FC00F8FFFFF8FFFFF8FC00 00FC0000FC00007C00007C00007E00003E00181F00300FC07003FFC000FF0015167E951A>I<00 3F8000FFC001E3E003C7E007C7E00F87E00F83C00F80000F80000F80000F80000F80000F8000FF FC00FFFC000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F 80000F80000F80000F80000F80000F80000F80007FF8007FF80013237FA211>I<03FC1E0FFF7F 1F0F8F3E07CF3C03C07C03E07C03E07C03E07C03E07C03E03C03C03E07C01F0F801FFF0013FC00 3000003000003800003FFF801FFFF00FFFF81FFFFC3800FC70003EF0001EF0001EF0001EF0001E 78003C7C007C3F01F80FFFE001FF0018217E951C>I<FF000000FF0000001F0000001F0000001F 0000001F0000001F0000001F0000001F0000001F0000001F0000001F0000001F0000001F07E000 1F1FF8001F307C001F403C001F803E001F803E001F003E001F003E001F003E001F003E001F003E 001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F003E00FFE1 FFC0FFE1FFC01A237EA21F>I<1C003F007F007F007F003F001C00000000000000000000000000 0000FF00FF001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F 001F00FFE0FFE00B247EA310>I<FF000000FF0000001F0000001F0000001F0000001F0000001F 0000001F0000001F0000001F0000001F0000001F0000001F0000001F00FF801F00FF801F003800 1F0060001F01C0001F0380001F0700001F0E00001F1C00001F7E00001FFF00001FCF00001F0F80 001F07C0001F03E0001F01E0001F01F0001F00F8001F007C001F003C00FFE0FFC0FFE0FFC01A23 7EA21E>107 D<FF00FF001F001F001F001F001F001F001F001F001F001F001F001F001F001F00 1F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F00FFE0FFE00B 237EA210>I<FF07F007F000FF1FFC1FFC001F303E303E001F403E403E001F801F801F001F801F 801F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F00 1F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F 001F001F001F001F00FFE0FFE0FFE0FFE0FFE0FFE02B167E952F>I<FF07E000FF1FF8001F307C 001F403C001F803E001F803E001F003E001F003E001F003E001F003E001F003E001F003E001F00 3E001F003E001F003E001F003E001F003E001F003E001F003E001F003E00FFE1FFC0FFE1FFC01A 167E951F>I<00FE0007FFC00F83E01E00F03E00F87C007C7C007C7C007CFC007EFC007EFC007E FC007EFC007EFC007EFC007E7C007C7C007C3E00F81F01F00F83E007FFC000FE0017167E951C> I<FF0FE000FF3FF8001FF07C001F803E001F001F001F001F801F001F801F000FC01F000FC01F00 0FC01F000FC01F000FC01F000FC01F000FC01F000FC01F001F801F001F801F803F001FC03E001F E0FC001F3FF8001F0FC0001F0000001F0000001F0000001F0000001F0000001F0000001F000000 1F000000FFE00000FFE000001A207E951F>I<FE1F00FE3FC01E67E01EC7E01E87E01E87E01F83 C01F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00 00FFF000FFF00013167E9517>114 D<0FF3003FFF00781F00600700E00300E00300F00300FC00 007FE0007FF8003FFE000FFF0001FF00000F80C00780C00380E00380E00380F00700FC0E00EFFC 00C7F00011167E9516>I<0180000180000180000180000380000380000780000780000F80003F 8000FFFF00FFFF000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F 80000F81800F81800F81800F81800F81800F830007C30003FE0000F80011207F9F16>I<FF01FE 00FF01FE001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F00 3E001F003E001F003E001F003E001F003E001F003E001F003E001F007E001F00FE000F81BE0007 FF3FC001FC3FC01A167E951F>I<FFE01FE0FFE01FE00F8006000F8006000FC00E0007C00C0007 E01C0003E0180003E0180001F0300001F0300000F8600000F86000007CC000007CC000007FC000 003F8000003F8000001F0000001F0000000E0000000E00001B167F951E>I<FFE7FF07F8FFE7FF 07F81F007800C00F807801800F807C01800F807C018007C07E030007C0DE030007E0DE070003E0 DF060003E18F060001F18F0C0001F38F8C0001FB079C0000FB07D80000FE03D800007E03F00000 7E03F000007C01F000003C01E000003800E000001800C00025167F9528>I<FFE07FC0FFE07FC0 0F801C0007C0380003E0700003F0600001F8C00000F98000007F8000003F0000001F0000001F80 00003FC0000037C0000063E00000C1F00001C0F8000380FC0007007E000E003E00FF80FFE0FF80 FFE01B167F951E>I<FFE01FE0FFE01FE00F8006000F8006000FC00E0007C00C0007E01C0003E0 180003E0180001F0300001F0300000F8600000F86000007CC000007CC000007FC000003F800000 3F8000001F0000001F0000000E0000000E0000000C0000000C00000018000078180000FC380000 FC300000FC60000069C000007F8000001F0000001B207F951E>I E /Ff 48 122 df<FFFF80FFFF80FFFF80FFFF80FFFF80FFFF8011067F9017>45 D<1C003E007F00FF80FF80FF807F003E001C0009097B8813>I<000E00001E00007E0007FE00FF FE00FFFE00F8FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000 FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000 FE0000FE0000FE0000FE0000FE0000FE007FFFFE7FFFFE7FFFFE17277BA622>49 D<00FF800003FFF0000FFFFC001F03FE003800FF007C007F80FE003FC0FF003FC0FF003FE0FF00 1FE0FF001FE07E001FE03C003FE000003FE000003FC000003FC000007F8000007F000000FE0000 00FC000001F8000003F0000003E00000078000000F0000001E0000003C00E0007000E000E000E0 01C001C0038001C0070001C00FFFFFC01FFFFFC03FFFFFC07FFFFFC0FFFFFF80FFFFFF80FFFFFF 801B277DA622>I<007F800003FFF00007FFFC000F81FE001F00FF003F80FF003F807F803F807F 803F807F801F807F800F007F800000FF000000FF000000FE000001FC000001F8000007F00000FF C00000FFF0000001FC0000007E0000007F0000007F8000003FC000003FC000003FE000003FE03C 003FE07E003FE0FF003FE0FF003FE0FF003FC0FF007FC07E007F807C007F003F01FE001FFFFC00 07FFF00000FF80001B277DA622>I<00000E0000001E0000003E0000007E000000FE000000FE00 0001FE000003FE0000077E00000E7E00000E7E00001C7E0000387E0000707E0000E07E0000E07E 0001C07E0003807E0007007E000E007E000E007E001C007E0038007E0070007E00E0007E00FFFF FFF8FFFFFFF8FFFFFFF80000FE000000FE000000FE000000FE000000FE000000FE000000FE0000 00FE00007FFFF8007FFFF8007FFFF81D277EA622>I<0C0003000F803F000FFFFE000FFFFC000F FFF8000FFFF0000FFFE0000FFFC0000FFE00000E0000000E0000000E0000000E0000000E000000 0E0000000E7FC0000FFFF8000F80FC000E003E000C003F0000001F8000001FC000001FC000001F E000001FE018001FE07C001FE0FE001FE0FE001FE0FE001FE0FE001FC0FC001FC078003F807800 3F803C007F001F01FE000FFFF80003FFF00000FF80001B277DA622>I<0007F000003FFC0000FF FE0001FC0F0003F01F8007E03F800FC03F801FC03F801F803F803F801F003F8000007F0000007F 0000007F000000FF000000FF0FC000FF3FF800FF707C00FFC03E00FFC03F00FF801F80FF801FC0 FF001FC0FF001FE0FF001FE0FF001FE07F001FE07F001FE07F001FE07F001FE03F001FE03F001F C01F801FC01F803F800FC03F0007E07E0003FFFC0000FFF000003FC0001B277DA622>I<380000 003E0000003FFFFFF03FFFFFF03FFFFFF07FFFFFE07FFFFFC07FFFFF807FFFFF0070000E007000 0E0070001C00E0003800E0007000E000E0000000E0000001C00000038000000780000007800000 0F0000000F0000001F0000001F0000003F0000003E0000003E0000007E0000007E0000007E0000 007E000000FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE0000007C00 00003800001C297CA822>I<003FC00001FFF00003FFFC0007C07E000F003F001E001F001E000F 803E000F803E000F803F000F803F000F803FC00F003FF01F001FFC1E001FFE3C000FFFF80007FF E00003FFF80001FFFC0001FFFE0007FFFF000F0FFF801E03FFC03C01FFC07C007FE078001FE0F8 0007E0F80007E0F80003E0F80003E0F80003E0F80003C07C0003C07C0007803F000F001FC03E00 0FFFFC0003FFF800007FC0001B277DA622>I<000003800000000007C00000000007C000000000 0FE0000000000FE0000000000FE0000000001FF0000000001FF0000000003FF8000000003FF800 0000003FF80000000073FC0000000073FC00000000F3FE00000000E1FE00000000E1FE00000001 C0FF00000001C0FF00000003C0FF80000003807F80000007807FC0000007003FC0000007003FC0 00000E003FE000000E001FE000001E001FF000001C000FF000001FFFFFF000003FFFFFF800003F FFFFF80000780007FC0000700003FC0000700003FC0000E00001FE0000E00001FE0001E00001FF 0001C00000FF0001C00000FF00FFFE001FFFFEFFFE001FFFFEFFFE001FFFFE2F297EA834>65 D<00003FF001800003FFFE0380000FFFFF8780003FF007DF8000FF8001FF8001FE00007F8003FC 00003F8007F000001F800FF000000F801FE0000007801FE0000007803FC0000007803FC0000003 807FC0000003807F80000003807F8000000000FF8000000000FF8000000000FF8000000000FF80 00000000FF8000000000FF8000000000FF8000000000FF8000000000FF80000000007F80000000 007F80000000007FC0000003803FC0000003803FC0000003801FE0000003801FE0000007000FF0 0000070007F000000E0003FC00001E0001FE00003C0000FF8000F800003FF007E000000FFFFFC0 000003FFFF000000003FF8000029297CA832>67 D<FFFFFFF80000FFFFFFFF8000FFFFFFFFE000 03FC001FF80003FC0007FC0003FC0001FE0003FC0000FF0003FC00007F8003FC00003FC003FC00 001FC003FC00001FE003FC00001FE003FC00000FF003FC00000FF003FC00000FF003FC00000FF0 03FC00000FF803FC00000FF803FC00000FF803FC00000FF803FC00000FF803FC00000FF803FC00 000FF803FC00000FF803FC00000FF803FC00000FF803FC00000FF003FC00000FF003FC00000FF0 03FC00001FE003FC00001FE003FC00001FC003FC00003FC003FC00007F8003FC00007F0003FC00 01FE0003FC0003FC0003FC001FF800FFFFFFFFE000FFFFFFFF8000FFFFFFFC00002D297DA835> I<FFFFFFFFE0FFFFFFFFE0FFFFFFFFE003FC001FE003FC0007F003FC0001F003FC0001F003FC00 00F003FC00007003FC00007003FC00007003FC01C07803FC01C03803FC01C03803FC01C03803FC 03C00003FC03C00003FC0FC00003FFFFC00003FFFFC00003FFFFC00003FC0FC00003FC03C00003 FC03C00003FC01C00E03FC01C00E03FC01C00E03FC01C01C03FC00001C03FC00001C03FC00001C 03FC00003C03FC00003803FC00007803FC0000F803FC0001F803FC0003F803FC001FF8FFFFFFFF F0FFFFFFFFF0FFFFFFFFF027297DA82D>I<FFFFFFFFC0FFFFFFFFC0FFFFFFFFC003FC003FC003 FC000FE003FC0003E003FC0001E003FC0001E003FC0000E003FC0000E003FC0000E003FC0000F0 03FC03807003FC03807003FC03807003FC03800003FC07800003FC07800003FC1F800003FFFF80 0003FFFF800003FFFF800003FC1F800003FC07800003FC07800003FC03800003FC03800003FC03 800003FC03800003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC 00000003FC00000003FC000000FFFFFC0000FFFFFC0000FFFFFC000024297DA82B>I<FFFFF01F FFFEFFFFF01FFFFEFFFFF01FFFFE03FC00007F8003FC00007F8003FC00007F8003FC00007F8003 FC00007F8003FC00007F8003FC00007F8003FC00007F8003FC00007F8003FC00007F8003FC0000 7F8003FC00007F8003FC00007F8003FC00007F8003FC00007F8003FFFFFFFF8003FFFFFFFF8003 FFFFFFFF8003FC00007F8003FC00007F8003FC00007F8003FC00007F8003FC00007F8003FC0000 7F8003FC00007F8003FC00007F8003FC00007F8003FC00007F8003FC00007F8003FC00007F8003 FC00007F8003FC00007F8003FC00007F8003FC00007F8003FC00007F80FFFFF01FFFFEFFFFF01F FFFEFFFFF01FFFFE2F297DA836>72 D<FFFFFCFFFFFCFFFFFC01FE0001FE0001FE0001FE0001FE 0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE 0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE 0001FE0001FE0001FE0001FE00FFFFFCFFFFFCFFFFFC16297EA81A>I<FFFFFC0000FFFFFC0000 FFFFFC000003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC0000 0003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC00 000003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC0001C003FC 0001C003FC0001C003FC0001C003FC0003C003FC00038003FC00038003FC00078003FC00078003 FC000F8003FC000F8003FC001F8003FC007F8003FC01FF00FFFFFFFF00FFFFFFFF00FFFFFFFF00 22297DA829>76 D<FFFE0000001FFFC0FFFE0000001FFFC0FFFF0000003FFFC003FF0000003FF0 0003FF0000003FF00003BF80000077F00003BF80000077F000039FC00000E7F000039FC00000E7 F000038FE00001C7F000038FE00001C7F0000387F0000387F0000387F0000387F0000387F00003 87F0000383F8000707F0000383F8000707F0000381FC000E07F0000381FC000E07F0000380FE00 1C07F0000380FE001C07F0000380FF003807F00003807F003807F00003807F003807F00003803F 807007F00003803F807007F00003801FC0E007F00003801FC0E007F00003800FE1C007F0000380 0FE1C007F00003800FE1C007F000038007F38007F000038007F38007F000038003FF0007F00003 8003FF0007F000038001FE0007F000038001FE0007F000038000FC0007F000038000FC0007F000 FFFE00FC01FFFFC0FFFE007801FFFFC0FFFE007801FFFFC03A297DA841>I<0000FFE000000007 FFFC0000003FC07F8000007F001FC00001FC0007F00003F80003F80007F00001FC000FF00001FE 001FE00000FF001FE00000FF003FC000007F803FC000007F807FC000007FC07F8000003FC07F80 00003FC07F8000003FC0FF8000003FE0FF8000003FE0FF8000003FE0FF8000003FE0FF8000003F E0FF8000003FE0FF8000003FE0FF8000003FE0FF8000003FE0FF8000003FE07F8000003FC07FC0 00007FC07FC000007FC03FC000007F803FC000007F801FE00000FF001FE00000FF000FF00001FE 0007F00001FC0003F80003F80001FC0007F00000FF001FE000003FC07F8000000FFFFE00000000 FFE000002B297CA834>79 D<FFFFFFF800FFFFFFFF00FFFFFFFFC003FC003FE003FC000FF003FC 0007F803FC0007FC03FC0003FC03FC0003FE03FC0003FE03FC0003FE03FC0003FE03FC0003FE03 FC0003FE03FC0003FE03FC0003FC03FC0007FC03FC0007F803FC000FF003FC003FE003FFFFFF80 03FFFFFE0003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC0000 0003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC00 000003FC000000FFFFF00000FFFFF00000FFFFF0000027297DA82F>I<FFFFFFE00000FFFFFFFE 0000FFFFFFFF800003FC007FE00003FC000FF00003FC0007F80003FC0007FC0003FC0003FC0003 FC0003FE0003FC0003FE0003FC0003FE0003FC0003FE0003FC0003FE0003FC0003FE0003FC0003 FC0003FC0007F80003FC0007F80003FC001FE00003FC007FC00003FFFFFE000003FFFFF0000003 FC00FC000003FC007F000003FC003F800003FC003F800003FC001FC00003FC001FE00003FC001F E00003FC001FE00003FC001FE00003FC001FE00003FC001FF00003FC001FF00003FC001FF00003 FC001FF00703FC001FF80703FC000FF80703FC0007F80EFFFFF003FE1CFFFFF001FFF8FFFFF000 3FF030297DA834>82 D<007F806003FFF0E007FFF9E00F807FE01F001FE03E0007E07C0003E07C 0001E0FC0001E0FC0001E0FC0000E0FE0000E0FE0000E0FF000000FFC000007FFE00007FFFE000 3FFFFC001FFFFE000FFFFF8007FFFFC003FFFFE000FFFFE00007FFF000007FF000000FF8000007 F8000003F8600001F8E00001F8E00001F8E00001F8F00001F0F00001F0F80003F0FC0003E0FF00 07C0FFE01F80F3FFFF00E0FFFE00C01FF0001D297CA826>I<7FFFFFFFFFC07FFFFFFFFFC07FFF FFFFFFC07F803FC03FC07E003FC007C078003FC003C078003FC003C070003FC001C0F0003FC001 E0F0003FC001E0E0003FC000E0E0003FC000E0E0003FC000E0E0003FC000E0E0003FC000E00000 3FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC000 0000003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC000000000 3FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC000 0000003FC0000000003FC00000007FFFFFE000007FFFFFE000007FFFFFE0002B287EA730>I<FF FFE07FFFF007FFF0FFFFE07FFFF007FFF0FFFFE07FFFF007FFF003FC0001FE00001C0003FC0001 FE00001C0001FE0001FF0000380001FE0000FF0000380001FF0000FF0000780000FF0000FF8000 700000FF0000FF8000700000FF8000FF8000F000007F8001FFC000E000007F8001FFC000E00000 3FC003FFE001C000003FC0039FE001C000003FE0039FE003C000001FE0070FF0038000001FE007 0FF0038000001FF00F0FF0078000000FF00E07F8070000000FF00E07F80700000007F81E07FC0E 00000007F81C03FC0E00000007FC1C03FC1E00000003FC3801FE1C00000003FC3801FE1C000000 01FE7801FF3800000001FE7000FF3800000001FE7000FF3800000000FFF000FFF000000000FFE0 007FF000000000FFE0007FF0000000007FC0003FE0000000007FC0003FE0000000003FC0003FC0 000000003F80001FC0000000003F80001FC0000000001F80001F80000000001F00000F80000000 001F00000F80000000000E00000700000044297FA847>87 D<01FF800007FFF0000F81F8001FC0 7E001FC07E001FC03F000F803F8007003F8000003F8000003F8000003F80000FFF8000FFFF8007 FC3F800FE03F803F803F803F003F807F003F80FE003F80FE003F80FE003F80FE003F807E007F80 7F00DF803F839FFC0FFF0FFC01FC03FC1E1B7E9A21>97 D<FFE0000000FFE0000000FFE0000000 0FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000 000FE00000000FE00000000FE00000000FE00000000FE1FE00000FE7FF80000FFE07E0000FF801 F0000FF000F8000FE000FC000FE000FE000FE0007F000FE0007F000FE0007F000FE0007F800FE0 007F800FE0007F800FE0007F800FE0007F800FE0007F800FE0007F800FE0007F000FE0007F000F E0007F000FE000FE000FE000FC000FF001F8000FF803F0000F9E07E0000F07FF80000E01FC0000 212A7EA926>I<001FF80000FFFE0003F01F0007E03F800FC03F801F803F803F801F007F800E00 7F0000007F000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000007F0000 007F0000007F8000003F8001C01F8001C00FC0038007E0070003F01E0000FFFC00001FE0001A1B 7E9A1F>I<00003FF80000003FF80000003FF800000003F800000003F800000003F800000003F8 00000003F800000003F800000003F800000003F800000003F800000003F800000003F800000003 F800001FE3F80000FFFBF80003F03FF80007E00FF8000FC007F8001F8003F8003F8003F8007F00 03F8007F0003F8007F0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF 0003F800FF0003F8007F0003F8007F0003F8007F0003F8003F8003F8001F8003F8000F8007F800 07C00FF80003F03BFF8000FFF3FF80003FC3FF80212A7EA926>I<003FE00001FFF80003F07E00 07C01F000F801F801F800F803F800FC07F000FC07F0007C07F0007E0FF0007E0FF0007E0FFFFFF E0FFFFFFE0FF000000FF000000FF0000007F0000007F0000007F0000003F8000E01F8000E00FC0 01C007E0038003F81F0000FFFE00001FF0001B1B7E9A20>I<0007F0003FFC00FE3E01F87F03F8 7F03F07F07F07F07F03E07F00007F00007F00007F00007F00007F00007F000FFFFC0FFFFC0FFFF C007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F0 0007F00007F00007F00007F00007F00007F00007F00007F0007FFF807FFF807FFF80182A7EA915 >I<00FF81F003FFE7F80FC1FE7C1F80FC7C1F007C383F007E107F007F007F007F007F007F007F 007F007F007F007F007F003F007E001F007C001F80FC000FC1F8001FFFE00018FF800038000000 380000003C0000003E0000003FFFF8001FFFFF001FFFFF800FFFFFC007FFFFE01FFFFFF03E0007 F07C0001F8F80000F8F80000F8F80000F8F80000F87C0001F03C0001E01F0007C00FC01F8003FF FE00007FF0001E287E9A22>I<FFE0000000FFE0000000FFE00000000FE00000000FE00000000F E00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE0000000 0FE00000000FE00000000FE07F00000FE1FFC0000FE787E0000FEE03F0000FF803F0000FF803F8 000FF003F8000FF003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003 F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE0 03F8000FE003F8000FE003F800FFFE3FFF80FFFE3FFF80FFFE3FFF80212A7DA926>I<07000FC0 1FE03FE03FE03FE01FE00FC007000000000000000000000000000000FFE0FFE0FFE00FE00FE00F E00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0FFFE FFFEFFFE0F2B7DAA14>I<FFE00000FFE00000FFE000000FE000000FE000000FE000000FE00000 0FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE01FFC0FE01F FC0FE01FFC0FE007800FE00F000FE01E000FE03C000FE078000FE0E0000FE3C0000FE7C0000FEF E0000FFFE0000FFFF0000FF3F8000FE3F8000FC1FC000FC0FE000FC07F000FC07F000FC03F800F C01FC00FC00FC00FC00FE0FFFC3FFEFFFC3FFEFFFC3FFE1F2A7EA924>107 D<FFE0FFE0FFE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0 0FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00F E0FFFEFFFEFFFE0F2A7DA914>I<FFC07F800FF000FFC1FFE03FFC00FFC383F0707E000FC603F8 C07F000FCC01F9803F000FD801FF003F800FF001FE003F800FF001FE003F800FE001FC003F800F E001FC003F800FE001FC003F800FE001FC003F800FE001FC003F800FE001FC003F800FE001FC00 3F800FE001FC003F800FE001FC003F800FE001FC003F800FE001FC003F800FE001FC003F800FE0 01FC003F800FE001FC003F800FE001FC003F800FE001FC003F80FFFE1FFFC3FFF8FFFE1FFFC3FF F8FFFE1FFFC3FFF8351B7D9A3A>I<FFC07F0000FFC1FFC000FFC787E0000FCE03F0000FD803F0 000FD803F8000FF003F8000FF003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003 F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE0 03F8000FE003F8000FE003F8000FE003F800FFFE3FFF80FFFE3FFF80FFFE3FFF80211B7D9A26> I<003FE00001FFFC0003F07E000FC01F801F800FC03F800FE03F0007E07F0007F07F0007F07F00 07F0FF0007F8FF0007F8FF0007F8FF0007F8FF0007F8FF0007F8FF0007F8FF0007F87F0007F07F 0007F03F800FE03F800FE01F800FC00FC01F8007F07F0001FFFC00003FE0001D1B7E9A22>I<FF E1FE0000FFE7FF8000FFFE07E0000FF803F0000FF001F8000FE000FC000FE000FE000FE000FF00 0FE0007F000FE0007F000FE0007F800FE0007F800FE0007F800FE0007F800FE0007F800FE0007F 800FE0007F800FE0007F000FE000FF000FE000FF000FE000FE000FE001FC000FF001F8000FF803 F0000FFE0FE0000FE7FF80000FE1FC00000FE00000000FE00000000FE00000000FE00000000FE0 0000000FE00000000FE00000000FE00000000FE0000000FFFE000000FFFE000000FFFE00000021 277E9A26>I<FFC1F0FFC7FCFFCE3E0FD87F0FD87F0FF07F0FF03E0FF01C0FE0000FE0000FE000 0FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE000 FFFF00FFFF00FFFF00181B7E9A1C>114 D<03FE300FFFF01E03F03800F0700070F00070F00070 F80070FC0000FFE0007FFE007FFF803FFFE01FFFF007FFF800FFF80003FC0000FC60007CE0003C F0003CF00038F80038FC0070FF01E0F7FFC0C1FF00161B7E9A1B>I<0070000070000070000070 0000F00000F00000F00001F00003F00003F00007F0001FFFF0FFFFF0FFFFF007F00007F00007F0 0007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F03807F03807F0 3807F03807F03807F03803F03803F87001F86000FFC0001F8015267FA51B>I<FFE03FF800FFE0 3FF800FFE03FF8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000F E003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F800 0FE003F8000FE003F8000FE003F8000FE003F8000FE007F80007E007F80007E00FF80003F03BFF 8001FFF3FF80003FC3FF80211B7D9A26>I<FFFE03FF80FFFE03FF80FFFE03FF8007F000700007 F000700007F800F00003F800E00003FC01E00001FC01C00001FC01C00000FE03800000FE038000 007F070000007F070000007F8F0000003F8E0000003FDE0000001FDC0000001FDC0000000FF800 00000FF80000000FF800000007F000000007F000000003E000000003E000000001C00000211B7F 9A24>I<FFFE7FFC0FFEFFFE7FFC0FFEFFFE7FFC0FFE0FE007E000E007F003F001C007F003F001 C007F807F803C003F807F8038003F807F8038001FC0EFC070001FC0EFC070001FE1EFC0F0000FE 1C7E0E0000FE1C7E0E0000FF383F1E00007F383F1C00007F783F3C00003FF01FB800003FF01FB8 00003FF01FF800001FE00FF000001FE00FF000000FC007E000000FC007E000000FC007E0000007 8003C00000078003C0002F1B7F9A32>I<FFFC0FFF00FFFC0FFF00FFFC0FFF0007F003C00003F8 07800001FC07800000FE0F000000FF1E0000007F3C0000003FF80000001FF00000000FF0000000 0FF000000007F000000007F80000000FFC0000001FFE0000001EFE0000003C7F000000783F8000 00F01FC00001E01FE00001C00FE00003C007F000FFF01FFF80FFF01FFF80FFF01FFF80211B7F9A 24>I<FFFE03FF80FFFE03FF80FFFE03FF8007F000700007F000700007F800F00003F800E00003 FC01E00001FC01C00001FC01C00000FE03800000FE038000007F070000007F070000007F8F0000 003F8E0000003FDE0000001FDC0000001FDC0000000FF80000000FF80000000FF800000007F000 000007F000000003E000000003E000000001C000000001C0000000038000000003800000380780 00007C07000000FE0F000000FE0E000000FE1E000000FE3C0000007C780000003FE00000000FC0 00000021277F9A24>I E /Fg 53 122 df<00FC000782000E07001C07001C02001C00001C0000 1C00001C0000FFFF001C07001C07001C07001C07001C07001C07001C07001C07001C07001C0700 1C07001C0700FF1FE01317809614>12 D<60F0F070101020204040040A7D830A>44 D<60F0F06004047D830A>46 D<07C018303018701C600C600CE00EE00EE00EE00EE00EE00EE00E E00EE00E600C600C701C30181C7007C00F157F9412>48 D<03000700FF00070007000700070007 000700070007000700070007000700070007000700070007007FF00C157E9412>I<0F8030E040 708030C038E0384038003800700070006000C00180030006000C08080810183FF07FF0FFF00D15 7E9412>I<00300030007000F001F001700270047008701870107020704070C070FFFE00700070 00700070007003FE0F157F9412>52 D<20303FE03FC0240020002000200020002F8030E0207000 30003800384038E038E0388030406020C01F000D157E9412>I<07C0183030186018E00CE00CE0 0EE00EE00E601E301E186E0F8E000E000C001C70187018603020C01F800F157F9412>57 D<001000003800003800003800005C00005C00005C00008E00008E00008E000107000107000307 8002038002038007FFC00401C00401C00800E00800E01800E03800F0FE03FE17177F961A>65 D<FFFE001C03801C00E01C00601C00701C00701C00701C00701C00E01C01C01FFF801FFFC01C00 E01C00701C00301C00381C00381C00381C00381C00701C00E01C01C0FFFF0015177F9619>I<00 FC100383300E00B01C0070380030300030700010600010E00010E00000E00000E00000E00000E0 0000E000106000107000103000203800201C00400E008003830000FC0014177E9619>I<FFFF00 1C01C01C00E01C00301C00381C00181C001C1C000C1C000E1C000E1C000E1C000E1C000E1C000E 1C000E1C000C1C001C1C001C1C00381C00301C00601C01C0FFFF0017177F961B>I<FFFFE01C00 E01C00601C00201C00101C00101C00101C04001C04001C04001C0C001FFC001C0C001C04001C04 081C04081C00081C00181C00101C00101C00301C00F0FFFFF015177F9618>I<FFFFE01C00E01C 00601C00201C00101C00101C00101C04001C04001C04001C0C001FFC001C0C001C04001C04001C 04001C00001C00001C00001C00001C00001C0000FFC00014177F9617>I<FF83FE1C00701C0070 1C00701C00701C00701C00701C00701C00701C00701C00701FFFF01C00701C00701C00701C0070 1C00701C00701C00701C00701C00701C0070FF83FE17177F961A>72 D<FFE00E000E000E000E00 0E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFE00B177F 960D>I<FF80FE1C00781C00601C00401C00801C01001C06001C08001C10001C38001C78001C9C 001D0E001E0E001C07001C03801C01C01C01C01C00E01C00701C00781C007CFF80FF18177F961B >75 D<FE0003F81E0003C0170005C0170005C0170005C0138009C0138009C011C011C011C011C0 11C011C010E021C010E021C0107041C0107041C0107041C0103881C0103881C0101D01C0101D01 C0100E01C0100E01C0380E01C0FE040FF81D177F9620>77 D<FC00FE1E00381F00101700101380 1011C01011C01010E010107010103810103810101C10100E10100F101007101003901001D01001 D01000F0100070100030380030FE001017177F961A>I<00FC000303000E01C01C00E038007030 0030700038600018E0001CE0001CE0001CE0001CE0001CE0001CE0001C70003870003830003038 00701C00E00E01C003030000FC0016177E961B>I<FFFE001C03801C00C01C00601C00701C0070 1C00701C00701C00601C00C01C03801FFE001C00001C00001C00001C00001C00001C00001C0000 1C00001C00001C0000FF800014177F9618>I<FFFC001C03801C00C01C00E01C00701C00701C00 701C00701C00E01C00C01C03801FFE001C07801C01C01C00E01C00E01C00E01C00E01C00E01C00 E11C00E11C0072FF803C18177F961A>82 D<0FC4302C601C400CC004C004C004E00070007F003F E00FF801FC001C000E0006800680068006C004E008D81087E00F177E9614>I<7FFFF860381840 380840380880380480380480380400380000380000380000380000380000380000380000380000 380000380000380000380000380000380000380007FFC016177F9619>I<FF80FE1C00381C0010 1C00101C00101C00101C00101C00101C00101C00101C00101C00101C00101C00101C00101C0010 1C00101C00100E0020060020030040018180007E0017177F961A>I<FFC03F801E001C000F0008 0007001000078030000380200001C0400001E0400000E0800000F1800000710000003A0000003E 0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C000000 FF8000191780961A>89 D<FCFCC0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0 C0C0C0FCFC06217D980A>91 D<FCFC0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C 0C0C0C0C0CFCFC062180980A>93 D<1FC0386038301038003803F81E3830387038E039E039E079 70FF1F1E100E7F8D12>97 D<FC00001C00001C00001C00001C00001C00001C00001C00001C0000 1CF8001F06001C03001C03801C01801C01C01C01C01C01C01C01C01C01801C03801C03001B0E00 10F8001217809614>I<07F01838303870106000E000E000E000E000600070083008183007C00D 0E7F8D10>I<007E00000E00000E00000E00000E00000E00000E00000E00000E0007CE001C3E00 300E00700E00600E00E00E00E00E00E00E00E00E00600E00700E00301E00182E0007CFC012177F 9614>I<0FC0186030307038E018FFF8E000E000E000600070083010183007C00D0E7F8D10>I<03 E006700E701C201C001C001C001C001C00FF801C001C001C001C001C001C001C001C001C001C00 1C001C00FF800C1780960B>I<0F9E18E33060707070707070306018C02F80200060003FE03FF8 3FFC600EC006C006C006600C38380FE010157F8D12>I<FC00001C00001C00001C00001C00001C 00001C00001C00001C00001C7C001D8E001E07001C07001C07001C07001C07001C07001C07001C 07001C07001C07001C0700FF9FE01317809614>I<183C3C1800000000007C1C1C1C1C1C1C1C1C 1C1C1C1CFF081780960A>I<FC00001C00001C00001C00001C00001C00001C00001C00001C0000 1C3F801C1C001C18001C20001C40001CC0001FE0001CF0001C70001C78001C3C001C1E001C1E00 FF3FC01217809613>107 D<FC001C001C001C001C001C001C001C001C001C001C001C001C001C 001C001C001C001C001C001C001C001C00FF80091780960A>I<FC7C1F001D8E63801E0781C01C 0701C01C0701C01C0701C01C0701C01C0701C01C0701C01C0701C01C0701C01C0701C01C0701C0 FF9FE7F81D0E808D1E>I<FC7C001D8E001E07001C07001C07001C07001C07001C07001C07001C 07001C07001C07001C0700FF9FE0130E808D14>I<07C018303018600C600CE00EE00EE00EE00E E00E701C3018183007C00F0E7F8D12>I<FCF8001F0E001C03001C03801C01801C01C01C01C01C 01C01C01C01C01801C03801C07001F0E001CF8001C00001C00001C00001C00001C0000FF800012 14808D14>I<07C2001C2600381E00700E00600E00E00E00E00E00E00E00E00E00600E00700E00 301E001C2E0007CE00000E00000E00000E00000E00000E00007FC012147F8D13>I<FCF01D381E 381C101C001C001C001C001C001C001C001C001C00FF800D0E808D0E>I<1F4060C0C040C040E0 00FF007F801FC001E080608060C060E0C09F000B0E7F8D0E>I<080008000800180018003800FF 80380038003800380038003800380038403840384038401C800F000A147F930E>I<FC3F001C07 001C07001C07001C07001C07001C07001C07001C07001C07001C07001C0F000E170003E7E0130E 808D14>I<FE1F3C0E3C0C1C081C080E100E100720072003C003C003C001800180100E7F8D13>I< FCFE7C3838383838101C3C201C3C201C4C200E4E400E4E400E8640078780078780070380030300 030300160E7F8D19>I<FE3F3C181C100E20074007C0038001C002E004F008701838383CFC7F10 0E7F8D13>I<FE1F3C0E3C0C1C081C080E100E100720072003C003C003C00180018001000100E2 00E200A400780010147F8D13>I E /Fh 6 55 df<0C003C00CC000C000C000C000C000C000C00 0C000C000C000C000C000C00FF8009107E8F0F>49 D<1F00618040C08060C0600060006000C001 80030006000C00102020207FC0FFC00B107F8F0F>I<1F00218060C060C000C0008001800F0000 8000400060C060C060804060801F000B107F8F0F>I<0300030007000F000B0013003300230043 00C300FFE003000300030003001FE00B107F8F0F>I<20803F002C002000200020002F00308020 40006000600060C06080C061801F000B107F8F0F>I<0780184030C060C06000C000CF00F080E0 40C060C060C060406060C030801F000B107F8F0F>I E /Fi 7 57 df<0C001C00EC000C000C00 0C000C000C000C000C000C000C000C000C000C000C000C000C00FFC00A137D9211>49 D<1F0060C06060F070F030603000700070006000C001C00180020004000810101020207FE0FFE0 0C137E9211>I<0FC030707038703870380038003000E00FC0007000380018001C601CF01CF018 E03860701FC00E137F9211>I<006000E000E00160026006600C600860106020606060C060FFFC 0060006000600060006003FC0E137F9211>I<60607FC07F8044004000400040004F0070C040E0 006000700070E070E070E06040E021C01F000C137E9211>I<07C00C201070207060006000C000 CF00D0C0E060C020C030C030C03040306020206010C00F000C137E9211>I<0FC0003000084008 600870083C103F600F800FE031F06078C01CC00CC00CC00C601830300FC00E137F9211>56 D E /Fj 5 99 df<000100000300000700000780000B80001B8000138000238000238000438000 83800083C00101C003FFC00201C00401C00401C00801C01801E0FE07F815147F9319>65 D<07FFE000E03801C01801C01C01C01C01C01C0380380380700380E003FFC00700E00700700700 300700380E00700E00700E00E00E00E01C0380FFFE0016147F9319>I<07F000FE00F000F00170 01E0017002E0017002E0017004E0027009C0023809C0023811C0023821C0043823800438438004 388380041C8380081D0700081E0700081E0700081C070018180E00FE187FC01F147F9320>77 D<07B00C7010703060606060606060C0C0C0C8C0C841C862D03C700D0D7E8C12>97 D<7C000C00180018001800180030003700388030C060C060C060C060C0C180C180C10043006600 38000A147E930F>I E /Fk 28 117 df<60F0F06004047C830C>58 D<60F0F070101010102020 4080040C7C830C>I<00010003000600060006000C000C000C0018001800180030003000300060 006000C000C000C0018001800180030003000300060006000C000C000C00180018001800300030 003000600060006000C000C00010297E9E15>61 D<00000C0000000C0000001C0000001C000000 3C0000007C0000005C0000009C0000008E0000010E0000010E0000020E0000040E0000040E0000 080E0000080E0000100E0000200E00003FFE000040070000400700008007000100070001000700 0200070002000700060007001E000700FF807FF01C1D7F9C1F>65 D<01FFFF00003C01C0003800 E0003800F0003800700038007000700070007000F0007000F0007001E000E003C000E0078000E0 1F0000FFFC0001C00F0001C0078001C003C001C003C0038003C0038003C0038003C0038003C007 0007800700070007000E0007001C000E007800FFFFC0001C1C7E9B1F>I<0001F808000E061800 380138006000F001C0007003800070070000300F0000200E0000201C0000203C0000203C000000 780000007800000078000000F0000000F0000000F0000000F0000000F0000100F0000100F00001 00700002007000020030000400380008001C0010000E0060000701800000FE00001D1E7E9C1E> I<01FFFF80003C01E000380070003800380038001C0038001C0070001C0070001E0070001E0070 001E00E0001E00E0001E00E0001E00E0001E01C0003C01C0003C01C0003C01C000380380007803 800070038000F0038000E0070001C0070003800700070007001C000E007800FFFFC0001F1C7E9B 22>I<01FFFFF8003C007800380018003800100038001000380010007000100070001000701010 0070100000E0200000E0200000E0600000FFE00001C0400001C0400001C0400001C04000038080 40038000400380008003800080070001000700010007000300070006000E003E00FFFFFC001D1C 7E9B1F>I<0001F808000E061800380138006000F001C0007003800070070000300F0000200E00 00201C0000203C0000203C000000780000007800000078000000F0000000F0000000F0007FF0F0 000780F0000700F0000700F00007007000070070000E0030000E0038000E001C001E000E006400 0701840000FE00001D1E7E9C21>71 D<01FFC3FF80003C00780000380070000038007000003800 70000038007000007000E000007000E000007000E000007000E00000E001C00000E001C00000E0 01C00000FFFFC00001C003800001C003800001C003800001C00380000380070000038007000003 80070000038007000007000E000007000E000007000E000007000E00000F001E0000FFE1FFC000 211C7E9B23>I<01FE0000FF003E0000F0002E0001E0002E0002E0002E0002E0002E0004E0004E 0009C0004E0009C000470011C000470011C0008700238000870043800087004380008700838001 070107000107010700010382070001038207000203840E000203880E000203880E000203900E00 0403A01C000403A01C000401C01C000C01C01C001C01803C00FF8103FF80281C7E9B28>77 D<01FC00FF80001C001C00002E001800002E001000002E00100000270010000047002000004300 2000004380200000438020000081C040000081C040000081C040000080E040000100E080000100 7080000100708000010070800002003900000200390000020039000002001D000004001E000004 000E000004000E00000C000E00001C00040000FF80040000211C7E9B21>I<0003F800000E0E00 0038038000E001C001C001C0038000E0070000E00F0000F01E0000F01C0000F03C0000F03C0000 F0780000F0780000F0780000F0F00001E0F00001E0F00001E0F00003C0F00003C0F0000780F000 0780F0000F0070000E0070001C00380038003C0070001C01C0000707800001FC00001C1E7E9C20 >I<01FFFF00003C03C0003800E0003800F00038007000380070007000F0007000F0007000F000 7000E000E001E000E003C000E0078000E01E0001FFF00001C0000001C0000001C0000003800000 038000000380000003800000070000000700000007000000070000000F000000FFE000001C1C7E 9B1B>I<01FFFE00003C03C0003800E0003800F00038007000380070007000F0007000F0007000 F0007001E000E001C000E0078000E01E0000FFF00001C0300001C0180001C01C0001C01C000380 1C0003801C0003801C0003801C0007003C0007003C0807003C0807003C100F001E10FFE00E2000 0007C01D1D7E9B20>82 D<000FC100303300400F00800601800603000603000606000406000407 000007000007800003F00001FF0000FFC0003FE00003E00000F000007000003000003020003020 00306000606000606000C0600080F00300CC060083F800181E7E9C19>I<1FFFFFF01C03807030 070030200700206007002040070020400E0020800E0020800E0020000E0000001C0000001C0000 001C0000001C000000380000003800000038000000380000007000000070000000700000007000 0000E0000000E0000000E0000000E0000001E000007FFF00001C1C7F9B18>I<FFC1FFC1FF1C00 3C003C1C001C00101C001C00201C003C00201C007C00401C005C00401C009C00801C009C00801C 011C01001C011C01001C021C02001C021C04001C041C04001C081C08001E081C08000E101C1000 0E101C10000E200E20000E200E60000E400E40000E400E80000E800E80000F000F00000F000F00 000E000E00000E000E00000C000C00000C00080000281D7D9B27>87 D<01E3000717000C0F0018 0F00380E00300E00700E00700E00E01C00E01C00E01C00E01C00E03880E03880E0388060788031 99001E0E0011127E9116>97 D<0007E00000E00000E00001C00001C00001C00001C00003800003 8000038000038001E7000717000C0F00180F00380E00300E00700E00700E00E01C00E01C00E01C 00E01C00E03880E03880E038806078803199001E0E00131D7E9C16>100 D<01F007080C0818043808300870307FC0E000E000E000E000E000E0046008601030600F800E12 7E9113>I<007180018B800307800607800E07000C07001C07001C0700380E00380E00380E0038 0E00381C00381C00381C00183C0008F800073800003800003800007000607000F06000F0E000E1 80007E0000111A7F9114>103 D<01C003C003C001800000000000000000000000001C00270047 004700870087000E000E001C001C001C003800388038807080710032001C000A1C7E9B0E>105 D<381F81F04E20C6184640E81C4680F01C8F00F01C8E00E01C0E00E01C0E00E01C1C01C0381C01 C0381C01C0381C01C0703803807138038071380380E1380380E2700700643003003820127E9124 >109 D<381F004E61804681C04701C08F01C08E01C00E01C00E01C01C03801C03801C03801C07 00380710380710380E10380E2070064030038014127E9119>I<00F800030C000E06001C030018 0300300300700380700380E00700E00700E00700E00E00E00E00E01C0060180060300030E0000F 800011127E9114>I<01F0060C04040C0E180C1C001F000FE00FF003F80038201C7018F018F010 803060601F800F127E9113>115 D<00C001C001C001C00380038003800380FFF0070007000700 0E000E000E000E001C001C001C001C00382038203840384018800F000C1A80990F>I E /Fl 65 124 df<0001FC3C00060E67000C0EC7001C0DC6001C01C0003801C000380380003803 8000380380003803800070038007FFFFF800700700007007000070070000E0070000E00E0000E0 0E0000E00E0000E00E0001C00E0001C01C0001C01C0001C01C0001C01C0003801C000380380003 8038000380380003003800070030000700700006006000C6606000E470C000C8618000703E0000 2025819C19>11 D<0001FC000703000C03001C07001C0300180000380000380000380000380000 700007FFFC00701C00701C00701C00E03800E03800E03800E03800E07001C07001C07001C07001 C0E201C0E201C0E20380E4038064038038038000030000070000060000C60000E40000CC000070 00001825819C17>I<0001FDC000070FC0000C0FC0001C0F80001C038000380380003803800038 070000380700003807000070070007FFFE0000700E0000700E0000700E0000E01C0000E01C0000 E01C0000E01C0000E0380001C0380001C0380001C0380001C0710001C071000380710003807200 0380320003801C0003800000030000000700000006000000C6000000E4000000CC000000700000 001A25819C18>I<0001FE0FF0000307380C000607700C000C06601C001C00E00C001C00C00000 1C01C000003801C000003801C000003801C000003803800003FFFFFFF000700380700070038070 007003807000700780E000700700E000700700E000E00700E000E00701C000E00701C000E00E01 C000E00E01C001C00E038801C00E038801C00E038801C01C039001C01C019003801C00E003801C 0000038038000003003800000300300000C630300000E638600000CC30C00000781F0000002625 819C25>I<18303C783C783C78040804080810081010202040408081000D0C799C15>34 D<00030006000800180030006000C000C0018003000300060006000C000C001C00180018003800 30003000700070006000600060006000E000E000E000E000E00060006000600060006000200030 00100008000800102A7B9E11>40 D<001000100008000C00040006000600060006000600070007 0007000700070006000600060006000E000E000C000C001C001800180038003000300060006000 C000C001800300030006000C00180010006000C000102A809E11>I<1838783808081010204040 80050C7D830D>44 D<FFC0FFC0FFC00A037D890F>I<3078F06005047C830D>I<003C0000C60001 83000303000603000603800E03800C03801C03801C0300380700380700380700380700700E0070 0E00700E00700E00E01C00E01C00E01C00E03800E03800E03000C06000E0600060C0007180001E 0000111D7B9B15>48 D<00020006000C001C007C039C0038003800380038007000700070007000 E000E000E000E001C001C001C001C003800380038003800780FFF00F1C7C9B15>I<003C0000C3 000101800201800201C00441C00441C00841C00841C00841C01083801083801107000E0600000C 0000180000300000C0000100000600000800001001001002002002004006007E0C00C7F80083F8 0080E000121D7C9B15>I<003E0000C1800101800200C00400C00440C00841C00841C00841C008 8380070380000700000E0001F800003800000C00000C00000E00000E00000E00000E00700E00E0 1C00801C0080380080300040600021C0001F0000121D7C9B15>I<0001800001C0000380000380 000380000300000700000700000600000E00000C00001C00001800001800003000003000006000 00400000C600018E00010E00020E00061C000C1C00181C003F1C0040F800803F00003800003800 00700000700000700000700000E00000600012247E9B15>I<003C0000C6000183000303000603 000E03000C03801C03801C03001C0300380700380700380700380F00380E00181E00181E000C6C 00079C00001C00001800003800003000006000E0C000E0C0008180008600007C0000111D7B9B15 >57 D<060F0F06000000000000000000003078F06008127C910D>I<0000180000001800000038 000000380000007800000078000000B8000001B800000138000002380000023C0000041C000004 1C0000081C0000181C0000101C0000201C0000201C00007FFC0000401C0000801C0001801C0001 001C0002001C0002001C0004000E000C000E001C001E00FF00FFC01A1D7E9C1F>65 D<01FFFE00003C0780003803C0003801C0003801C0003801C0007001C0007003C0007003C00070 078000E0070000E00E0000E03C0000FFF80001C01C0001C00E0001C00F0001C00F0003800F0003 800F0003800F0003800F0007001E0007001C0007003C00070078000E01E000FFFF80001A1C7D9B 1D>I<0003F020001E0C60003002E000E003C001C001C0038001C0070000C00E0000801E000080 1C0000803C0000803C000000780000007800000078000000F0000000F0000000F0000000F00000 00F0000400F0000400F0000400F0000800700008007000100038002000180040000C0180000706 000001F800001B1E7A9C1E>I<01FFFE00003C0780003801C0003801C0003800E0003800E00070 00F00070007000700070007000F000E000F000E000F000E000F000E000F001C001E001C001E001 C001E001C001C0038003C003800380038007800380070007000E0007001C000700380007007000 0E01C000FFFF00001C1C7D9B1F>I<01FFFFE0003C00E000380060003800400038004000380040 0070004000700040007020400070200000E0400000E0400000E0C00000FFC00001C0800001C080 0001C0800001C0800003810100038001000380020003800200070004000700040007000C000700 18000E007800FFFFF0001B1C7D9B1C>I<01FFFFC0003C01C0003800C000380080003800800038 00800070008000700080007020800070200000E0400000E0400000E0C00000FFC00001C0800001 C0800001C0800001C0800003810000038000000380000003800000070000000700000007000000 070000000F000000FFF000001A1C7D9B1B>I<0003F020001E0C60003002E000E003C001C001C0 038001C0070000C00E0000801E0000801C0000803C0000803C0000007800000078000000780000 00F0000000F0000000F001FFC0F0001E00F0001C00F0001C00F0001C00F0001C00700038007000 380038003800180078000C0090000707100001F800001B1E7A9C20>I<01FFCFFE003C01E00038 01C0003801C0003801C0003801C00070038000700380007003800070038000E0070000E0070000 E0070000FFFF0001C00E0001C00E0001C00E0001C00E0003801C0003801C0003801C0003801C00 070038000700380007003800070038000F007800FFE7FF001F1C7D9B1F>I<01FFC0003C000038 0000380000380000380000700000700000700000700000E00000E00000E00000E00001C00001C0 0001C00001C0000380000380000380000380000700000700000700000700000F0000FFE000121C 7E9B10>I<01FFC0FF003C003C0038003000380040003800800038010000700200007004000070 10000070200000E0400000E0C00000E1C00000E5C00001C8E00001D0E00001E0E00001C0700003 8070000380700003803800038038000700380007001C0007001C0007001C000F001E00FFE0FF80 201C7D9B20>75 D<01FFE0003C0000380000380000380000380000700000700000700000700000 E00000E00000E00000E00001C00001C00001C00001C00003800803800803800803801007001007 00300700600700E00E03C0FFFFC0151C7D9B1A>I<01FE0007F8003E000780002E000F00002E00 1700002E001700002E002700004E002E00004E004E00004E004E00004E008E00008E011C00008E 011C00008E021C00008E021C000107043800010704380001070838000107103800020710700002 0720700002072070000207407000040740E000040780E000040700E0000C0700E0001C0601E000 FF861FFC00251C7D9B25>I<01FC03FE001C0070003C0060002E0040002E0040002E0040004700 800047008000470080004380800083810000838100008181000081C1000101C2000101C2000100 E2000100E2000200E4000200740002007400020074000400380004003800040038000C0018001C 001000FF8010001F1C7D9B1F>I<0007F000001C1C0000700E0000E0070001C003800380038007 0003800E0003C01E0003C01C0003C03C0003C03C0003C0780003C0780003C0780003C0F0000780 F0000780F0000780F0000F00F0000F00F0000E00F0001E00F0003C0070003800700070007800E0 003801C0001C0380000E0E000003F800001A1E7A9C20>I<01FFFC00003C070000380380003801 C0003801C0003801C0007003C0007003C0007003C00070038000E0078000E0070000E00E0000E0 380001FFE00001C0000001C0000001C00000038000000380000003800000038000000700000007 00000007000000070000000F000000FFE000001A1C7D9B1C>I<01FFF800003C0E000038070000 380380003803800038038000700780007007800070078000700F0000E00E0000E01C0000E07000 00FFC00001C0C00001C0600001C0700001C07000038070000380700003807000038070000700F0 000700F0400700F0400700F0800F007880FFE0790000001E001A1D7D9B1E>82 D<000F8400304C00403C00801801001803001803001806001006001006000007000007000003E0 0003FC0001FF00007F800007C00001C00001C00000C00000C02000C02000C06001806001806003 00600200F00400CC180083E000161E7D9C17>I<1FFFFFC01C0701C0300E00C0200E0080600E00 80400E0080401C0080801C0080801C0080001C0000003800000038000000380000003800000070 000000700000007000000070000000E0000000E0000000E0000000E0000001C0000001C0000001 C0000001C0000003C000007FFE00001A1C799B1E>I<7FF0FF800F001C000E0018000E0010000E 0010000E0010001C0020001C0020001C0020001C00200038004000380040003800400038004000 70008000700080007000800070008000E0010000E0010000E0010000E0020000E0020000E00400 00E00400006008000030300000104000000F800000191D779B1F>I<FF803FC01C000F001C0004 001C0008001C0008001C0010001C0010001C0020001C0040001C0040001E0080000E0080000E01 00000E0200000E0200000E0400000E0400000E0800000E1800000E1000000E2000000720000007 40000007C0000007800000070000000700000006000000060000001A1D779B1F>I<FF83FF0FF0 3C007001C038007001803800F001003800F0020038017002003801700400380270040038027008 001C047008001C047010001C087010001C087020001C107020001C107040001C207040001C2070 80001C407180001C407100001C807200001D807200001D007400001E007400001E007800001C00 7800001C00700000180070000018006000001000600000241D779B29>I<FFC00FE00E0007800E 0006000F000400070008000700180007801000038020000380400003C0800001C1800001C10000 01E2000000E4000000EC000000F80000007000000070000000E0000000E0000000E0000000E000 0001C0000001C0000001C0000001C00000038000003FF800001B1C789B1F>89 D<03CC063C0C3C181C3838303870387038E070E070E070E070E0E2C0E2C0E261E462643C380F12 7B9115>97 D<3F00070007000E000E000E000E001C001C001C001C0039C03E6038303830703870 3870387038E070E070E070E060E0E0C0C0C1C0618063003C000D1D7B9C13>I<01F007080C0818 1C3838300070007000E000E000E000E000E000E008E010602030C01F000E127B9113>I<001F80 000380000380000700000700000700000700000E00000E00000E00000E0003DC00063C000C3C00 181C00383800303800703800703800E07000E07000E07000E07000E0E200C0E200C0E20061E400 6264003C3800111D7B9C15>I<01E007100C1018083810701070607F80E000E000E000E000E000 E0086010602030C01F000D127B9113>I<0003C0000670000C70001C60001C00001C0000380000 380000380000380000380003FF8000700000700000700000700000700000E00000E00000E00000 E00000E00001C00001C00001C00001C00001C000038000038000038000030000030000070000C6 0000E60000CC00007800001425819C0D>I<00F3018F030F06070E0E0C0E1C0E1C0E381C381C38 1C381C383830383038187818F00F700070007000E000E0C0C0E1C0C3007E00101A7D9113>I<0F C00001C00001C0000380000380000380000380000700000700000700000700000E78000E8C000F 0E000E0E001C0E001C0E001C0E001C0E00381C00381C00381C0038380070388070388070708070 7100E03200601C00111D7D9C15>I<01800380010000000000000000000000000000001C002600 470047008E008E000E001C001C001C0038003800710071007100720072003C00091C7C9B0D>I< 0FC00001C00001C0000380000380000380000380000700000700000700000700000E0F000E1100 0E23800E43801C83001C80001D00001E00003F800039C00038E00038E00070E20070E20070E200 70E400E06400603800111D7D9C13>107 D<1F800380038007000700070007000E000E000E000E 001C001C001C001C0038003800380038007000700070007000E400E400E400E40068003800091D 7C9C0B>I<3C1E0780266318C04683A0E04703C0E08E0380E08E0380E00E0380E00E0380E01C07 01C01C0701C01C0701C01C070380380E0388380E0388380E0708380E0710701C0320300C01C01D 127C9122>I<3C3C002646004687004707008E07008E07000E07000E07001C0E001C0E001C0E00 1C1C00381C40381C40383840383880701900300E0012127C9117>I<01E007180C0C180C380C30 0E700E700EE01CE01CE01CE018E038E030E06060C031801E000F127B9115>I<07870004D98008 E0C008E0C011C0E011C0E001C0E001C0E00381C00381C00381C003818007038007030007070007 06000E8C000E70000E00000E00001C00001C00001C00001C00003C0000FF8000131A7F9115>I< 03C4062C0C3C181C3838303870387038E070E070E070E070E0E0C0E0C0E061E063C03DC001C001 C0038003800380038007803FF00E1A7B9113>I<3C3C26C2468747078E068E000E000E001C001C 001C001C0038003800380038007000300010127C9112>I<01F006080C080C1C18181C001F001F C00FF007F0007800386030E030C030806060C01F000E127D9111>I<00C001C001C001C0038003 8003800380FFE00700070007000E000E000E000E001C001C001C001C0038403840384038801900 0E000B1A7D990E>I<1E0300270700470700470700870E00870E000E0E000E0E001C1C001C1C00 1C1C001C1C003838803838801838801839001C5900078E0011127C9116>I<1E06270E470E4706 870287020E020E021C041C041C041C0818083808181018200C4007800F127C9113>I<1E018327 03874703874703838707018707010E07010E07011C0E021C0E021C0E021C0E04180C04181C0418 1C081C1C100C263007C3C018127C911C>I<070E0019910010E38020E38041C30041C00001C000 01C000038000038000038000038000070200670200E70400CB04008B080070F00011127D9113> I<1E03270747074707870E870E0E0E0E0E1C1C1C1C1C1C1C1C38383838183818381C7007F00070 007000E0E0C0E1C0818047003C00101A7C9114>I<038207C20FEC083810080010002000400080 01000200040008081008383067F043E081C00F127D9111>I<FFFFC012017C8B15>I E /Fm 83 124 df<007E1F0001C1B1800303E3C00703C3C00E03C1800E01C0000E01C0000E01C0 000E01C0000E01C0000E01C000FFFFFC000E01C0000E01C0000E01C0000E01C0000E01C0000E01 C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E 01C0007F87FC001A1D809C18>11 D<007E0001C1800301800703C00E03C00E01800E00000E0000 0E00000E00000E0000FFFFC00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0 0E01C00E01C00E01C00E01C00E01C00E01C00E01C07F87F8151D809C17>I<007FC001C1C00303 C00703C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0FFFFC00E01C00E01C00E01C00E01 C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C07FCF F8151D809C17>I<003F07E00001C09C18000380F018000701F03C000E01E03C000E00E018000E 00E000000E00E000000E00E000000E00E000000E00E00000FFFFFFFC000E00E01C000E00E01C00 0E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C 000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C007FC7FCFF80211D80 9C23>I<6060F0F0F8F86868080808080808101010102020404080800D0C7F9C15>34 D<0003018000030180000301800006030000060300000603000006030000060300000C0600000C 0600000C0600000C060000180C007FFFFFF8FFFFFFFC0030180000301800003018000030180000 603000006030000060300000603000FFFFFFFC7FFFFFF800C060000180C0000180C0000180C000 0180C000030180000301800003018000030180000603000006030000060300001E257E9C23>I< 60F0F8680808081010204080050C7C9C0C>39 D<004000800100020006000C000C001800180030 0030007000600060006000E000E000E000E000E000E000E000E000E000E000E000E00060006000 6000700030003000180018000C000C00060002000100008000400A2A7D9E10>I<800040002000 100018000C000C000600060003000300038001800180018001C001C001C001C001C001C001C001 C001C001C001C001C0018001800180038003000300060006000C000C0018001000200040008000 0A2A7E9E10>I<60F0F0701010101020204080040C7C830C>44 D<FFE0FFE00B0280890E>I<60F0 F06004047C830C>I<00010003000600060006000C000C000C0018001800180030003000300060 006000C000C000C0018001800180030003000300060006000C000C000C00180018001800300030 003000600060006000C000C00010297E9E15>I<03C00C301818300C300C700E60066006E007E0 07E007E007E007E007E007E007E007E007E007E007E00760066006700E300C300C18180C3007E0 101D7E9B15>I<030007003F00C700070007000700070007000700070007000700070007000700 07000700070007000700070007000700070007000F80FFF80D1C7C9B15>I<07C01830201C400C 400EF00FF80FF807F8077007000F000E000E001C001C00380070006000C00180030006010C0118 0110023FFE7FFEFFFE101C7E9B15>I<07E01830201C201C781E780E781E381E001C001C001800 30006007E00030001C001C000E000F000F700FF80FF80FF80FF00E401C201C183007E0101D7E9B 15>I<000C00000C00001C00003C00003C00005C0000DC00009C00011C00031C00021C00041C00 0C1C00081C00101C00301C00201C00401C00C01C00FFFFC0001C00001C00001C00001C00001C00 001C00001C0001FFC0121C7F9B15>I<300C3FF83FF03FC020002000200020002000200023E024 302818301C200E000E000F000F000F600FF00FF00FF00F800E401E401C2038187007C0101D7E9B 15>I<00F0030C06040C0E181E301E300C700070006000E3E0E430E818F00CF00EE006E007E007 E007E007E007600760077006300E300C18180C3003E0101D7E9B15>I<4000007FFF807FFF007F FF0040020080040080040080080000100000100000200000600000400000C00000C00001C00001 800001800003800003800003800003800007800007800007800007800007800007800003000011 1D7E9B15>I<03E00C301008200C20066006600660067006780C3E083FB01FE007F007F818FC30 7E601E600FC007C003C003C003C00360026004300C1C1007E0101D7E9B15>I<03C00C30181830 0C700C600EE006E006E007E007E007E007E0076007700F300F18170C2707C700060006000E300C 780C78187010203030C00F80101D7E9B15>I<60F0F0600000000000000000000060F0F0600412 7C910C>I<60F0F0600000000000000000000060F0F0701010101020204080041A7C910C>I<7FFF FFC0FFFFFFE00000000000000000000000000000000000000000000000000000000000000000FF FFFFE07FFFFFC01B0C7E8F20>61 D<0FE03038401CE00EF00EF00EF00E000C001C0030006000C0 008001800100010001000100010001000000000000000000000003000780078003000F1D7E9C14 >63 D<000600000006000000060000000F0000000F0000000F0000001780000017800000178000 0023C0000023C0000023C0000041E0000041E0000041E0000080F0000080F0000180F800010078 0001FFF80003007C0002003C0002003C0006003E0004001E0004001E000C001F001E001F00FF80 FFF01C1D7F9C1F>65 D<FFFFC00F00F00F00380F003C0F001C0F001E0F001E0F001E0F001E0F00 1C0F003C0F00780F01F00FFFE00F00780F003C0F001E0F000E0F000F0F000F0F000F0F000F0F00 0F0F001E0F001E0F003C0F0078FFFFE0181C7E9B1D>I<001F808000E061800180198007000780 0E0003801C0003801C00018038000180780000807800008070000080F0000000F0000000F00000 00F0000000F0000000F0000000F0000000F0000000700000807800008078000080380000801C00 01001C0001000E000200070004000180080000E03000001FC000191E7E9C1E>I<FFFFC0000F00 F0000F003C000F000E000F0007000F0007000F0003800F0003C00F0001C00F0001C00F0001E00F 0001E00F0001E00F0001E00F0001E00F0001E00F0001E00F0001E00F0001C00F0001C00F0003C0 0F0003800F0007800F0007000F000E000F001C000F007000FFFFC0001B1C7E9B20>I<FFFFFC0F 003C0F000C0F00040F00040F00060F00020F00020F02020F02000F02000F02000F06000FFE000F 06000F02000F02000F02000F02010F00010F00020F00020F00020F00060F00060F000C0F003CFF FFFC181C7E9B1C>I<FFFFF80F00780F00180F00080F00080F000C0F00040F00040F02040F0200 0F02000F02000F06000FFE000F06000F02000F02000F02000F02000F00000F00000F00000F0000 0F00000F00000F00000F8000FFF800161C7E9B1B>I<001F808000E0618001801980070007800E 0003801C0003801C00018038000180780000807800008070000080F0000000F0000000F0000000 F0000000F0000000F0000000F000FFF0F0000F80700007807800078078000780380007801C0007 801C0007800E00078007000B800180118000E06080001F80001C1E7E9C21>I<FFF3FFC00F003C 000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F00 3C000F003C000FFFFC000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F 003C000F003C000F003C000F003C000F003C000F003C00FFF3FFC01A1C7E9B1F>I<FFF00F000F 000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F00 0F000F000F000F000F00FFF00C1C7F9B0F>I<1FFF00F800780078007800780078007800780078 007800780078007800780078007800780078007800787078F878F878F878F0F040E021C01F0010 1D7F9B15>I<FFF03FE00F000F000F000C000F0008000F0010000F0020000F0040000F0080000F 0100000F0200000F0400000F0E00000F1F00000F2F00000F2780000F4780000F83C0000F01E000 0F01E0000F00F0000F00F8000F0078000F003C000F003C000F001E000F001F000F001F80FFF07F F01C1C7E9B20>I<FFF8000F80000F00000F00000F00000F00000F00000F00000F00000F00000F 00000F00000F00000F00000F00000F00000F00000F00000F00080F00080F00080F00180F00180F 00100F00300F00700F01F0FFFFF0151C7E9B1A>I<FF8000FF800F8000F8000F8000F8000BC001 78000BC00178000BC001780009E002780009E002780008F004780008F004780008F00478000878 08780008780878000878087800083C107800083C107800083C107800081E207800081E20780008 1E207800080F407800080F40780008078078000807807800080780780008030078001C03007800 FF8307FF80211C7E9B26>I<FF007FC00F800E000F8004000BC0040009E0040009E0040008F004 0008F8040008780400083C0400083C0400081E0400080F0400080F0400080784000807C4000803 C4000801E4000801E4000800F40008007C0008007C0008003C0008003C0008001C0008000C001C 000C00FF8004001A1C7E9B1F>I<003F800000E0E0000380380007001C000E000E001C0007003C 00078038000380780003C0780003C0700001C0F00001E0F00001E0F00001E0F00001E0F00001E0 F00001E0F00001E0F00001E0700001C0780003C0780003C0380003803C0007801C0007000E000E 0007001C000380380000E0E000003F80001B1E7E9C20>I<FFFF800F00E00F00780F003C0F001C 0F001E0F001E0F001E0F001E0F001E0F001C0F003C0F00780F00E00FFF800F00000F00000F0000 0F00000F00000F00000F00000F00000F00000F00000F00000F0000FFF000171C7E9B1C>I<003F 800000E0E0000380380007001C000E000E001C0007003C00078038000380780003C0780003C070 0001C0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0700001C0 780003C0780003C0380003803C0E07801C1107000E208E0007205C0003A0780000F0E020003FE0 200000602000003060000038E000003FC000003FC000001F8000000F001B257E9C20>I<FFFF00 000F01E0000F0078000F003C000F001C000F001E000F001E000F001E000F001E000F001C000F00 3C000F0078000F01E0000FFF00000F03C0000F00E0000F00F0000F0078000F0078000F0078000F 0078000F0078000F0078000F0078100F0078100F0038100F003C20FFF01C20000007C01C1D7E9B 1F>I<07E0801C1980300580700380600180E00180E00080E00080E00080F00000F800007C0000 7FC0003FF8001FFE0007FF0000FF80000F800007C00003C00001C08001C08001C08001C0C00180 C00180E00300D00200CC0C0083F800121E7E9C17>I<7FFFFFC0700F01C0600F00C0400F004040 0F0040C00F0020800F0020800F0020800F0020000F0000000F0000000F0000000F0000000F0000 000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00 00000F0000000F0000001F800003FFFC001B1C7F9B1E>I<FFF07FC00F000E000F0004000F0004 000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F00 04000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004000700080007 800800038010000180100000C020000070C000001F00001A1D7E9B1F>I<FFE00FF01F0003C00F 0001800F0001000F800300078002000780020003C0040003C0040003C0040001E0080001E00800 01F0080000F0100000F0100000F830000078200000782000003C4000003C4000003C4000001E80 00001E8000001F8000000F0000000F00000006000000060000000600001C1D7F9B1F>I<FFE0FF E0FF1F001F003C1E001E00180F001F00100F001F00100F001F001007801F002007802780200780 27802003C027804003C043C04003C043C04003E043C04001E081E08001E081E08001E081E08000 F100F10000F100F10000F100F100007900FA00007A007A00007A007A00003E007C00003C003C00 003C003C00003C003C00001800180000180018000018001800281D7F9B2B>I<7FF0FFC00FC03E 000780180003C0180003E0100001E0200001F0600000F0400000788000007D8000003D0000001E 0000001F0000000F0000000F8000000F80000013C0000023E0000021E0000041F00000C0F80000 80780001007C0003003C0002001E0006001F001F003F80FFC0FFF01C1C7F9B1F>I<FFF007FC0F 8001E00780008007C0018003C0010003E0020001F0020000F0040000F8040000780800007C1800 003C1000001E2000001F2000000F4000000FC00000078000000780000007800000078000000780 00000780000007800000078000000780000007800000078000007FF8001E1C809B1F>I<7FFFF0 7C01F07001E06003C06003C0400780400F80400F00401E00001E00003C00007C0000780000F000 00F00001E00003E00003C0100780100780100F00101F00301E00203C00203C00607800E0F803E0 FFFFE0141C7E9B19>I<FEFEC0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0 C0C0C0C0C0C0C0C0C0C0FEFE07297C9E0C>I<FEFE060606060606060606060606060606060606 06060606060606060606060606060606060606FEFE0729809E0C>93 D<0C001200210040808040 0A057B9B15>I<1FC000307000783800781C00301C00001C00001C0001FC000F1C00381C00701C 00601C00E01C40E01C40E01C40603C40304E801F870012127E9115>97 D<FC00001C00001C0000 1C00001C00001C00001C00001C00001C00001C00001C00001C7C001D86001E03001C01801C01C0 1C00C01C00E01C00E01C00E01C00E01C00E01C00E01C00C01C01C01C01801E030019060010F800 131D7F9C17>I<07E00C301878307870306000E000E000E000E000E000E0006000700430041808 0C3007C00E127E9112>I<003F0000070000070000070000070000070000070000070000070000 070000070003E7000C1700180F00300700700700600700E00700E00700E00700E00700E00700E0 0700600700700700300700180F000C370007C7E0131D7E9C17>I<03E00C301818300C700E6006 E006FFFEE000E000E000E00060007002300218040C1803E00F127F9112>I<00F8018C071E061E 0E0C0E000E000E000E000E000E00FFE00E000E000E000E000E000E000E000E000E000E000E000E 000E000E000E000E007FE00F1D809C0D>I<00038003C4C00C38C01C3880181800381C00381C00 381C00381C001818001C38000C300013C0001000003000001800001FF8001FFF001FFF80300380 6001C0C000C0C000C0C000C06001803003001C0E0007F800121C7F9215>I<FC00001C00001C00 001C00001C00001C00001C00001C00001C00001C00001C00001C7C001C87001D03001E03801C03 801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C0380FF9F F0141D7F9C17>I<18003C003C0018000000000000000000000000000000FC001C001C001C001C 001C001C001C001C001C001C001C001C001C001C001C001C00FF80091D7F9C0C>I<00C001E001 E000C000000000000000000000000000000FE000E000E000E000E000E000E000E000E000E000E0 00E000E000E000E000E000E000E000E000E000E060E0F0C0F1C061803E000B25839C0D>I<FC00 001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C3FC01C0F001C0C 001C08001C10001C20001C40001CE0001DE0001E70001C78001C38001C3C001C1C001C0E001C0F 001C0F80FF9FE0131D7F9C16>I<FC001C001C001C001C001C001C001C001C001C001C001C001C 001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C00FF80091D7F9C0C> I<FC7E07E0001C838838001D019018001E01E01C001C01C01C001C01C01C001C01C01C001C01C0 1C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01 C01C001C01C01C00FF8FF8FF8021127F9124>I<FC7C001C87001D03001E03801C03801C03801C 03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C0380FF9FF014127F91 17>I<03F0000E1C00180600300300700380600180E001C0E001C0E001C0E001C0E001C0E001C0 6001807003803003001806000E1C0003F00012127F9115>I<FC7C001D86001E03001C01801C01 C01C00C01C00E01C00E01C00E01C00E01C00E01C00E01C01C01C01C01C01801E03001D06001CF8 001C00001C00001C00001C00001C00001C00001C0000FF8000131A7F9117>I<03C1000C330018 0B00300F00700700700700E00700E00700E00700E00700E00700E00700600700700700300F0018 0F000C370007C700000700000700000700000700000700000700000700003FE0131A7E9116>I< FCE01D301E781E781C301C001C001C001C001C001C001C001C001C001C001C001C00FFC00D127F 9110>I<1F9030704030C010C010E010F8007F803FE00FF000F880388018C018C018E010D0608F C00D127F9110>I<04000400040004000C000C001C003C00FFE01C001C001C001C001C001C001C 001C001C001C101C101C101C101C100C100E2003C00C1A7F9910>I<FC1F801C03801C03801C03 801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C07800C07800E1B 8003E3F014127F9117>I<FF07E03C03801C01001C01000E02000E020007040007040007040003 880003880003D80001D00001D00000E00000E00000E00000400013127F9116>I<FF3FCFE03C0F 03801C0701801C0701001C0B01000E0B82000E0B82000E1182000711C4000711C4000720C40003 A0E80003A0E80003C0680001C0700001C0700001803000008020001B127F911E>I<7F8FF00F03 800F030007020003840001C80001D80000F00000700000780000F800009C00010E00020E000607 000403801E07C0FF0FF81512809116>I<FF07E03C03801C01001C01000E02000E020007040007 040007040003880003880003D80001D00001D00000E00000E00000E00000400000400000800000 8000F08000F10000F300006600003C0000131A7F9116>I<7FFC70386038407040F040E041C003 C0038007000F040E041C043C0C380870087038FFF80E127F9112>I<FFFFF01401808B15>I E end %%EndProlog %%BeginSetup %%Feature: *Resolution 300 TeXDict begin @letter /letter where {pop letter} if %%EndSetup %%Page: 61 1 bop 240 -150 a 21313290 26049576 0 0 40258437 52099153 startTexFig 240 -150 a %%BeginDocument: usc.ps /FMversion (2.0) def /FrameDict 170 dict def systemdict /errordict known not { /errordict 10 dict def errordict /rangecheck { stop } put } if FrameDict /tmprangecheck errordict /rangecheck get put errordict /rangecheck {FrameDict /bug true put} put FrameDict /bug false put mark currentfile 5 string readline 00 0000000000 cleartomark errordict /rangecheck FrameDict /tmprangecheck get put FrameDict /bug get { /readline { /gstring exch def /gfile exch def /gindex 0 def { gfile read pop dup 10 eq {exit} if dup 13 eq {exit} if gstring exch gindex exch put /gindex gindex 1 add def } loop pop gstring 0 gindex getinterval true } def } if /FMVERSION { FMversion ne { /Times-Roman findfont 18 scalefont setfont 100 100 moveto (FrameMaker version does not match postscript_prolog!) dup = show showpage } if } def /FMLOCAL { FrameDict begin 0 def end } def /gstring FMLOCAL /gfile FMLOCAL /gindex FMLOCAL /orgxfer FMLOCAL /orgproc FMLOCAL /organgle FMLOCAL /orgfreq FMLOCAL FrameDict /graymode true put /yscale FMLOCAL /xscale FMLOCAL /PrintInColor systemdict /colorimage known def PrintInColor { /HUE 0 def /SAT 0 def /BRIGHT 0 def % array of arrays Hue and Sat values for the separations [HUE BRIGHT] /Colors [[0 0 ] % black [0 0 ] % white [0.00 1.0] % red [0.37 1.0] % green [0.60 1.0] % blue [0.50 1.0] % cyan [0.83 1.0] % magenta [0.16 1.0] % comment ] def /BEGINBITMAPCOLOR { BITMAPCOLOR } def /BEGINBITMAPCOLORc { BITMAPCOLORc } def /K { Colors exch get dup 0 get /HUE exch store 1 get /BRIGHT exch store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } def /mysetgray { /SAT exch 1.0 exch sub store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } bind def } { /BEGINBITMAPCOLOR { BITMAPGRAY } def /BEGINBITMAPCOLORc { BITMAPGRAYc } def /mysetgray { setgray } bind def /K { pop } def } ifelse /max {2 copy lt {exch} if pop} bind def /min {2 copy gt {exch} if pop} bind def /mtx matrix defaultmatrix def /setmanualfeed { statusdict /manualfeed true put } def /FMDOCUMENT { array /FMfonts exch def /#copies exch def 0 ne dup {setmanualfeed} if FrameDict begin /manualfeed exch def /paperheight exch def /paperwidth exch def setpapername manualfeed {true} {papersize} ifelse {manualpapersize} {false} ifelse {desperatepapersize} if /yscale exch def /xscale exch def currenttransfer cvlit /orgxfer exch def currentscreen cvlit /orgproc exch def /organgle exch def /orgfreq exch def end } def /pagesave FMLOCAL /orgmatrix FMLOCAL /landscape FMLOCAL /FMBEGINPAGE { FrameDict begin /pagesave save def 3.86 setmiterlimit /landscape exch 0 ne store landscape { 90 rotate 0 exch neg translate pop } { pop pop } ifelse xscale yscale scale /orgmatrix matrix def gsave } def /FMENDPAGE { grestore pagesave restore end showpage } def /fontname FMLOCAL /fontscale FMLOCAL /fontnum FMLOCAL /fontdict FMLOCAL /FMDEFINEFONT { FrameDict begin /fontname exch def /fontscale exch def /fontnum exch def /fontdict fontname findfont fontscale scalefont def fontdict /Encoding get StandardEncoding eq { fontdict DiacriticEncode /fontdict exch def } { fontdict NonDiacriticEncode /fontdict exch def } ifelse FMfonts fontnum fontnum fontdict definefont put end } def /FMNORMALIZEGRAPHICS { newpath 0.0 0.0 moveto 1 setlinewidth 0 setlinecap 0 mysetgray } bind def /FMBEGINEPSF { end /FMEPSF save def /showpage {} def FMNORMALIZEGRAPHICS [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall fx fy translate rotate fw urx llx sub div fh ury lly sub div scale llx neg lly neg translate } bind def /FMENDEPSF { FMEPSF restore FrameDict begin } bind def FrameDict begin /pagedimen { paperheight sub abs 16 lt exch paperwidth sub abs 16 lt and {/papername exch def} {pop} ifelse } def /inch {72 mul} def /setpapername { /papersizedict 14 dict def papersizedict begin /papername /unknown def /Letter 8.5 inch 11.0 inch pagedimen /LetterSmall 7.68 inch 10.16 inch pagedimen /Tabloid 11.0 inch 17.0 inch pagedimen /Ledger 17.0 inch 11.0 inch pagedimen /Legal 8.5 inch 14.0 inch pagedimen /Statement 5.5 inch 8.5 inch pagedimen /Executive 7.5 inch 10.0 inch pagedimen /A3 11.69 inch 16.5 inch pagedimen /A4 8.26 inch 11.69 inch pagedimen /A4Small 7.47 inch 10.85 inch pagedimen /B4 10.125 inch 14.33 inch pagedimen /B5 7.16 inch 10.125 inch pagedimen end } def /papersize { papersizedict begin /Letter {lettertray} def /LetterSmall {lettertray lettersmall} def /Tabloid {11x17tray} def /Ledger {ledgertray} def /Legal {legaltray} def /Statement {statementtray} def /Executive {executivetray} def /A3 {a3tray} def /A4 {a4tray} def /A4Small {a4tray a4small} def /B4 {b4tray} def /B5 {b5tray} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end statusdict begin stopped end } def /manualpapersize { papersizedict begin /Letter {letter} def /LetterSmall {lettersmall} def /Tabloid {11x17} def /Ledger {ledger} def /Legal {legal} def /Statement {statement} def /Executive {executive} def /A3 {a3} def /A4 {a4} def /A4Small {a4small} def /B4 {b4} def /B5 {b5} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end stopped } def /desperatepapersize { statusdict /setpageparams known { paperwidth paperheight 0 1 statusdict begin {setpageparams} stopped pop end } if } def /savematrix { orgmatrix currentmatrix pop } bind def /restorematrix { orgmatrix setmatrix } bind def /dmatrix matrix def /dpi 72 0 dmatrix defaultmatrix dtransform dup mul exch dup mul add sqrt def /freq dpi 18.75 div 8 div round dup 0 eq { pop 1 } if 8 mul dpi exch div def /sangle 1 0 dmatrix defaultmatrix dtransform exch atan def /DiacriticEncoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def /basefontdict FMLOCAL /newfontdict FMLOCAL /DiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {dup /Encoding eq {exch pop DiacriticEncoding} {exch} ifelse newfontdict 3 1 roll put } {pop pop} ifelse } forall newfontdict } bind def /NonDiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {exch newfontdict 3 1 roll put} {pop pop} ifelse } forall newfontdict } bind def /bwidth FMLOCAL /bpside FMLOCAL /bstring FMLOCAL /onbits FMLOCAL /offbits FMLOCAL /xindex FMLOCAL /yindex FMLOCAL /x FMLOCAL /y FMLOCAL /setpattern { /bwidth exch def /bpside exch def /bstring exch def /onbits 0 def /offbits 0 def freq sangle landscape {90 add} if {/y exch def /x exch def /xindex x 1 add 2 div bpside mul cvi def /yindex y 1 add 2 div bpside mul cvi def bstring yindex bwidth mul xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne {/onbits onbits 1 add def 1} {/offbits offbits 1 add def 0} ifelse } setscreen {} settransfer offbits offbits onbits add div mysetgray /graymode false store } bind def /grayness { mysetgray graymode not { /graymode true store orgxfer cvx settransfer orgfreq organgle orgproc cvx setscreen } if } bind def /normalize { transform round exch round exch itransform } bind def /dnormalize { dtransform round exch round exch idtransform } bind def /lnormalize { 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def /H { lnormalize setlinewidth } bind def /Z { setlinecap } bind def /X { fillprocs exch get exec } bind def /V { gsave eofill grestore } bind def /N { stroke } bind def /M {newpath moveto} bind def /E {lineto} bind def /D {curveto} bind def /O {closepath} bind def /n FMLOCAL /L { /n exch def newpath normalize moveto 2 1 n {pop normalize lineto} for } bind def /Y { L closepath } bind def /x1 FMLOCAL /x2 FMLOCAL /y1 FMLOCAL /y2 FMLOCAL /rad FMLOCAL /R { /y2 exch def /x2 exch def /y1 exch def /x1 exch def x1 y1 x2 y1 x2 y2 x1 y2 4 Y } bind def /RR { /rad exch def normalize /y2 exch def /x2 exch def normalize /y1 exch def /x1 exch def newpath x1 y1 rad add moveto x1 y2 x2 y2 rad arcto x2 y2 x2 y1 rad arcto x2 y1 x1 y1 rad arcto x1 y1 x1 y2 rad arcto closepath 16 {pop} repeat } bind def /C { grestore gsave R clip } bind def /U { grestore gsave } bind def /F { FMfonts exch get setfont } bind def /T { moveto show } bind def /RF { rotate 0 ne { -1 1 scale } if } bind def /TF { gsave moveto RF show grestore } bind def /P { moveto 0 32 3 2 roll widthshow } bind def /PF { gsave moveto RF 0 32 3 2 roll widthshow grestore } bind def /S { moveto 0 exch ashow } bind def /SF { gsave moveto RF 0 exch ashow grestore } bind def /B { moveto 0 32 4 2 roll 0 exch awidthshow } bind def /BF { gsave moveto RF 0 32 4 2 roll 0 exch awidthshow grestore } bind def /x FMLOCAL /y FMLOCAL /dx FMLOCAL /dy FMLOCAL /dl FMLOCAL /t FMLOCAL /t2 FMLOCAL /Cos FMLOCAL /Sin FMLOCAL /r FMLOCAL /W { dnormalize /dy exch def /dx exch def normalize /y exch def /x exch def /dl dx dx mul dy dy mul add sqrt def dl 0.0 gt { /t currentlinewidth def savematrix /Cos dx dl div def /Sin dy dl div def /r [Cos Sin Sin neg Cos 0.0 0.0] def /t2 t 2.5 mul 3.5 max def newpath x y translate r concat 0.0 0.0 moveto dl t 2.7 mul sub 0.0 rlineto stroke restorematrix x dx add y dy add translate r concat t 0.67 mul setlinewidth t 1.61 mul neg 0.0 translate 0.0 0.0 moveto t2 1.7 mul neg t2 2.0 div moveto 0.0 0.0 lineto t2 1.7 mul neg t2 2.0 div neg lineto stroke t setlinewidth restorematrix } if } bind def /G { gsave newpath normalize translate 0.0 0.0 moveto dnormalize scale 0.0 0.0 1.0 5 3 roll arc closepath fill grestore } bind def /A { gsave savematrix newpath 2 index 2 div add exch 3 index 2 div sub exch normalize 2 index 2 div sub exch 3 index 2 div add exch translate scale 0.0 0.0 1.0 5 3 roll arc restorematrix stroke grestore } bind def /x FMLOCAL /y FMLOCAL /w FMLOCAL /h FMLOCAL /xx FMLOCAL /yy FMLOCAL /ww FMLOCAL /hh FMLOCAL /FMsaveobject FMLOCAL /FMoptop FMLOCAL /FMdicttop FMLOCAL /BEGINPRINTCODE { /FMdicttop countdictstack 1 add def /FMoptop count 4 sub def /FMsaveobject save def userdict begin /showpage {} def FMNORMALIZEGRAPHICS 3 index neg 3 index neg translate } bind def /ENDPRINTCODE { count -1 FMoptop {pop pop} for countdictstack -1 FMdicttop {pop end} for FMsaveobject restore } bind def /gn { 0 { 46 mul cf read pop 32 sub dup 46 lt {exit} if 46 sub add } loop add } bind def /str FMLOCAL /cfs { /str sl string def 0 1 sl 1 sub {str exch val put} for str def } bind def /ic [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} ] def /sl FMLOCAL /val FMLOCAL /ws FMLOCAL /im FMLOCAL /bs FMLOCAL /cs FMLOCAL /len FMLOCAL /pos FMLOCAL /ms { /sl exch def /val 255 def /ws cfs /im cfs /val 0 def /bs cfs /cs cfs } bind def 400 ms /ip { is 0 cf cs readline pop { ic exch get exec add } forall pop } bind def /wh { /len exch def /pos exch def ws 0 len getinterval im pos len getinterval copy pop pos len } bind def /bl { /len exch def /pos exch def bs 0 len getinterval im pos len getinterval copy pop pos len } bind def /s1 1 string def /fl { /len exch def /pos exch def /val cf s1 readhexstring pop 0 get def pos 1 pos len add 1 sub {im exch val put} for pos len } bind def /hx { 3 copy getinterval cf exch readhexstring pop pop } bind def /h FMLOCAL /w FMLOCAL /d FMLOCAL /lb FMLOCAL /bitmapsave FMLOCAL /is FMLOCAL /cf FMLOCAL /wbytes { dup 8 eq { pop } { 1 eq { 7 add 8 idiv } { 3 add 4 idiv } ifelse } ifelse } bind def /BEGINBITMAPBWc { 1 {} COMMONBITMAPc } bind def /BEGINBITMAPGRAYc { 8 {} COMMONBITMAPc } bind def /BEGINBITMAP2BITc { 2 {} COMMONBITMAPc } bind def /COMMONBITMAPc { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def r /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} image bitmapsave restore grestore } bind def /BEGINBITMAPBW { 1 {} COMMONBITMAP } bind def /BEGINBITMAPGRAY { 8 {} COMMONBITMAP } bind def /BEGINBITMAP2BIT { 2 {} COMMONBITMAP } bind def /COMMONBITMAP { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def r /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } image bitmapsave restore grestore } bind def /Fmcc { /proc2 exch cvlit def /proc1 exch cvlit def /newproc proc1 length proc2 length add array def newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval newproc cvx } bind def /colorsetup { currentcolortransfer /gryt exch def /blut exch def /grnt exch def /redt exch def /ngrayt 256 array def /nredt 256 array def /nbluet 256 array def /ngreent 256 array def 0 1 255 { /indx exch def /cynu 1 red indx get 255 div sub def /magu 1 green indx get 255 div sub def /yelu 1 blue indx get 255 div sub def /k cynu magu min yelu min def /u k currentundercolorremoval exec def nredt indx 1 0 cynu u sub max sub redt exec put ngreent indx 1 0 magu u sub max sub grnt exec put nbluet indx 1 0 yelu u sub max sub blut exec put ngrayt indx 1 k currentblackgeneration exec sub gryt exec put } for {255 mul cvi nredt exch get} {255 mul cvi ngreent exch get} {255 mul cvi nbluet exch get} {255 mul cvi ngrayt exch get} setcolortransfer {pop 0} setundercolorremoval {} setblackgeneration } bind def /fakecolorsetup { /tran 256 string def 0 1 255 { /ind exch def tran ind red ind get 77 mul green ind get 151 mul blue ind get 28 mul add add 256 idiv put } for currenttransfer { 255 mul cvi tran exch get 255.0 div } exch Fmcc settransfer } bind def /BITMAPCOLOR { /d 8 def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def colorsetup /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPCOLORc { /d 8 def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def colorsetup /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPGRAY { 8 {fakecolorsetup} COMMONBITMAP } bind def /BITMAPGRAYc { 8 {fakecolorsetup} COMMONBITMAPc } bind def /ENDBITMAP { } bind def end (2.0) FMVERSION 1 1 2 2 0 1 2 FMDOCUMENT /fillprocs 32 array def fillprocs 0 { 0.000000 grayness } put fillprocs 1 { 0.100000 grayness } put fillprocs 2 { 0.300000 grayness } put fillprocs 3 { 0.500000 grayness } put fillprocs 4 { 0.700000 grayness } put fillprocs 5 { 0.900000 grayness } put fillprocs 6 { 0.970000 grayness } put fillprocs 7 { 1.000000 grayness } put fillprocs 8 {<0f1e3c78f0e1c387> 8 1 setpattern } put fillprocs 9 {<0f87c3e1f0783c1e> 8 1 setpattern } put fillprocs 10 {<cccccccccccccccc> 8 1 setpattern } put fillprocs 11 {<ffff0000ffff0000> 8 1 setpattern } put fillprocs 12 {<8142241818244281> 8 1 setpattern } put fillprocs 13 {<03060c183060c081> 8 1 setpattern } put fillprocs 14 {<8040201008040201> 8 1 setpattern } put fillprocs 15 {} put fillprocs 16 { 1.000000 grayness } put fillprocs 17 { 0.900000 grayness } put fillprocs 18 { 0.700000 grayness } put fillprocs 19 { 0.500000 grayness } put fillprocs 20 { 0.300000 grayness } put fillprocs 21 { 0.100000 grayness } put fillprocs 22 { 0.030000 grayness } put fillprocs 23 { 0.000000 grayness } put fillprocs 24 {<f0e1c3870f1e3c78> 8 1 setpattern } put fillprocs 25 {<f0783c1e0f87c3e1> 8 1 setpattern } put fillprocs 26 {<3333333333333333> 8 1 setpattern } put fillprocs 27 {<0000ffff0000ffff> 8 1 setpattern } put fillprocs 28 {<7ebddbe7e7dbbd7e> 8 1 setpattern } put fillprocs 29 {<fcf9f3e7cf9f3f7e> 8 1 setpattern } put fillprocs 30 {<7fbfdfeff7fbfdfe> 8 1 setpattern } put fillprocs 31 {} put 0 18 /Helvetica-Bold FMDEFINEFONT 1 24 /Helvetica-Bold FMDEFINEFONT 612 792 0 FMBEGINPAGE 0 0 612 792 C 0 0 612 792 R 7 X 0 K V 0 75.86 612 778.86 C -56.75 75.86 699.25 778.86 R 7 X 0 K V 53 95 591 762 R V 4 H 2 Z 8 X N 457.47 351.74 M 457.47 210 457.47 210 339.28 210 D 0 X N 453.57 442.56 M 453.57 559.49 453.57 559.49 336.58 559.49 D 1 H N 406.97 349.36 502.37 442.56 R 5 X V 3 H 0 X N 65.69 351.73 162.89 441.05 R 6 X V 0 X N 244.78 166.31 339.28 253.68 R 6 X V 0 X N 239.38 514.83 336.58 602.21 R 4 X V 0 X N 0 F (Bigsur) 83.91 422.52 T (AD 333) 83.71 389 T (Entity 2) 82.51 357.39 T (Kos) 269.45 583.89 T (AD 1) 260.04 553.67 T (1) 300.03 553.67 T (1) 309.04 553.67 T (Santorini) 416.06 421.79 T (AD 222) 424.35 387.89 T (Entity 1) 424 355.16 T 407.77 413.33 499.57 413.33 2 L 5 X V 0 X N 243.88 210 M 112.49 210 112.49 210 112.49 349.79 D 4 H N 113.39 442.99 M 113.39 559.49 113.39 559.49 241.18 559.49 D 1 H N (Pismo) 264.7 235.28 T (AD 333) 259.82 202.15 T 244.65 226.93 337.34 226.93 2 L 3 H N 290.68 603.18 M 290.68 646.75 290.68 646.75 473.86 646.75 D N 67.5 414.3 161.99 414.3 2 L N 240.28 575.35 335.68 575.35 2 L N (and off-campus nets.) 78.4 653.26 T (T) 90.4 682.39 T (o campus network) 100.06 682.39 T 67.39 380 163.39 380 2 L N 407.37 375.46 499.37 375.46 2 L 5 X V 0 X N 243.38 190.15 336.38 190.15 2 L N 377.09 136.06 516.07 180.2 R 1 H N 390.58 145.69 416.89 145.69 2 L 4 H N (thick ether) 424.44 139.98 T (thin ether) 424.74 158.69 T 387.71 160.97 415.31 160.97 2 L 1 H N 238.88 540.72 333.88 540.72 2 L 3 H N (Entity 1) 259.89 171.94 T (Entity 1) 256.89 522.51 T 476.22 595.37 575.6 685.53 R 4 X V 0 X N (AD 1) 495.14 635.71 T (1) 535.13 635.71 T (1) 544.15 635.71 T (Excalibur) 482.48 666.66 T (Entity 2) 494.56 600.93 T 478.15 659.26 573.36 659.26 2 L N 477.33 625.04 575.36 625.04 2 L N 147.39 713.31 483.37 713.31 2 L 4 H N 1 F (IDPR /VISA T) 147.66 719.83 T (est Setup at USC) 293.83 719.83 T 85.16 666.41 65 672.18 85.15 677.97 85.15 672.19 4 Y V 317 643.06 M 270.27 671.19 268.68 672.15 85.18 672.18 D 3 H 0 Z N 0 0 612 792 C FMENDPAGE %%EndDocument 240 -150 a endTexFig 611 1503 a Fm(Figure)14 b(5.1:)j(Lab)q(oratory)d(T)m(est)g(En)o(vironmen)o(t) -90 1636 y(con)o(trast)g(to)f(its)g(predecessor,)i(the)f(curren)o(t)h(v)o (ersion)e(is)g(implemen)o(ted)e(as)i(a)f(self-con)o(tained)h(proto)q(col)g (en)o(tailing)f(no)h(mo)q(di\014cations)e(to)-90 1686 y(other)k(proto)q(col)e (soft)o(w)o(are.)-28 1753 y(All)j(visa)f(con)o(trol)h(pac)o(k)o(ets)h(are)g (pro)q(cessed)h(inside)e(the)h(k)o(ernel.)26 b(This)16 b(sp)q(eeds)i(up)e (connection)h(setup)g(\(as)f(compared)g(to)g(out-of-)-90 1803 y(k)o(ernel)i(implemen)o(tatio)o(ns)d([61)o(]\).)29 b(Recall)17 b(that)h(connection)g(setup)h(is)e(the)h(most)f("o)o(v)o(erhead-in)o(tensiv)o (e")g(phase)h(of)f Fl(Visa)h Fm(proto)q(col.)-90 1853 y(It)d(in)o(v)o(olv)o (es)g(the)h(exc)o(hange)g(of)f(at)g(least)h(t)o(w)o(o)e(in)o(ter-AD)i(pac)o (k)o(ets:)22 b(VISA-REQUEST)16 b(from)d Fk(AC)s(S)1509 1859 y Fj(a)1545 1853 y Fm(to)i Fk(AC)s(S)1686 1859 y Fj(b)1718 1853 y Fm(and)g(VISA-GRANT)-90 1903 y(from)e Fk(AC)s(S)98 1909 y Fj(b)129 1903 y Fm(bac)o(k)i(to)f Fk(AC)s(S)367 1909 y Fj(a)387 1903 y Fm(.)20 b(Moreo)o(v)o(er,)15 b(at)f(least)h(four)f(in)o(ter-AD)g(pac)o (k)o(ets)i(are)e(exc)o(hanged)i(\(one)f(HOST-REQUEST,)f(and)h(three)-90 1953 y(VISA-GRANTs\).)-28 2020 y(F)m(or)h(the)h(purp)q(ose)g(of)f(measuring)f (the)i(o)o(v)o(erhead)f(w)o(e)h(de\014ne)g(connection)g(setup)g(time)e(as)h (the)h(in)o(terv)n(al)e(b)q(et)o(w)o(een)j(the)f(arriv)n(al)e(of)-90 2070 y(a)h(REDIRECT)f(pac)o(k)o(et)h(from)e(a)i(visa-router)g(to)g(the)g (arriv)n(al)f(of)g(a)h(corresp)q(onding)g(VISA-GRANT)g(from)e(the)i(A)o(CS)g (\(as)g(sho)o(wn)g(in)-90 2120 y(Figure)g(5.2\).)21 b(W)m(e)15 b(measured)h(the)g(setup)g(time)f(for)g(directly)g(connected)j(ADs)d(as)h(w)o (ell)f(as)g(for)g(ADs)h(separated)h(b)o(y)e(one)g(transit)h(AD)-90 2170 y(hop.)25 b(F)m(or)16 b(the)h(directly)g(connected)h(case,)f(the)g (timings)d(ranged)j(b)q(et)o(w)o(een)h(100)d(and)h(180)p Fk(ms)h Fm(\(a)o(v)o(eraging)e(around)h(130)p Fk(ms)p Fm(\).)26 b(In)16 b(the)-90 2220 y(case)e(of)f(one)h(transit)g(AD)f(hop,)g(the)h(timings)d (ranged)j(b)q(et)o(w)o(een)h(110)e(and)g(200)p Fk(ms)h Fm(\(a)o(v)o(eraging)e (around)h(150)p Fk(ms)p Fm(\).)19 b(These)14 b(results)h(sho)o(w)-90 2269 y(that)i(the)g(o)o(v)o(erhead)g(is)g(still)e(quite)i(high.)26 b(Ho)o(w)o(ev)o(er,)17 b(w)o(e)g(exp)q(ect)h(that)f(p)q(erformance-tuning)f (of)g(the)h(co)q(de)h(should)e(b)q(e)h(able)g(to)f(cut)-90 2319 y(these)f(n)o(um)o(b)q(ers)f(do)o(wn)f(b)o(y)h(ab)q(out)g(a)f(third.)-28 2387 y(Encapsulation)j(of)g(data)g(pac)o(k)o(ets)h(is)f(p)q(erformed)g(b)o(y) g(all)f(proto)q(col)h(participan)o(ts.)26 b(Normally)m(,)13 b(all)i(outb)q(ound)h(data)g(pac)o(k)o(ets)i(are)-90 2437 y(passed)f(from)e (the)i(transp)q(ort)g(proto)q(col)g(to)f(IP)g(where)i(eac)o(h)f(pac)o(k)o(et) g(is)f(prep)q(ended)i(with)e(an)h(IP)f(header)i(and)e(handed)h(o)o(v)o(er)f (to)g(the)-90 2486 y(in)o(terface)f(output)f(function.)k Fl(Visa)13 b Fm(encapsulation)h(is)g(in)o(terp)q(osed)h(b)q(et)o(w)o(een)h(IP)e(and)g (the)g(in)o(terface)h(driv)o(er.)j(\(See)d(Figure)g(5.3\).)i(This)-90 2536 y(is)f(done)g(transparen)o(tly)g(so)g(that)f(neither)i(IP)f(nor)g(an)o (y)f(higher-la)o(y)o(er)g(proto)q(col)h(is)f(a)o(w)o(are)h(of)f(the)h (encapsulation.)24 b(Encapsulating)15 b(a)-90 2586 y(pac)o(k)o(et)f(requires) h(the)g(follo)o(wing)c(steps:)2028 2770 y(61)p eop %%Page: 62 2 bop 150 -150 a 26049576 26049576 0 0 40258437 52099153 startTexFig 150 -150 a %%BeginDocument: vsd.ps /FMversion (2.0) def /FrameDict 170 dict def systemdict /errordict known not { /errordict 10 dict def errordict /rangecheck { stop } put } if FrameDict /tmprangecheck errordict /rangecheck get put errordict /rangecheck {FrameDict /bug true put} put FrameDict /bug false put mark currentfile 5 string readline 00 0000000000 cleartomark errordict /rangecheck FrameDict /tmprangecheck get put FrameDict /bug get { /readline { /gstring exch def /gfile exch def /gindex 0 def { gfile read pop dup 10 eq {exit} if dup 13 eq {exit} if gstring exch gindex exch put /gindex gindex 1 add def } loop pop gstring 0 gindex getinterval true } def } if /FMVERSION { FMversion ne { /Times-Roman findfont 18 scalefont setfont 100 100 moveto (FrameMaker version does not match postscript_prolog!) dup = show showpage } if } def /FMLOCAL { FrameDict begin 0 def end } def /gstring FMLOCAL /gfile FMLOCAL /gindex FMLOCAL /orgxfer FMLOCAL /orgproc FMLOCAL /organgle FMLOCAL /orgfreq FMLOCAL FrameDict /graymode true put /yscale FMLOCAL /xscale FMLOCAL /PrintInColor systemdict /colorimage known def PrintInColor { /HUE 0 def /SAT 0 def /BRIGHT 0 def % array of arrays Hue and Sat values for the separations [HUE BRIGHT] /Colors [[0 0 ] % black [0 0 ] % white [0.00 1.0] % red [0.37 1.0] % green [0.60 1.0] % blue [0.50 1.0] % cyan [0.83 1.0] % magenta [0.16 1.0] % comment ] def /BEGINBITMAPCOLOR { BITMAPCOLOR } def /BEGINBITMAPCOLORc { BITMAPCOLORc } def /K { Colors exch get dup 0 get /HUE exch store 1 get /BRIGHT exch store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } def /mysetgray { /SAT exch 1.0 exch sub store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } bind def } { /BEGINBITMAPCOLOR { BITMAPGRAY } def /BEGINBITMAPCOLORc { BITMAPGRAYc } def /mysetgray { setgray } bind def /K { pop } def } ifelse /max {2 copy lt {exch} if pop} bind def /min {2 copy gt {exch} if pop} bind def /mtx matrix defaultmatrix def /setmanualfeed { statusdict /manualfeed true put } def /FMDOCUMENT { array /FMfonts exch def /#copies exch def 0 ne dup {setmanualfeed} if FrameDict begin /manualfeed exch def /paperheight exch def /paperwidth exch def setpapername manualfeed {true} {papersize} ifelse {manualpapersize} {false} ifelse {desperatepapersize} if /yscale exch def /xscale exch def currenttransfer cvlit /orgxfer exch def currentscreen cvlit /orgproc exch def /organgle exch def /orgfreq exch def end } def /pagesave FMLOCAL /orgmatrix FMLOCAL /landscape FMLOCAL /FMBEGINPAGE { FrameDict begin /pagesave save def 3.86 setmiterlimit /landscape exch 0 ne store landscape { 90 rotate 0 exch neg translate pop } { pop pop } ifelse xscale yscale scale /orgmatrix matrix def gsave } def /FMENDPAGE { grestore pagesave restore end showpage } def /fontname FMLOCAL /fontscale FMLOCAL /fontnum FMLOCAL /fontdict FMLOCAL /FMDEFINEFONT { FrameDict begin /fontname exch def /fontscale exch def /fontnum exch def /fontdict fontname findfont fontscale scalefont def fontdict /Encoding get StandardEncoding eq { fontdict DiacriticEncode /fontdict exch def } { fontdict NonDiacriticEncode /fontdict exch def } ifelse FMfonts fontnum fontnum fontdict definefont put end } def /FMNORMALIZEGRAPHICS { newpath 0.0 0.0 moveto 1 setlinewidth 0 setlinecap 0 mysetgray } bind def /FMBEGINEPSF { end /FMEPSF save def /showpage {} def FMNORMALIZEGRAPHICS [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall fx fy translate rotate fw urx llx sub div fh ury lly sub div scale llx neg lly neg translate } bind def /FMENDEPSF { FMEPSF restore FrameDict begin } bind def FrameDict begin /pagedimen { paperheight sub abs 16 lt exch paperwidth sub abs 16 lt and {/papername exch def} {pop} ifelse } def /inch {72 mul} def /setpapername { /papersizedict 14 dict def papersizedict begin /papername /unknown def /Letter 8.5 inch 11.0 inch pagedimen /LetterSmall 7.68 inch 10.16 inch pagedimen /Tabloid 11.0 inch 17.0 inch pagedimen /Ledger 17.0 inch 11.0 inch pagedimen /Legal 8.5 inch 14.0 inch pagedimen /Statement 5.5 inch 8.5 inch pagedimen /Executive 7.5 inch 10.0 inch pagedimen /A3 11.69 inch 16.5 inch pagedimen /A4 8.26 inch 11.69 inch pagedimen /A4Small 7.47 inch 10.85 inch pagedimen /B4 10.125 inch 14.33 inch pagedimen /B5 7.16 inch 10.125 inch pagedimen end } def /papersize { papersizedict begin /Letter {lettertray} def /LetterSmall {lettertray lettersmall} def /Tabloid {11x17tray} def /Ledger {ledgertray} def /Legal {legaltray} def /Statement {statementtray} def /Executive {executivetray} def /A3 {a3tray} def /A4 {a4tray} def /A4Small {a4tray a4small} def /B4 {b4tray} def /B5 {b5tray} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end statusdict begin stopped end } def /manualpapersize { papersizedict begin /Letter {letter} def /LetterSmall {lettersmall} def /Tabloid {11x17} def /Ledger {ledger} def /Legal {legal} def /Statement {statement} def /Executive {executive} def /A3 {a3} def /A4 {a4} def /A4Small {a4small} def /B4 {b4} def /B5 {b5} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end stopped } def /desperatepapersize { statusdict /setpageparams known { paperwidth paperheight 0 1 statusdict begin {setpageparams} stopped pop end } if } def /savematrix { orgmatrix currentmatrix pop } bind def /restorematrix { orgmatrix setmatrix } bind def /dmatrix matrix def /dpi 72 0 dmatrix defaultmatrix dtransform dup mul exch dup mul add sqrt def /freq dpi 18.75 div 8 div round dup 0 eq { pop 1 } if 8 mul dpi exch div def /sangle 1 0 dmatrix defaultmatrix dtransform exch atan def /DiacriticEncoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def /basefontdict FMLOCAL /newfontdict FMLOCAL /DiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {dup /Encoding eq {exch pop DiacriticEncoding} {exch} ifelse newfontdict 3 1 roll put } {pop pop} ifelse } forall newfontdict } bind def /NonDiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {exch newfontdict 3 1 roll put} {pop pop} ifelse } forall newfontdict } bind def /bwidth FMLOCAL /bpside FMLOCAL /bstring FMLOCAL /onbits FMLOCAL /offbits FMLOCAL /xindex FMLOCAL /yindex FMLOCAL /x FMLOCAL /y FMLOCAL /setpattern { /bwidth exch def /bpside exch def /bstring exch def /onbits 0 def /offbits 0 def freq sangle landscape {90 add} if {/y exch def /x exch def /xindex x 1 add 2 div bpside mul cvi def /yindex y 1 add 2 div bpside mul cvi def bstring yindex bwidth mul xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne {/onbits onbits 1 add def 1} {/offbits offbits 1 add def 0} ifelse } setscreen {} settransfer offbits offbits onbits add div mysetgray /graymode false store } bind def /grayness { mysetgray graymode not { /graymode true store orgxfer cvx settransfer orgfreq organgle orgproc cvx setscreen } if } bind def /normalize { transform round exch round exch itransform } bind def /dnormalize { dtransform round exch round exch idtransform } bind def /lnormalize { 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def /H { lnormalize setlinewidth } bind def /Z { setlinecap } bind def /X { fillprocs exch get exec } bind def /V { gsave eofill grestore } bind def /N { stroke } bind def /M {newpath moveto} bind def /E {lineto} bind def /D {curveto} bind def /O {closepath} bind def /n FMLOCAL /L { /n exch def newpath normalize moveto 2 1 n {pop normalize lineto} for } bind def /Y { L closepath } bind def /x1 FMLOCAL /x2 FMLOCAL /y1 FMLOCAL /y2 FMLOCAL /rad FMLOCAL /R { /y2 exch def /x2 exch def /y1 exch def /x1 exch def x1 y1 x2 y1 x2 y2 x1 y2 4 Y } bind def /RR { /rad exch def normalize /y2 exch def /x2 exch def normalize /y1 exch def /x1 exch def newpath x1 y1 rad add moveto x1 y2 x2 y2 rad arcto x2 y2 x2 y1 rad arcto x2 y1 x1 y1 rad arcto x1 y1 x1 y2 rad arcto closepath 16 {pop} repeat } bind def /C { grestore gsave R clip } bind def /U { grestore gsave } bind def /F { FMfonts exch get setfont } bind def /T { moveto show } bind def /RF { rotate 0 ne { -1 1 scale } if } bind def /TF { gsave moveto RF show grestore } bind def /P { moveto 0 32 3 2 roll widthshow } bind def /PF { gsave moveto RF 0 32 3 2 roll widthshow grestore } bind def /S { moveto 0 exch ashow } bind def /SF { gsave moveto RF 0 exch ashow grestore } bind def /B { moveto 0 32 4 2 roll 0 exch awidthshow } bind def /BF { gsave moveto RF 0 32 4 2 roll 0 exch awidthshow grestore } bind def /x FMLOCAL /y FMLOCAL /dx FMLOCAL /dy FMLOCAL /dl FMLOCAL /t FMLOCAL /t2 FMLOCAL /Cos FMLOCAL /Sin FMLOCAL /r FMLOCAL /W { dnormalize /dy exch def /dx exch def normalize /y exch def /x exch def /dl dx dx mul dy dy mul add sqrt def dl 0.0 gt { /t currentlinewidth def savematrix /Cos dx dl div def /Sin dy dl div def /r [Cos Sin Sin neg Cos 0.0 0.0] def /t2 t 2.5 mul 3.5 max def newpath x y translate r concat 0.0 0.0 moveto dl t 2.7 mul sub 0.0 rlineto stroke restorematrix x dx add y dy add translate r concat t 0.67 mul setlinewidth t 1.61 mul neg 0.0 translate 0.0 0.0 moveto t2 1.7 mul neg t2 2.0 div moveto 0.0 0.0 lineto t2 1.7 mul neg t2 2.0 div neg lineto stroke t setlinewidth restorematrix } if } bind def /G { gsave newpath normalize translate 0.0 0.0 moveto dnormalize scale 0.0 0.0 1.0 5 3 roll arc closepath fill grestore } bind def /A { gsave savematrix newpath 2 index 2 div add exch 3 index 2 div sub exch normalize 2 index 2 div sub exch 3 index 2 div add exch translate scale 0.0 0.0 1.0 5 3 roll arc restorematrix stroke grestore } bind def /x FMLOCAL /y FMLOCAL /w FMLOCAL /h FMLOCAL /xx FMLOCAL /yy FMLOCAL /ww FMLOCAL /hh FMLOCAL /FMsaveobject FMLOCAL /FMoptop FMLOCAL /FMdicttop FMLOCAL /BEGINPRINTCODE { /FMdicttop countdictstack 1 add def /FMoptop count 4 sub def /FMsaveobject save def userdict begin /showpage {} def FMNORMALIZEGRAPHICS 3 index neg 3 index neg translate } bind def /ENDPRINTCODE { count -1 FMoptop {pop pop} for countdictstack -1 FMdicttop {pop end} for FMsaveobject restore } bind def /gn { 0 { 46 mul cf read pop 32 sub dup 46 lt {exit} if 46 sub add } loop add } bind def /str FMLOCAL /cfs { /str sl string def 0 1 sl 1 sub {str exch val put} for str def } bind def /ic [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} ] def /sl FMLOCAL /val FMLOCAL /ws FMLOCAL /im FMLOCAL /bs FMLOCAL /cs FMLOCAL /len FMLOCAL /pos FMLOCAL /ms { /sl exch def /val 255 def /ws cfs /im cfs /val 0 def /bs cfs /cs cfs } bind def 400 ms /ip { is 0 cf cs readline pop { ic exch get exec add } forall pop } bind def /wh { /len exch def /pos exch def ws 0 len getinterval im pos len getinterval copy pop pos len } bind def /bl { /len exch def /pos exch def bs 0 len getinterval im pos len getinterval copy pop pos len } bind def /s1 1 string def /fl { /len exch def /pos exch def /val cf s1 readhexstring pop 0 get def pos 1 pos len add 1 sub {im exch val put} for pos len } bind def /hx { 3 copy getinterval cf exch readhexstring pop pop } bind def /h FMLOCAL /w FMLOCAL /d FMLOCAL /lb FMLOCAL /bitmapsave FMLOCAL /is FMLOCAL /cf FMLOCAL /wbytes { dup 8 eq { pop } { 1 eq { 7 add 8 idiv } { 3 add 4 idiv } ifelse } ifelse } bind def /BEGINBITMAPBWc { 1 {} COMMONBITMAPc } bind def /BEGINBITMAPGRAYc { 8 {} COMMONBITMAPc } bind def /BEGINBITMAP2BITc { 2 {} COMMONBITMAPc } bind def /COMMONBITMAPc { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def r /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} image bitmapsave restore grestore } bind def /BEGINBITMAPBW { 1 {} COMMONBITMAP } bind def /BEGINBITMAPGRAY { 8 {} COMMONBITMAP } bind def /BEGINBITMAP2BIT { 2 {} COMMONBITMAP } bind def /COMMONBITMAP { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def r /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } image bitmapsave restore grestore } bind def /Fmcc { /proc2 exch cvlit def /proc1 exch cvlit def /newproc proc1 length proc2 length add array def newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval newproc cvx } bind def /colorsetup { currentcolortransfer /gryt exch def /blut exch def /grnt exch def /redt exch def /ngrayt 256 array def /nredt 256 array def /nbluet 256 array def /ngreent 256 array def 0 1 255 { /indx exch def /cynu 1 red indx get 255 div sub def /magu 1 green indx get 255 div sub def /yelu 1 blue indx get 255 div sub def /k cynu magu min yelu min def /u k currentundercolorremoval exec def nredt indx 1 0 cynu u sub max sub redt exec put ngreent indx 1 0 magu u sub max sub grnt exec put nbluet indx 1 0 yelu u sub max sub blut exec put ngrayt indx 1 k currentblackgeneration exec sub gryt exec put } for {255 mul cvi nredt exch get} {255 mul cvi ngreent exch get} {255 mul cvi nbluet exch get} {255 mul cvi ngrayt exch get} setcolortransfer {pop 0} setundercolorremoval {} setblackgeneration } bind def /fakecolorsetup { /tran 256 string def 0 1 255 { /ind exch def tran ind red ind get 77 mul green ind get 151 mul blue ind get 28 mul add add 256 idiv put } for currenttransfer { 255 mul cvi tran exch get 255.0 div } exch Fmcc settransfer } bind def /BITMAPCOLOR { /d 8 def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def colorsetup /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPCOLORc { /d 8 def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def colorsetup /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPGRAY { 8 {fakecolorsetup} COMMONBITMAP } bind def /BITMAPGRAYc { 8 {fakecolorsetup} COMMONBITMAPc } bind def /ENDBITMAP { } bind def end (2.0) FMVERSION 1 1 2 2 0 1 2 FMDOCUMENT /fillprocs 32 array def fillprocs 0 { 0.000000 grayness } put fillprocs 1 { 0.100000 grayness } put fillprocs 2 { 0.300000 grayness } put fillprocs 3 { 0.500000 grayness } put fillprocs 4 { 0.700000 grayness } put fillprocs 5 { 0.900000 grayness } put fillprocs 6 { 0.970000 grayness } put fillprocs 7 { 1.000000 grayness } put fillprocs 8 {<0f1e3c78f0e1c387> 8 1 setpattern } put fillprocs 9 {<0f87c3e1f0783c1e> 8 1 setpattern } put fillprocs 10 {<cccccccccccccccc> 8 1 setpattern } put fillprocs 11 {<ffff0000ffff0000> 8 1 setpattern } put fillprocs 12 {<8142241818244281> 8 1 setpattern } put fillprocs 13 {<03060c183060c081> 8 1 setpattern } put fillprocs 14 {<8040201008040201> 8 1 setpattern } put fillprocs 15 {} put fillprocs 16 { 1.000000 grayness } put fillprocs 17 { 0.900000 grayness } put fillprocs 18 { 0.700000 grayness } put fillprocs 19 { 0.500000 grayness } put fillprocs 20 { 0.300000 grayness } put fillprocs 21 { 0.100000 grayness } put fillprocs 22 { 0.030000 grayness } put fillprocs 23 { 0.000000 grayness } put fillprocs 24 {<f0e1c3870f1e3c78> 8 1 setpattern } put fillprocs 25 {<f0783c1e0f87c3e1> 8 1 setpattern } put fillprocs 26 {<3333333333333333> 8 1 setpattern } put fillprocs 27 {<0000ffff0000ffff> 8 1 setpattern } put fillprocs 28 {<7ebddbe7e7dbbd7e> 8 1 setpattern } put fillprocs 29 {<fcf9f3e7cf9f3f7e> 8 1 setpattern } put fillprocs 30 {<7fbfdfeff7fbfdfe> 8 1 setpattern } put fillprocs 31 {} put 0 12 /Times-Roman FMDEFINEFONT 1 18 /Palatino-Roman FMDEFINEFONT 612 792 0 FMBEGINPAGE 0 0 612 792 C 0 0 612 792 R 7 X 0 K V 72 746 540 756 R V 72 32.67 540 42.67 R V 11 29 595 783 R V 4 H 2 Z 9 X N 143.46 88.36 146.99 102.9 151.71 88.7 147.59 88.53 4 Y 0 X V 438 113.26 M 372.79 69.96 372.79 69.96 259.89 69.96 D 166.73 69.96 150.45 69.96 147.6 88.45 D 1 H 0 Z N 7 X 90 450 63 28.19 105 694.24 G 3 H 2 Z 0 X 90 450 63 28.19 105 694.24 A 6 X 90 450 63 28.19 281 566.77 G 0 X 90 450 63 28.19 281 566.77 A 5 X 90 450 63 28.19 461 685.78 G 0 X 90 450 63 28.19 461 685.78 A 419.98 721.66 428.99 709.66 415 715.06 417.49 718.36 4 Y V 126 719.92 M 149.31 750.7 149.31 750.7 261.96 750.7 D 366.06 750.7 373.96 750.7 417.48 718.32 D 1 H 0 Z N 356.4 554.26 341.99 558.39 356.39 562.53 356.39 558.4 4 Y V 510 666.55 M 591.38 560.49 592.97 558.42 356.42 558.38 D N 86.98 656.28 97.44 667.04 94.28 652.38 90.63 654.33 4 Y V 315.15 590.78 M 323 614.03 323 614.03 196 614.03 D 80.13 614.03 69.98 614.03 90.68 654.28 D N 204.58 573.88 218.99 569.73 204.57 565.61 204.57 569.74 4 Y V 75 671.12 M 5.63 572.05 4.04 569.78 204.54 569.73 D N 0 F (REDIRECT from visa-router) 179 755.31 T (create new entry) 154 735.29 T (, HOST) 232.47 735.29 T (-REQUEST to ACS) 268.68 735.29 T (REFUSE from ACS or timeot ctr exceeded) 183 691.99 T (activate entry) 360 549.08 T (visa expiration or REDIRECT ) 105 619.42 T (VISA-GRANT from ACS) 356 562.55 T (VISA-GRANT from ACS) 74 575.18 T (destroy entry) 236 678.34 T (timeout to ACS) 394 614.89 T (resend HOST) 379 599.62 T (-REQUEST) 443.51 599.62 T (,) 500.59 599.62 T ( increment timeout ctr) 379 589.51 T (.) 484.6 589.51 T 179.42 683.66 165 687.8 179.42 691.93 179.42 687.8 4 Y V 396 687.8 179.18 687.8 2 L 2 Z N 1 F (IDLE) 84 689.41 T (PENDING) 422 681 T (ACTIVE) 246 564.16 T (a. visa-host ) 229 511.41 T 5 X 90 450 63 27.05 467 393.21 G 3 H 0 X 90 450 63 27.05 467 393.21 A 425.77 427.96 434.99 416.14 420.9 421.28 423.33 424.62 4 Y V 132 425.98 M 155.31 455.51 155.31 455.51 267.96 455.51 D 371.92 455.51 379.94 455.51 423.31 424.56 D 1 H 0 Z N 362.4 266.88 347.99 270.99 362.39 275.14 362.39 271.01 4 Y V 516 374.76 M 597.38 273 598.97 271.02 362.42 270.98 D N 0 F (HOST) 185 459.82 T (-REQUEST from visa-host) 215.21 459.82 T (create new entry) 162 443.48 T (, ACS-REQUEST to ACS) 240.47 443.48 T (REFUSE from ACS or timeot ctr exceeded) 189 399.07 T (activate entry) 353 260.94 T (, VISA-GRANT to visa-router) 417.17 260.94 T (visa expiration ) 0 -270 80 271.43 TF (destroy entry) 0 -270 97 278.79 TF (destroy entry) 182 382.97 T (, REFUSE to source host) 244.17 382.97 T (timeout to peer ACS) 451 456.09 T (resend ACS-REQUEST) 442 440.48 T (,) 556.71 440.48 T ( increment timeout ctr) 442 430.79 T (.) 547.6 430.79 T 185.42 391.02 171 395.15 185.42 399.29 185.42 395.15 4 Y V 402 395.15 185.18 395.15 2 L 2 Z N 1 F (PENDING) 428 388.47 T 0 F (and source host) 354 248.94 T (ACS-REQUEST from peer ACS) 177 360 T (activate entry) 120 345 T (, VISA-GRANT to) 184.16 345 T (local visa-router) 121 334 T (, peer ACS and dest. host) 198.79 334 T 335.29 303.08 320.61 300.01 331.44 310.39 333.36 306.73 4 Y V 110 374 M 142.24 356 142.24 356 284.62 355.5 D 421.04 355.02 426.75 355 333.42 306.62 D 0 Z N 81.68 364.65 85.89 379.01 89.93 364.61 85.81 364.63 4 Y V 85.82 364.58 M 85.05 212.02 86.73 212.56 143.41 230.83 D 201.81 249.66 201.81 249.66 225 285.68 D 2 Z N 6 X 90 450 63 27.05 287 279.02 G 3 H 0 X 90 450 63 27.05 287 279.02 A 1 F (ACTIVE) 252 276.36 T 6 X 90 450 63 23.42 438 119.34 G 0 X 90 450 63 23.42 438 119.34 A (ACTIVE) 404 115.64 T 7 X 90 450 63 27.05 111 401.33 G 0 X 90 450 63 27.05 111 401.33 A (IDLE) 90 396.54 T 7 X 90 450 63 23.42 169 123.94 G 0 X 90 450 63 23.42 169 123.94 A (IDLE) 148 119.25 T (b. ACS) 246 218.07 T (c. visa-r) 222 37.85 T (outer) 283.78 37.85 T 0 F (VISA-GRANT from peer ACS) 358 278.86 T (VISA-GRANT from local ACS) 222 165.58 T 416.81 154.2 417.99 139.25 409.07 151.3 412.94 152.75 4 Y V 148 147.03 M 164 162.61 164 162.61 288 163.05 D 382.45 163.38 404.96 163.46 412.97 152.76 D 1 H 0 Z N (create and activate new entry) 69 560.02 T (create and activate new entry) 222 153.6 T (visa expiration or REVOKE from ACS) 167 77.38 T (destroy entry) 106 605.2 T (destroy entry) 167 62.84 T 440 429.75 445.99 416 433.62 424.49 436.81 427.12 4 Y V 528 397 M 590 453 590 453 503 452.5 D 426.11 452.06 417.17 452.01 436.85 427.15 D N 389.02 669.97 400.99 679 395.63 664.99 392.33 667.48 4 Y V 493 663 M 518 611 518 611 434.5 611.5 D 356.12 611.97 351.31 612 392.38 667.42 D N 10 496 595 496 2 L 4 H 2 Z 9 X N 13 208 593 207 2 L N FMENDPAGE %%EndDocument 150 -150 a endTexFig 696 1562 a Fm(Figure)14 b(5.2:)j(Visa)c(State)i(Diagrams)-39 1695 y(1.)20 b(Visa-table)13 b(lo)q(okup)g(using)h([)p Fk(S)r(RC)q(;)7 b(D)q(S)r(T)s(;)g(P)f(RO)q(T)s(;)h(T)f(oS)r Fm(])14 b(\014elds)g(extracted)i (from)c(the)i(IP)g(header.)1579 1680 y Fi(1)-39 1778 y Fm(2.)20 b(Visa-stamp)12 b(computation.)-28 1879 y(P)o(ac)o(k)o(et)j(switc)o(hing)e (at)h(visa-routers)g(in)o(v)o(olv)o(es)f(the)i(follo)o(wing)c(op)q(erations:) -39 1980 y(1.)20 b(Visa-table)13 b(lo)q(okup)g(with)h(a)f(visa)h(iden)o (ti\014er)g(attac)o(hed)h(to)e(eac)o(h)i(pac)o(k)o(et)-39 2063 y(2.)20 b(Visa-stamp)12 b(v)o(eri\014cation)i(\(i.e.,)e(in)o(tegrit)o (y/authen)o(tication)h(c)o(hec)o(k\))-39 2146 y(3.)20 b Fl(Light)13 b Fm(b)q(o)q(okk)o(eeping,)h(i.e.,)e(recording)j(time)d(of)h(pac)o(k)o(et)i (arriv)n(al,)d(up)q(dating)h(resource)j(usage)e(meters,)g(etc.)-90 2247 y(W)m(e)c(measured)g(the)h(o)o(v)o(erhead)g(incurred)g(b)o(y)f(data)g (pac)o(k)o(ets)h(\015o)o(wing)f(across)h(previously)f(established)h(visa)f (connections.)18 b(The)11 b(o)o(v)o(erhead)-90 2296 y(measuremen)o(ts)i(are)i (deriv)o(ed)f(using)g(the)g(ICMP)g(Ec)o(ho)g(proto)q(col)g([74)o(].)k(In)c (this)g(proto)q(col,)f(a)g(pac)o(k)o(et)i(tra)o(v)o(els)f(from)e(the)i (source)i(to)d(the)-90 2346 y(destination)h(end-system)g(where)i(it)e(is)g (imm)o(ediately)d(re\015ected)17 b(bac)o(k)d(to)g(the)h(source.)20 b(The)14 b(results)i(in)d(T)m(able)h(5.1)f(represen)o(t)k(the)d(the)-90 2396 y(round-trip)i(times)f(\(in)h(milliseconds\))f(for)g(pac)o(k)o(ets)i (tra)o(v)o(eling)f(b)q(et)o(w)o(een)h(directly)g(connected)h(ADs.)24 b(In)17 b(other)f(w)o(ords,)h(eac)o(h)g(pac)o(k)o(et)-90 2446 y(tra)o(v)o(els)d(across)g(three)h(ethernet)h(segmen)o(ts:)i(i\))13 b Fk(H)704 2452 y Fj(a)737 2446 y Fm(to)h Fk(GW)860 2452 y Fj(a)880 2446 y Fm(,)f(ii\))g Fk(GW)1030 2452 y Fj(a)1063 2446 y Fm(to)h Fk(GW)1186 2452 y Fj(b)1203 2446 y Fm(,)f(and,)g(iii\))f Fk(GW)1456 2452 y Fj(b)1486 2446 y Fm(to)i Fk(H)1572 2452 y Fj(b)1602 2446 y Fm(where)h Fk(H)1757 2452 y Fj(a)1790 2446 y Fm(refers)g(to)e Fl(pismo)p Fm(,)-90 2496 y Fk(GW)-18 2502 y Fj(a)16 2496 y Fm(to)g Fl(bigsur)p Fm(,)h Fk(GW)272 2502 y Fj(b)302 2496 y Fm(to)g Fl(kos)p Fm(,)f(and,)h Fk(H)563 2502 y Fj(b)593 2496 y Fm(to)f Fl(exc)n(alibur)h Fm(as)g(depicted)h(in)e(Figure)h (5.1.)p -90 2576 864 2 v -44 2603 a Fh(1)-26 2615 y Fg(Unfortunatel)o(y)m(,)9 b(this)i(has)f(to)i(b)q(e)f(done)f(for)h(all)g(pac)o(k)o(ets,)e(ev)o(en)i (those)f(that)g(ma)o(y)h(not)g(require)e(a)j(visa.)2028 2770 y Fm(62)p eop %%Page: 63 3 bop 240 -150 a 21313290 21313290 0 0 40258437 52099153 startTexFig 240 -150 a %%BeginDocument: vgw.ps /FMversion (2.0) def /FrameDict 170 dict def systemdict /errordict known not { /errordict 10 dict def errordict /rangecheck { stop } put } if FrameDict /tmprangecheck errordict /rangecheck get put errordict /rangecheck {FrameDict /bug true put} put FrameDict /bug false put mark currentfile 5 string readline 00 0000000000 cleartomark errordict /rangecheck FrameDict /tmprangecheck get put FrameDict /bug get { /readline { /gstring exch def /gfile exch def /gindex 0 def { gfile read pop dup 10 eq {exit} if dup 13 eq {exit} if gstring exch gindex exch put /gindex gindex 1 add def } loop pop gstring 0 gindex getinterval true } def } if /FMVERSION { FMversion ne { /Times-Roman findfont 18 scalefont setfont 100 100 moveto (FrameMaker version does not match postscript_prolog!) dup = show showpage } if } def /FMLOCAL { FrameDict begin 0 def end } def /gstring FMLOCAL /gfile FMLOCAL /gindex FMLOCAL /orgxfer FMLOCAL /orgproc FMLOCAL /organgle FMLOCAL /orgfreq FMLOCAL FrameDict /graymode true put /yscale FMLOCAL /xscale FMLOCAL /PrintInColor systemdict /colorimage known def PrintInColor { /HUE 0 def /SAT 0 def /BRIGHT 0 def % array of arrays Hue and Sat values for the separations [HUE BRIGHT] /Colors [[0 0 ] % black [0 0 ] % white [0.00 1.0] % red [0.37 1.0] % green [0.60 1.0] % blue [0.50 1.0] % cyan [0.83 1.0] % magenta [0.16 1.0] % comment ] def /BEGINBITMAPCOLOR { BITMAPCOLOR } def /BEGINBITMAPCOLORc { BITMAPCOLORc } def /K { Colors exch get dup 0 get /HUE exch store 1 get /BRIGHT exch store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } def /mysetgray { /SAT exch 1.0 exch sub store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } bind def } { /BEGINBITMAPCOLOR { BITMAPGRAY } def /BEGINBITMAPCOLORc { BITMAPGRAYc } def /mysetgray { setgray } bind def /K { pop } def } ifelse /max {2 copy lt {exch} if pop} bind def /min {2 copy gt {exch} if pop} bind def /mtx matrix defaultmatrix def /setmanualfeed { statusdict /manualfeed true put } def /FMDOCUMENT { array /FMfonts exch def /#copies exch def 0 ne dup {setmanualfeed} if FrameDict begin /manualfeed exch def /paperheight exch def /paperwidth exch def setpapername manualfeed {true} {papersize} ifelse {manualpapersize} {false} ifelse {desperatepapersize} if /yscale exch def /xscale exch def currenttransfer cvlit /orgxfer exch def currentscreen cvlit /orgproc exch def /organgle exch def /orgfreq exch def end } def /pagesave FMLOCAL /orgmatrix FMLOCAL /landscape FMLOCAL /FMBEGINPAGE { FrameDict begin /pagesave save def 3.86 setmiterlimit /landscape exch 0 ne store landscape { 90 rotate 0 exch neg translate pop } { pop pop } ifelse xscale yscale scale /orgmatrix matrix def gsave } def /FMENDPAGE { grestore pagesave restore end showpage } def /fontname FMLOCAL /fontscale FMLOCAL /fontnum FMLOCAL /fontdict FMLOCAL /FMDEFINEFONT { FrameDict begin /fontname exch def /fontscale exch def /fontnum exch def /fontdict fontname findfont fontscale scalefont def fontdict /Encoding get StandardEncoding eq { fontdict DiacriticEncode /fontdict exch def } { fontdict NonDiacriticEncode /fontdict exch def } ifelse FMfonts fontnum fontnum fontdict definefont put end } def /FMNORMALIZEGRAPHICS { newpath 0.0 0.0 moveto 1 setlinewidth 0 setlinecap 0 mysetgray } bind def /FMBEGINEPSF { end /FMEPSF save def /showpage {} def FMNORMALIZEGRAPHICS [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall fx fy translate rotate fw urx llx sub div fh ury lly sub div scale llx neg lly neg translate } bind def /FMENDEPSF { FMEPSF restore FrameDict begin } bind def FrameDict begin /pagedimen { paperheight sub abs 16 lt exch paperwidth sub abs 16 lt and {/papername exch def} {pop} ifelse } def /inch {72 mul} def /setpapername { /papersizedict 14 dict def papersizedict begin /papername /unknown def /Letter 8.5 inch 11.0 inch pagedimen /LetterSmall 7.68 inch 10.16 inch pagedimen /Tabloid 11.0 inch 17.0 inch pagedimen /Ledger 17.0 inch 11.0 inch pagedimen /Legal 8.5 inch 14.0 inch pagedimen /Statement 5.5 inch 8.5 inch pagedimen /Executive 7.5 inch 10.0 inch pagedimen /A3 11.69 inch 16.5 inch pagedimen /A4 8.26 inch 11.69 inch pagedimen /A4Small 7.47 inch 10.85 inch pagedimen /B4 10.125 inch 14.33 inch pagedimen /B5 7.16 inch 10.125 inch pagedimen end } def /papersize { papersizedict begin /Letter {lettertray} def /LetterSmall {lettertray lettersmall} def /Tabloid {11x17tray} def /Ledger {ledgertray} def /Legal {legaltray} def /Statement {statementtray} def /Executive {executivetray} def /A3 {a3tray} def /A4 {a4tray} def /A4Small {a4tray a4small} def /B4 {b4tray} def /B5 {b5tray} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end statusdict begin stopped end } def /manualpapersize { papersizedict begin /Letter {letter} def /LetterSmall {lettersmall} def /Tabloid {11x17} def /Ledger {ledger} def /Legal {legal} def /Statement {statement} def /Executive {executive} def /A3 {a3} def /A4 {a4} def /A4Small {a4small} def /B4 {b4} def /B5 {b5} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end stopped } def /desperatepapersize { statusdict /setpageparams known { paperwidth paperheight 0 1 statusdict begin {setpageparams} stopped pop end } if } def /savematrix { orgmatrix currentmatrix pop } bind def /restorematrix { orgmatrix setmatrix } bind def /dmatrix matrix def /dpi 72 0 dmatrix defaultmatrix dtransform dup mul exch dup mul add sqrt def /freq dpi 18.75 div 8 div round dup 0 eq { pop 1 } if 8 mul dpi exch div def /sangle 1 0 dmatrix defaultmatrix dtransform exch atan def /DiacriticEncoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def /basefontdict FMLOCAL /newfontdict FMLOCAL /DiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {dup /Encoding eq {exch pop DiacriticEncoding} {exch} ifelse newfontdict 3 1 roll put } {pop pop} ifelse } forall newfontdict } bind def /NonDiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {exch newfontdict 3 1 roll put} {pop pop} ifelse } forall newfontdict } bind def /bwidth FMLOCAL /bpside FMLOCAL /bstring FMLOCAL /onbits FMLOCAL /offbits FMLOCAL /xindex FMLOCAL /yindex FMLOCAL /x FMLOCAL /y FMLOCAL /setpattern { /bwidth exch def /bpside exch def /bstring exch def /onbits 0 def /offbits 0 def freq sangle landscape {90 add} if {/y exch def /x exch def /xindex x 1 add 2 div bpside mul cvi def /yindex y 1 add 2 div bpside mul cvi def bstring yindex bwidth mul xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne {/onbits onbits 1 add def 1} {/offbits offbits 1 add def 0} ifelse } setscreen {} settransfer offbits offbits onbits add div mysetgray /graymode false store } bind def /grayness { mysetgray graymode not { /graymode true store orgxfer cvx settransfer orgfreq organgle orgproc cvx setscreen } if } bind def /normalize { transform round exch round exch itransform } bind def /dnormalize { dtransform round exch round exch idtransform } bind def /lnormalize { 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def /H { lnormalize setlinewidth } bind def /Z { setlinecap } bind def /X { fillprocs exch get exec } bind def /V { gsave eofill grestore } bind def /N { stroke } bind def /M {newpath moveto} bind def /E {lineto} bind def /D {curveto} bind def /O {closepath} bind def /n FMLOCAL /L { /n exch def newpath normalize moveto 2 1 n {pop normalize lineto} for } bind def /Y { L closepath } bind def /x1 FMLOCAL /x2 FMLOCAL /y1 FMLOCAL /y2 FMLOCAL /rad FMLOCAL /R { /y2 exch def /x2 exch def /y1 exch def /x1 exch def x1 y1 x2 y1 x2 y2 x1 y2 4 Y } bind def /RR { /rad exch def normalize /y2 exch def /x2 exch def normalize /y1 exch def /x1 exch def newpath x1 y1 rad add moveto x1 y2 x2 y2 rad arcto x2 y2 x2 y1 rad arcto x2 y1 x1 y1 rad arcto x1 y1 x1 y2 rad arcto closepath 16 {pop} repeat } bind def /C { grestore gsave R clip } bind def /U { grestore gsave } bind def /F { FMfonts exch get setfont } bind def /T { moveto show } bind def /RF { rotate 0 ne { -1 1 scale } if } bind def /TF { gsave moveto RF show grestore } bind def /P { moveto 0 32 3 2 roll widthshow } bind def /PF { gsave moveto RF 0 32 3 2 roll widthshow grestore } bind def /S { moveto 0 exch ashow } bind def /SF { gsave moveto RF 0 exch ashow grestore } bind def /B { moveto 0 32 4 2 roll 0 exch awidthshow } bind def /BF { gsave moveto RF 0 32 4 2 roll 0 exch awidthshow grestore } bind def /x FMLOCAL /y FMLOCAL /dx FMLOCAL /dy FMLOCAL /dl FMLOCAL /t FMLOCAL /t2 FMLOCAL /Cos FMLOCAL /Sin FMLOCAL /r FMLOCAL /W { dnormalize /dy exch def /dx exch def normalize /y exch def /x exch def /dl dx dx mul dy dy mul add sqrt def dl 0.0 gt { /t currentlinewidth def savematrix /Cos dx dl div def /Sin dy dl div def /r [Cos Sin Sin neg Cos 0.0 0.0] def /t2 t 2.5 mul 3.5 max def newpath x y translate r concat 0.0 0.0 moveto dl t 2.7 mul sub 0.0 rlineto stroke restorematrix x dx add y dy add translate r concat t 0.67 mul setlinewidth t 1.61 mul neg 0.0 translate 0.0 0.0 moveto t2 1.7 mul neg t2 2.0 div moveto 0.0 0.0 lineto t2 1.7 mul neg t2 2.0 div neg lineto stroke t setlinewidth restorematrix } if } bind def /G { gsave newpath normalize translate 0.0 0.0 moveto dnormalize scale 0.0 0.0 1.0 5 3 roll arc closepath fill grestore } bind def /A { gsave savematrix newpath 2 index 2 div add exch 3 index 2 div sub exch normalize 2 index 2 div sub exch 3 index 2 div add exch translate scale 0.0 0.0 1.0 5 3 roll arc restorematrix stroke grestore } bind def /x FMLOCAL /y FMLOCAL /w FMLOCAL /h FMLOCAL /xx FMLOCAL /yy FMLOCAL /ww FMLOCAL /hh FMLOCAL /FMsaveobject FMLOCAL /FMoptop FMLOCAL /FMdicttop FMLOCAL /BEGINPRINTCODE { /FMdicttop countdictstack 1 add def /FMoptop count 4 sub def /FMsaveobject save def userdict begin /showpage {} def FMNORMALIZEGRAPHICS 3 index neg 3 index neg translate } bind def /ENDPRINTCODE { count -1 FMoptop {pop pop} for countdictstack -1 FMdicttop {pop end} for FMsaveobject restore } bind def /gn { 0 { 46 mul cf read pop 32 sub dup 46 lt {exit} if 46 sub add } loop add } bind def /str FMLOCAL /cfs { /str sl string def 0 1 sl 1 sub {str exch val put} for str def } bind def /ic [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} ] def /sl FMLOCAL /val FMLOCAL /ws FMLOCAL /im FMLOCAL /bs FMLOCAL /cs FMLOCAL /len FMLOCAL /pos FMLOCAL /ms { /sl exch def /val 255 def /ws cfs /im cfs /val 0 def /bs cfs /cs cfs } bind def 400 ms /ip { is 0 cf cs readline pop { ic exch get exec add } forall pop } bind def /wh { /len exch def /pos exch def ws 0 len getinterval im pos len getinterval copy pop pos len } bind def /bl { /len exch def /pos exch def bs 0 len getinterval im pos len getinterval copy pop pos len } bind def /s1 1 string def /fl { /len exch def /pos exch def /val cf s1 readhexstring pop 0 get def pos 1 pos len add 1 sub {im exch val put} for pos len } bind def /hx { 3 copy getinterval cf exch readhexstring pop pop } bind def /h FMLOCAL /w FMLOCAL /d FMLOCAL /lb FMLOCAL /bitmapsave FMLOCAL /is FMLOCAL /cf FMLOCAL /wbytes { dup 8 eq { pop } { 1 eq { 7 add 8 idiv } { 3 add 4 idiv } ifelse } ifelse } bind def /BEGINBITMAPBWc { 1 {} COMMONBITMAPc } bind def /BEGINBITMAPGRAYc { 8 {} COMMONBITMAPc } bind def /BEGINBITMAP2BITc { 2 {} COMMONBITMAPc } bind def /COMMONBITMAPc { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def r /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} image bitmapsave restore grestore } bind def /BEGINBITMAPBW { 1 {} COMMONBITMAP } bind def /BEGINBITMAPGRAY { 8 {} COMMONBITMAP } bind def /BEGINBITMAP2BIT { 2 {} COMMONBITMAP } bind def /COMMONBITMAP { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def r /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } image bitmapsave restore grestore } bind def /Fmcc { /proc2 exch cvlit def /proc1 exch cvlit def /newproc proc1 length proc2 length add array def newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval newproc cvx } bind def /colorsetup { currentcolortransfer /gryt exch def /blut exch def /grnt exch def /redt exch def /ngrayt 256 array def /nredt 256 array def /nbluet 256 array def /ngreent 256 array def 0 1 255 { /indx exch def /cynu 1 red indx get 255 div sub def /magu 1 green indx get 255 div sub def /yelu 1 blue indx get 255 div sub def /k cynu magu min yelu min def /u k currentundercolorremoval exec def nredt indx 1 0 cynu u sub max sub redt exec put ngreent indx 1 0 magu u sub max sub grnt exec put nbluet indx 1 0 yelu u sub max sub blut exec put ngrayt indx 1 k currentblackgeneration exec sub gryt exec put } for {255 mul cvi nredt exch get} {255 mul cvi ngreent exch get} {255 mul cvi nbluet exch get} {255 mul cvi ngrayt exch get} setcolortransfer {pop 0} setundercolorremoval {} setblackgeneration } bind def /fakecolorsetup { /tran 256 string def 0 1 255 { /ind exch def tran ind red ind get 77 mul green ind get 151 mul blue ind get 28 mul add add 256 idiv put } for currenttransfer { 255 mul cvi tran exch get 255.0 div } exch Fmcc settransfer } bind def /BITMAPCOLOR { /d 8 def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def colorsetup /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPCOLORc { /d 8 def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def colorsetup /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPGRAY { 8 {fakecolorsetup} COMMONBITMAP } bind def /BITMAPGRAYc { 8 {fakecolorsetup} COMMONBITMAPc } bind def /ENDBITMAP { } bind def end (2.0) FMVERSION 1 1 2 2 0 1 2 FMDOCUMENT /fillprocs 32 array def fillprocs 0 { 0.000000 grayness } put fillprocs 1 { 0.100000 grayness } put fillprocs 2 { 0.300000 grayness } put fillprocs 3 { 0.500000 grayness } put fillprocs 4 { 0.700000 grayness } put fillprocs 5 { 0.900000 grayness } put fillprocs 6 { 0.970000 grayness } put fillprocs 7 { 1.000000 grayness } put fillprocs 8 {<0f1e3c78f0e1c387> 8 1 setpattern } put fillprocs 9 {<0f87c3e1f0783c1e> 8 1 setpattern } put fillprocs 10 {<cccccccccccccccc> 8 1 setpattern } put fillprocs 11 {<ffff0000ffff0000> 8 1 setpattern } put fillprocs 12 {<8142241818244281> 8 1 setpattern } put fillprocs 13 {<03060c183060c081> 8 1 setpattern } put fillprocs 14 {<8040201008040201> 8 1 setpattern } put fillprocs 15 {} put fillprocs 16 { 1.000000 grayness } put fillprocs 17 { 0.900000 grayness } put fillprocs 18 { 0.700000 grayness } put fillprocs 19 { 0.500000 grayness } put fillprocs 20 { 0.300000 grayness } put fillprocs 21 { 0.100000 grayness } put fillprocs 22 { 0.030000 grayness } put fillprocs 23 { 0.000000 grayness } put fillprocs 24 {<f0e1c3870f1e3c78> 8 1 setpattern } put fillprocs 25 {<f0783c1e0f87c3e1> 8 1 setpattern } put fillprocs 26 {<3333333333333333> 8 1 setpattern } put fillprocs 27 {<0000ffff0000ffff> 8 1 setpattern } put fillprocs 28 {<7ebddbe7e7dbbd7e> 8 1 setpattern } put fillprocs 29 {<fcf9f3e7cf9f3f7e> 8 1 setpattern } put fillprocs 30 {<7fbfdfeff7fbfdfe> 8 1 setpattern } put fillprocs 31 {} put 0 18 /Times-Roman FMDEFINEFONT 1 14 /NewCenturySchlbk-Roman FMDEFINEFONT 612 792 0 FMBEGINPAGE 0 0 612 792 C 0 0 612 792 R 7 X 0 K V 72 746 540 756 R V 72 32.67 540 42.67 R V 173 395 564 742 R V 3 H 2 Z 8 X N 170 34 562 380 R 7 X V 8 X N 205.37 229.96 367.93 269.7 R 0 X N 285.44 318.82 474.21 361.8 R 4 X V 0 X N 0 F (Internet Protocol \050IP\051) 211.73 244.59 T (V) 297.51 343.96 T (isa veri\336cation and ) 309.42 343.96 T 271.61 208.41 270.89 229.39 282.62 211.97 277.11 210.19 4 Y V 281.02 198.01 277.05 210.4 2 L N 331.1 312.64 351.17 318.83 337.43 302.94 334.27 307.79 4 Y V 276.59 270.61 334.47 307.91 2 L N 458.19 217.26 459.25 196.28 447.24 213.51 452.71 215.38 4 Y V 417.54 318.82 452.8 215.14 2 L N 216.54 159.1 340.43 198.01 R N (Interface Driver) 222.63 173.99 T 401.74 157.36 525.63 196.27 R N (Interface Driver) 407.83 172.24 T 211.49 77.21 511.72 77.21 2 L 4 H N 411.92 79.37 390.98 77.82 407.91 90.24 409.92 84.81 4 Y V 465.58 156.2 M 486.75 116.21 488.22 113.42 409.96 84.71 D 3 H 0 Z N 290.49 140.66 281.64 159.7 299.23 148.25 294.86 144.46 4 Y V 299.35 78.95 M 315.08 112.85 317.31 117.65 294.85 144.4 D N (network) 324 82.95 T 362.74 485.09 486.63 523.38 R 2 Z N (Interface Driver) 368.83 497.67 T (network) 276 457.79 T 186.72 571.12 349.28 610.24 R 4 X V 0 X N (VISA Encapsulation) 195 583.85 T 1 F (a. encapsulation of data packets in a source visa-host) 197.52 411.28 T 219.49 450.2 519.72 450.2 2 L 4 H N 0 F (Internet Protocol \050IP\051) 392.73 632.37 T 387.72 617.73 550.28 656.85 R 3 H N ( T) 204.05 700.37 T (ransport - layer protocols) 218.91 700.37 T 197.72 685.73 403.28 724.85 R N 512.24 678.93 513.98 658.01 501.41 674.83 506.83 676.88 4 Y V 404 704 M 481.56 716.34 490.76 717.8 506.91 676.9 D 0 Z N 348.82 521.39 361.98 505.02 342.15 511.93 345.48 516.66 4 Y V 269 570 345.7 516.5 2 L 2 Z N 419.39 461.11 400.98 451.02 411.25 469.34 415.32 465.22 4 Y V 435 485 415.17 465.04 2 L N 365.2 578.57 345.99 587.01 366.75 590.04 365.98 584.31 4 Y V 499 616 M 487.52 570.39 486.95 568.12 366 584.31 D 0 Z N 1 F (b. packet switching in a visa-router) 209 49 T 0 F (packet forwarding) 306 326 T FMENDPAGE %%EndDocument 240 -150 a endTexFig 515 1321 a Fm(Figure)14 b(5.3:)j(Visa)d(encapsulation)g(and)g(pac)o(k)o(et)g (switc)o(hing)-28 1454 y(The)21 b(\014rst)f(ro)o(w)g(sho)o(ws)h(the)f (timings)e(with)i Fl(Visa)g Fm(proto)q(col)f(inactiv)o(e.)36 b(The)21 b(second)g(ro)o(w)f(sho)o(ws)g(the)h(timings)d(for)h(the)i(same)-90 1504 y(pac)o(k)o(et)e(tra\016c,)g(but,)g(using)f Fl(Visa)f Fm(proto)q(col)h(without)g(an)o(y)g(in)o(tegrit)o(y)g(c)o(hec)o(king.)31 b(These)19 b(timings)d(help)j(us)f(in)g(iden)o(tifying)f(purely)-90 1554 y(proto)q(col-related)d(o)o(v)o(erhead.)19 b(The)14 b(third)g(ro)o(w)f (sho)o(ws)i(the)f(results)h(for)f Fl(Visa)f Fm(proto)q(col)h(with)g(full)e (in)o(tegrit)o(y)i(c)o(hec)o(king.)p 505 1655 970 2 v 505 1657 V 504 1704 2 50 v 513 1704 V 538 1689 a(P)o(ac)o(k)o(et)h(size)f(\(b)o (ytes\))p 906 1704 V 915 1704 V 69 w(16)p 1017 1704 V 55 w(64)p 1109 1704 V 49 w(256)p 1221 1704 V 49 w(512)p 1333 1704 V 50 w(1024)p 1466 1704 V 1475 1704 V 505 1706 970 2 v 505 1708 V 504 1756 2 50 v 513 1756 V 538 1741 a(No)g Fl(Visa)p 906 1756 V 915 1756 V 270 w Fm(5)p 1017 1756 V 76 w(5)p 1109 1756 V 81 w(8)p 1221 1756 V 81 w(10)p 1333 1756 V 80 w(15)p 1466 1756 V 1475 1756 V 505 1758 970 2 v 504 1807 2 50 v 513 1807 V 538 1792 a Fl(Visa)g Fm(w/o)f(in)o(tegrit)o(y)p 906 1807 V 915 1807 V 83 w(6)p 1017 1807 V 76 w(6)p 1109 1807 V 65 w(8.5)p 1221 1807 V 64 w(11)p 1333 1807 V 80 w(16)p 1466 1807 V 1475 1807 V 505 1809 970 2 v 504 1859 2 50 v 513 1859 V 538 1844 a Fl(Visa)h Fm(with)g(in)o(tegrit)o(y)p 906 1859 V 915 1859 V 57 w(7.5)p 1017 1859 V 59 w(8)p 1109 1859 V 71 w(11)p 1221 1859 V 70 w(14)p 1333 1859 V 80 w(20)p 1466 1859 V 1475 1859 V 505 1861 970 2 v 505 1863 V 532 1979 a(T)m(able)g(5.1:)j(Visa)c(connection) i(setup)g(o)o(v)o(erhead)f(\(in)f(ms\))-28 2081 y(First)18 b(and)e(foremost,)g(these)j(n)o(um)o(b)q(ers)d(clearly)h(illustrate)g(the)g (relativ)o(ely)f(lo)o(w)g(cost)i(of)e(encapsulation)h(and)g(switc)o(hing)f (of)g(visa)-90 2131 y(pac)o(k)o(ets.)24 b(Another)16 b(comforting)d(asp)q (ect)k(of)e(our)h(results)g(is)g(what)f(app)q(ears)h(to)g(b)q(e)g (insigni\014can)o(t)e(additional)g(o)o(v)o(erhead)i(imp)q(osed)e(b)o(y)-90 2180 y(pac)o(k)o(et)h(authen)o(tication)g(and)f(in)o(tegrit)o(y)h(c)o(hec)o (king.)21 b(This)15 b(ma)o(y)e(b)q(e)i(due)g(to)g(the)g(nature)h(of)e(MD4;)g (since)i(it)f(is)f(implemen)o(ted)f(en)o(tirely)-90 2230 y(in)i(soft)o(w)o (are,)g(data)g(rates)i(are)f(constan)o(t)g(indep)q(enden)o(t)g(of)f(the)h (pac)o(k)o(et)g(size.)24 b(\(Hardw)o(are)16 b(devices)g(tend)g(to)g(o\013er)g (m)o(uc)o(h)e(lo)o(w)o(er)h(rates)-90 2280 y(for)f(small)d(data)j(units;)f (mostly)f(b)q(ecause)k(of)d(the)i(\014xed)f(device)h(initialization)c (costs\).)2028 2770 y(63)p eop %%Page: 64 4 bop -90 -108 a Ff(5.3)70 b(IDPR)22 b(Exp)r(erimen)n(ts)-90 0 y Fm(In)14 b(this)g(section)g(w)o(e)g(describ)q(e)i(the)e(exp)q(erimen)o (ts)g(with)g(the)g(IDPR)g(arc)o(hitecture)h(based)g(on)e(the)i(initial)d (protot)o(yp)q(e)i(implemen)o(tatio)o(n.)-90 50 y(The)e(IDPR)g(arc)o (hitecture)h(w)o(as)f(originally)e(put)i(forw)o(ard)f(b)o(y)h(the)h(In)o (ternet)g(In)o(ter-Domain)d(P)o(olicy)h(Routing)g(W)m(orking)f(Group)i (\(IDPR-)-90 100 y(W)o(G\))1 85 y Fi(2)33 100 y Fm(of)h(the)i(In)o(ternet)g (Engineering)g(T)m(ask)e(F)m(orce)i([50)o(,)e(84])g(The)i(soft)o(w)o(are)f (dev)o(elopmen)o(t)f(is)h(a)g(collab)q(orativ)o(e)f(pro)r(ject)i(b)q(et)o(w)o (een)g(the)-90 150 y(Univ)o(ersit)o(y)f(of)f(Southern)i(California)c (\(USC\),)j(Bolt)g(Beranek)h(and)f(Newman)f(\(BBN\),)h(and)g(Sparta,)f(Inc.) -28 217 y(Before)e(pro)q(ceeding)f(with)f(the)h(discussion)g(of)e(exp)q (erimen)o(tal)h(results,)i(the)f(follo)o(wing)c(subsection)11 b(pro)o(vides)f(additional)d(bac)o(kground)-90 267 y(for)14 b(the)g(IDPR)f(arc)o(hitecture.)-90 406 y Fe(5.3.1)55 b(Additional)18 b(Bac)n(kground)-90 500 y Fm(In)10 b(Chapter)g(4,)g(w)o(e)g(addressed)h(the)g (high-lev)o(el)d(design)i(issues)h(p)q(ertaining)e(directly)h(to)g(p)q(olicy) f(enforcemen)o(t)h(in)f(IDPR,)g(i.e.,)g(installation)-90 550 y(of)14 b(P)o(olicy)g(Routes)h(and)f(subsequen)o(t)i(pac)o(k)o(et)f(forw)o (arding.)k(Ho)o(w)o(ev)o(er,)c(IDPR)f(arc)o(hitecture)i(includes)f(m)o(uc)o (h)f(more)f(than)i(just)g(p)q(olicy)-90 600 y(enforcemen)o(t)f(mec)o (hanisms.)i(Fiv)o(e)e(proto)q(cols)g(form)e(the)i(core)h(of)e(the)i(IDPR)e (arc)o(hitecture:)-28 701 y Fd(\017)21 b Fm(Virtual)13 b(Gatew)o(a)o(y)g (Proto)q(col)h(\(V)o(GP\))14 751 y(A)i Fl(Virtual)h(Gateway)g Fm(\(V)o(G\))f(is)h(a)f(set)h(of)g(PGs)f(in)o(terconnecting)i(a)e(pair)g(of)g (adjacen)o(t)h(ADs.)27 b(A)16 b(simple)g(V)o(G)g(consists)h(of)f(t)o(w)o(o)14 800 y(PGs,)f(one)g(in)g(eac)o(h)g(of)g(the)h(neigh)o(b)q(oring)e(ADs.)22 b(All)14 b(PGs)h(within)g(an)g(AD)g(use)h(V)o(GP)e(to)h(exc)o(hange)h(status) g(information)c(with)14 850 y(resp)q(ect)k(to)e(their)g(outside)g(links,)f (i.e.,)f(the)j(status)g(of)e(their)h(constituen)o(t)h(V)o(Gs.)-28 933 y Fd(\017)21 b Fm(Up)q(date)14 b(Proto)q(col)g(\(UPD)o(A)m(TE\))14 983 y(Eac)o(h)j(AD)h(uses)g(UPD)o(A)m(TE)f(to)h(distribute)g(b)q(oth)f (con\014gured)i(and)e(dynamic)e(status)k(information)14 b(ab)q(out)j(its)h(V) o(Gs)f(and)g(the)14 1033 y(asso)q(ciated)d(P)o(olicy)e(T)m(erms.)17 b(The)d(information)c(is)k(disseminated)e(in)h(a)g(link)f(state)i(fashion,)e (i.e.,)g(it)h(is)g(\015o)q(o)q(ded)h(throughout)f(the)14 1083 y(in)o(ternet.)-28 1166 y Fd(\017)21 b Fm(Route)14 b(Syn)o(thesis)g (\(RSYNTH\))14 1216 y(Eac)o(h)20 b(AD)h(has)f(one)h(or)f(more)f(Route)i(Serv) o(ers)h(\(eac)o(h)f(a)f(distinct)g(logical)f(en)o(tit)o(y)h(often)h(co-lo)q (cated)f(with)g(a)g(PG\))h(that)f(is)14 1265 y(resp)q(onsible)13 b(for)g(main)o(taini)o(ng)d(the)j(connectivit)o(y)g(database)g(of)f(the)h(en) o(tire)g(in)o(ternet)h(and)e(computing)f(PRs)i(for)f(its)h(constituen)o(t)14 1315 y(users.)27 b(Strictly)16 b(sp)q(eaking,)h(RSYNTH)f(is)h(not)f(a)g (proto)q(col,)h(but,)f(rather,)i(a)e(route)h(computation)e(algorithm)f(sup)q (erimp)q(osed)14 1365 y(with)f(a)g(set)h(of)f(AD-dep)q(enden)o(t)i (heuristics)g(used)f(in)f(selecting)h(optimal)d(PRs.)18 b(It)13 b(em)o(b)q(o)q(dies)g(what)g(w)o(e)h(referred)h(to)e(in)g(Chapter)14 1415 y(1)g(as)h Fl(r)n(oute)h(sele)n(ction)f Fm(p)q(olicies.)-28 1498 y Fd(\017)21 b Fm(P)o(ath)14 b(Setup)g(\(SETUP\))14 1548 y(As)g(describ)q(ed)i(earlier,)d(SETUP)i(is)f(resp)q(onsible)h(for)e(the)i (installation)d(and)h(main)o(tenance)g(of)h(PR-related)g(state)g(in)g(PGs.) -28 1631 y Fd(\017)21 b Fm(Kernel)15 b(P)o(ac)o(k)o(et)f(Switc)o(hing)f (\(KERNEL\))14 1680 y(Switc)o(hing)g(of)g(IDPR)g(data)h(pac)o(k)o(ets)g(at)g (a)f(PG)h(in)o(v)o(olv)o(es)f(mapping)e(individual)h(data)h(pac)o(k)o(et)i (in)o(to)e(PRs)g(and)h(forw)o(arding)f(them)14 1730 y(according)f(to)g(the)i (next)e(PG)h(hop)f(established)h(at)f(route)h(setup)h(time.)i(Because)e(of)e (the)h(high)f(throughput)h(requiremen)o(ts,)f(data)14 1780 y(pac)o(k)o(et)i(switc)o(hing)g(is)f(implemen)o(ted)f(within)h(the)i(k)o (ernel.)-90 1881 y(In)k(addition,)f(there)i(is)e(a)h(high)f(degree)i(of)e(in) o(ter-dep)q(endence)j(among)16 b(the)k(v)n(arious)e(IDPR)g(proto)q(cols.)32 b(The)19 b(particulars)g(of)f(this)-90 1931 y(in)o(terpla)o(y)g(are)i (illustrated)f(in)g(Figure)g(5.4.)32 b(IDPR)19 b(arc)o(hitecture)i(also)d (pro)o(vides)i(a)e(uniform)f(mec)o(hanism)g(for)i(the)h(reliable)e(\(i.e.,) -90 1981 y(timely)m(,)d(sequenced)k(and)e(error-free\))i(deliv)o(ery)e(of)g (IDPR)f(con)o(trol)h(pac)o(k)o(ets)h(b)q(et)o(w)o(een)g(PGs)g(and)f(b)q(et)o (w)o(een)h(the)g(di\013eren)o(t)g(proto)q(cols)-90 2030 y(within)13 b(a)h(PG.)f(This)h(function)f(is)h(implemen)o(ted)e(b)o(y)h(the)i(Con)o(trol) e(Message)i(T)m(ransp)q(ort)f(Proto)q(col)g(\(CMTP\).)-28 2098 y(V)o(GP)m(,)c(UPD)o(A)m(TE)g(and)h(RSYNTH)f(are)i(not)e(addressed)j(b)q(elo) o(w;)e(for)f(a)g(complete)h(description)g(of)f(IDPR)g(arc)o(hitecture)j(and)d (proto)q(col)-90 2148 y(sp)q(eci\014cations)15 b(the)f(reader)i(is)d (referred)j(to)e([50)o(,)f(84,)g(7,)g(28].)-90 2278 y Fc(5.3.1.1)48 b(P)o(olicy)14 b(Routes)-90 2373 y Fm(The)k(foremost)e(purp)q(ose)i(of)f (IDPR)f(is)h(the)h(main)o(tenance)e(of)h(PRs.)28 b(Therefore,)19 b(in)d(order)i(to)f(understand)i(the)e(inner)h(w)o(orkings)f(of)-90 2422 y(IDPR,)c(it)g(is)h(crucial)g(to)g(understand)h(the)f(PR)g(life-cycle.) -28 2490 y(With)k(resp)q(ect)i(to)e(a)f(giv)o(en)h(PR,)f(there)i(are)f(three) i(t)o(yp)q(es)e(of)g(PGs:)26 b(i\))17 b(ORIGINA)m(TOR,)g(ii\))g(T)m(AR)o (GET,)f(and)i(iii\))f(TRANSIT.)-90 2540 y(ORIGINA)m(TOR)e(is)i(the)g(exit)f (PG)h(in)f(the)h(source)h(AD)e(that)g(initiates)g(the)h(installation)e(of)h (the)h(PR)f(\(i.e.,)g(originates)g(the)h(SETUP)p -90 2623 864 2 v -44 2649 a Fh(2)-26 2661 y Fg(Of)11 b(whic)o(h)g(the)g(author)f(is)h(a)h (mem)o(b)q(er.)2028 2770 y Fm(64)p eop %%Page: 65 5 bop 240 -150 a 23207776 21313290 0 0 40258437 52099153 startTexFig 240 -150 a %%BeginDocument: idpr.ps /FMversion (2.0) def /FrameDict 170 dict def systemdict /errordict known not { /errordict 10 dict def errordict /rangecheck { stop } put } if FrameDict /tmprangecheck errordict /rangecheck get put errordict /rangecheck {FrameDict /bug true put} put FrameDict /bug false put mark currentfile 5 string readline 00 0000000000 cleartomark errordict /rangecheck FrameDict /tmprangecheck get put FrameDict /bug get { /readline { /gstring exch def /gfile exch def /gindex 0 def { gfile read pop dup 10 eq {exit} if dup 13 eq {exit} if gstring exch gindex exch put /gindex gindex 1 add def } loop pop gstring 0 gindex getinterval true } def } if /FMVERSION { FMversion ne { /Times-Roman findfont 18 scalefont setfont 100 100 moveto (FrameMaker version does not match postscript_prolog!) dup = show showpage } if } def /FMLOCAL { FrameDict begin 0 def end } def /gstring FMLOCAL /gfile FMLOCAL /gindex FMLOCAL /orgxfer FMLOCAL /orgproc FMLOCAL /organgle FMLOCAL /orgfreq FMLOCAL FrameDict /graymode true put /yscale FMLOCAL /xscale FMLOCAL /PrintInColor systemdict /colorimage known def PrintInColor { /HUE 0 def /SAT 0 def /BRIGHT 0 def % array of arrays Hue and Sat values for the separations [HUE BRIGHT] /Colors [[0 0 ] % black [0 0 ] % white [0.00 1.0] % red [0.37 1.0] % green [0.60 1.0] % blue [0.50 1.0] % cyan [0.83 1.0] % magenta [0.16 1.0] % comment ] def /BEGINBITMAPCOLOR { BITMAPCOLOR } def /BEGINBITMAPCOLORc { BITMAPCOLORc } def /K { Colors exch get dup 0 get /HUE exch store 1 get /BRIGHT exch store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } def /mysetgray { /SAT exch 1.0 exch sub store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } bind def } { /BEGINBITMAPCOLOR { BITMAPGRAY } def /BEGINBITMAPCOLORc { BITMAPGRAYc } def /mysetgray { setgray } bind def /K { pop } def } ifelse /max {2 copy lt {exch} if pop} bind def /min {2 copy gt {exch} if pop} bind def /mtx matrix defaultmatrix def /setmanualfeed { statusdict /manualfeed true put } def /FMDOCUMENT { array /FMfonts exch def /#copies exch def 0 ne dup {setmanualfeed} if FrameDict begin /manualfeed exch def /paperheight exch def /paperwidth exch def setpapername manualfeed {true} {papersize} ifelse {manualpapersize} {false} ifelse {desperatepapersize} if /yscale exch def /xscale exch def currenttransfer cvlit /orgxfer exch def currentscreen cvlit /orgproc exch def /organgle exch def /orgfreq exch def end } def /pagesave FMLOCAL /orgmatrix FMLOCAL /landscape FMLOCAL /FMBEGINPAGE { FrameDict begin /pagesave save def 3.86 setmiterlimit /landscape exch 0 ne store landscape { 90 rotate 0 exch neg translate pop } { pop pop } ifelse xscale yscale scale /orgmatrix matrix def gsave } def /FMENDPAGE { grestore pagesave restore end showpage } def /fontname FMLOCAL /fontscale FMLOCAL /fontnum FMLOCAL /fontdict FMLOCAL /FMDEFINEFONT { FrameDict begin /fontname exch def /fontscale exch def /fontnum exch def /fontdict fontname findfont fontscale scalefont def fontdict /Encoding get StandardEncoding eq { fontdict DiacriticEncode /fontdict exch def } { fontdict NonDiacriticEncode /fontdict exch def } ifelse FMfonts fontnum fontnum fontdict definefont put end } def /FMNORMALIZEGRAPHICS { newpath 0.0 0.0 moveto 1 setlinewidth 0 setlinecap 0 mysetgray } bind def /FMBEGINEPSF { end /FMEPSF save def /showpage {} def FMNORMALIZEGRAPHICS [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall fx fy translate rotate fw urx llx sub div fh ury lly sub div scale llx neg lly neg translate } bind def /FMENDEPSF { FMEPSF restore FrameDict begin } bind def FrameDict begin /pagedimen { paperheight sub abs 16 lt exch paperwidth sub abs 16 lt and {/papername exch def} {pop} ifelse } def /inch {72 mul} def /setpapername { /papersizedict 14 dict def papersizedict begin /papername /unknown def /Letter 8.5 inch 11.0 inch pagedimen /LetterSmall 7.68 inch 10.16 inch pagedimen /Tabloid 11.0 inch 17.0 inch pagedimen /Ledger 17.0 inch 11.0 inch pagedimen /Legal 8.5 inch 14.0 inch pagedimen /Statement 5.5 inch 8.5 inch pagedimen /Executive 7.5 inch 10.0 inch pagedimen /A3 11.69 inch 16.5 inch pagedimen /A4 8.26 inch 11.69 inch pagedimen /A4Small 7.47 inch 10.85 inch pagedimen /B4 10.125 inch 14.33 inch pagedimen /B5 7.16 inch 10.125 inch pagedimen end } def /papersize { papersizedict begin /Letter {lettertray} def /LetterSmall {lettertray lettersmall} def /Tabloid {11x17tray} def /Ledger {ledgertray} def /Legal {legaltray} def /Statement {statementtray} def /Executive {executivetray} def /A3 {a3tray} def /A4 {a4tray} def /A4Small {a4tray a4small} def /B4 {b4tray} def /B5 {b5tray} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end statusdict begin stopped end } def /manualpapersize { papersizedict begin /Letter {letter} def /LetterSmall {lettersmall} def /Tabloid {11x17} def /Ledger {ledger} def /Legal {legal} def /Statement {statement} def /Executive {executive} def /A3 {a3} def /A4 {a4} def /A4Small {a4small} def /B4 {b4} def /B5 {b5} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end stopped } def /desperatepapersize { statusdict /setpageparams known { paperwidth paperheight 0 1 statusdict begin {setpageparams} stopped pop end } if } def /savematrix { orgmatrix currentmatrix pop } bind def /restorematrix { orgmatrix setmatrix } bind def /dmatrix matrix def /dpi 72 0 dmatrix defaultmatrix dtransform dup mul exch dup mul add sqrt def /freq dpi 18.75 div 8 div round dup 0 eq { pop 1 } if 8 mul dpi exch div def /sangle 1 0 dmatrix defaultmatrix dtransform exch atan def /DiacriticEncoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def /basefontdict FMLOCAL /newfontdict FMLOCAL /DiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {dup /Encoding eq {exch pop DiacriticEncoding} {exch} ifelse newfontdict 3 1 roll put } {pop pop} ifelse } forall newfontdict } bind def /NonDiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {exch newfontdict 3 1 roll put} {pop pop} ifelse } forall newfontdict } bind def /bwidth FMLOCAL /bpside FMLOCAL /bstring FMLOCAL /onbits FMLOCAL /offbits FMLOCAL /xindex FMLOCAL /yindex FMLOCAL /x FMLOCAL /y FMLOCAL /setpattern { /bwidth exch def /bpside exch def /bstring exch def /onbits 0 def /offbits 0 def freq sangle landscape {90 add} if {/y exch def /x exch def /xindex x 1 add 2 div bpside mul cvi def /yindex y 1 add 2 div bpside mul cvi def bstring yindex bwidth mul xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne {/onbits onbits 1 add def 1} {/offbits offbits 1 add def 0} ifelse } setscreen {} settransfer offbits offbits onbits add div mysetgray /graymode false store } bind def /grayness { mysetgray graymode not { /graymode true store orgxfer cvx settransfer orgfreq organgle orgproc cvx setscreen } if } bind def /normalize { transform round exch round exch itransform } bind def /dnormalize { dtransform round exch round exch idtransform } bind def /lnormalize { 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def /H { lnormalize setlinewidth } bind def /Z { setlinecap } bind def /X { fillprocs exch get exec } bind def /V { gsave eofill grestore } bind def /N { stroke } bind def /M {newpath moveto} bind def /E {lineto} bind def /D {curveto} bind def /O {closepath} bind def /n FMLOCAL /L { /n exch def newpath normalize moveto 2 1 n {pop normalize lineto} for } bind def /Y { L closepath } bind def /x1 FMLOCAL /x2 FMLOCAL /y1 FMLOCAL /y2 FMLOCAL /rad FMLOCAL /R { /y2 exch def /x2 exch def /y1 exch def /x1 exch def x1 y1 x2 y1 x2 y2 x1 y2 4 Y } bind def /RR { /rad exch def normalize /y2 exch def /x2 exch def normalize /y1 exch def /x1 exch def newpath x1 y1 rad add moveto x1 y2 x2 y2 rad arcto x2 y2 x2 y1 rad arcto x2 y1 x1 y1 rad arcto x1 y1 x1 y2 rad arcto closepath 16 {pop} repeat } bind def /C { grestore gsave R clip } bind def /U { grestore gsave } bind def /F { FMfonts exch get setfont } bind def /T { moveto show } bind def /RF { rotate 0 ne { -1 1 scale } if } bind def /TF { gsave moveto RF show grestore } bind def /P { moveto 0 32 3 2 roll widthshow } bind def /PF { gsave moveto RF 0 32 3 2 roll widthshow grestore } bind def /S { moveto 0 exch ashow } bind def /SF { gsave moveto RF 0 exch ashow grestore } bind def /B { moveto 0 32 4 2 roll 0 exch awidthshow } bind def /BF { gsave moveto RF 0 32 4 2 roll 0 exch awidthshow grestore } bind def /x FMLOCAL /y FMLOCAL /dx FMLOCAL /dy FMLOCAL /dl FMLOCAL /t FMLOCAL /t2 FMLOCAL /Cos FMLOCAL /Sin FMLOCAL /r FMLOCAL /W { dnormalize /dy exch def /dx exch def normalize /y exch def /x exch def /dl dx dx mul dy dy mul add sqrt def dl 0.0 gt { /t currentlinewidth def savematrix /Cos dx dl div def /Sin dy dl div def /r [Cos Sin Sin neg Cos 0.0 0.0] def /t2 t 2.5 mul 3.5 max def newpath x y translate r concat 0.0 0.0 moveto dl t 2.7 mul sub 0.0 rlineto stroke restorematrix x dx add y dy add translate r concat t 0.67 mul setlinewidth t 1.61 mul neg 0.0 translate 0.0 0.0 moveto t2 1.7 mul neg t2 2.0 div moveto 0.0 0.0 lineto t2 1.7 mul neg t2 2.0 div neg lineto stroke t setlinewidth restorematrix } if } bind def /G { gsave newpath normalize translate 0.0 0.0 moveto dnormalize scale 0.0 0.0 1.0 5 3 roll arc closepath fill grestore } bind def /A { gsave savematrix newpath 2 index 2 div add exch 3 index 2 div sub exch normalize 2 index 2 div sub exch 3 index 2 div add exch translate scale 0.0 0.0 1.0 5 3 roll arc restorematrix stroke grestore } bind def /x FMLOCAL /y FMLOCAL /w FMLOCAL /h FMLOCAL /xx FMLOCAL /yy FMLOCAL /ww FMLOCAL /hh FMLOCAL /FMsaveobject FMLOCAL /FMoptop FMLOCAL /FMdicttop FMLOCAL /BEGINPRINTCODE { /FMdicttop countdictstack 1 add def /FMoptop count 4 sub def /FMsaveobject save def userdict begin /showpage {} def FMNORMALIZEGRAPHICS 3 index neg 3 index neg translate } bind def /ENDPRINTCODE { count -1 FMoptop {pop pop} for countdictstack -1 FMdicttop {pop end} for FMsaveobject restore } bind def /gn { 0 { 46 mul cf read pop 32 sub dup 46 lt {exit} if 46 sub add } loop add } bind def /str FMLOCAL /cfs { /str sl string def 0 1 sl 1 sub {str exch val put} for str def } bind def /ic [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} ] def /sl FMLOCAL /val FMLOCAL /ws FMLOCAL /im FMLOCAL /bs FMLOCAL /cs FMLOCAL /len FMLOCAL /pos FMLOCAL /ms { /sl exch def /val 255 def /ws cfs /im cfs /val 0 def /bs cfs /cs cfs } bind def 400 ms /ip { is 0 cf cs readline pop { ic exch get exec add } forall pop } bind def /wh { /len exch def /pos exch def ws 0 len getinterval im pos len getinterval copy pop pos len } bind def /bl { /len exch def /pos exch def bs 0 len getinterval im pos len getinterval copy pop pos len } bind def /s1 1 string def /fl { /len exch def /pos exch def /val cf s1 readhexstring pop 0 get def pos 1 pos len add 1 sub {im exch val put} for pos len } bind def /hx { 3 copy getinterval cf exch readhexstring pop pop } bind def /h FMLOCAL /w FMLOCAL /d FMLOCAL /lb FMLOCAL /bitmapsave FMLOCAL /is FMLOCAL /cf FMLOCAL /wbytes { dup 8 eq { pop } { 1 eq { 7 add 8 idiv } { 3 add 4 idiv } ifelse } ifelse } bind def /BEGINBITMAPBWc { 1 {} COMMONBITMAPc } bind def /BEGINBITMAPGRAYc { 8 {} COMMONBITMAPc } bind def /BEGINBITMAP2BITc { 2 {} COMMONBITMAPc } bind def /COMMONBITMAPc { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def r /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} image bitmapsave restore grestore } bind def /BEGINBITMAPBW { 1 {} COMMONBITMAP } bind def /BEGINBITMAPGRAY { 8 {} COMMONBITMAP } bind def /BEGINBITMAP2BIT { 2 {} COMMONBITMAP } bind def /COMMONBITMAP { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def r /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } image bitmapsave restore grestore } bind def /Fmcc { /proc2 exch cvlit def /proc1 exch cvlit def /newproc proc1 length proc2 length add array def newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval newproc cvx } bind def /colorsetup { currentcolortransfer /gryt exch def /blut exch def /grnt exch def /redt exch def /ngrayt 256 array def /nredt 256 array def /nbluet 256 array def /ngreent 256 array def 0 1 255 { /indx exch def /cynu 1 red indx get 255 div sub def /magu 1 green indx get 255 div sub def /yelu 1 blue indx get 255 div sub def /k cynu magu min yelu min def /u k currentundercolorremoval exec def nredt indx 1 0 cynu u sub max sub redt exec put ngreent indx 1 0 magu u sub max sub grnt exec put nbluet indx 1 0 yelu u sub max sub blut exec put ngrayt indx 1 k currentblackgeneration exec sub gryt exec put } for {255 mul cvi nredt exch get} {255 mul cvi ngreent exch get} {255 mul cvi nbluet exch get} {255 mul cvi ngrayt exch get} setcolortransfer {pop 0} setundercolorremoval {} setblackgeneration } bind def /fakecolorsetup { /tran 256 string def 0 1 255 { /ind exch def tran ind red ind get 77 mul green ind get 151 mul blue ind get 28 mul add add 256 idiv put } for currenttransfer { 255 mul cvi tran exch get 255.0 div } exch Fmcc settransfer } bind def /BITMAPCOLOR { /d 8 def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def colorsetup /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPCOLORc { /d 8 def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def colorsetup /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPGRAY { 8 {fakecolorsetup} COMMONBITMAP } bind def /BITMAPGRAYc { 8 {fakecolorsetup} COMMONBITMAPc } bind def /ENDBITMAP { } bind def end (2.0) FMVERSION 1 1 2 2 0 1 2 FMDOCUMENT /fillprocs 32 array def fillprocs 0 { 0.000000 grayness } put fillprocs 1 { 0.100000 grayness } put fillprocs 2 { 0.300000 grayness } put fillprocs 3 { 0.500000 grayness } put fillprocs 4 { 0.700000 grayness } put fillprocs 5 { 0.900000 grayness } put fillprocs 6 { 0.970000 grayness } put fillprocs 7 { 1.000000 grayness } put fillprocs 8 {<0f1e3c78f0e1c387> 8 1 setpattern } put fillprocs 9 {<0f87c3e1f0783c1e> 8 1 setpattern } put fillprocs 10 {<cccccccccccccccc> 8 1 setpattern } put fillprocs 11 {<ffff0000ffff0000> 8 1 setpattern } put fillprocs 12 {<8142241818244281> 8 1 setpattern } put fillprocs 13 {<03060c183060c081> 8 1 setpattern } put fillprocs 14 {<8040201008040201> 8 1 setpattern } put fillprocs 15 {} put fillprocs 16 { 1.000000 grayness } put fillprocs 17 { 0.900000 grayness } put fillprocs 18 { 0.700000 grayness } put fillprocs 19 { 0.500000 grayness } put fillprocs 20 { 0.300000 grayness } put fillprocs 21 { 0.100000 grayness } put fillprocs 22 { 0.030000 grayness } put fillprocs 23 { 0.000000 grayness } put fillprocs 24 {<f0e1c3870f1e3c78> 8 1 setpattern } put fillprocs 25 {<f0783c1e0f87c3e1> 8 1 setpattern } put fillprocs 26 {<3333333333333333> 8 1 setpattern } put fillprocs 27 {<0000ffff0000ffff> 8 1 setpattern } put fillprocs 28 {<7ebddbe7e7dbbd7e> 8 1 setpattern } put fillprocs 29 {<fcf9f3e7cf9f3f7e> 8 1 setpattern } put fillprocs 30 {<7fbfdfeff7fbfdfe> 8 1 setpattern } put fillprocs 31 {} put 0 18 /AvantGarde-Demi FMDEFINEFONT 1 24 /Helvetica FMDEFINEFONT 612 792 0 FMBEGINPAGE 0 0 612 792 C 0 0 612 792 R 7 X 0 K V 72 746 540 756 R V 72 32.67 540 42.67 R V 241.21 119.03 246.55 175.96 R 0 X V 4 H 2 Z N 6 X 90 450 132.13 36.6 245.22 229.73 G 0 X 90 450 132.13 36.6 245.22 229.73 A 4 X 90 450 76.07 32.53 268.35 609.74 G 0 X 90 450 76.07 32.53 268.35 609.74 A 3 X 90 450 128.12 36.6 246.55 438.49 G 0 X 90 450 128.12 36.6 246.55 438.49 A 14 X 90 450 73.72 32.53 103.43 661.25 G 0 X 90 450 73.72 32.53 103.43 661.25 A 5 X 90 450 84.85 39.6 461.08 581.16 G 0 X 90 450 84.85 39.6 461.08 581.16 A 13 X 90 450 76.07 32.53 117.98 536.54 G 0 X 90 450 76.07 32.53 117.98 536.54 A 0 F (Contol Message T) 140.35 439.6 T (ransport ) 293.59 439.6 T (Pr) 185.5 415.66 T (otocol \050CMTP\051) 201.01 415.66 T (V) 396.35 581.78 T (irtual Gateway) 408.78 581.78 T (Pr) 410.54 563.78 T (otocol \050VGP\051) 426.05 563.78 T (Update Pr) 47.03 536.67 T (otocol) 131.62 536.67 T (\050UPDA) 81.78 517.64 T (TE\051) 134.79 517.64 T (Route Synthesis) 34.67 657.85 T (\050RSYNTH\051) 61.37 642.66 T (Path Setup ) 222.18 611.24 T (\050SETUP\051) 238.52 591.14 T (IDPR Packet Switching) 158.27 229.66 T (\050KERNEL\051) 208.25 210.67 T 1 F (Kernel) 160.67 343.49 T (Boundary) 252.57 343.49 T 309.29 645.34 285.77 640.55 303.18 657.08 306.23 651.21 4 Y V 441.28 620.82 M 362.21 668.81 353.08 674.36 306.29 651.11 D 0 Z N 74.26 611.64 65.93 634.15 84.92 619.48 79.59 615.56 4 Y V 113.98 568.17 79.45 615.75 2 L 2 Z N 448.67 529.96 469.84 541.26 457.88 520.46 453.27 525.21 4 Y V 392.16 456.16 370.99 444.87 382.96 465.67 387.56 460.92 4 Y V 453.46 525.37 387.4 460.73 2 L 0 Z N 260.4 554.14 267.02 577.21 273.63 554.14 267.02 554.14 4 Y V 273.63 498.16 267.02 475.09 260.4 498.16 267.02 498.16 4 Y V 267.02 554.38 267.02 497.92 2 L N 188.15 496.42 170.03 512.15 193.74 508.42 190.94 502.42 4 Y V 230.2 491.73 248.32 476 224.62 479.74 227.41 485.74 4 Y V 190.73 502.51 227.63 485.63 2 L N 237.65 317.84 250.11 331.4 R 7 X V 2 Z N 232.32 132.59 252.78 132.59 244.01 109.99 3 Y 0 X V N 231.43 289.83 251.89 289.83 243.12 267.24 3 Y V N 231.43 380.2 251.89 380.2 243.12 402.79 3 Y V N 233.21 169.64 253.67 169.64 244.9 192.23 3 Y V N ( network) 197.28 96.42 T 419.13 261.95 435.94 301.38 R 7 X N 239.43 339.55 244.77 381.1 R 0 X V N 239.43 276.13 244.77 323.6 R V N 273.8 664.95 266.77 642 260.57 665.18 267.18 665.07 4 Y V 194.63 676.89 170.65 676 190.51 689.46 192.57 683.18 4 Y V 192.6 683.13 M 257.55 704 266.92 703.46 267.19 665.06 D 0 Z N 18 90 557 712 R 9 X N 18.94 332 555.11 332 2 L 2 Z 3 X N FMENDPAGE %%EndDocument 240 -150 a endTexFig 628 1203 a Fm(Figure)14 b(5.4:)j(In)o(terpla)o(y)d(of)f(IDPR)h(proto)q(cols) -90 1331 y(pac)o(k)o(et\).)k(T)m(AR)o(GET)13 b(is)g(the)h(en)o(try)g(PG)g(in) f(the)h(destination)f(AD)g(\(i.e.,)g(the)h(last)f(PG)g(hop)h(in)f(the)h (PR\).)f(All)g(other)h(PGs)f(in)o(v)o(olv)o(ed)g(are)-90 1381 y(TRANSIT;)g(for)h(ev)o(ery)g(TRANSIT)g(PG)g(b)q(oth)g(PG-NEXT)g(and)f (PG-PREV)h(are)g(de\014ned.)-28 1448 y(A)g(PR)g(can)g(b)q(e)g(in)g(an)o(y)f (one)h(of)g(the)g(sev)o(en)h(states:)-39 1544 y(1.)20 b Fc(PR-EMBR)l(YONIC)14 b Fm(\(ORIGINA)m(TOR\))14 1594 y(SETUP-REQUEST)h(from)d(KERNEL)i(is)g(receiv) o(ed)h(and)f(R)o(OUTE-REQUEST)g(is)g(subsequen)o(tly)h(generated)g(to)f (RSYNTH.)-39 1674 y(2.)20 b Fc(PR-INITIAL)14 b Fm(\(ORIGINA)m(TOR)f(and)g (TRANSITs\))14 1724 y(R)o(OUTE-RESPONSE)h(is)g(receiv)o(ed)h(from)d(RSYNTH)i (and)g(SETUP)h(is)e(forw)o(arded)h(to)g(the)g(next)h(hop)f(PG)f(\(PG-NEXT\).) -39 1805 y(3.)20 b Fc(PR-W)-5 b(AITING)13 b Fm(\(ORIGINA)m(TOR)g(and)h (TRANSITs\))14 1855 y(SETUP)g(is)g(A)o(CK-ed)g(b)o(y)g(PG-NEXT,)g(but)g(A)o (CCEPT)g(has)g(not)g(y)o(et)g(b)q(een)h(receiv)o(ed.)-39 1935 y(4.)20 b Fc(PR-A)o(CTIVE)14 b Fm(\(TRANSITs)g(and)g(T)m(AR)o(GET\))14 1985 y(A)o(CCEPT)g(is)g(receiv)o(ed)h(and)f(forw)o(arded)g(to)f(PG-PREV;)h (PR)f(is)h(no)o(w)g(functional.)-39 2065 y(5.)20 b Fc(PR-COMPLETE)14 b Fm(\(all)f(PGs\))14 2115 y(A)o(CCEPT)h(is)g(A)o(CK-ed)g(b)o(y)g(PG-PREV)g (\(except)h(for)f(ORIGINA)m(TOR\).)-39 2196 y(6.)20 b Fc(PR-D)o(YING)12 b Fm(\(all)h(PGs\))64 2276 y Fd(\017)20 b Fm(TEARDO)o(WN)13 b(is)h(generated)h(or)f(receiv)o(ed)i(from)c(some)h(PG)g(in)h(the)g(path.)64 2340 y Fd(\017)20 b Fm(REFUSE)14 b(is)g(generated)h(or)f(receiv)o(ed)h(from)d (some)h(PG)h(\(via)f(PG-NEXT\))h(in)g(the)g(path.)64 2404 y Fd(\017)20 b Fm(CMTP)14 b(TIMEOUT)h(on)e(A)o(CCEPT)i(to)e(PG-PREV.)64 2468 y Fd(\017)20 b Fm(TIMEOUT)15 b(\(not)f(CMTP\))g(on)f(receiving)i(A)o (CCEPT)f(from)e(upstream.)64 2532 y Fd(\017)20 b Fm(ERR)o(OR)13 b(on)h(pro)q(cessing)h(SETUP)m(.)-39 2612 y(7.)20 b Fc(PR-FREE)14 b Fm(\(all)e(PGs\))14 2662 y(PR)h(en)o(try)i(is)f(freed.)2028 2770 y(65)p eop %%Page: 66 6 bop -90 -108 a Fc(5.3.1.2)48 b(Proto)q(col)14 b(Description)o(:)19 b(ORIGINA)l(TOR)d(PG)-90 -14 y Fm(A)i(PR)f(is)h(\014rst)g Fl(c)n(onc)n(eive)n (d)g Fm(at)g(the)g(ORIGINA)m(TOR)f(PG)g(when)i(the)f(IDPR)f(encapsulation)h (mo)q(dule)e(receiv)o(es)j(a)f(pac)o(k)o(et)g(and)f(fails)-90 36 y(to)g(lo)q(cate)g(a)g(corresp)q(onding)h(HOST-T)m(ABLE)f(en)o(try)h(for)f (it.)27 b(It)17 b(then)h(comp)q(oses)f(a)g(SETUP-REQUEST)h(pac)o(k)o(et)f (whic)o(h)g(consists)-90 86 y(of)e(a)h(short)g(pream)o(ble)f(follo)o(w)o(ed)f (b)o(y)i(the)g(IP)g(pac)o(k)o(et)g(itself.)24 b(Once)17 b(SETUP)f(receiv)o (es)i(this)d(request)j(it)d(\014rst)i(c)o(hec)o(ks)g(to)f(see)h(whether)-90 135 y(there)e(is)f(an)g(existing)g(PR)g(whic)o(h)g(can)g(b)q(e)h(used)g(for)f (the)h(new)f(host-pair.)19 b(If)14 b(suc)o(h)g(a)g(PR)g(exists,)h(SETUP)f (\014lls)g(in)g(the)g Fl(pi)g Fm(\014eld)h(in)e(the)-90 185 y(SETUP-REQUEST)i(and)f(installs)f(a)g(new)i(HOST)f(T)m(ABLE)g(en)o(try)h (via)e(a)g(system)h(call)f(\(IDPR-T)m(ABLE:)g(Put-host-en)o(try\).)-28 253 y(If)i(no)f(existing)h(PR)g(can)g(b)q(e)g(used,)h(the)f(ORIGINA)m(TOR)f (generates)j(a)d(R)o(OUTE-REQUEST)i(to)e(Route)h(Syn)o(thesis,)g(RSYNTH.)-90 303 y(It)f(is)f(assumed)g(\(for)h(the)g(time)e(b)q(eing\))i(that)f(RSYNTH)h (is)f(alw)o(a)o(ys)f(co-lo)q(cated)i(with)g(the)g(SETUP)g(comp)q(onen)o(t,)e (i.e.,)g(it)i(is)f(presen)o(t)i(at)-90 353 y(eac)o(h)h(PG.)g(Therefore,)h (there)g(is)f(\(as)g(of)f(y)o(et\))h(no)g(timeout)f(on)g(R)o(OUTE-REQUESTs.) 25 b(The)16 b(reply)g(from)f(RSYNTH)g(comes)h(in)f(the)-90 402 y(form)d(of)h(a)g(R)o(OUTE-RESPONSE)i(pac)o(k)o(et,)e(whose)h(format)e (is)i(iden)o(tical)f(to)g(that)h(of)f(R)o(OUTE-REQUEST.)g(R)o(OUTE-RESPONSE) -90 452 y(is)f(ph)o(ysically)e(trailed)i(b)o(y)f(the)i(PR)e(itself.)17 b(It)12 b(is)g(comp)q(osed)f(of)g(t)o(w)o(o)h(or)f(more)g(segmen)o(ts)h (where)h(eac)o(h)f(segmen)o(t)f(corresp)q(onds)j(to)e(exactly)-90 502 y(one)i(AD)g(hop.)-28 570 y(A)19 b(sp)q(ecial)g(case)g(of)f(R)o (OUTE-RESPONSE)h(is)f(R)o(OUTE-RESPONSE-NONE)i(whic)o(h)f(carries)g(a)f(v)n (alue)g(of)g(zero)h(in)f(the)h Fl(hops)-90 620 y Fm(\014eld.)-2 604 y Fi(3)35 620 y Fm(In)14 b(this)g(case,)g(an)g(ICMP)g(HOST-UNREA)o (CHABLE)h(pac)o(k)o(et)f(is)g(generated)h(to)f(the)g(source)h(host.)-28 687 y(If)h(RSYNTH)h(computes)f(a)h(v)n(alid)e(route,)i(the)g(ORIGINA)m(TOR)f (pro)q(ceeds)i(to)f(comp)q(ose)f(a)g(SETUP)h(pac)o(k)o(et.)27 b(The)17 b(format)d(of)i(a)-90 737 y(SETUP)e(pac)o(k)o(et)h(is)e(v)o(ery)i (similar)c(to)j(that)g(of)f(R)o(OUTE-RESPONSE.)h(It)g(also)f(consists)i(of)e (a)h(pre-am)o(ble)e(follo)o(w)o(ed)h(b)o(y)g(the)i(sequence)-90 787 y(of)e(route)i(segmen)o(ts.)j(The)c(sequence)i(of)d(segmen)o(ts)h(is)g (copied)g(directly)g(from)f(R)o(OUTE-RESPONSE.)-28 855 y(After)k(a)g(SETUP)g (has)g(b)q(een)g(forw)o(arded,)g(the)g(ORIGINA)m(TOR)f(exp)q(ects)j(to)d (receiv)o(e)i(an)e(A)o(CCEPT)h(from)e(the)i(T)m(AR)o(GET)f(PG,)-90 904 y(or)g(a)f(REFUSE)h(from)e(an)o(y)h(of)g(the)h(in)o(terv)o(ening)f(PGs.) 24 b(If)15 b(neither)h(ev)o(en)o(t)h(tak)o(es)f(place,)g(ORIGINA)m(TOR)e (promptly)g(times)h(out)g(and)-90 954 y(attempts)f(to)g(set)h(up)f(the)g (route)h(again,)e(ho)o(w)o(ev)o(er,)h(not)f(b)q(efore)i(selecting)g(a)f(new)g (path)g(id.)k(This)c(is)g(done)h(to)f(prev)o(en)o(t)h(an)o(y)e(confusion)-90 1004 y(with)h(regard)g(to)g(stale)g(state)h(in)e(TRANSIT)h(PGs.)k(If)c(the)g (ORIGINA)m(TOR)f(times)g(out)h Fl(n)g Fm(\(de\014ned)i(lo)q(cally\))c(times,) h(it)g(giv)o(es)h(up)g(and)-90 1054 y(sends)h(an)f(ICMP)g(HOST-UNREA)o (CHABLE)h(pac)o(k)o(et)f(to)g(the)g(source)i(host.)-28 1121 y(If)10 b(a)h(REFUSE)g(is)f(receiv)o(ed,)i(the)f(ORIGINA)m(TOR)f(logs)g(it)g (and,)h(once)g(again,)f(sends)i(an)e(ICMP)h(HOST-UNREA)o(CHABLE)h(pac)o(k)o (et)-90 1171 y(to)i(the)g(source.)20 b(This)13 b(is)h(clearly)g(less)g(than)g (optimal;)d(in)j(the)g(future,)g(p)q(erhaps)h(SETUP)g(\(dep)q(ending)f(on)g (the)g(reason)h(for)f(REFUSE\))-90 1221 y(should)g(ask)g(RSYNTH)f(for)h (another)g(route.)-28 1289 y(The)h(arriv)n(al)d(of)i(an)g(A)o(CCEPT)g (signals)f(that)h(the)h(PR)f(is)g(fully)e(op)q(erational.)18 b(A)o(t)c(this)g(time)f(the)i(ORIGINA)m(TOR)e(installs)g(a)h(new)-90 1339 y(PR)d(en)o(try)g(in)g(the)g(k)o(ernel)h(PR-T)m(ABLE)f(and)g(also)f (installs)g(the)i(corresp)q(onding)g(HOST-T)m(ABLE)f(en)o(try)h(for)e(the)i (host-pair)f(that)g(caused)-90 1388 y(the)j(setup)h(originally)m(.)-28 1456 y(Figure)f(5.5)f(illustrates)h(the)h(ORIGINA)m(TOR)d(PG)i(state)h (diagram)c(as)j(discussed)i(ab)q(o)o(v)o(e.)-90 1586 y Fc(5.3.1.3)48 b(Proto)q(col)14 b(Description)o(:)19 b(TRANSIT)d(and)f(T)l(AR)o(GET)h(PGs) -90 1681 y Fm(F)m(rom)c(the)i(p)q(oin)o(t)e(of)h(view)g(of)g(a)g(TRANSIT)g (PG,)g(a)g(PR)g(is)g Fl(b)n(orn)h Fm(when)f(a)h(v)n(alid)d(SETUP)j(pac)o(k)o (et)g(is)f(receiv)o(ed)i(from)d(a)h(recognized)h(PG)-90 1731 y(neigh)o(b)q(or.)k(A)c(SETUP)g(pac)o(k)o(et)h(is)e(considered)j(v)n(alid)c (only)h(when)i(the)f(follo)o(wing)d(conditions)j(are)g(satis\014ed:)1643 1716 y Fi(4)-39 1831 y Fm(1.)20 b(The)14 b(route)h(m)o(ust)d(con)o(tain)i(a)f (segmen)o(t)h(corresp)q(onding)h(to)f(the)g(lo)q(cal)f(AD.)-39 1914 y(2.)20 b(The)14 b(lo)q(cal)f(AD)h(m)o(ust)f(app)q(ear)h(only)f(once)i (in)e(the)i(route)f(\(i.e.,)f(no)g(AD)h(lo)q(ops\).)-39 1997 y(3.)20 b(The)14 b(PRid)f(m)o(ust)g(not)h(b)q(e)g(curren)o(tly)h(in)f(use.) -39 2080 y(4.)20 b(There)15 b(m)o(ust)e(b)q(e)h(enough)g(space)h(in)f(the)g (PR-T)m(ABLE)g(for)f(a)h(new)g(en)o(try)m(.)-39 2163 y(5.)20 b(The)14 b(previous)g(V)o(G)g(m)o(ust)f(b)q(e)h(suc)o(h)h(that)f(there)h(is)f (at)f(least)h(one)h(PG)e(neigh)o(b)q(or)h(that)g(b)q(elongs)g(to)g(it.)-39 2246 y(6.)20 b(The)c(source)h(address)g(in)e(the)h(IP)g(header)h(of)e(the)h (SETUP)g(pac)o(k)o(et)h(m)o(ust)d(matc)o(h)h(one)h(PG)f(neigh)o(b)q(or)h (that)f(is)h(a)f(mem)o(b)q(er)f(of)h(a)14 2296 y(previous)f(V)o(G.)-39 2379 y(7.)20 b(The)d(next)g(V)o(G)g(m)o(ust)f(b)q(e)h(suc)o(h)h(that)f (either:)24 b(i\))17 b(this)g(PG)g(is)f(a)h(mem)o(b)q(er)e(of)h(it,)h(or)g (ii\))f(there)i(is)f(a)f(PG)h(neigh)o(b)q(or)g(whic)o(h)g(is)f(a)14 2429 y(mem)o(b)q(er.)g(In)e(the)h(former)d(case,)j(there)g(m)o(ust)e(b)q(e)h (a)g(PG)g(neigh)o(b)q(or)f(whic)o(h)h(is)g(also)f(a)h(mem)o(b)q(er)e(of)h (the)i(said)e(V)o(G.)-39 2512 y(8.)20 b(PTs)14 b(referenced)j(in)c(the)i(lo)q (cal)e(AD)g(segmen)o(t)h(m)o(ust)f(agree)h(with)g(the)g(c)o(haracteristics)i (of)d(the)i(route.)p -90 2592 864 2 v -44 2619 a Fh(3)-26 2630 y Fg(Actually)m(,)9 b(a)j(route)e(of)h(length)f(one)h(is)g(also)g(treated)f (as)h(a)g(negativ)o(e)e(resp)q(onse)h(from)g(RSYNTH.)-44 2658 y Fh(4)-26 2670 y Fg(Timeliness,)f(in)o(tegrit)o(y)g(and)i(authen)o(ticit)o (y)d(are)j(v)o(eri\014ed)e(b)o(y)i(CMTP)m(.)2028 2770 y Fm(66)p eop %%Page: 67 7 bop 240 -150 a 21313290 21313290 0 0 40258437 52099153 startTexFig 240 -150 a %%BeginDocument: originator.ps /FMversion (2.0) def /FrameDict 170 dict def systemdict /errordict known not { /errordict 10 dict def errordict /rangecheck { stop } put } if FrameDict /tmprangecheck errordict /rangecheck get put errordict /rangecheck {FrameDict /bug true put} put FrameDict /bug false put mark currentfile 5 string readline 00 0000000000 cleartomark errordict /rangecheck FrameDict /tmprangecheck get put FrameDict /bug get { /readline { /gstring exch def /gfile exch def /gindex 0 def { gfile read pop dup 10 eq {exit} if dup 13 eq {exit} if gstring exch gindex exch put /gindex gindex 1 add def } loop pop gstring 0 gindex getinterval true } def } if /FMVERSION { FMversion ne { /Times-Roman findfont 18 scalefont setfont 100 100 moveto (FrameMaker version does not match postscript_prolog!) dup = show showpage } if } def /FMLOCAL { FrameDict begin 0 def end } def /gstring FMLOCAL /gfile FMLOCAL /gindex FMLOCAL /orgxfer FMLOCAL /orgproc FMLOCAL /organgle FMLOCAL /orgfreq FMLOCAL FrameDict /graymode true put /yscale FMLOCAL /xscale FMLOCAL /PrintInColor systemdict /colorimage known def PrintInColor { /HUE 0 def /SAT 0 def /BRIGHT 0 def % array of arrays Hue and Sat values for the separations [HUE BRIGHT] /Colors [[0 0 ] % black [0 0 ] % white [0.00 1.0] % red [0.37 1.0] % green [0.60 1.0] % blue [0.50 1.0] % cyan [0.83 1.0] % magenta [0.16 1.0] % comment ] def /BEGINBITMAPCOLOR { BITMAPCOLOR } def /BEGINBITMAPCOLORc { BITMAPCOLORc } def /K { Colors exch get dup 0 get /HUE exch store 1 get /BRIGHT exch store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } def /mysetgray { /SAT exch 1.0 exch sub store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } bind def } { /BEGINBITMAPCOLOR { BITMAPGRAY } def /BEGINBITMAPCOLORc { BITMAPGRAYc } def /mysetgray { setgray } bind def /K { pop } def } ifelse /max {2 copy lt {exch} if pop} bind def /min {2 copy gt {exch} if pop} bind def /mtx matrix defaultmatrix def /setmanualfeed { statusdict /manualfeed true put } def /FMDOCUMENT { array /FMfonts exch def /#copies exch def 0 ne dup {setmanualfeed} if FrameDict begin /manualfeed exch def /paperheight exch def /paperwidth exch def setpapername manualfeed {true} {papersize} ifelse {manualpapersize} {false} ifelse {desperatepapersize} if /yscale exch def /xscale exch def currenttransfer cvlit /orgxfer exch def currentscreen cvlit /orgproc exch def /organgle exch def /orgfreq exch def end } def /pagesave FMLOCAL /orgmatrix FMLOCAL /landscape FMLOCAL /FMBEGINPAGE { FrameDict begin /pagesave save def 3.86 setmiterlimit /landscape exch 0 ne store landscape { 90 rotate 0 exch neg translate pop } { pop pop } ifelse xscale yscale scale /orgmatrix matrix def gsave } def /FMENDPAGE { grestore pagesave restore end showpage } def /fontname FMLOCAL /fontscale FMLOCAL /fontnum FMLOCAL /fontdict FMLOCAL /FMDEFINEFONT { FrameDict begin /fontname exch def /fontscale exch def /fontnum exch def /fontdict fontname findfont fontscale scalefont def fontdict /Encoding get StandardEncoding eq { fontdict DiacriticEncode /fontdict exch def } { fontdict NonDiacriticEncode /fontdict exch def } ifelse FMfonts fontnum fontnum fontdict definefont put end } def /FMNORMALIZEGRAPHICS { newpath 0.0 0.0 moveto 1 setlinewidth 0 setlinecap 0 mysetgray } bind def /FMBEGINEPSF { end /FMEPSF save def /showpage {} def FMNORMALIZEGRAPHICS [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall fx fy translate rotate fw urx llx sub div fh ury lly sub div scale llx neg lly neg translate } bind def /FMENDEPSF { FMEPSF restore FrameDict begin } bind def FrameDict begin /pagedimen { paperheight sub abs 16 lt exch paperwidth sub abs 16 lt and {/papername exch def} {pop} ifelse } def /inch {72 mul} def /setpapername { /papersizedict 14 dict def papersizedict begin /papername /unknown def /Letter 8.5 inch 11.0 inch pagedimen /LetterSmall 7.68 inch 10.16 inch pagedimen /Tabloid 11.0 inch 17.0 inch pagedimen /Ledger 17.0 inch 11.0 inch pagedimen /Legal 8.5 inch 14.0 inch pagedimen /Statement 5.5 inch 8.5 inch pagedimen /Executive 7.5 inch 10.0 inch pagedimen /A3 11.69 inch 16.5 inch pagedimen /A4 8.26 inch 11.69 inch pagedimen /A4Small 7.47 inch 10.85 inch pagedimen /B4 10.125 inch 14.33 inch pagedimen /B5 7.16 inch 10.125 inch pagedimen end } def /papersize { papersizedict begin /Letter {lettertray} def /LetterSmall {lettertray lettersmall} def /Tabloid {11x17tray} def /Ledger {ledgertray} def /Legal {legaltray} def /Statement {statementtray} def /Executive {executivetray} def /A3 {a3tray} def /A4 {a4tray} def /A4Small {a4tray a4small} def /B4 {b4tray} def /B5 {b5tray} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end statusdict begin stopped end } def /manualpapersize { papersizedict begin /Letter {letter} def /LetterSmall {lettersmall} def /Tabloid {11x17} def /Ledger {ledger} def /Legal {legal} def /Statement {statement} def /Executive {executive} def /A3 {a3} def /A4 {a4} def /A4Small {a4small} def /B4 {b4} def /B5 {b5} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end stopped } def /desperatepapersize { statusdict /setpageparams known { paperwidth paperheight 0 1 statusdict begin {setpageparams} stopped pop end } if } def /savematrix { orgmatrix currentmatrix pop } bind def /restorematrix { orgmatrix setmatrix } bind def /dmatrix matrix def /dpi 72 0 dmatrix defaultmatrix dtransform dup mul exch dup mul add sqrt def /freq dpi 18.75 div 8 div round dup 0 eq { pop 1 } if 8 mul dpi exch div def /sangle 1 0 dmatrix defaultmatrix dtransform exch atan def /DiacriticEncoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def /basefontdict FMLOCAL /newfontdict FMLOCAL /DiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {dup /Encoding eq {exch pop DiacriticEncoding} {exch} ifelse newfontdict 3 1 roll put } {pop pop} ifelse } forall newfontdict } bind def /NonDiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {exch newfontdict 3 1 roll put} {pop pop} ifelse } forall newfontdict } bind def /bwidth FMLOCAL /bpside FMLOCAL /bstring FMLOCAL /onbits FMLOCAL /offbits FMLOCAL /xindex FMLOCAL /yindex FMLOCAL /x FMLOCAL /y FMLOCAL /setpattern { /bwidth exch def /bpside exch def /bstring exch def /onbits 0 def /offbits 0 def freq sangle landscape {90 add} if {/y exch def /x exch def /xindex x 1 add 2 div bpside mul cvi def /yindex y 1 add 2 div bpside mul cvi def bstring yindex bwidth mul xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne {/onbits onbits 1 add def 1} {/offbits offbits 1 add def 0} ifelse } setscreen {} settransfer offbits offbits onbits add div mysetgray /graymode false store } bind def /grayness { mysetgray graymode not { /graymode true store orgxfer cvx settransfer orgfreq organgle orgproc cvx setscreen } if } bind def /normalize { transform round exch round exch itransform } bind def /dnormalize { dtransform round exch round exch idtransform } bind def /lnormalize { 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def /H { lnormalize setlinewidth } bind def /Z { setlinecap } bind def /X { fillprocs exch get exec } bind def /V { gsave eofill grestore } bind def /N { stroke } bind def /M {newpath moveto} bind def /E {lineto} bind def /D {curveto} bind def /O {closepath} bind def /n FMLOCAL /L { /n exch def newpath normalize moveto 2 1 n {pop normalize lineto} for } bind def /Y { L closepath } bind def /x1 FMLOCAL /x2 FMLOCAL /y1 FMLOCAL /y2 FMLOCAL /rad FMLOCAL /R { /y2 exch def /x2 exch def /y1 exch def /x1 exch def x1 y1 x2 y1 x2 y2 x1 y2 4 Y } bind def /RR { /rad exch def normalize /y2 exch def /x2 exch def normalize /y1 exch def /x1 exch def newpath x1 y1 rad add moveto x1 y2 x2 y2 rad arcto x2 y2 x2 y1 rad arcto x2 y1 x1 y1 rad arcto x1 y1 x1 y2 rad arcto closepath 16 {pop} repeat } bind def /C { grestore gsave R clip } bind def /U { grestore gsave } bind def /F { FMfonts exch get setfont } bind def /T { moveto show } bind def /RF { rotate 0 ne { -1 1 scale } if } bind def /TF { gsave moveto RF show grestore } bind def /P { moveto 0 32 3 2 roll widthshow } bind def /PF { gsave moveto RF 0 32 3 2 roll widthshow grestore } bind def /S { moveto 0 exch ashow } bind def /SF { gsave moveto RF 0 exch ashow grestore } bind def /B { moveto 0 32 4 2 roll 0 exch awidthshow } bind def /BF { gsave moveto RF 0 32 4 2 roll 0 exch awidthshow grestore } bind def /x FMLOCAL /y FMLOCAL /dx FMLOCAL /dy FMLOCAL /dl FMLOCAL /t FMLOCAL /t2 FMLOCAL /Cos FMLOCAL /Sin FMLOCAL /r FMLOCAL /W { dnormalize /dy exch def /dx exch def normalize /y exch def /x exch def /dl dx dx mul dy dy mul add sqrt def dl 0.0 gt { /t currentlinewidth def savematrix /Cos dx dl div def /Sin dy dl div def /r [Cos Sin Sin neg Cos 0.0 0.0] def /t2 t 2.5 mul 3.5 max def newpath x y translate r concat 0.0 0.0 moveto dl t 2.7 mul sub 0.0 rlineto stroke restorematrix x dx add y dy add translate r concat t 0.67 mul setlinewidth t 1.61 mul neg 0.0 translate 0.0 0.0 moveto t2 1.7 mul neg t2 2.0 div moveto 0.0 0.0 lineto t2 1.7 mul neg t2 2.0 div neg lineto stroke t setlinewidth restorematrix } if } bind def /G { gsave newpath normalize translate 0.0 0.0 moveto dnormalize scale 0.0 0.0 1.0 5 3 roll arc closepath fill grestore } bind def /A { gsave savematrix newpath 2 index 2 div add exch 3 index 2 div sub exch normalize 2 index 2 div sub exch 3 index 2 div add exch translate scale 0.0 0.0 1.0 5 3 roll arc restorematrix stroke grestore } bind def /x FMLOCAL /y FMLOCAL /w FMLOCAL /h FMLOCAL /xx FMLOCAL /yy FMLOCAL /ww FMLOCAL /hh FMLOCAL /FMsaveobject FMLOCAL /FMoptop FMLOCAL /FMdicttop FMLOCAL /BEGINPRINTCODE { /FMdicttop countdictstack 1 add def /FMoptop count 4 sub def /FMsaveobject save def userdict begin /showpage {} def FMNORMALIZEGRAPHICS 3 index neg 3 index neg translate } bind def /ENDPRINTCODE { count -1 FMoptop {pop pop} for countdictstack -1 FMdicttop {pop end} for FMsaveobject restore } bind def /gn { 0 { 46 mul cf read pop 32 sub dup 46 lt {exit} if 46 sub add } loop add } bind def /str FMLOCAL /cfs { /str sl string def 0 1 sl 1 sub {str exch val put} for str def } bind def /ic [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} ] def /sl FMLOCAL /val FMLOCAL /ws FMLOCAL /im FMLOCAL /bs FMLOCAL /cs FMLOCAL /len FMLOCAL /pos FMLOCAL /ms { /sl exch def /val 255 def /ws cfs /im cfs /val 0 def /bs cfs /cs cfs } bind def 400 ms /ip { is 0 cf cs readline pop { ic exch get exec add } forall pop } bind def /wh { /len exch def /pos exch def ws 0 len getinterval im pos len getinterval copy pop pos len } bind def /bl { /len exch def /pos exch def bs 0 len getinterval im pos len getinterval copy pop pos len } bind def /s1 1 string def /fl { /len exch def /pos exch def /val cf s1 readhexstring pop 0 get def pos 1 pos len add 1 sub {im exch val put} for pos len } bind def /hx { 3 copy getinterval cf exch readhexstring pop pop } bind def /h FMLOCAL /w FMLOCAL /d FMLOCAL /lb FMLOCAL /bitmapsave FMLOCAL /is FMLOCAL /cf FMLOCAL /wbytes { dup 8 eq { pop } { 1 eq { 7 add 8 idiv } { 3 add 4 idiv } ifelse } ifelse } bind def /BEGINBITMAPBWc { 1 {} COMMONBITMAPc } bind def /BEGINBITMAPGRAYc { 8 {} COMMONBITMAPc } bind def /BEGINBITMAP2BITc { 2 {} COMMONBITMAPc } bind def /COMMONBITMAPc { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def r /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} image bitmapsave restore grestore } bind def /BEGINBITMAPBW { 1 {} COMMONBITMAP } bind def /BEGINBITMAPGRAY { 8 {} COMMONBITMAP } bind def /BEGINBITMAP2BIT { 2 {} COMMONBITMAP } bind def /COMMONBITMAP { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def r /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } image bitmapsave restore grestore } bind def /Fmcc { /proc2 exch cvlit def /proc1 exch cvlit def /newproc proc1 length proc2 length add array def newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval newproc cvx } bind def /colorsetup { currentcolortransfer /gryt exch def /blut exch def /grnt exch def /redt exch def /ngrayt 256 array def /nredt 256 array def /nbluet 256 array def /ngreent 256 array def 0 1 255 { /indx exch def /cynu 1 red indx get 255 div sub def /magu 1 green indx get 255 div sub def /yelu 1 blue indx get 255 div sub def /k cynu magu min yelu min def /u k currentundercolorremoval exec def nredt indx 1 0 cynu u sub max sub redt exec put ngreent indx 1 0 magu u sub max sub grnt exec put nbluet indx 1 0 yelu u sub max sub blut exec put ngrayt indx 1 k currentblackgeneration exec sub gryt exec put } for {255 mul cvi nredt exch get} {255 mul cvi ngreent exch get} {255 mul cvi nbluet exch get} {255 mul cvi ngrayt exch get} setcolortransfer {pop 0} setundercolorremoval {} setblackgeneration } bind def /fakecolorsetup { /tran 256 string def 0 1 255 { /ind exch def tran ind red ind get 77 mul green ind get 151 mul blue ind get 28 mul add add 256 idiv put } for currenttransfer { 255 mul cvi tran exch get 255.0 div } exch Fmcc settransfer } bind def /BITMAPCOLOR { /d 8 def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def colorsetup /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPCOLORc { /d 8 def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def colorsetup /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPGRAY { 8 {fakecolorsetup} COMMONBITMAP } bind def /BITMAPGRAYc { 8 {fakecolorsetup} COMMONBITMAPc } bind def /ENDBITMAP { } bind def end (2.0) FMVERSION 1 1 2 2 0 1 2 FMDOCUMENT /fillprocs 32 array def fillprocs 0 { 0.000000 grayness } put fillprocs 1 { 0.100000 grayness } put fillprocs 2 { 0.300000 grayness } put fillprocs 3 { 0.500000 grayness } put fillprocs 4 { 0.700000 grayness } put fillprocs 5 { 0.900000 grayness } put fillprocs 6 { 0.970000 grayness } put fillprocs 7 { 1.000000 grayness } put fillprocs 8 {<0f1e3c78f0e1c387> 8 1 setpattern } put fillprocs 9 {<0f87c3e1f0783c1e> 8 1 setpattern } put fillprocs 10 {<cccccccccccccccc> 8 1 setpattern } put fillprocs 11 {<ffff0000ffff0000> 8 1 setpattern } put fillprocs 12 {<8142241818244281> 8 1 setpattern } put fillprocs 13 {<03060c183060c081> 8 1 setpattern } put fillprocs 14 {<8040201008040201> 8 1 setpattern } put fillprocs 15 {} put fillprocs 16 { 1.000000 grayness } put fillprocs 17 { 0.900000 grayness } put fillprocs 18 { 0.700000 grayness } put fillprocs 19 { 0.500000 grayness } put fillprocs 20 { 0.300000 grayness } put fillprocs 21 { 0.100000 grayness } put fillprocs 22 { 0.030000 grayness } put fillprocs 23 { 0.000000 grayness } put fillprocs 24 {<f0e1c3870f1e3c78> 8 1 setpattern } put fillprocs 25 {<f0783c1e0f87c3e1> 8 1 setpattern } put fillprocs 26 {<3333333333333333> 8 1 setpattern } put fillprocs 27 {<0000ffff0000ffff> 8 1 setpattern } put fillprocs 28 {<7ebddbe7e7dbbd7e> 8 1 setpattern } put fillprocs 29 {<fcf9f3e7cf9f3f7e> 8 1 setpattern } put fillprocs 30 {<7fbfdfeff7fbfdfe> 8 1 setpattern } put fillprocs 31 {} put 0 18 /Times-Roman FMDEFINEFONT 1 12 /Times-Roman FMDEFINEFONT 612 792 0 FMBEGINPAGE 0 0 612 792 C 0 0 612 792 R 7 X 0 K V 72 746 540 756 R V 72 32.67 540 42.67 R V 23 81 558 786 R V 3 H 2 Z 9 X N 6 X 90 450 78.33 32.15 444.7 642.19 G 0 X 90 450 78.33 32.15 444.7 642.19 A 12 X 90 450 71.54 36.99 453.54 219.92 G 0 X 90 450 71.54 36.99 453.54 219.92 A 14 X 90 450 81.9 32.15 155.13 502.19 G 0 X 90 450 81.9 32.15 155.13 502.19 A 5 X 90 450 80.48 30.39 118.89 198.34 G 0 X 90 450 80.48 30.39 118.89 198.34 A 7 X 90 450 76.72 31.6 117.95 692.77 G 0 X 90 450 76.72 31.6 117.95 692.77 A 4 X 90 450 72.01 30.83 405.06 460.36 G 0 X 90 450 72.01 30.83 405.06 460.36 A 0 F (PR_FREE) 80.01 686.51 T (PR_EMBR) 374 637.7 T (YONIC) 454.99 637.7 T (PR_INITIAL) 358.52 457.15 T (PR_W) 399.77 215.07 T (AITING) 445.75 215.07 T (PR_COMPLETE) 59.71 193.69 T (PR_DYING) 113.07 499.3 T 47.76 661.91 51.9 676.33 56.03 661.92 51.9 661.91 4 Y V 52.05 214.44 51.9 662.15 2 L 1 H N 67.82 159.74 74.98 172.89 75.88 157.94 71.85 158.84 4 Y V 426.56 185.66 M 449.77 105.43 449.77 105.43 254.92 105.87 D 74.9 106.27 61.19 106.3 71.91 158.8 D 0 Z N 455.62 691.82 454.67 676.86 447.54 690.05 451.58 690.94 4 Y V 93.95 722.8 M 129.76 761.59 129.76 761.59 283.27 761.59 D 427.75 761.59 436.25 761.59 451.68 690.95 D N 434.68 267.3 430.41 252.92 426.41 267.37 430.54 267.34 4 Y V 432 432 430.55 267.09 2 L 2 Z N 1 F (TEARDOWN_RQST from KERNEL) 0 -270 114.4 232.57 TF (ROUTE_RQST to RSYNTH) 186.2 745.05 T 115.51 458.83 119.69 473.23 123.78 458.8 119.64 458.81 4 Y V 118.89 228.73 119.65 459.04 2 L N (ACK from PG_NEXT) 122.31 598.9 T (ACK from PG_NEXT) 0 -270 423.89 288.87 TF (TIMEOUT on ACCEPT) 221.26 254.41 T 146.15 455.22 148.13 470.05 154.32 456.43 150.24 455.83 4 Y V 387.36 205.87 M 364.38 246.34 364.38 246.34 272.74 246.34 D 183.1 246.34 181.15 246.34 150.24 455.78 D 0 Z N (TEARDOWN to PG_NEXT) 206.73 231.8 T 190.17 665.55 178.19 674.52 193.1 673.27 191.64 669.41 4 Y V 405.59 248.96 M 263.42 314.42 263.42 314.42 263.42 478.45 D 263.42 633.35 263.42 641.98 191.65 669.43 D N 208 690.37 193.54 694.35 207.91 698.64 207.96 694.5 4 Y V 393.07 664.93 M 385.19 695.46 384.98 696.25 208.03 694.49 D N (Delete PR) 0 -270 63.94 311.33 TF (Delete PR) 0 -270 280.33 369.16 TF (Delete PR) 122.01 579.4 T (Delete PR) 221.15 683.49 T (Install PR in kernel) 169.25 96.29 T (TEARDOWN to PG_NEXT) 0 -270 132.4 234 TF (, delete PR \050kernel\051) 0 -270 132.4 370.35 TF (T) 305.75 523.44 T (imeout or REFUSE from PG_NEXT) 312.66 523.44 T 201.3 674.15 189.99 684 204.8 681.64 203.05 677.9 4 Y V 338.75 474.84 M 276.79 518.02 276.79 518.02 413.17 517.59 D 547.88 517.16 549.54 517.15 203.13 677.9 D N (Delete PR) 334.93 505.82 T (ROUTE_RESPONSE from RSYNTH) 0 -270 525.14 414.61 TF (SETUP to PG_NEXT) 0 -270 543.97 418.14 TF 456.56 425.32 458.6 440.13 464.72 426.49 460.64 425.9 4 Y V 480.15 670.73 M 482.24 754.95 482.24 754.95 508.37 750.26 D 534.49 745.57 534.49 745.57 531.65 539.99 D 528.81 334.39 528.81 334.39 499.85 344.73 D 472.6 354.45 470.98 355.02 460.67 425.87 D N (\050setup & kernel\051) 0 -270 62.88 363.12 TF (SETUP_RQST from KERNEL) 187.14 764.16 T 172.04 655.14 162.6 666.79 176.79 661.91 174.41 658.52 4 Y V 89.94 522.76 M 55.35 591.95 55.35 591.95 162.34 592.39 D 265.21 592.81 269.17 592.83 174.45 658.58 D N (T) 67 598.62 T (imeout or) 73.91 598.62 T (TEARDOWN from any PG in PR) 0 -270 45 311.45 TF (ACCEPT from tar) 171.14 113.02 T (get PG \050via PG_NEXT\051) 258.87 113.02 T (REFUSE from upstream \050via PG_NEXT\051) 0 -270 255.45 369.12 TF (ROUTE_REFUSE or T) 219 702 T (imeout ) 332.52 702 T FMENDPAGE %%EndDocument 240 -150 a endTexFig 613 1203 a Fm(Figure)14 b(5.5:)j(ORIGINA)m(TOR)c(state)h(diagram)-39 1331 y(9.)20 b(Other)c(PR)f(usage)h(conditions)f(m)o(ust)f(b)q(e)i (acceptable.)23 b(This)15 b(includes:)22 b(UCI\(s\),)16 b(T)m(oS,)e(authen)o (tication)h(t)o(yp)q(e)g(and)h(expiration)14 1381 y(conditions.)h(Only)d (TRANSIT)g(PGs)g(that)g(are)g(used)h(for)e(en)o(tering)i(an)e(AD)h(need)h(to) f(b)q(e)g(concerned)i(with)e(this)g(c)o(hec)o(k.)-90 1477 y(If)f(a)g(SETUP)h (pac)o(k)o(et)f(fails)f(to)h(meet)g(an)o(y)g(of)f(the)i(ab)q(o)o(v)o(e)f (conditions,)f(a)h(REFUSE)h(with)f(the)h(appropriate)f(reason)h(co)q(de)g(is) f(generated)-90 1526 y(to)h(the)g(PG-PREV.)f(After)i(the)f(REFUSE)h(is)e(ac)o (k-ed)i(\(or)f(times)e(out\),)i(the)g(PR)g(en)o(try)h(is)e(freed.)-28 1594 y(If)k(the)h(SETUP)f(pac)o(k)o(et)h(is)f(v)n(alid,)f(a)h(new)g(PR)g(en)o (try)h(is)f(created.)29 b(If)17 b(the)h(last)e(hop)h(is)g(reac)o(hed)i (\(i.e.,)d(this)i(PG)e(is)h(T)m(AR)o(GET\),)-90 1644 y(A)o(CCEPT)12 b(is)g(sen)o(t)h(bac)o(k)g(to)e(the)i(ORIGINA)m(TOR)e(and)h(the)h(PR)f(is)g (considered)h(op)q(erational.)k(Otherwise,)c(the)g(SETUP)g(is)f(forw)o(arded) -90 1694 y(to)k(the)g(PG-NEXT.)f(If)h(PG-NEXT)f(fails)g(to)h(ac)o(kno)o (wledge)f(the)i(SETUP)f(pac)o(k)o(et)g(\(timeout\),)f(TEARDO)o(WN)g(is)g(sen) o(t)i(bac)o(k)f(to)f(the)-90 1743 y(ORIGINA)m(TOR)e(and)h(the)g(PR)g(is)f (destro)o(y)o(ed.)-28 1811 y(After)j(PG-NEXT)g(ac)o(ks)f(the)h(SETUP)g(pac)o (k)o(et,)g(the)g(PR)f(is)g(put)h(in)o(to)e(a)h Fl(dormant)h Fm(state)g(un)o(til)e(the)i(A)o(CCEPT)g(passes)h(b)o(y)e(on)g(its)-90 1861 y(w)o(a)o(y)e(to)h(the)g(ORIGINA)m(TOR.)f(The)h(A)o(CCEPT)g(m)o(ust)f (satisfy)h(the)g(follo)o(wing)e(conditions:)-28 1957 y Fd(\017)21 b Fm(It)14 b(arriv)o(es)g(via)f(PG-NEXT.)-28 2037 y Fd(\017)21 b Fm(It)14 b(is)f(sourced)j(b)o(y)d(the)i(T)m(AR)o(GET)e(PG.)-90 2133 y(If)f(the)i(A)o(CCEPT)f(fails)e(to)i(meet)f(these)i(conditions,)e(it)h (is)f(discarded)i(and)e(not)h(ac)o(kno)o(wledged.)k(Ho)o(w)o(ev)o(er,)c(the)h (PR)e(is)h(not)f(destro)o(y)o(ed.)-90 2183 y(This)i(is)g(b)q(ecause)h(a)f Fl(valid)f Fm(A)o(CCEPT)i(ma)o(y)d(still)h(come)g(through)h(\(if)f(it)g(do)q (es)i(not,)e(the)i(PR)e(is)h(timed)f(out;)g(see)i(b)q(elo)o(w\).)-28 2251 y(A)i(v)n(alid)e(A)o(CCEPT)i(is)g(forw)o(arded)g(to)f(PG-PREV)h(and,)g (once)g(ac)o(k-ed,)g(the)h(PR)e(is)h(installed)f(in)g(the)h(k)o(ernel)h(PR-T) m(ABLE)e(and)-90 2301 y(considered)g(fully)d(op)q(erational.)20 b(F)m(ailure)13 b(to)i(ac)o(k)f(an)h(A)o(CCEPT)g(is)f(grounds)h(for)f(TEARDO) o(WN)g(\(see)i(b)q(elo)o(w\).)21 b(State)15 b(diagrams)d(for)-90 2350 y(TRANSIT)i(and)f(T)m(AR)o(GET)g(PGs)h(are)g(illustrated)g(in)g(Figures) g(5.6)f(and)g(5.7,)g(resp)q(ectiv)o(ely)m(.)-90 2480 y Fc(5.3.1.4)48 b(PR)15 b(T)l(eardo)o(wn)-90 2574 y Fm(A)f(PR)g(can)g(b)q(e)g(terminated)g (for)f(sev)o(eral)h(reasons:)-39 2670 y(1.)20 b(Lifetime)12 b(exceeded)2028 2770 y(67)p eop %%Page: 68 8 bop 240 -150 a 21313290 21313290 0 0 40258437 52099153 startTexFig 240 -150 a %%BeginDocument: transit.ps /FMversion (2.0) def /FrameDict 170 dict def systemdict /errordict known not { /errordict 10 dict def errordict /rangecheck { stop } put } if FrameDict /tmprangecheck errordict /rangecheck get put errordict /rangecheck {FrameDict /bug true put} put FrameDict /bug false put mark currentfile 5 string readline 00 0000000000 cleartomark errordict /rangecheck FrameDict /tmprangecheck get put FrameDict /bug get { /readline { /gstring exch def /gfile exch def /gindex 0 def { gfile read pop dup 10 eq {exit} if dup 13 eq {exit} if gstring exch gindex exch put /gindex gindex 1 add def } loop pop gstring 0 gindex getinterval true } def } if /FMVERSION { FMversion ne { /Times-Roman findfont 18 scalefont setfont 100 100 moveto (FrameMaker version does not match postscript_prolog!) dup = show showpage } if } def /FMLOCAL { FrameDict begin 0 def end } def /gstring FMLOCAL /gfile FMLOCAL /gindex FMLOCAL /orgxfer FMLOCAL /orgproc FMLOCAL /organgle FMLOCAL /orgfreq FMLOCAL FrameDict /graymode true put /yscale FMLOCAL /xscale FMLOCAL /PrintInColor systemdict /colorimage known def PrintInColor { /HUE 0 def /SAT 0 def /BRIGHT 0 def % array of arrays Hue and Sat values for the separations [HUE BRIGHT] /Colors [[0 0 ] % black [0 0 ] % white [0.00 1.0] % red [0.37 1.0] % green [0.60 1.0] % blue [0.50 1.0] % cyan [0.83 1.0] % magenta [0.16 1.0] % comment ] def /BEGINBITMAPCOLOR { BITMAPCOLOR } def /BEGINBITMAPCOLORc { BITMAPCOLORc } def /K { Colors exch get dup 0 get /HUE exch store 1 get /BRIGHT exch store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } def /mysetgray { /SAT exch 1.0 exch sub store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } bind def } { /BEGINBITMAPCOLOR { BITMAPGRAY } def /BEGINBITMAPCOLORc { BITMAPGRAYc } def /mysetgray { setgray } bind def /K { pop } def } ifelse /max {2 copy lt {exch} if pop} bind def /min {2 copy gt {exch} if pop} bind def /mtx matrix defaultmatrix def /setmanualfeed { statusdict /manualfeed true put } def /FMDOCUMENT { array /FMfonts exch def /#copies exch def 0 ne dup {setmanualfeed} if FrameDict begin /manualfeed exch def /paperheight exch def /paperwidth exch def setpapername manualfeed {true} {papersize} ifelse {manualpapersize} {false} ifelse {desperatepapersize} if /yscale exch def /xscale exch def currenttransfer cvlit /orgxfer exch def currentscreen cvlit /orgproc exch def /organgle exch def /orgfreq exch def end } def /pagesave FMLOCAL /orgmatrix FMLOCAL /landscape FMLOCAL /FMBEGINPAGE { FrameDict begin /pagesave save def 3.86 setmiterlimit /landscape exch 0 ne store landscape { 90 rotate 0 exch neg translate pop } { pop pop } ifelse xscale yscale scale /orgmatrix matrix def gsave } def /FMENDPAGE { grestore pagesave restore end showpage } def /fontname FMLOCAL /fontscale FMLOCAL /fontnum FMLOCAL /fontdict FMLOCAL /FMDEFINEFONT { FrameDict begin /fontname exch def /fontscale exch def /fontnum exch def /fontdict fontname findfont fontscale scalefont def fontdict /Encoding get StandardEncoding eq { fontdict DiacriticEncode /fontdict exch def } { fontdict NonDiacriticEncode /fontdict exch def } ifelse FMfonts fontnum fontnum fontdict definefont put end } def /FMNORMALIZEGRAPHICS { newpath 0.0 0.0 moveto 1 setlinewidth 0 setlinecap 0 mysetgray } bind def /FMBEGINEPSF { end /FMEPSF save def /showpage {} def FMNORMALIZEGRAPHICS [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall fx fy translate rotate fw urx llx sub div fh ury lly sub div scale llx neg lly neg translate } bind def /FMENDEPSF { FMEPSF restore FrameDict begin } bind def FrameDict begin /pagedimen { paperheight sub abs 16 lt exch paperwidth sub abs 16 lt and {/papername exch def} {pop} ifelse } def /inch {72 mul} def /setpapername { /papersizedict 14 dict def papersizedict begin /papername /unknown def /Letter 8.5 inch 11.0 inch pagedimen /LetterSmall 7.68 inch 10.16 inch pagedimen /Tabloid 11.0 inch 17.0 inch pagedimen /Ledger 17.0 inch 11.0 inch pagedimen /Legal 8.5 inch 14.0 inch pagedimen /Statement 5.5 inch 8.5 inch pagedimen /Executive 7.5 inch 10.0 inch pagedimen /A3 11.69 inch 16.5 inch pagedimen /A4 8.26 inch 11.69 inch pagedimen /A4Small 7.47 inch 10.85 inch pagedimen /B4 10.125 inch 14.33 inch pagedimen /B5 7.16 inch 10.125 inch pagedimen end } def /papersize { papersizedict begin /Letter {lettertray} def /LetterSmall {lettertray lettersmall} def /Tabloid {11x17tray} def /Ledger {ledgertray} def /Legal {legaltray} def /Statement {statementtray} def /Executive {executivetray} def /A3 {a3tray} def /A4 {a4tray} def /A4Small {a4tray a4small} def /B4 {b4tray} def /B5 {b5tray} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end statusdict begin stopped end } def /manualpapersize { papersizedict begin /Letter {letter} def /LetterSmall {lettersmall} def /Tabloid {11x17} def /Ledger {ledger} def /Legal {legal} def /Statement {statement} def /Executive {executive} def /A3 {a3} def /A4 {a4} def /A4Small {a4small} def /B4 {b4} def /B5 {b5} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end stopped } def /desperatepapersize { statusdict /setpageparams known { paperwidth paperheight 0 1 statusdict begin {setpageparams} stopped pop end } if } def /savematrix { orgmatrix currentmatrix pop } bind def /restorematrix { orgmatrix setmatrix } bind def /dmatrix matrix def /dpi 72 0 dmatrix defaultmatrix dtransform dup mul exch dup mul add sqrt def /freq dpi 18.75 div 8 div round dup 0 eq { pop 1 } if 8 mul dpi exch div def /sangle 1 0 dmatrix defaultmatrix dtransform exch atan def /DiacriticEncoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def /basefontdict FMLOCAL /newfontdict FMLOCAL /DiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {dup /Encoding eq {exch pop DiacriticEncoding} {exch} ifelse newfontdict 3 1 roll put } {pop pop} ifelse } forall newfontdict } bind def /NonDiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {exch newfontdict 3 1 roll put} {pop pop} ifelse } forall newfontdict } bind def /bwidth FMLOCAL /bpside FMLOCAL /bstring FMLOCAL /onbits FMLOCAL /offbits FMLOCAL /xindex FMLOCAL /yindex FMLOCAL /x FMLOCAL /y FMLOCAL /setpattern { /bwidth exch def /bpside exch def /bstring exch def /onbits 0 def /offbits 0 def freq sangle landscape {90 add} if {/y exch def /x exch def /xindex x 1 add 2 div bpside mul cvi def /yindex y 1 add 2 div bpside mul cvi def bstring yindex bwidth mul xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne {/onbits onbits 1 add def 1} {/offbits offbits 1 add def 0} ifelse } setscreen {} settransfer offbits offbits onbits add div mysetgray /graymode false store } bind def /grayness { mysetgray graymode not { /graymode true store orgxfer cvx settransfer orgfreq organgle orgproc cvx setscreen } if } bind def /normalize { transform round exch round exch itransform } bind def /dnormalize { dtransform round exch round exch idtransform } bind def /lnormalize { 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def /H { lnormalize setlinewidth } bind def /Z { setlinecap } bind def /X { fillprocs exch get exec } bind def /V { gsave eofill grestore } bind def /N { stroke } bind def /M {newpath moveto} bind def /E {lineto} bind def /D {curveto} bind def /O {closepath} bind def /n FMLOCAL /L { /n exch def newpath normalize moveto 2 1 n {pop normalize lineto} for } bind def /Y { L closepath } bind def /x1 FMLOCAL /x2 FMLOCAL /y1 FMLOCAL /y2 FMLOCAL /rad FMLOCAL /R { /y2 exch def /x2 exch def /y1 exch def /x1 exch def x1 y1 x2 y1 x2 y2 x1 y2 4 Y } bind def /RR { /rad exch def normalize /y2 exch def /x2 exch def normalize /y1 exch def /x1 exch def newpath x1 y1 rad add moveto x1 y2 x2 y2 rad arcto x2 y2 x2 y1 rad arcto x2 y1 x1 y1 rad arcto x1 y1 x1 y2 rad arcto closepath 16 {pop} repeat } bind def /C { grestore gsave R clip } bind def /U { grestore gsave } bind def /F { FMfonts exch get setfont } bind def /T { moveto show } bind def /RF { rotate 0 ne { -1 1 scale } if } bind def /TF { gsave moveto RF show grestore } bind def /P { moveto 0 32 3 2 roll widthshow } bind def /PF { gsave moveto RF 0 32 3 2 roll widthshow grestore } bind def /S { moveto 0 exch ashow } bind def /SF { gsave moveto RF 0 exch ashow grestore } bind def /B { moveto 0 32 4 2 roll 0 exch awidthshow } bind def /BF { gsave moveto RF 0 32 4 2 roll 0 exch awidthshow grestore } bind def /x FMLOCAL /y FMLOCAL /dx FMLOCAL /dy FMLOCAL /dl FMLOCAL /t FMLOCAL /t2 FMLOCAL /Cos FMLOCAL /Sin FMLOCAL /r FMLOCAL /W { dnormalize /dy exch def /dx exch def normalize /y exch def /x exch def /dl dx dx mul dy dy mul add sqrt def dl 0.0 gt { /t currentlinewidth def savematrix /Cos dx dl div def /Sin dy dl div def /r [Cos Sin Sin neg Cos 0.0 0.0] def /t2 t 2.5 mul 3.5 max def newpath x y translate r concat 0.0 0.0 moveto dl t 2.7 mul sub 0.0 rlineto stroke restorematrix x dx add y dy add translate r concat t 0.67 mul setlinewidth t 1.61 mul neg 0.0 translate 0.0 0.0 moveto t2 1.7 mul neg t2 2.0 div moveto 0.0 0.0 lineto t2 1.7 mul neg t2 2.0 div neg lineto stroke t setlinewidth restorematrix } if } bind def /G { gsave newpath normalize translate 0.0 0.0 moveto dnormalize scale 0.0 0.0 1.0 5 3 roll arc closepath fill grestore } bind def /A { gsave savematrix newpath 2 index 2 div add exch 3 index 2 div sub exch normalize 2 index 2 div sub exch 3 index 2 div add exch translate scale 0.0 0.0 1.0 5 3 roll arc restorematrix stroke grestore } bind def /x FMLOCAL /y FMLOCAL /w FMLOCAL /h FMLOCAL /xx FMLOCAL /yy FMLOCAL /ww FMLOCAL /hh FMLOCAL /FMsaveobject FMLOCAL /FMoptop FMLOCAL /FMdicttop FMLOCAL /BEGINPRINTCODE { /FMdicttop countdictstack 1 add def /FMoptop count 4 sub def /FMsaveobject save def userdict begin /showpage {} def FMNORMALIZEGRAPHICS 3 index neg 3 index neg translate } bind def /ENDPRINTCODE { count -1 FMoptop {pop pop} for countdictstack -1 FMdicttop {pop end} for FMsaveobject restore } bind def /gn { 0 { 46 mul cf read pop 32 sub dup 46 lt {exit} if 46 sub add } loop add } bind def /str FMLOCAL /cfs { /str sl string def 0 1 sl 1 sub {str exch val put} for str def } bind def /ic [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} ] def /sl FMLOCAL /val FMLOCAL /ws FMLOCAL /im FMLOCAL /bs FMLOCAL /cs FMLOCAL /len FMLOCAL /pos FMLOCAL /ms { /sl exch def /val 255 def /ws cfs /im cfs /val 0 def /bs cfs /cs cfs } bind def 400 ms /ip { is 0 cf cs readline pop { ic exch get exec add } forall pop } bind def /wh { /len exch def /pos exch def ws 0 len getinterval im pos len getinterval copy pop pos len } bind def /bl { /len exch def /pos exch def bs 0 len getinterval im pos len getinterval copy pop pos len } bind def /s1 1 string def /fl { /len exch def /pos exch def /val cf s1 readhexstring pop 0 get def pos 1 pos len add 1 sub {im exch val put} for pos len } bind def /hx { 3 copy getinterval cf exch readhexstring pop pop } bind def /h FMLOCAL /w FMLOCAL /d FMLOCAL /lb FMLOCAL /bitmapsave FMLOCAL /is FMLOCAL /cf FMLOCAL /wbytes { dup 8 eq { pop } { 1 eq { 7 add 8 idiv } { 3 add 4 idiv } ifelse } ifelse } bind def /BEGINBITMAPBWc { 1 {} COMMONBITMAPc } bind def /BEGINBITMAPGRAYc { 8 {} COMMONBITMAPc } bind def /BEGINBITMAP2BITc { 2 {} COMMONBITMAPc } bind def /COMMONBITMAPc { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def r /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} image bitmapsave restore grestore } bind def /BEGINBITMAPBW { 1 {} COMMONBITMAP } bind def /BEGINBITMAPGRAY { 8 {} COMMONBITMAP } bind def /BEGINBITMAP2BIT { 2 {} COMMONBITMAP } bind def /COMMONBITMAP { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def r /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } image bitmapsave restore grestore } bind def /Fmcc { /proc2 exch cvlit def /proc1 exch cvlit def /newproc proc1 length proc2 length add array def newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval newproc cvx } bind def /colorsetup { currentcolortransfer /gryt exch def /blut exch def /grnt exch def /redt exch def /ngrayt 256 array def /nredt 256 array def /nbluet 256 array def /ngreent 256 array def 0 1 255 { /indx exch def /cynu 1 red indx get 255 div sub def /magu 1 green indx get 255 div sub def /yelu 1 blue indx get 255 div sub def /k cynu magu min yelu min def /u k currentundercolorremoval exec def nredt indx 1 0 cynu u sub max sub redt exec put ngreent indx 1 0 magu u sub max sub grnt exec put nbluet indx 1 0 yelu u sub max sub blut exec put ngrayt indx 1 k currentblackgeneration exec sub gryt exec put } for {255 mul cvi nredt exch get} {255 mul cvi ngreent exch get} {255 mul cvi nbluet exch get} {255 mul cvi ngrayt exch get} setcolortransfer {pop 0} setundercolorremoval {} setblackgeneration } bind def /fakecolorsetup { /tran 256 string def 0 1 255 { /ind exch def tran ind red ind get 77 mul green ind get 151 mul blue ind get 28 mul add add 256 idiv put } for currenttransfer { 255 mul cvi tran exch get 255.0 div } exch Fmcc settransfer } bind def /BITMAPCOLOR { /d 8 def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def colorsetup /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPCOLORc { /d 8 def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def colorsetup /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPGRAY { 8 {fakecolorsetup} COMMONBITMAP } bind def /BITMAPGRAYc { 8 {fakecolorsetup} COMMONBITMAPc } bind def /ENDBITMAP { } bind def end (2.0) FMVERSION 1 1 2 2 0 1 2 FMDOCUMENT /fillprocs 32 array def fillprocs 0 { 0.000000 grayness } put fillprocs 1 { 0.100000 grayness } put fillprocs 2 { 0.300000 grayness } put fillprocs 3 { 0.500000 grayness } put fillprocs 4 { 0.700000 grayness } put fillprocs 5 { 0.900000 grayness } put fillprocs 6 { 0.970000 grayness } put fillprocs 7 { 1.000000 grayness } put fillprocs 8 {<0f1e3c78f0e1c387> 8 1 setpattern } put fillprocs 9 {<0f87c3e1f0783c1e> 8 1 setpattern } put fillprocs 10 {<cccccccccccccccc> 8 1 setpattern } put fillprocs 11 {<ffff0000ffff0000> 8 1 setpattern } put fillprocs 12 {<8142241818244281> 8 1 setpattern } put fillprocs 13 {<03060c183060c081> 8 1 setpattern } put fillprocs 14 {<8040201008040201> 8 1 setpattern } put fillprocs 15 {} put fillprocs 16 { 1.000000 grayness } put fillprocs 17 { 0.900000 grayness } put fillprocs 18 { 0.700000 grayness } put fillprocs 19 { 0.500000 grayness } put fillprocs 20 { 0.300000 grayness } put fillprocs 21 { 0.100000 grayness } put fillprocs 22 { 0.030000 grayness } put fillprocs 23 { 0.000000 grayness } put fillprocs 24 {<f0e1c3870f1e3c78> 8 1 setpattern } put fillprocs 25 {<f0783c1e0f87c3e1> 8 1 setpattern } put fillprocs 26 {<3333333333333333> 8 1 setpattern } put fillprocs 27 {<0000ffff0000ffff> 8 1 setpattern } put fillprocs 28 {<7ebddbe7e7dbbd7e> 8 1 setpattern } put fillprocs 29 {<fcf9f3e7cf9f3f7e> 8 1 setpattern } put fillprocs 30 {<7fbfdfeff7fbfdfe> 8 1 setpattern } put fillprocs 31 {} put 0 18 /Times-Roman FMDEFINEFONT 1 12 /Times-Roman FMDEFINEFONT 612 792 0 FMBEGINPAGE 0 0 612 792 C 0 0 612 792 R 7 X 0 K V 72 746 540 756 R V 72 32.67 540 42.67 R V 24 111 585 788 R V 3 H 2 Z 9 X N 7 X 90 450 66.73 33.98 125.28 734.74 G 0 X 90 450 66.73 33.98 125.28 734.74 A 12 X 90 450 71.44 39.09 453.38 445.79 G 0 X 90 450 71.44 39.09 453.38 445.79 A 14 X 90 450 81.78 33.97 149.52 530.88 G 0 X 90 450 81.78 33.97 149.52 530.88 A 5 X 90 450 80.37 32.11 158.69 219.16 G 0 X 90 450 80.37 32.11 158.69 219.16 A 0 F (PR_W) 398.35 440.57 T (AITING) 444.33 440.57 T (PR_COMPLETE) 91.92 213.64 T (PR_DYING) 102.5 527.15 T 98.91 489.66 103.09 504.06 107.18 489.63 103.05 489.64 4 Y V 102.29 245.69 103.05 489.87 2 L 1 H N 1 F (ACK from PG_NEXT) 118.74 629.88 T (ACK from PG_NEXT) 0 -270 487.77 487.96 TF (TIMEOUT on ACCEPT) 201.46 293.52 T (TEARDOWN to PG_NEXT) 199.52 274.18 T (Delete PR) 69.48 606.4 T (Install PR in kernel) 230.6 151.49 T (T) 63.1 629.81 T (imeout or) 70.01 629.81 T 0 F (PR_FREE) 89.94 731.32 T 1 F (REFUSE to PG_PREV) 237.18 353.09 T (ACCEPT from tar) 0 -270 465.66 203.84 TF (get PG) 0 -270 465.66 291.57 TF (, PG_PREV) 339.02 273.82 T 4 X 90 450 73.32 33.51 502.68 636.51 G 3 H 0 X 90 450 73.32 33.51 502.68 636.51 A 0 F (PR_INITIAL) 458 631.82 T 1 F ( \050or PG_PREV\051) 228.19 629.88 T 171.84 698.92 159.94 705.31 173.41 706.19 172.63 702.55 4 Y V 89.9 549.9 M 13.04 620.3 13.04 620.3 172.52 619.82 D 332 619.35 332 619.35 292.84 652.3 D 255.54 683.7 253.77 685.18 172.65 702.58 D 0.5 H 0 Z N 569.09 666.44 561.06 655.59 562.11 669.04 565.6 667.74 4 Y V 149.47 767.36 M 586.94 769.29 603.17 769.37 565.62 667.79 D N (SETUP from recognized AD \050via PG neighbor\051) 257.96 769.76 T 185.93 489.5 175.66 498.27 189.02 496.28 187.47 492.89 4 Y V 178.23 713.99 M 193.67 717.03 193.67 717.03 268.06 705.85 D 342.46 694.66 342.46 694.66 342.46 558.7 D 342.46 426.02 342.46 422.81 187.5 492.9 D N (Error processing SETUP) 0 -270 332.82 501.02 TF (REFUSE to PG_PREV) 0 -270 354.68 500.55 TF (REFUSE \050via PG_NEXT\051) 237.18 378.22 T ( \050via PG_NEXT\051) 0 -270 465.45 322.73 TF (TEARDOWN \050upstream or downsteam\051) 0 -270 97.12 280.84 TF (ACCEPT to PG_PREV) 0 -270 485.22 205.17 TF (SETUP to PG_NEXT) 258.82 754.78 T 499.4 488.86 495.68 475.88 491.96 488.86 495.68 488.86 4 Y V 495.68 601.52 495.68 488.62 2 L 2 Z N 2 X 90 450 71.91 37.7 482.05 158.66 G 3 H 0 X 90 450 71.91 37.7 482.05 158.66 A 152.24 484.48 153.52 497.92 159.55 485.85 155.9 485.17 4 Y V 424.36 409.33 M 433.22 368.61 433.22 368.61 305.29 368.61 D 181.72 368.61 177.51 368.61 155.88 485.14 D 0.5 H 0 Z N (, delete PR) 349.7 352.09 T 0 F (PR_ACTIVE) 432.62 156.26 T 128.07 487.08 131.9 499.99 135.49 487.01 131.78 487.04 4 Y V 457.54 407.47 M 396.42 286.64 396.42 286.64 263.25 288.06 D 132.88 289.44 130.14 289.47 131.79 487 D N 475.9 208.41 472.18 195.43 468.46 208.41 472.18 208.41 4 Y V 472.18 407.63 472.18 208.17 2 L 2 Z N 112.25 181.15 122.5 189.87 118.43 177.04 115.34 179.09 4 Y V 408.26 162.85 M 149.7 162.85 109.3 162.85 115.41 179.07 D 0 Z N 1 F (T) 0 -270 45.59 270.59 TF (imeout \050no ACK from PG_PREV\051) 0 -270 45.59 277.5 TF (Delete PR \050kernel\051) 0 -270 115.92 284.45 TF (TEARDOWN to PG_NEXT) 0 -270 65.54 270.72 TF (ACK from PG_PREV) 232.48 170.11 T 54.82 523.99 67.98 526.77 58.3 517.44 56.56 520.71 4 Y V 431.76 133.07 M 51.06 133.07 51.06 133.07 51.06 329.92 D 51.06 465.25 51.06 507.54 56.56 520.75 D N 202.77 726.63 190 731 203.15 734.06 202.96 730.34 4 Y V 523 667 M 512.21 713.94 512.06 714.58 203.03 730.34 D N (T) 355 727 T (imeout ) 361.91 727 T (Delete PR) 357 706 T FMENDPAGE %%EndDocument 240 -150 a endTexFig 656 1144 a Fm(Figure)14 b(5.6:)j(TRANSIT)d(state)g(diagram)-39 1268 y(2.)20 b(P)o(ac)o(k)o(et)14 b(limit)d(reac)o(hed)-39 1347 y(3.)20 b(Data)13 b(limit)e(reac)o(hed)-39 1425 y(4.)20 b(Maxim)o(um)10 b(idle)j(time)g(exceeded)-39 1504 y(5.)20 b(Previous-hop)14 b(PG)g(fails)e(to)i(A)o(CK)g(an)g(A)o(CCEPT)g(pac)o(k)o(et)-39 1583 y(6.)20 b(V)o(GP)13 b(rep)q(orts)j(that)e(either)g(previous-)g(or)g (next-hop)g(PG)g(is)g(do)o(wn)-90 1675 y(In)e(the)g(initial)e(implemen)o (tatio)o(n,)f(the)k(\014rst)f(four)g(t)o(yp)q(es)g(of)g(teardo)o(wn)g(are)g (initiated)f(b)o(y)g(KERNEL)i(via)e(a)g(TEARDO)o(WN-REQUEST)-90 1725 y(pac)o(k)o(et)i(that)f(is)g(deliv)o(ered)g(to)g(SETUP)h(\(encapsulated) h(with)d(a)h(dumm)o(y)e(CMTP)i(and)g(IP)g(header\).)19 b(Up)q(on)12 b(receiving)h(TEARDO)o(WN-)-90 1775 y(REQUEST,)20 b(SETUP)g(sends)h(a)e (TEARDO)o(WN)g(pac)o(k)o(et)h(to)f(b)q(oth)h(PG-NEXT)g(and)f(PG-PREV)g(\(if)g (de\014ned\).)37 b(TEARDO)o(WN-)-90 1824 y(REQUEST)14 b(and)g(TEARDO)o(WN)f (ha)o(v)o(e)h(the)h(same)e(simple)f(format)g(consisting)i(of)f(the)i(PRid)e (and)h(the)g(termination)e(co)q(de.)-28 1892 y(A)k(TEARDO)o(WN)f(pac)o(k)o (et)g(can)h(arriv)o(e)f(via)g(PG-PREV)g(or)g(PG-NEXT.)g(If)g(it)g(arriv)o(es) h(via)f(PG-NEXT,)g(it)g(m)o(ust)f(b)q(e)i(forw)o(arded)-90 1942 y(to)f(PG-PREV)g(and)g(vice-a-v)o(ersa.)23 b(A)15 b(TEARDO)o(WN)g(m)o (ust)f(also)h(b)q(e)h(sourced)h(at)e(one)g(of)g(the)h(in)o(terv)o(ening)f (PGs,)g(ho)o(w)o(ev)o(er,)h(this)f(is)-90 1992 y(di\016cult)e(to)h(v)o(erify) f(since)i(PGs)f(within)f(a)h(PR)f(do)h(not)g(all)f(necessarily)i(ha)o(v)o(e)e (a)h(means)f(for)g(m)o(utual)f(authen)o(tication.)-90 2128 y Fe(5.3.2)55 b(Exp)r(erimen)n(ts)-90 2223 y Fm(Exp)q(erimen)o(ts)16 b(with)g(the)g(IDPR)g(implemen)o(tatio)o(n)e(w)o(ere)i(conducted)i(in)e (order)g(to)g(ev)n(aluate)g(the)h(o)o(v)o(erhead)f(incurred)h(b)o(y)f(PR)g (setup)-90 2273 y(and)e(IDPR)f(data)h(pac)o(k)o(et)g(pro)q(cessing.)19 b(This)14 b(section)g(summarizes)f(our)h(results.)-28 2340 y(W)m(e)e(de\014ne)i(PR)e(setup)h(o)o(v)o(erhead)g(as)g(the)g(time)e(in)o (terv)n(al)g(b)q(et)o(w)o(een)j(the)f(arriv)n(al)e(of)h(a)g(SETUP-REQUEST)i (pac)o(k)o(et)e(at)h(the)g(ORIGI-)-90 2390 y(NA)m(TOR)g(PG)g(and)g(the)h (arriv)n(al)e(of)h(a)g(corresp)q(onding)h(A)o(CCEPT)f(pac)o(k)o(et)h(at)f (the)h(same)f(PG.)f(Equiv)n(alen)o(tly)m(,)f(it)i(can)h(b)q(e)g(view)o(ed)f (as)g(the)-90 2440 y(transition)g(time)g(b)q(et)o(w)o(een)i(the)g(PR-FREE)e (and)h(PR-COMPLETE)h(states)g(as)f(depicted)h(in)e(Figure)h(5.5.)-28 2508 y(W)m(e)i(measured)g(the)h(PR)e(setup)i(o)o(v)o(erhead)g(for)f(routes)h (ranging)e(from)f(2)i(to)g(5)g(PG)f(hops.)1414 2493 y Fi(5)1458 2508 y Fm(\(The)h(lab)q(oratory)g(top)q(ology)e(w)o(as)i(re-)-90 2558 y(con\014gured)h(for)f(the)h(case)h(of)d(5-hops\).)26 b(W)m(e)16 b(measured)g(the)h(o)o(v)o(erhead)g(in)e(relation)h(to)g(the)h(n)o (um)o(b)q(er)f(of)g(PG,)f(not)i(AD,)e(hops.)26 b(This)p -90 2631 864 2 v -44 2658 a Fh(5)-26 2670 y Fg(See)10 b(Figure)g(5.1.)2028 2770 y Fm(68)p eop %%Page: 69 9 bop 240 -150 a 21313290 21313290 0 0 40258437 52099153 startTexFig 240 -150 a %%BeginDocument: target.ps /FMversion (2.0) def /FrameDict 170 dict def systemdict /errordict known not { /errordict 10 dict def errordict /rangecheck { stop } put } if FrameDict /tmprangecheck errordict /rangecheck get put errordict /rangecheck {FrameDict /bug true put} put FrameDict /bug false put mark currentfile 5 string readline 00 0000000000 cleartomark errordict /rangecheck FrameDict /tmprangecheck get put FrameDict /bug get { /readline { /gstring exch def /gfile exch def /gindex 0 def { gfile read pop dup 10 eq {exit} if dup 13 eq {exit} if gstring exch gindex exch put /gindex gindex 1 add def } loop pop gstring 0 gindex getinterval true } def } if /FMVERSION { FMversion ne { /Times-Roman findfont 18 scalefont setfont 100 100 moveto (FrameMaker version does not match postscript_prolog!) dup = show showpage } if } def /FMLOCAL { FrameDict begin 0 def end } def /gstring FMLOCAL /gfile FMLOCAL /gindex FMLOCAL /orgxfer FMLOCAL /orgproc FMLOCAL /organgle FMLOCAL /orgfreq FMLOCAL FrameDict /graymode true put /yscale FMLOCAL /xscale FMLOCAL /PrintInColor systemdict /colorimage known def PrintInColor { /HUE 0 def /SAT 0 def /BRIGHT 0 def % array of arrays Hue and Sat values for the separations [HUE BRIGHT] /Colors [[0 0 ] % black [0 0 ] % white [0.00 1.0] % red [0.37 1.0] % green [0.60 1.0] % blue [0.50 1.0] % cyan [0.83 1.0] % magenta [0.16 1.0] % comment ] def /BEGINBITMAPCOLOR { BITMAPCOLOR } def /BEGINBITMAPCOLORc { BITMAPCOLORc } def /K { Colors exch get dup 0 get /HUE exch store 1 get /BRIGHT exch store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } def /mysetgray { /SAT exch 1.0 exch sub store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } bind def } { /BEGINBITMAPCOLOR { BITMAPGRAY } def /BEGINBITMAPCOLORc { BITMAPGRAYc } def /mysetgray { setgray } bind def /K { pop } def } ifelse /max {2 copy lt {exch} if pop} bind def /min {2 copy gt {exch} if pop} bind def /mtx matrix defaultmatrix def /setmanualfeed { statusdict /manualfeed true put } def /FMDOCUMENT { array /FMfonts exch def /#copies exch def 0 ne dup {setmanualfeed} if FrameDict begin /manualfeed exch def /paperheight exch def /paperwidth exch def setpapername manualfeed {true} {papersize} ifelse {manualpapersize} {false} ifelse {desperatepapersize} if /yscale exch def /xscale exch def currenttransfer cvlit /orgxfer exch def currentscreen cvlit /orgproc exch def /organgle exch def /orgfreq exch def end } def /pagesave FMLOCAL /orgmatrix FMLOCAL /landscape FMLOCAL /FMBEGINPAGE { FrameDict begin /pagesave save def 3.86 setmiterlimit /landscape exch 0 ne store landscape { 90 rotate 0 exch neg translate pop } { pop pop } ifelse xscale yscale scale /orgmatrix matrix def gsave } def /FMENDPAGE { grestore pagesave restore end showpage } def /fontname FMLOCAL /fontscale FMLOCAL /fontnum FMLOCAL /fontdict FMLOCAL /FMDEFINEFONT { FrameDict begin /fontname exch def /fontscale exch def /fontnum exch def /fontdict fontname findfont fontscale scalefont def fontdict /Encoding get StandardEncoding eq { fontdict DiacriticEncode /fontdict exch def } { fontdict NonDiacriticEncode /fontdict exch def } ifelse FMfonts fontnum fontnum fontdict definefont put end } def /FMNORMALIZEGRAPHICS { newpath 0.0 0.0 moveto 1 setlinewidth 0 setlinecap 0 mysetgray } bind def /FMBEGINEPSF { end /FMEPSF save def /showpage {} def FMNORMALIZEGRAPHICS [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall fx fy translate rotate fw urx llx sub div fh ury lly sub div scale llx neg lly neg translate } bind def /FMENDEPSF { FMEPSF restore FrameDict begin } bind def FrameDict begin /pagedimen { paperheight sub abs 16 lt exch paperwidth sub abs 16 lt and {/papername exch def} {pop} ifelse } def /inch {72 mul} def /setpapername { /papersizedict 14 dict def papersizedict begin /papername /unknown def /Letter 8.5 inch 11.0 inch pagedimen /LetterSmall 7.68 inch 10.16 inch pagedimen /Tabloid 11.0 inch 17.0 inch pagedimen /Ledger 17.0 inch 11.0 inch pagedimen /Legal 8.5 inch 14.0 inch pagedimen /Statement 5.5 inch 8.5 inch pagedimen /Executive 7.5 inch 10.0 inch pagedimen /A3 11.69 inch 16.5 inch pagedimen /A4 8.26 inch 11.69 inch pagedimen /A4Small 7.47 inch 10.85 inch pagedimen /B4 10.125 inch 14.33 inch pagedimen /B5 7.16 inch 10.125 inch pagedimen end } def /papersize { papersizedict begin /Letter {lettertray} def /LetterSmall {lettertray lettersmall} def /Tabloid {11x17tray} def /Ledger {ledgertray} def /Legal {legaltray} def /Statement {statementtray} def /Executive {executivetray} def /A3 {a3tray} def /A4 {a4tray} def /A4Small {a4tray a4small} def /B4 {b4tray} def /B5 {b5tray} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end statusdict begin stopped end } def /manualpapersize { papersizedict begin /Letter {letter} def /LetterSmall {lettersmall} def /Tabloid {11x17} def /Ledger {ledger} def /Legal {legal} def /Statement {statement} def /Executive {executive} def /A3 {a3} def /A4 {a4} def /A4Small {a4small} def /B4 {b4} def /B5 {b5} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end stopped } def /desperatepapersize { statusdict /setpageparams known { paperwidth paperheight 0 1 statusdict begin {setpageparams} stopped pop end } if } def /savematrix { orgmatrix currentmatrix pop } bind def /restorematrix { orgmatrix setmatrix } bind def /dmatrix matrix def /dpi 72 0 dmatrix defaultmatrix dtransform dup mul exch dup mul add sqrt def /freq dpi 18.75 div 8 div round dup 0 eq { pop 1 } if 8 mul dpi exch div def /sangle 1 0 dmatrix defaultmatrix dtransform exch atan def /DiacriticEncoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def /basefontdict FMLOCAL /newfontdict FMLOCAL /DiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {dup /Encoding eq {exch pop DiacriticEncoding} {exch} ifelse newfontdict 3 1 roll put } {pop pop} ifelse } forall newfontdict } bind def /NonDiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {exch newfontdict 3 1 roll put} {pop pop} ifelse } forall newfontdict } bind def /bwidth FMLOCAL /bpside FMLOCAL /bstring FMLOCAL /onbits FMLOCAL /offbits FMLOCAL /xindex FMLOCAL /yindex FMLOCAL /x FMLOCAL /y FMLOCAL /setpattern { /bwidth exch def /bpside exch def /bstring exch def /onbits 0 def /offbits 0 def freq sangle landscape {90 add} if {/y exch def /x exch def /xindex x 1 add 2 div bpside mul cvi def /yindex y 1 add 2 div bpside mul cvi def bstring yindex bwidth mul xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne {/onbits onbits 1 add def 1} {/offbits offbits 1 add def 0} ifelse } setscreen {} settransfer offbits offbits onbits add div mysetgray /graymode false store } bind def /grayness { mysetgray graymode not { /graymode true store orgxfer cvx settransfer orgfreq organgle orgproc cvx setscreen } if } bind def /normalize { transform round exch round exch itransform } bind def /dnormalize { dtransform round exch round exch idtransform } bind def /lnormalize { 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def /H { lnormalize setlinewidth } bind def /Z { setlinecap } bind def /X { fillprocs exch get exec } bind def /V { gsave eofill grestore } bind def /N { stroke } bind def /M {newpath moveto} bind def /E {lineto} bind def /D {curveto} bind def /O {closepath} bind def /n FMLOCAL /L { /n exch def newpath normalize moveto 2 1 n {pop normalize lineto} for } bind def /Y { L closepath } bind def /x1 FMLOCAL /x2 FMLOCAL /y1 FMLOCAL /y2 FMLOCAL /rad FMLOCAL /R { /y2 exch def /x2 exch def /y1 exch def /x1 exch def x1 y1 x2 y1 x2 y2 x1 y2 4 Y } bind def /RR { /rad exch def normalize /y2 exch def /x2 exch def normalize /y1 exch def /x1 exch def newpath x1 y1 rad add moveto x1 y2 x2 y2 rad arcto x2 y2 x2 y1 rad arcto x2 y1 x1 y1 rad arcto x1 y1 x1 y2 rad arcto closepath 16 {pop} repeat } bind def /C { grestore gsave R clip } bind def /U { grestore gsave } bind def /F { FMfonts exch get setfont } bind def /T { moveto show } bind def /RF { rotate 0 ne { -1 1 scale } if } bind def /TF { gsave moveto RF show grestore } bind def /P { moveto 0 32 3 2 roll widthshow } bind def /PF { gsave moveto RF 0 32 3 2 roll widthshow grestore } bind def /S { moveto 0 exch ashow } bind def /SF { gsave moveto RF 0 exch ashow grestore } bind def /B { moveto 0 32 4 2 roll 0 exch awidthshow } bind def /BF { gsave moveto RF 0 32 4 2 roll 0 exch awidthshow grestore } bind def /x FMLOCAL /y FMLOCAL /dx FMLOCAL /dy FMLOCAL /dl FMLOCAL /t FMLOCAL /t2 FMLOCAL /Cos FMLOCAL /Sin FMLOCAL /r FMLOCAL /W { dnormalize /dy exch def /dx exch def normalize /y exch def /x exch def /dl dx dx mul dy dy mul add sqrt def dl 0.0 gt { /t currentlinewidth def savematrix /Cos dx dl div def /Sin dy dl div def /r [Cos Sin Sin neg Cos 0.0 0.0] def /t2 t 2.5 mul 3.5 max def newpath x y translate r concat 0.0 0.0 moveto dl t 2.7 mul sub 0.0 rlineto stroke restorematrix x dx add y dy add translate r concat t 0.67 mul setlinewidth t 1.61 mul neg 0.0 translate 0.0 0.0 moveto t2 1.7 mul neg t2 2.0 div moveto 0.0 0.0 lineto t2 1.7 mul neg t2 2.0 div neg lineto stroke t setlinewidth restorematrix } if } bind def /G { gsave newpath normalize translate 0.0 0.0 moveto dnormalize scale 0.0 0.0 1.0 5 3 roll arc closepath fill grestore } bind def /A { gsave savematrix newpath 2 index 2 div add exch 3 index 2 div sub exch normalize 2 index 2 div sub exch 3 index 2 div add exch translate scale 0.0 0.0 1.0 5 3 roll arc restorematrix stroke grestore } bind def /x FMLOCAL /y FMLOCAL /w FMLOCAL /h FMLOCAL /xx FMLOCAL /yy FMLOCAL /ww FMLOCAL /hh FMLOCAL /FMsaveobject FMLOCAL /FMoptop FMLOCAL /FMdicttop FMLOCAL /BEGINPRINTCODE { /FMdicttop countdictstack 1 add def /FMoptop count 4 sub def /FMsaveobject save def userdict begin /showpage {} def FMNORMALIZEGRAPHICS 3 index neg 3 index neg translate } bind def /ENDPRINTCODE { count -1 FMoptop {pop pop} for countdictstack -1 FMdicttop {pop end} for FMsaveobject restore } bind def /gn { 0 { 46 mul cf read pop 32 sub dup 46 lt {exit} if 46 sub add } loop add } bind def /str FMLOCAL /cfs { /str sl string def 0 1 sl 1 sub {str exch val put} for str def } bind def /ic [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} ] def /sl FMLOCAL /val FMLOCAL /ws FMLOCAL /im FMLOCAL /bs FMLOCAL /cs FMLOCAL /len FMLOCAL /pos FMLOCAL /ms { /sl exch def /val 255 def /ws cfs /im cfs /val 0 def /bs cfs /cs cfs } bind def 400 ms /ip { is 0 cf cs readline pop { ic exch get exec add } forall pop } bind def /wh { /len exch def /pos exch def ws 0 len getinterval im pos len getinterval copy pop pos len } bind def /bl { /len exch def /pos exch def bs 0 len getinterval im pos len getinterval copy pop pos len } bind def /s1 1 string def /fl { /len exch def /pos exch def /val cf s1 readhexstring pop 0 get def pos 1 pos len add 1 sub {im exch val put} for pos len } bind def /hx { 3 copy getinterval cf exch readhexstring pop pop } bind def /h FMLOCAL /w FMLOCAL /d FMLOCAL /lb FMLOCAL /bitmapsave FMLOCAL /is FMLOCAL /cf FMLOCAL /wbytes { dup 8 eq { pop } { 1 eq { 7 add 8 idiv } { 3 add 4 idiv } ifelse } ifelse } bind def /BEGINBITMAPBWc { 1 {} COMMONBITMAPc } bind def /BEGINBITMAPGRAYc { 8 {} COMMONBITMAPc } bind def /BEGINBITMAP2BITc { 2 {} COMMONBITMAPc } bind def /COMMONBITMAPc { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def r /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} image bitmapsave restore grestore } bind def /BEGINBITMAPBW { 1 {} COMMONBITMAP } bind def /BEGINBITMAPGRAY { 8 {} COMMONBITMAP } bind def /BEGINBITMAP2BIT { 2 {} COMMONBITMAP } bind def /COMMONBITMAP { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def r /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } image bitmapsave restore grestore } bind def /Fmcc { /proc2 exch cvlit def /proc1 exch cvlit def /newproc proc1 length proc2 length add array def newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval newproc cvx } bind def /colorsetup { currentcolortransfer /gryt exch def /blut exch def /grnt exch def /redt exch def /ngrayt 256 array def /nredt 256 array def /nbluet 256 array def /ngreent 256 array def 0 1 255 { /indx exch def /cynu 1 red indx get 255 div sub def /magu 1 green indx get 255 div sub def /yelu 1 blue indx get 255 div sub def /k cynu magu min yelu min def /u k currentundercolorremoval exec def nredt indx 1 0 cynu u sub max sub redt exec put ngreent indx 1 0 magu u sub max sub grnt exec put nbluet indx 1 0 yelu u sub max sub blut exec put ngrayt indx 1 k currentblackgeneration exec sub gryt exec put } for {255 mul cvi nredt exch get} {255 mul cvi ngreent exch get} {255 mul cvi nbluet exch get} {255 mul cvi ngrayt exch get} setcolortransfer {pop 0} setundercolorremoval {} setblackgeneration } bind def /fakecolorsetup { /tran 256 string def 0 1 255 { /ind exch def tran ind red ind get 77 mul green ind get 151 mul blue ind get 28 mul add add 256 idiv put } for currenttransfer { 255 mul cvi tran exch get 255.0 div } exch Fmcc settransfer } bind def /BITMAPCOLOR { /d 8 def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def colorsetup /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPCOLORc { /d 8 def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def colorsetup /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPGRAY { 8 {fakecolorsetup} COMMONBITMAP } bind def /BITMAPGRAYc { 8 {fakecolorsetup} COMMONBITMAPc } bind def /ENDBITMAP { } bind def end (2.0) FMVERSION 1 1 2 2 0 1 2 FMDOCUMENT /fillprocs 32 array def fillprocs 0 { 0.000000 grayness } put fillprocs 1 { 0.100000 grayness } put fillprocs 2 { 0.300000 grayness } put fillprocs 3 { 0.500000 grayness } put fillprocs 4 { 0.700000 grayness } put fillprocs 5 { 0.900000 grayness } put fillprocs 6 { 0.970000 grayness } put fillprocs 7 { 1.000000 grayness } put fillprocs 8 {<0f1e3c78f0e1c387> 8 1 setpattern } put fillprocs 9 {<0f87c3e1f0783c1e> 8 1 setpattern } put fillprocs 10 {<cccccccccccccccc> 8 1 setpattern } put fillprocs 11 {<ffff0000ffff0000> 8 1 setpattern } put fillprocs 12 {<8142241818244281> 8 1 setpattern } put fillprocs 13 {<03060c183060c081> 8 1 setpattern } put fillprocs 14 {<8040201008040201> 8 1 setpattern } put fillprocs 15 {} put fillprocs 16 { 1.000000 grayness } put fillprocs 17 { 0.900000 grayness } put fillprocs 18 { 0.700000 grayness } put fillprocs 19 { 0.500000 grayness } put fillprocs 20 { 0.300000 grayness } put fillprocs 21 { 0.100000 grayness } put fillprocs 22 { 0.030000 grayness } put fillprocs 23 { 0.000000 grayness } put fillprocs 24 {<f0e1c3870f1e3c78> 8 1 setpattern } put fillprocs 25 {<f0783c1e0f87c3e1> 8 1 setpattern } put fillprocs 26 {<3333333333333333> 8 1 setpattern } put fillprocs 27 {<0000ffff0000ffff> 8 1 setpattern } put fillprocs 28 {<7ebddbe7e7dbbd7e> 8 1 setpattern } put fillprocs 29 {<fcf9f3e7cf9f3f7e> 8 1 setpattern } put fillprocs 30 {<7fbfdfeff7fbfdfe> 8 1 setpattern } put fillprocs 31 {} put 0 18 /Times-Roman FMDEFINEFONT 1 12 /Times-Roman FMDEFINEFONT 612 792 0 FMBEGINPAGE 0 0 612 792 C 0 0 612 792 R 7 X 0 K V 72 746 540 756 R V 72 32.67 540 42.67 R V 14 168 587 785 R V 3 H 2 Z 9 X N 7 X 90 450 68.15 33.57 122.39 728.33 G 0 X 90 450 68.15 33.57 122.39 728.33 A 14 X 90 450 83.52 33.56 202.1 531.58 G 0 X 90 450 83.52 33.56 202.1 531.58 A 5 X 90 450 83.04 33.56 333.14 355.94 G 0 X 90 450 83.04 33.56 333.14 355.94 A 0 F (PR_COMPLETE) 273.38 353.42 T (PR_DYING) 155.42 527.22 T 1 F (ACK from PG_PREV) 184.98 628.69 T (Delete PR) 130.02 604.38 T (Install PR in kernel) 0 -270 481.46 361.86 TF (T) 127.22 629.61 T (imeout or) 134.13 629.61 T 0 F (PR_FREE) 78.5 724.92 T 519.52 674.64 511.35 663.96 512.62 677.35 516.07 675.99 4 Y V 170.57 752.06 M 529.1 753.58 545.91 753.65 516.07 675.99 D 0.5 H 0 Z N 1 F (SETUP from recognized AD \050via PG neighbor\051) 224.18 758.94 T 197.93 488.51 188.14 497.8 201.36 495.11 199.65 491.81 4 Y V 190.54 728.33 M 204.98 731.58 204.98 731.58 274.58 719.63 D 344.18 707.67 344.18 707.67 344.18 562.38 D 344.18 420.77 344.18 417.19 199.67 491.83 D N (Error processing SETUP) 0 -270 338.42 499.65 TF (REFUSE to PG_PREV) 0 -270 356.66 496.27 TF (ACCEPT to PG_PREV) 222.26 739.63 T 2 X 90 450 73.44 37.24 500.18 625.37 G 3 H 2 Z 0 X 90 450 73.44 37.24 500.18 625.37 A 0 F (PR_ACTIVE) 452.98 620.6 T 1 F (T) 204.98 201.69 T (imeout \050no ACK from PG_PREV\051) 211.89 201.69 T (Delete PR \050setup & kernel\051) 0 -270 84.98 467.02 TF (TEARDOWN \050via PG_PREV\051) 0 -270 67.7 462.59 TF 56.55 702.64 68.66 708.59 61.55 697.12 59.05 699.88 4 Y V 539.06 594.57 M 538.1 199.16 538.1 199.16 300.5 195.94 D 62.9 192.72 62.9 192.72 45.15 432.27 D 28.89 651.46 27.51 670.08 59.02 699.84 D 0.5 H 0 Z N (Delete PR) 208.82 181.46 T 373.9 315.65 364.33 325.14 377.48 322.16 375.69 318.91 4 Y V 470.9 592.73 M 471.82 278.24 471.86 266.72 375.72 318.92 D N (ACK from PG_PREV) 0 -270 461.3 364.07 TF 196.13 708.81 184.9 716.27 198.37 715.9 197.25 712.35 4 Y V 191.71 565.14 M 103.21 573.64 103.21 573.64 99.31 596.31 D 95.42 618.98 95.42 618.98 210.68 620.87 D 325.94 622.76 325.94 622.76 316.7 650.15 D 307.78 676.59 307.47 677.51 197.28 712.36 D N 69.6 691.98 73.46 704.92 77.04 691.9 73.32 691.94 4 Y V 250.1 361.22 M 115.7 303.04 115.7 303.04 92.66 324.07 D 69.9 344.85 69.63 345.11 73.32 691.9 D N FMENDPAGE %%EndDocument 240 -150 a endTexFig 662 1085 a Fm(Figure)14 b(5.7:)j(T)m(AR)o(GET)c(state)i(diagram)-90 1217 y(is)h(b)q(ecause)i(tra)o(v)o(ersing)e(an)g(AD)g(ma)o(y)f(in)o(v)o(olv)o (e)f(ph)o(ysically)h(tra)o(v)o(ersing)i(one)f(or)g(more)g(PGs.)25 b(Therefore,)17 b(it)f(is)g(more)f(meaningful)f(to)-90 1267 y(measure)g(p)q(er-PG,)g(rather)g(than)g(p)q(er-AD)h(setup)g(o)o(v)o(erhead.) -28 1334 y(The)e(results)h(are)e(illustrated)g(in)g(T)m(able)g(5.2.)k(They)d (include)g(MD4-based)f(in)o(tegrit)o(y)g(c)o(hec)o(k)h(computation)e(\(for)h (b)q(oth)g(SETUP)h(and)-90 1384 y(A)o(CCEPT)k(pac)o(k)o(ets\))h(at)e(ev)o (ery)i(PG)e(hop.)26 b(The)17 b(\014rst)h(ro)o(w)e(sho)o(ws)h(the)g(a)o(v)o (erage)g(p)q(er)g(PG)g(setup)h(o)o(v)o(erhead)f(whic)o(h)f(is)h(based)g(on)f (the)p 563 1487 854 2 v 563 1489 V 562 1537 2 50 v 571 1537 V 597 1522 a(#)d(of)g(PG)h(hops)p 972 1537 V 981 1537 V 166 w(2)p 1071 1537 V 81 w(3)p 1183 1537 V 91 w(4)p 1295 1537 V 91 w(5)p 1408 1537 V 1417 1537 V 563 1539 854 2 v 563 1541 V 562 1588 2 50 v 571 1588 V 597 1574 a(P)o(er-hop)g(o)o(v)o(erhead)p 972 1588 V 981 1588 V 93 w(50)p 1071 1588 V 59 w(57)p 1183 1588 V 71 w(54)p 1295 1588 V 70 w(58)p 1408 1588 V 1417 1588 V 563 1590 854 2 v 562 1640 2 50 v 571 1640 V 597 1625 a(Route)f(computation) p 972 1640 V 981 1640 V 57 w(20)p 1071 1640 V 59 w(20)p 1183 1640 V 71 w(30)p 1295 1640 V 70 w(30)p 1408 1640 V 1417 1640 V 563 1642 854 2 v 562 1691 2 50 v 571 1691 V 597 1676 a(Setup)h(o)o(v)o (erhead)p 972 1691 V 981 1691 V 132 w(50)p 1071 1691 V 49 w(170)p 1183 1691 V 49 w(215)p 1295 1691 V 49 w(290)p 1408 1691 V 1417 1691 V 563 1693 854 2 v 562 1743 2 50 v 571 1743 V 597 1728 a(T)m(otal)e(o)o(v)o(erhead)p 972 1743 V 981 1743 V 140 w(70)p 1071 1743 V 49 w(190)p 1183 1743 V 49 w(245)p 1295 1743 V 49 w(320)p 1408 1743 V 1417 1743 V 563 1745 854 2 v 563 1747 V 647 1863 a(T)m(able)h(5.2:)k(PR)c(setup)i(o)o(v)o(erhead)g(\(in)e(ms\))-90 1962 y(total)h(o)o(v)o(erhead)i(in)f(ro)o(w)g(4.)22 b(Because)17 b(route)f(computation)d(is)i(a)g(relativ)o(ely)f(exp)q(ensiv)o(e)j(op)q (eration)e(incurred)h(only)f(at)g(the)h(\014rst)g(hop,)-90 2012 y(w)o(e)e(decouple)g(the)h(o)o(v)o(erhead)f(due)g(to)g(route)g (computation)e(from)g(the)i(purely)g(setup-related)h(o)o(v)o(erhead)f(\(as)g (sho)o(wn)g(in)f(ro)o(w)h(3)f(and)h(4\).)-28 2080 y(These)j(results)f(sho)o (w)f(that)g(the)g(p)q(er)h(PG)f(setup)h(cost)g(a)o(v)o(erages)f(ab)q(out)g (55)p Fk(ms)p Fm(.)22 b(This)15 b(n)o(um)o(b)q(er)f(is)h(quite)g(lo)o(w)f (considering)h(that)g(it)-90 2129 y(includes)f(the)h(follo)o(wing)c(sequence) 16 b(of)d(ev)o(en)o(ts)i(at)f(ev)o(ery)h(transit)f(PG:)-39 2230 y(1.)20 b(Con)o(text)14 b(switc)o(h)g(from)e(Kernel)j(to)f(User)h(mo)q (de)e(to)g(receiv)o(e)j(SETUP)-39 2312 y(2.)k(MD4)13 b(digest)h(computation) -39 2395 y(3.)20 b(V)m(alidit)o(y)12 b(c)o(hec)o(king)i(\(including:)j (timeliness,)12 b(previous)j(and)e(next)i(hop)e(reac)o(habilit)o(y)g(and)h (PT)g(v)n(alidation\))-39 2477 y(4.)20 b(Con)o(text)14 b(switc)o(h)g(from)e (User)j(to)f(Kernel)h(mo)q(de)e(to)g(forw)o(ard)h(SETUP)-39 2560 y(5.)20 b(Con)o(text)14 b(switc)o(h)g(from)e(Kernel)j(to)f(User)h(mo)q (de)e(to)g(receiv)o(e)j(A)o(CCEPT)1155 2545 y Fi(6)p -90 2631 864 2 v -44 2658 a Fh(6)-26 2670 y Fg(This)11 b(do)q(es)g(not)f(o)q(ccur)g (immediately)e(after)j(the)g(previous)e(step.)2028 2770 y Fm(69)p eop %%Page: 70 10 bop -39 -108 a Fm(6.)20 b(MD4)13 b(digest)h(computation)-39 -25 y(7.)20 b(PR)13 b(table)h(lo)q(okup)f(to)h(lo)q(cate)g(the)h(PR)e(in)h (question)-39 58 y(8.)20 b(Con)o(text)14 b(switc)o(h)g(from)e(User)j(to)f (Kernel)h(mo)q(de)e(to)g(forw)o(ard)h(A)o(CCEPT)-28 158 y(Although)e(the)h (results)g(app)q(ear)g(reassuring,)g(a)f(real-w)o(orld,)g Fl(deployable)g Fm(implemen)o(tation)d(w)o(ould)j(include)g(encryption-based)i(sig-)-90 208 y(natures)f(whic)o(h)e(will)f(greatly)h(increase)i(the)f(PR)f(setup)i(o)o (v)o(erhead.)18 b(Also,)11 b(since)h(the)g(n)o(um)o(b)q(er)f(of)g(ADs)h(in)f (our)g(conco)q(cted)i(in)o(ternet)o(w)o(ork)-90 258 y(is)i(small)e(and)i(the) h(top)q(ology)e(is)h(simple,)e(o)o(v)o(erhead)j(due)f(to)g(route)h (computation)d(and)i(PT)h(v)n(alidation)d(is)i(k)o(ept)g(arti\014cially)f(lo) o(w.)21 b(On)-90 308 y(the)14 b(other)h(hand,)e(this)h(implemen)o(tation)d(w) o(as)i(not)h(tuned)h(for)e(p)q(erformance.)240 366 y 21313290 21313290 0 0 40258437 52099153 startTexFig 240 366 a %%BeginDocument: pg.ps /FMversion (2.0) def /FrameDict 170 dict def systemdict /errordict known not { /errordict 10 dict def errordict /rangecheck { stop } put } if FrameDict /tmprangecheck errordict /rangecheck get put errordict /rangecheck {FrameDict /bug true put} put FrameDict /bug false put mark currentfile 5 string readline 00 0000000000 cleartomark errordict /rangecheck FrameDict /tmprangecheck get put FrameDict /bug get { /readline { /gstring exch def /gfile exch def /gindex 0 def { gfile read pop dup 10 eq {exit} if dup 13 eq {exit} if gstring exch gindex exch put /gindex gindex 1 add def } loop pop gstring 0 gindex getinterval true } def } if /FMVERSION { FMversion ne { /Times-Roman findfont 18 scalefont setfont 100 100 moveto (FrameMaker version does not match postscript_prolog!) dup = show showpage } if } def /FMLOCAL { FrameDict begin 0 def end } def /gstring FMLOCAL /gfile FMLOCAL /gindex FMLOCAL /orgxfer FMLOCAL /orgproc FMLOCAL /organgle FMLOCAL /orgfreq FMLOCAL FrameDict /graymode true put /yscale FMLOCAL /xscale FMLOCAL /PrintInColor systemdict /colorimage known def PrintInColor { /HUE 0 def /SAT 0 def /BRIGHT 0 def % array of arrays Hue and Sat values for the separations [HUE BRIGHT] /Colors [[0 0 ] % black [0 0 ] % white [0.00 1.0] % red [0.37 1.0] % green [0.60 1.0] % blue [0.50 1.0] % cyan [0.83 1.0] % magenta [0.16 1.0] % comment ] def /BEGINBITMAPCOLOR { BITMAPCOLOR } def /BEGINBITMAPCOLORc { BITMAPCOLORc } def /K { Colors exch get dup 0 get /HUE exch store 1 get /BRIGHT exch store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } def /mysetgray { /SAT exch 1.0 exch sub store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } bind def } { /BEGINBITMAPCOLOR { BITMAPGRAY } def /BEGINBITMAPCOLORc { BITMAPGRAYc } def /mysetgray { setgray } bind def /K { pop } def } ifelse /max {2 copy lt {exch} if pop} bind def /min {2 copy gt {exch} if pop} bind def /mtx matrix defaultmatrix def /setmanualfeed { statusdict /manualfeed true put } def /FMDOCUMENT { array /FMfonts exch def /#copies exch def 0 ne dup {setmanualfeed} if FrameDict begin /manualfeed exch def /paperheight exch def /paperwidth exch def setpapername manualfeed {true} {papersize} ifelse {manualpapersize} {false} ifelse {desperatepapersize} if /yscale exch def /xscale exch def currenttransfer cvlit /orgxfer exch def currentscreen cvlit /orgproc exch def /organgle exch def /orgfreq exch def end } def /pagesave FMLOCAL /orgmatrix FMLOCAL /landscape FMLOCAL /FMBEGINPAGE { FrameDict begin /pagesave save def 3.86 setmiterlimit /landscape exch 0 ne store landscape { 90 rotate 0 exch neg translate pop } { pop pop } ifelse xscale yscale scale /orgmatrix matrix def gsave } def /FMENDPAGE { grestore pagesave restore end showpage } def /fontname FMLOCAL /fontscale FMLOCAL /fontnum FMLOCAL /fontdict FMLOCAL /FMDEFINEFONT { FrameDict begin /fontname exch def /fontscale exch def /fontnum exch def /fontdict fontname findfont fontscale scalefont def fontdict /Encoding get StandardEncoding eq { fontdict DiacriticEncode /fontdict exch def } { fontdict NonDiacriticEncode /fontdict exch def } ifelse FMfonts fontnum fontnum fontdict definefont put end } def /FMNORMALIZEGRAPHICS { newpath 0.0 0.0 moveto 1 setlinewidth 0 setlinecap 0 mysetgray } bind def /FMBEGINEPSF { end /FMEPSF save def /showpage {} def FMNORMALIZEGRAPHICS [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall fx fy translate rotate fw urx llx sub div fh ury lly sub div scale llx neg lly neg translate } bind def /FMENDEPSF { FMEPSF restore FrameDict begin } bind def FrameDict begin /pagedimen { paperheight sub abs 16 lt exch paperwidth sub abs 16 lt and {/papername exch def} {pop} ifelse } def /inch {72 mul} def /setpapername { /papersizedict 14 dict def papersizedict begin /papername /unknown def /Letter 8.5 inch 11.0 inch pagedimen /LetterSmall 7.68 inch 10.16 inch pagedimen /Tabloid 11.0 inch 17.0 inch pagedimen /Ledger 17.0 inch 11.0 inch pagedimen /Legal 8.5 inch 14.0 inch pagedimen /Statement 5.5 inch 8.5 inch pagedimen /Executive 7.5 inch 10.0 inch pagedimen /A3 11.69 inch 16.5 inch pagedimen /A4 8.26 inch 11.69 inch pagedimen /A4Small 7.47 inch 10.85 inch pagedimen /B4 10.125 inch 14.33 inch pagedimen /B5 7.16 inch 10.125 inch pagedimen end } def /papersize { papersizedict begin /Letter {lettertray} def /LetterSmall {lettertray lettersmall} def /Tabloid {11x17tray} def /Ledger {ledgertray} def /Legal {legaltray} def /Statement {statementtray} def /Executive {executivetray} def /A3 {a3tray} def /A4 {a4tray} def /A4Small {a4tray a4small} def /B4 {b4tray} def /B5 {b5tray} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end statusdict begin stopped end } def /manualpapersize { papersizedict begin /Letter {letter} def /LetterSmall {lettersmall} def /Tabloid {11x17} def /Ledger {ledger} def /Legal {legal} def /Statement {statement} def /Executive {executive} def /A3 {a3} def /A4 {a4} def /A4Small {a4small} def /B4 {b4} def /B5 {b5} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end stopped } def /desperatepapersize { statusdict /setpageparams known { paperwidth paperheight 0 1 statusdict begin {setpageparams} stopped pop end } if } def /savematrix { orgmatrix currentmatrix pop } bind def /restorematrix { orgmatrix setmatrix } bind def /dmatrix matrix def /dpi 72 0 dmatrix defaultmatrix dtransform dup mul exch dup mul add sqrt def /freq dpi 18.75 div 8 div round dup 0 eq { pop 1 } if 8 mul dpi exch div def /sangle 1 0 dmatrix defaultmatrix dtransform exch atan def /DiacriticEncoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def /basefontdict FMLOCAL /newfontdict FMLOCAL /DiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {dup /Encoding eq {exch pop DiacriticEncoding} {exch} ifelse newfontdict 3 1 roll put } {pop pop} ifelse } forall newfontdict } bind def /NonDiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {exch newfontdict 3 1 roll put} {pop pop} ifelse } forall newfontdict } bind def /bwidth FMLOCAL /bpside FMLOCAL /bstring FMLOCAL /onbits FMLOCAL /offbits FMLOCAL /xindex FMLOCAL /yindex FMLOCAL /x FMLOCAL /y FMLOCAL /setpattern { /bwidth exch def /bpside exch def /bstring exch def /onbits 0 def /offbits 0 def freq sangle landscape {90 add} if {/y exch def /x exch def /xindex x 1 add 2 div bpside mul cvi def /yindex y 1 add 2 div bpside mul cvi def bstring yindex bwidth mul xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne {/onbits onbits 1 add def 1} {/offbits offbits 1 add def 0} ifelse } setscreen {} settransfer offbits offbits onbits add div mysetgray /graymode false store } bind def /grayness { mysetgray graymode not { /graymode true store orgxfer cvx settransfer orgfreq organgle orgproc cvx setscreen } if } bind def /normalize { transform round exch round exch itransform } bind def /dnormalize { dtransform round exch round exch idtransform } bind def /lnormalize { 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def /H { lnormalize setlinewidth } bind def /Z { setlinecap } bind def /X { fillprocs exch get exec } bind def /V { gsave eofill grestore } bind def /N { stroke } bind def /M {newpath moveto} bind def /E {lineto} bind def /D {curveto} bind def /O {closepath} bind def /n FMLOCAL /L { /n exch def newpath normalize moveto 2 1 n {pop normalize lineto} for } bind def /Y { L closepath } bind def /x1 FMLOCAL /x2 FMLOCAL /y1 FMLOCAL /y2 FMLOCAL /rad FMLOCAL /R { /y2 exch def /x2 exch def /y1 exch def /x1 exch def x1 y1 x2 y1 x2 y2 x1 y2 4 Y } bind def /RR { /rad exch def normalize /y2 exch def /x2 exch def normalize /y1 exch def /x1 exch def newpath x1 y1 rad add moveto x1 y2 x2 y2 rad arcto x2 y2 x2 y1 rad arcto x2 y1 x1 y1 rad arcto x1 y1 x1 y2 rad arcto closepath 16 {pop} repeat } bind def /C { grestore gsave R clip } bind def /U { grestore gsave } bind def /F { FMfonts exch get setfont } bind def /T { moveto show } bind def /RF { rotate 0 ne { -1 1 scale } if } bind def /TF { gsave moveto RF show grestore } bind def /P { moveto 0 32 3 2 roll widthshow } bind def /PF { gsave moveto RF 0 32 3 2 roll widthshow grestore } bind def /S { moveto 0 exch ashow } bind def /SF { gsave moveto RF 0 exch ashow grestore } bind def /B { moveto 0 32 4 2 roll 0 exch awidthshow } bind def /BF { gsave moveto RF 0 32 4 2 roll 0 exch awidthshow grestore } bind def /x FMLOCAL /y FMLOCAL /dx FMLOCAL /dy FMLOCAL /dl FMLOCAL /t FMLOCAL /t2 FMLOCAL /Cos FMLOCAL /Sin FMLOCAL /r FMLOCAL /W { dnormalize /dy exch def /dx exch def normalize /y exch def /x exch def /dl dx dx mul dy dy mul add sqrt def dl 0.0 gt { /t currentlinewidth def savematrix /Cos dx dl div def /Sin dy dl div def /r [Cos Sin Sin neg Cos 0.0 0.0] def /t2 t 2.5 mul 3.5 max def newpath x y translate r concat 0.0 0.0 moveto dl t 2.7 mul sub 0.0 rlineto stroke restorematrix x dx add y dy add translate r concat t 0.67 mul setlinewidth t 1.61 mul neg 0.0 translate 0.0 0.0 moveto t2 1.7 mul neg t2 2.0 div moveto 0.0 0.0 lineto t2 1.7 mul neg t2 2.0 div neg lineto stroke t setlinewidth restorematrix } if } bind def /G { gsave newpath normalize translate 0.0 0.0 moveto dnormalize scale 0.0 0.0 1.0 5 3 roll arc closepath fill grestore } bind def /A { gsave savematrix newpath 2 index 2 div add exch 3 index 2 div sub exch normalize 2 index 2 div sub exch 3 index 2 div add exch translate scale 0.0 0.0 1.0 5 3 roll arc restorematrix stroke grestore } bind def /x FMLOCAL /y FMLOCAL /w FMLOCAL /h FMLOCAL /xx FMLOCAL /yy FMLOCAL /ww FMLOCAL /hh FMLOCAL /FMsaveobject FMLOCAL /FMoptop FMLOCAL /FMdicttop FMLOCAL /BEGINPRINTCODE { /FMdicttop countdictstack 1 add def /FMoptop count 4 sub def /FMsaveobject save def userdict begin /showpage {} def FMNORMALIZEGRAPHICS 3 index neg 3 index neg translate } bind def /ENDPRINTCODE { count -1 FMoptop {pop pop} for countdictstack -1 FMdicttop {pop end} for FMsaveobject restore } bind def /gn { 0 { 46 mul cf read pop 32 sub dup 46 lt {exit} if 46 sub add } loop add } bind def /str FMLOCAL /cfs { /str sl string def 0 1 sl 1 sub {str exch val put} for str def } bind def /ic [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} ] def /sl FMLOCAL /val FMLOCAL /ws FMLOCAL /im FMLOCAL /bs FMLOCAL /cs FMLOCAL /len FMLOCAL /pos FMLOCAL /ms { /sl exch def /val 255 def /ws cfs /im cfs /val 0 def /bs cfs /cs cfs } bind def 400 ms /ip { is 0 cf cs readline pop { ic exch get exec add } forall pop } bind def /wh { /len exch def /pos exch def ws 0 len getinterval im pos len getinterval copy pop pos len } bind def /bl { /len exch def /pos exch def bs 0 len getinterval im pos len getinterval copy pop pos len } bind def /s1 1 string def /fl { /len exch def /pos exch def /val cf s1 readhexstring pop 0 get def pos 1 pos len add 1 sub {im exch val put} for pos len } bind def /hx { 3 copy getinterval cf exch readhexstring pop pop } bind def /h FMLOCAL /w FMLOCAL /d FMLOCAL /lb FMLOCAL /bitmapsave FMLOCAL /is FMLOCAL /cf FMLOCAL /wbytes { dup 8 eq { pop } { 1 eq { 7 add 8 idiv } { 3 add 4 idiv } ifelse } ifelse } bind def /BEGINBITMAPBWc { 1 {} COMMONBITMAPc } bind def /BEGINBITMAPGRAYc { 8 {} COMMONBITMAPc } bind def /BEGINBITMAP2BITc { 2 {} COMMONBITMAPc } bind def /COMMONBITMAPc { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def r /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} image bitmapsave restore grestore } bind def /BEGINBITMAPBW { 1 {} COMMONBITMAP } bind def /BEGINBITMAPGRAY { 8 {} COMMONBITMAP } bind def /BEGINBITMAP2BIT { 2 {} COMMONBITMAP } bind def /COMMONBITMAP { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def r /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } image bitmapsave restore grestore } bind def /Fmcc { /proc2 exch cvlit def /proc1 exch cvlit def /newproc proc1 length proc2 length add array def newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval newproc cvx } bind def /colorsetup { currentcolortransfer /gryt exch def /blut exch def /grnt exch def /redt exch def /ngrayt 256 array def /nredt 256 array def /nbluet 256 array def /ngreent 256 array def 0 1 255 { /indx exch def /cynu 1 red indx get 255 div sub def /magu 1 green indx get 255 div sub def /yelu 1 blue indx get 255 div sub def /k cynu magu min yelu min def /u k currentundercolorremoval exec def nredt indx 1 0 cynu u sub max sub redt exec put ngreent indx 1 0 magu u sub max sub grnt exec put nbluet indx 1 0 yelu u sub max sub blut exec put ngrayt indx 1 k currentblackgeneration exec sub gryt exec put } for {255 mul cvi nredt exch get} {255 mul cvi ngreent exch get} {255 mul cvi nbluet exch get} {255 mul cvi ngrayt exch get} setcolortransfer {pop 0} setundercolorremoval {} setblackgeneration } bind def /fakecolorsetup { /tran 256 string def 0 1 255 { /ind exch def tran ind red ind get 77 mul green ind get 151 mul blue ind get 28 mul add add 256 idiv put } for currenttransfer { 255 mul cvi tran exch get 255.0 div } exch Fmcc settransfer } bind def /BITMAPCOLOR { /d 8 def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def colorsetup /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPCOLORc { /d 8 def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def colorsetup /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPGRAY { 8 {fakecolorsetup} COMMONBITMAP } bind def /BITMAPGRAYc { 8 {fakecolorsetup} COMMONBITMAPc } bind def /ENDBITMAP { } bind def end (2.0) FMVERSION 1 1 2 2 0 1 2 FMDOCUMENT /fillprocs 32 array def fillprocs 0 { 0.000000 grayness } put fillprocs 1 { 0.100000 grayness } put fillprocs 2 { 0.300000 grayness } put fillprocs 3 { 0.500000 grayness } put fillprocs 4 { 0.700000 grayness } put fillprocs 5 { 0.900000 grayness } put fillprocs 6 { 0.970000 grayness } put fillprocs 7 { 1.000000 grayness } put fillprocs 8 {<0f1e3c78f0e1c387> 8 1 setpattern } put fillprocs 9 {<0f87c3e1f0783c1e> 8 1 setpattern } put fillprocs 10 {<cccccccccccccccc> 8 1 setpattern } put fillprocs 11 {<ffff0000ffff0000> 8 1 setpattern } put fillprocs 12 {<8142241818244281> 8 1 setpattern } put fillprocs 13 {<03060c183060c081> 8 1 setpattern } put fillprocs 14 {<8040201008040201> 8 1 setpattern } put fillprocs 15 {} put fillprocs 16 { 1.000000 grayness } put fillprocs 17 { 0.900000 grayness } put fillprocs 18 { 0.700000 grayness } put fillprocs 19 { 0.500000 grayness } put fillprocs 20 { 0.300000 grayness } put fillprocs 21 { 0.100000 grayness } put fillprocs 22 { 0.030000 grayness } put fillprocs 23 { 0.000000 grayness } put fillprocs 24 {<f0e1c3870f1e3c78> 8 1 setpattern } put fillprocs 25 {<f0783c1e0f87c3e1> 8 1 setpattern } put fillprocs 26 {<3333333333333333> 8 1 setpattern } put fillprocs 27 {<0000ffff0000ffff> 8 1 setpattern } put fillprocs 28 {<7ebddbe7e7dbbd7e> 8 1 setpattern } put fillprocs 29 {<fcf9f3e7cf9f3f7e> 8 1 setpattern } put fillprocs 30 {<7fbfdfeff7fbfdfe> 8 1 setpattern } put fillprocs 31 {} put 0 18 /Times-Roman FMDEFINEFONT 1 14 /NewCenturySchlbk-Roman FMDEFINEFONT 612 792 0 FMBEGINPAGE 0 0 612 792 C 0 0 612 792 R 7 X 0 K V 72 746 540 756 R V 72 32.67 540 42.67 R V 222.72 664.75 385.28 697.85 R 0 X V 3 H 2 Z N 167 404 546 719 R 7 X V 9 X N 166 61 545 384 R 7 X V 9 X N 284.44 329.23 473.21 369.8 R 5 X V 0 X N 0 F (Internet Protocol \050IP\051) 210.73 258.94 T (IDPR Packet Forwarding) 288.51 343.29 T 270.98 223.86 269.9 244.83 281.93 227.62 276.45 225.74 4 Y V 280.02 215.22 276.38 225.96 2 L N 329.93 323.6 350.16 329.26 336.01 313.74 332.97 318.67 4 Y V 275.59 283.74 333.19 318.77 2 L N 456.8 234.55 458.24 213.6 445.91 230.6 451.36 232.58 4 Y V 416.54 329.23 451.46 232.33 2 L N 215.54 178.49 339.43 215.22 R N (Interface Driver) 221.63 192.31 T 400.74 176.85 524.63 213.58 R N (Interface Driver) 406.83 190.67 T 210.49 101.21 510.72 101.21 2 L 4 H N 410.94 102.98 389.98 101.78 407.12 113.91 409.03 108.44 4 Y V 464.58 175.76 M 485.74 138.04 487.22 135.39 409.08 108.33 D 3 H 0 Z N 289.97 160.29 280.64 179.07 298.5 168.09 294.24 164.19 4 Y V 298.35 102.85 M 313.98 134.64 316.28 139.32 294.27 164.14 D N (network) 323 106.39 T 186.54 510.15 310.43 542.56 R 2 Z N (Interface Driver) 193.63 520.26 T 402.74 509.49 526.63 541.9 R N (Interface Driver) 408.83 521.19 T 212.49 442.74 512.72 442.74 2 L 4 H N 412.98 443.61 391.99 443.23 409.59 454.67 411.29 449.14 4 Y V 466.58 508.53 M 487.72 475.28 489.22 472.91 411.31 449.1 D 3 H 0 Z N (network) 325 446.83 T 334.72 583.99 497.28 617.09 R 5 X V 2 Z 0 X N (IDPR Encapsulation) 343 594.12 T 276.68 489.72 268.99 509.27 285.87 496.77 281.27 493.24 4 Y V 289.86 443.38 M 294.88 468.63 295.8 473.24 281.22 493.19 D 0 Z N 283.12 646.73 294.99 664.05 294.1 643.07 288.61 644.9 4 Y V 255 543.39 288.7 645.12 2 L 2 Z N 388.2 633.08 400.99 616.42 381.32 623.76 384.76 628.42 4 Y V 336 664.04 384.96 628.27 2 L N 449.41 558.92 458.98 540.22 440.96 551 445.19 554.96 4 Y V 418 583.87 445.37 554.77 2 L N 1 F (a. encapsulation of data packets) 246.52 420.23 T (b. transit packet switching) 262 77 T 0 F (Internet Protocol \050IP\051) 269.73 679.49 T 204.37 245.37 366.93 282.88 R N 263.36 665.37 430.93 701.88 R N FMENDPAGE %%EndDocument 240 366 a endTexFig 444 1778 a Fm(T)m(able)g(5.3:)k(IDPR)c(encapsulation)h(and)g(transit)g(pac)o (k)o(et)g(switc)o(hing)-28 1896 y(W)m(e)i(also)g(measured)g(the)h(o)o(v)o (erhead)f(incurred)h(b)o(y)f(IDPR)g(data)g(pac)o(k)o(ets)h(in)e(tra)o(v)o (ersing)i(previously)f(established)h(PRs.)25 b(\(Figure)-90 1945 y(5.3)16 b(depicts)i(the)f(placemen)o(t)g(of)f(the)i(encapsulation)e (and)h(pac)o(k)o(et)h(switc)o(hing)e(functions\).)28 b(As)17 b(b)q(efore,)h(w)o(e)f(used)h(the)f(ICMP)h(Ec)o(ho)-90 1995 y(proto)q(col.)23 b(The)15 b(results)i(in)e(T)m(able)g(5.4)f(represen)o(t)k (the)e(the)g(round-trip)f(times)g(\(in)g(milliseconds\))f(for)h(tra)o(v)o (ersing)g(paths)h(of)f(v)n(ariable)-90 2045 y(length.)j(F)m(or)12 b(eac)o(h)i(path)f(length)g(w)o(e)g(b)q(egan)g(b)o(y)g(timing)e(data)h(pac)o (k)o(ets)i(without)f(IDPR)f(\(sub)q(column)h(A\).)f(These)j(n)o(um)o(b)q(ers) d(pro)o(vide)h(a)-90 2095 y(basis)f(for)f(comparison.)16 b(W)m(e)11 b(then)h(timed)f(the)h(same)e(pac)o(k)o(et)i(\015o)o(ws)g(across)h(IDPR-con)o (trolled)d(paths)i(\(sub)q(column)f(B\).)h(This)f(w)o(as)h(done)-90 2145 y(to)f(isolate)g(as)g(m)o(uc)o(h)f(as)h(p)q(ossible)h(the)g(o)o(v)o (erhead)f(due)h(to)f(additional)e(pac)o(k)o(et)j(length)f(and)g(IDPR-related) g(pro)q(cessing)h(in)f(PGs.)18 b(Finally)m(,)-90 2194 y(w)o(e)13 b Fl(plugge)n(d)h(in)f Fm(MD4-based)f(in)o(tegrit)o(y)h(c)o(hec)o(king)f(to)h (obtain)f(the)h(timings)e(of)h(full-blo)o(wn)e(IDPR)i(pac)o(k)o(et)i(switc)o (hing)e(\(sub)q(column)g(C\).)-28 2262 y(Unlik)o(e)i(PR)g(setup)h(o)o(v)o (erhead,)g(the)g(n)o(um)o(b)q(ers)f(for)g(data)g(pac)o(k)o(et)g(o)o(v)o (erhead)h(are)g(quite)f(realistic)g(since)h(all)f(proto)q(col)g(features)h (ha)o(v)o(e)-90 2312 y(b)q(een)i(implemen)o(ted.)k(The)16 b(only)f(exception) h(is)g(the)g(PR)g(table)f(lo)q(okup.)23 b(Recall)15 b(that)g(a)h(PG)f(uses)i (the)f(PRid)f(\014eld)h(presen)o(t)h(in)e(eac)o(h)-90 2362 y(data)e(pac)o(k)o(et)h(to)g(lo)q(cate)f(an)h(appropriate)f(PR)g(table)h(en)o (try)m(.)k(Because)d(the)g(v)o(olume)c(of)i(tra\016c)h(on)f(our)h(expiremen)o (tal)e Fl("internetwork")-90 2412 y Fm(w)o(as)j(k)o(ept)h(arti\014cially)d (lo)o(w,)h(PR)h(table)h(lo)q(okups)e(w)o(ere)i(relativ)o(ely)f(fast.)22 b(On)15 b(the)h(other)g(hand,)f(our)g(table)g(lo)q(okups)g(w)o(ere)h(p)q (erformed)-90 2461 y(sequen)o(tially)m(.)30 b(Whereas,)20 b(a)e(more)f(p)q (erformance-tuned)i(implemen)o(tation)c(able)j(to)g(supp)q(ort)h(large)f(v)o (olumes)f(of)h(in)o(ter-AD)g(tra\016c)-90 2511 y(w)o(ould)13 b(necessarily)i(use)g(some)e(kind)g(of)g(a)h(fast)g(hashing)f(tec)o(hnique)i (for)f(table)f(lo)q(okups.)-28 2579 y(Judging)i(b)o(y)g(the)h(ab)q(o)o(v)o(e) g(results,)g(the)g(o)o(v)o(erhead)g(in)o(tro)q(duced)g(b)o(y)f(IDPR)g (encapsulation)h(and)f(transit)h(pac)o(k)o(et)f(switc)o(hing,)g(while)-90 2629 y(not)i(negligible,)f(app)q(ears)i(to)f(b)q(e)g(su\016cien)o(tly)g(lo)o (w)f(to)h(b)q(e)h(of)e(little)g(hindrance)i(to)f(existing)g(transp)q(ort)h (la)o(y)o(er)e(proto)q(cols.)28 b(Ev)o(en)17 b(for)2028 2770 y(70)p eop %%Page: 71 11 bop 240 -150 a 21313290 18945146 0 0 40258437 52099153 startTexFig 240 -150 a %%BeginDocument: dres.ps /FMversion (2.0) def /FrameDict 170 dict def systemdict /errordict known not { /errordict 10 dict def errordict /rangecheck { stop } put } if FrameDict /tmprangecheck errordict /rangecheck get put errordict /rangecheck {FrameDict /bug true put} put FrameDict /bug false put mark currentfile 5 string readline 00 0000000000 cleartomark errordict /rangecheck FrameDict /tmprangecheck get put FrameDict /bug get { /readline { /gstring exch def /gfile exch def /gindex 0 def { gfile read pop dup 10 eq {exit} if dup 13 eq {exit} if gstring exch gindex exch put /gindex gindex 1 add def } loop pop gstring 0 gindex getinterval true } def } if /FMVERSION { FMversion ne { /Times-Roman findfont 18 scalefont setfont 100 100 moveto (FrameMaker version does not match postscript_prolog!) dup = show showpage } if } def /FMLOCAL { FrameDict begin 0 def end } def /gstring FMLOCAL /gfile FMLOCAL /gindex FMLOCAL /orgxfer FMLOCAL /orgproc FMLOCAL /organgle FMLOCAL /orgfreq FMLOCAL FrameDict /graymode true put /yscale FMLOCAL /xscale FMLOCAL /PrintInColor systemdict /colorimage known def PrintInColor { /HUE 0 def /SAT 0 def /BRIGHT 0 def % array of arrays Hue and Sat values for the separations [HUE BRIGHT] /Colors [[0 0 ] % black [0 0 ] % white [0.00 1.0] % red [0.37 1.0] % green [0.60 1.0] % blue [0.50 1.0] % cyan [0.83 1.0] % magenta [0.16 1.0] % comment ] def /BEGINBITMAPCOLOR { BITMAPCOLOR } def /BEGINBITMAPCOLORc { BITMAPCOLORc } def /K { Colors exch get dup 0 get /HUE exch store 1 get /BRIGHT exch store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } def /mysetgray { /SAT exch 1.0 exch sub store HUE 0 eq BRIGHT 0 eq and {1.0 SAT sub setgray } {HUE SAT BRIGHT sethsbcolor } ifelse } bind def } { /BEGINBITMAPCOLOR { BITMAPGRAY } def /BEGINBITMAPCOLORc { BITMAPGRAYc } def /mysetgray { setgray } bind def /K { pop } def } ifelse /max {2 copy lt {exch} if pop} bind def /min {2 copy gt {exch} if pop} bind def /mtx matrix defaultmatrix def /setmanualfeed { statusdict /manualfeed true put } def /FMDOCUMENT { array /FMfonts exch def /#copies exch def 0 ne dup {setmanualfeed} if FrameDict begin /manualfeed exch def /paperheight exch def /paperwidth exch def setpapername manualfeed {true} {papersize} ifelse {manualpapersize} {false} ifelse {desperatepapersize} if /yscale exch def /xscale exch def currenttransfer cvlit /orgxfer exch def currentscreen cvlit /orgproc exch def /organgle exch def /orgfreq exch def end } def /pagesave FMLOCAL /orgmatrix FMLOCAL /landscape FMLOCAL /FMBEGINPAGE { FrameDict begin /pagesave save def 3.86 setmiterlimit /landscape exch 0 ne store landscape { 90 rotate 0 exch neg translate pop } { pop pop } ifelse xscale yscale scale /orgmatrix matrix def gsave } def /FMENDPAGE { grestore pagesave restore end showpage } def /fontname FMLOCAL /fontscale FMLOCAL /fontnum FMLOCAL /fontdict FMLOCAL /FMDEFINEFONT { FrameDict begin /fontname exch def /fontscale exch def /fontnum exch def /fontdict fontname findfont fontscale scalefont def fontdict /Encoding get StandardEncoding eq { fontdict DiacriticEncode /fontdict exch def } { fontdict NonDiacriticEncode /fontdict exch def } ifelse FMfonts fontnum fontnum fontdict definefont put end } def /FMNORMALIZEGRAPHICS { newpath 0.0 0.0 moveto 1 setlinewidth 0 setlinecap 0 mysetgray } bind def /FMBEGINEPSF { end /FMEPSF save def /showpage {} def FMNORMALIZEGRAPHICS [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall fx fy translate rotate fw urx llx sub div fh ury lly sub div scale llx neg lly neg translate } bind def /FMENDEPSF { FMEPSF restore FrameDict begin } bind def FrameDict begin /pagedimen { paperheight sub abs 16 lt exch paperwidth sub abs 16 lt and {/papername exch def} {pop} ifelse } def /inch {72 mul} def /setpapername { /papersizedict 14 dict def papersizedict begin /papername /unknown def /Letter 8.5 inch 11.0 inch pagedimen /LetterSmall 7.68 inch 10.16 inch pagedimen /Tabloid 11.0 inch 17.0 inch pagedimen /Ledger 17.0 inch 11.0 inch pagedimen /Legal 8.5 inch 14.0 inch pagedimen /Statement 5.5 inch 8.5 inch pagedimen /Executive 7.5 inch 10.0 inch pagedimen /A3 11.69 inch 16.5 inch pagedimen /A4 8.26 inch 11.69 inch pagedimen /A4Small 7.47 inch 10.85 inch pagedimen /B4 10.125 inch 14.33 inch pagedimen /B5 7.16 inch 10.125 inch pagedimen end } def /papersize { papersizedict begin /Letter {lettertray} def /LetterSmall {lettertray lettersmall} def /Tabloid {11x17tray} def /Ledger {ledgertray} def /Legal {legaltray} def /Statement {statementtray} def /Executive {executivetray} def /A3 {a3tray} def /A4 {a4tray} def /A4Small {a4tray a4small} def /B4 {b4tray} def /B5 {b5tray} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end statusdict begin stopped end } def /manualpapersize { papersizedict begin /Letter {letter} def /LetterSmall {lettersmall} def /Tabloid {11x17} def /Ledger {ledger} def /Legal {legal} def /Statement {statement} def /Executive {executive} def /A3 {a3} def /A4 {a4} def /A4Small {a4small} def /B4 {b4} def /B5 {b5} def /unknown {unknown} def papersizedict dup papername known {papername} {/unknown} ifelse get end stopped } def /desperatepapersize { statusdict /setpageparams known { paperwidth paperheight 0 1 statusdict begin {setpageparams} stopped pop end } if } def /savematrix { orgmatrix currentmatrix pop } bind def /restorematrix { orgmatrix setmatrix } bind def /dmatrix matrix def /dpi 72 0 dmatrix defaultmatrix dtransform dup mul exch dup mul add sqrt def /freq dpi 18.75 div 8 div round dup 0 eq { pop 1 } if 8 mul dpi exch div def /sangle 1 0 dmatrix defaultmatrix dtransform exch atan def /DiacriticEncoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def /basefontdict FMLOCAL /newfontdict FMLOCAL /DiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {dup /Encoding eq {exch pop DiacriticEncoding} {exch} ifelse newfontdict 3 1 roll put } {pop pop} ifelse } forall newfontdict } bind def /NonDiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {exch newfontdict 3 1 roll put} {pop pop} ifelse } forall newfontdict } bind def /bwidth FMLOCAL /bpside FMLOCAL /bstring FMLOCAL /onbits FMLOCAL /offbits FMLOCAL /xindex FMLOCAL /yindex FMLOCAL /x FMLOCAL /y FMLOCAL /setpattern { /bwidth exch def /bpside exch def /bstring exch def /onbits 0 def /offbits 0 def freq sangle landscape {90 add} if {/y exch def /x exch def /xindex x 1 add 2 div bpside mul cvi def /yindex y 1 add 2 div bpside mul cvi def bstring yindex bwidth mul xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne {/onbits onbits 1 add def 1} {/offbits offbits 1 add def 0} ifelse } setscreen {} settransfer offbits offbits onbits add div mysetgray /graymode false store } bind def /grayness { mysetgray graymode not { /graymode true store orgxfer cvx settransfer orgfreq organgle orgproc cvx setscreen } if } bind def /normalize { transform round exch round exch itransform } bind def /dnormalize { dtransform round exch round exch idtransform } bind def /lnormalize { 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def /H { lnormalize setlinewidth } bind def /Z { setlinecap } bind def /X { fillprocs exch get exec } bind def /V { gsave eofill grestore } bind def /N { stroke } bind def /M {newpath moveto} bind def /E {lineto} bind def /D {curveto} bind def /O {closepath} bind def /n FMLOCAL /L { /n exch def newpath normalize moveto 2 1 n {pop normalize lineto} for } bind def /Y { L closepath } bind def /x1 FMLOCAL /x2 FMLOCAL /y1 FMLOCAL /y2 FMLOCAL /rad FMLOCAL /R { /y2 exch def /x2 exch def /y1 exch def /x1 exch def x1 y1 x2 y1 x2 y2 x1 y2 4 Y } bind def /RR { /rad exch def normalize /y2 exch def /x2 exch def normalize /y1 exch def /x1 exch def newpath x1 y1 rad add moveto x1 y2 x2 y2 rad arcto x2 y2 x2 y1 rad arcto x2 y1 x1 y1 rad arcto x1 y1 x1 y2 rad arcto closepath 16 {pop} repeat } bind def /C { grestore gsave R clip } bind def /U { grestore gsave } bind def /F { FMfonts exch get setfont } bind def /T { moveto show } bind def /RF { rotate 0 ne { -1 1 scale } if } bind def /TF { gsave moveto RF show grestore } bind def /P { moveto 0 32 3 2 roll widthshow } bind def /PF { gsave moveto RF 0 32 3 2 roll widthshow grestore } bind def /S { moveto 0 exch ashow } bind def /SF { gsave moveto RF 0 exch ashow grestore } bind def /B { moveto 0 32 4 2 roll 0 exch awidthshow } bind def /BF { gsave moveto RF 0 32 4 2 roll 0 exch awidthshow grestore } bind def /x FMLOCAL /y FMLOCAL /dx FMLOCAL /dy FMLOCAL /dl FMLOCAL /t FMLOCAL /t2 FMLOCAL /Cos FMLOCAL /Sin FMLOCAL /r FMLOCAL /W { dnormalize /dy exch def /dx exch def normalize /y exch def /x exch def /dl dx dx mul dy dy mul add sqrt def dl 0.0 gt { /t currentlinewidth def savematrix /Cos dx dl div def /Sin dy dl div def /r [Cos Sin Sin neg Cos 0.0 0.0] def /t2 t 2.5 mul 3.5 max def newpath x y translate r concat 0.0 0.0 moveto dl t 2.7 mul sub 0.0 rlineto stroke restorematrix x dx add y dy add translate r concat t 0.67 mul setlinewidth t 1.61 mul neg 0.0 translate 0.0 0.0 moveto t2 1.7 mul neg t2 2.0 div moveto 0.0 0.0 lineto t2 1.7 mul neg t2 2.0 div neg lineto stroke t setlinewidth restorematrix } if } bind def /G { gsave newpath normalize translate 0.0 0.0 moveto dnormalize scale 0.0 0.0 1.0 5 3 roll arc closepath fill grestore } bind def /A { gsave savematrix newpath 2 index 2 div add exch 3 index 2 div sub exch normalize 2 index 2 div sub exch 3 index 2 div add exch translate scale 0.0 0.0 1.0 5 3 roll arc restorematrix stroke grestore } bind def /x FMLOCAL /y FMLOCAL /w FMLOCAL /h FMLOCAL /xx FMLOCAL /yy FMLOCAL /ww FMLOCAL /hh FMLOCAL /FMsaveobject FMLOCAL /FMoptop FMLOCAL /FMdicttop FMLOCAL /BEGINPRINTCODE { /FMdicttop countdictstack 1 add def /FMoptop count 4 sub def /FMsaveobject save def userdict begin /showpage {} def FMNORMALIZEGRAPHICS 3 index neg 3 index neg translate } bind def /ENDPRINTCODE { count -1 FMoptop {pop pop} for countdictstack -1 FMdicttop {pop end} for FMsaveobject restore } bind def /gn { 0 { 46 mul cf read pop 32 sub dup 46 lt {exit} if 46 sub add } loop add } bind def /str FMLOCAL /cfs { /str sl string def 0 1 sl 1 sub {str exch val put} for str def } bind def /ic [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} ] def /sl FMLOCAL /val FMLOCAL /ws FMLOCAL /im FMLOCAL /bs FMLOCAL /cs FMLOCAL /len FMLOCAL /pos FMLOCAL /ms { /sl exch def /val 255 def /ws cfs /im cfs /val 0 def /bs cfs /cs cfs } bind def 400 ms /ip { is 0 cf cs readline pop { ic exch get exec add } forall pop } bind def /wh { /len exch def /pos exch def ws 0 len getinterval im pos len getinterval copy pop pos len } bind def /bl { /len exch def /pos exch def bs 0 len getinterval im pos len getinterval copy pop pos len } bind def /s1 1 string def /fl { /len exch def /pos exch def /val cf s1 readhexstring pop 0 get def pos 1 pos len add 1 sub {im exch val put} for pos len } bind def /hx { 3 copy getinterval cf exch readhexstring pop pop } bind def /h FMLOCAL /w FMLOCAL /d FMLOCAL /lb FMLOCAL /bitmapsave FMLOCAL /is FMLOCAL /cf FMLOCAL /wbytes { dup 8 eq { pop } { 1 eq { 7 add 8 idiv } { 3 add 4 idiv } ifelse } ifelse } bind def /BEGINBITMAPBWc { 1 {} COMMONBITMAPc } bind def /BEGINBITMAPGRAYc { 8 {} COMMONBITMAPc } bind def /BEGINBITMAP2BITc { 2 {} COMMONBITMAPc } bind def /COMMONBITMAPc { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def r /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} image bitmapsave restore grestore } bind def /BEGINBITMAPBW { 1 {} COMMONBITMAP } bind def /BEGINBITMAPGRAY { 8 {} COMMONBITMAP } bind def /BEGINBITMAP2BIT { 2 {} COMMONBITMAP } bind def /COMMONBITMAP { /r exch def /d exch def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def r /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } image bitmapsave restore grestore } bind def /Fmcc { /proc2 exch cvlit def /proc1 exch cvlit def /newproc proc1 length proc2 length add array def newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval newproc cvx } bind def /colorsetup { currentcolortransfer /gryt exch def /blut exch def /grnt exch def /redt exch def /ngrayt 256 array def /nredt 256 array def /nbluet 256 array def /ngreent 256 array def 0 1 255 { /indx exch def /cynu 1 red indx get 255 div sub def /magu 1 green indx get 255 div sub def /yelu 1 blue indx get 255 div sub def /k cynu magu min yelu min def /u k currentundercolorremoval exec def nredt indx 1 0 cynu u sub max sub redt exec put ngreent indx 1 0 magu u sub max sub grnt exec put nbluet indx 1 0 yelu u sub max sub blut exec put ngrayt indx 1 k currentblackgeneration exec sub gryt exec put } for {255 mul cvi nredt exch get} {255 mul cvi ngreent exch get} {255 mul cvi nbluet exch get} {255 mul cvi ngrayt exch get} setcolortransfer {pop 0} setundercolorremoval {} setblackgeneration } bind def /fakecolorsetup { /tran 256 string def 0 1 255 { /ind exch def tran ind red ind get 77 mul green ind get 151 mul blue ind get 28 mul add add 256 idiv put } for currenttransfer { 255 mul cvi tran exch get 255.0 div } exch Fmcc settransfer } bind def /BITMAPCOLOR { /d 8 def gsave translate rotate scale /h exch def /w exch def /bitmapsave save def colorsetup /is w d wbytes string def /cf currentfile def w h d [w 0 0 h neg 0 h] { cf is readhexstring pop } {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPCOLORc { /d 8 def gsave translate rotate scale /h exch def /w exch def /lb w d wbytes def sl lb lt {lb ms} if /bitmapsave save def colorsetup /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h d [w 0 0 h neg 0 h] {ip} {is} {is} true 3 colorimage bitmapsave restore grestore } bind def /BITMAPGRAY { 8 {fakecolorsetup} COMMONBITMAP } bind def /BITMAPGRAYc { 8 {fakecolorsetup} COMMONBITMAPc } bind def /ENDBITMAP { } bind def end (2.0) FMVERSION 1 1 2 2 0 1 2 FMDOCUMENT /fillprocs 32 array def fillprocs 0 { 0.000000 grayness } put fillprocs 1 { 0.100000 grayness } put fillprocs 2 { 0.300000 grayness } put fillprocs 3 { 0.500000 grayness } put fillprocs 4 { 0.700000 grayness } put fillprocs 5 { 0.900000 grayness } put fillprocs 6 { 0.970000 grayness } put fillprocs 7 { 1.000000 grayness } put fillprocs 8 {<0f1e3c78f0e1c387> 8 1 setpattern } put fillprocs 9 {<0f87c3e1f0783c1e> 8 1 setpattern } put fillprocs 10 {<cccccccccccccccc> 8 1 setpattern } put fillprocs 11 {<ffff0000ffff0000> 8 1 setpattern } put fillprocs 12 {<8142241818244281> 8 1 setpattern } put fillprocs 13 {<03060c183060c081> 8 1 setpattern } put fillprocs 14 {<8040201008040201> 8 1 setpattern } put fillprocs 15 {} put fillprocs 16 { 1.000000 grayness } put fillprocs 17 { 0.900000 grayness } put fillprocs 18 { 0.700000 grayness } put fillprocs 19 { 0.500000 grayness } put fillprocs 20 { 0.300000 grayness } put fillprocs 21 { 0.100000 grayness } put fillprocs 22 { 0.030000 grayness } put fillprocs 23 { 0.000000 grayness } put fillprocs 24 {<f0e1c3870f1e3c78> 8 1 setpattern } put fillprocs 25 {<f0783c1e0f87c3e1> 8 1 setpattern } put fillprocs 26 {<3333333333333333> 8 1 setpattern } put fillprocs 27 {<0000ffff0000ffff> 8 1 setpattern } put fillprocs 28 {<7ebddbe7e7dbbd7e> 8 1 setpattern } put fillprocs 29 {<fcf9f3e7cf9f3f7e> 8 1 setpattern } put fillprocs 30 {<7fbfdfeff7fbfdfe> 8 1 setpattern } put fillprocs 31 {} put 0 24 /Times-Roman FMDEFINEFONT 1 18 /Times-Roman FMDEFINEFONT 612 792 0 FMBEGINPAGE 0 0 612 792 C 0 0 612 792 R 7 X 0 K V 72 746 540 756 R V 72 32.67 540 42.67 R V 172 185.82 605 477.66 R V 3 H 2 Z 0 X N 0 F (16) 118 442.34 T (256) 118 324.82 T (64) 118 383.58 T (512) 118 266.06 T (1024) 118 207.3 T 389 521.56 389 185 2 L N 495 520.75 495 185.82 2 L N 173 477.66 605 524 R N 171 477.66 94 477.66 94 185.82 170.29 185.82 4 L N 174 497.17 604 497.17 2 L N (2) 220 505.07 T (3) 330 503.45 T (4) 440 504.26 T (5) 549 505.07 T 1 F (a) 407 483.38 T (b) 437 481.76 T (c) 475 482.57 T 424 496.36 424 185.82 2 L 1 H N 462 497.99 462 187.45 2 L N (a) 514 482.57 T (b) 544 480.95 T (c) 582 481.76 T 531 495.55 531 185 2 L N 569 497.17 569 186.63 2 L N 95 419.94 604 419.94 2 L 3 H N 94 358.97 603 358.97 2 L N 95 297.19 605 297.19 2 L N 96 247.1 605 247.1 2 L N 0 F (# of PG hops) 316 534 T (Packet size \050in bytes\051) 0 -270 83 229 TF 1 F (a. without IDPR) 205 160 T (b. IDPR \050no integrity checking\051) 205 136 T (c. IDPR with MD4 integrity checking) 205 112 T ( 7.5) 427 440 T ( 9) 472 440 T (8) 403 440 T (10) 504 439 T (10) 539 439 T (12) 575 439 T 285 521.75 285 186 2 L N (a) 298 485.38 T (b) 334 483.76 T (c) 366 484.57 T 319 498.36 319 187.82 2 L 1 H N 351 496.99 351 186.45 2 L N (5) 295 440 T (5) 296 379 T (7) 366 439 T (6) 331 440 T (7) 330 377 T (8) 366 378 T (10) 296 268 T (13.5) 353 267 T (1) 326 268.39 T (1) 334.33 268.39 T (8) 301 322.73 T (9) 328 323 T (10.5) 354 322.39 T (15) 293 211.73 T (17) 329 211 T ( 20) 356 212.39 T (a) 191 483.38 T (b) 221 481.76 T (c) 259 482.57 T 208 496.36 208 185.82 2 L N 246 497.99 246 187.45 2 L N (4) 224 441 T (4.5) 254 440 T (5) 224 379 T (5.5) 255 379 T (4) 190 440 T (4) 189 380 T (6) 189 323 T (7) 225 323 T (8) 260 323 T (8) 186 267.73 T (9) 221 269 T (10.5) 247 268.39 T (12) 181 209.73 T (14) 221 210 T ( 15) 254 211.39 T (23) 395 209.73 T (23.5) 429 209 T ( 30) 468 211.39 T (28) 502 209.73 T (33) 542 210 T ( 35) 575 211.39 T (17) 396 266.73 T (17) 436 267 T (22) 469 268.39 T (19) 503 266.73 T (20) 543 267 T ( 26) 576 268.39 T (13) 396 320.73 T (12.5) 426 320 T ( 16) 465 321.39 T (14) 503 320.73 T (17) 543 321 T ( 18) 576 322.39 T ( 8) 395 379.73 T ( 9) 435 380 T ( 10) 468 381.39 T ( 10) 502 379.73 T (12) 542 380 T ( 16) 575 381.39 T FMENDPAGE %%EndDocument 240 -150 a endTexFig 604 994 a Fm(T)m(able)13 b(5.4:)k(P)o(ac)o(k)o(et)d(round-trip)g(dela)o(y)g (\(in)f(ms\))-90 1129 y(large)k(pac)o(k)o(ets)h(\(e.g.,)f(1Kb)o(yte\))h(IDPR) f(pac)o(k)o(et)g(switc)o(hing)g(dela)o(y)g(amoun)o(ts)f(to)h(less)h(than)f(1) p Fk(ms)h Fm(p)q(er)g(PG)f(hop.)28 b(This)18 b(is)f(esp)q(ecially)-90 1179 y(encouraging)d(considering)g(that)g(the)g(MD4)g(digest)g(computation)e (\(p)q(erformed)i(at)f(eac)o(h)i(hop\))f(alone)f(tak)o(es)h(appro)o(ximately) e(0)p Fk(:)p Fm(7)p Fk(ms)p Fm(.)2028 2770 y(71)p eop %%Page: 72 12 bop -90 192 a Ff(Chapter)23 b(6)-90 367 y(Conclusions)f(and)i(F)-6 b(uture)23 b(W)-6 b(ork)-90 601 y Fm(This)13 b(\014nal)f(c)o(hapter)i (summarizes)d(the)i(con)o(tributions)g(of)f(this)h(thesis)h(and)e(concludes)i (with)f(a)f(discussion)i(of)e(outstanding)g(issues)i(and)-90 651 y(future)g(w)o(ork.)-90 803 y Ff(6.1)70 b(Con)n(tributions)22 b(of)h(This)f(Thesis)-90 912 y Fm(This)15 b(thesis)h(represen)o(ts)h(the)f (\014rst)f(in-depth)g(treatmen)o(t)g(of)f(access)j(con)o(trol)d(and)h(p)q (olicy)f(enforcemen)o(t)h(in)g(in)o(ternet)o(w)o(orks.)22 b(Its)15 b(main)-90 962 y(result)j(is)g(the)g(design)g(of)f(an)h(arc)o(hitecture)h (geared)g(to)o(w)o(ards)e(enforcing)h(a)f(broad)h(range)g(of)f(p)q(olicies.) 29 b(The)18 b(con)o(tributions)g(of)f(this)-90 1012 y(researc)o(h)f(can)e(b)q (e)g(divided)g(in)o(to)f(three)i(ma)r(jor)d(parts:)-28 1100 y Fd(\017)21 b Fm(A)14 b(framew)o(ork)e(for)i(access)h(con)o(trol)f(in)f(in)o (ternet)o(w)o(orks)-28 1176 y Fd(\017)21 b Fm(Design)13 b(of)h(stub)g(AD)g(p) q(olicy)f(enforcemen)o(t)-28 1253 y Fd(\017)21 b Fm(Design)13 b(of)h(transit)g(AD)g(p)q(olicy)f(enforcemen)o(t)-90 1341 y(In)20 b(addition,)g(design)g(c)o(hoices)g(are)h(reinforced)f(b)o(y)g(exp)q(erimen)o (tal)f(results)i(obtained)f(from)e(functional)g(implemen)o(tations)f(of)i (the)-90 1391 y(prop)q(osed)c(mec)o(hanisms.)-90 1527 y Fe(6.1.1)55 b(F)-5 b(ramew)n(ork)-90 1621 y Fm(In)17 b(Chapter)g(1,)f(w)o(e)h(in)o(tro)q (duced)h(the)f(problem)e(of)h(p)q(olicy)g(enforcemen)o(t)h(in)f(the)h(in)o (ternet)o(w)o(ork)g(en)o(vironmen)o(t.)25 b(It)17 b(w)o(as)f(sho)o(wn)h(that) -90 1671 y(di\013eren)o(t)f(t)o(yp)q(es)g(of)f(con)o(trols)g(are)h(necessary) h(for)e(con)o(trolling)f(access)j(to)e(three)h(main)d(ob)r(jects)k(of)d(p)q (olicy)h(\(resource)i(t)o(yp)q(es\):)22 b(i\))15 b(end-)-90 1721 y(systems,)g(ii\))g(net)o(w)o(ork)h(resources,)h(and)e(iii\))g(in)o (ternet)o(w)o(ork)g(routes.)24 b(Owing)15 b(to)g(the)h(nature)g(of)f(service) i(pro)o(vided)e(and)g(the)h(t)o(yp)q(es)h(of)-90 1771 y(p)q(oten)o(tial)c (threats,)i(w)o(e)f(made)f(a)g(further)i(distinction)e(b)q(et)o(w)o(een)j (the)e(protection)h(of)e(stub)h(and)g(transit)g(AD)g(net)o(w)o(ork)g (resources.)-28 1838 y(F)m(or)g(eac)o(h)g(ob)r(ject)h(of)e(p)q(olicy)g(w)o(e) h(considered)i(a)d(n)o(um)o(b)q(er)h(of)f(design)h(parameters:)-28 1927 y Fd(\017)21 b Fm(Securit)o(y)14 b(services)i(required)-28 2003 y Fd(\017)21 b Fm(Enforcemen)o(t)14 b(lo)q(cation)-28 2080 y Fd(\017)21 b Fm(Enforcemen)o(t)14 b(proto)q(col)-28 2157 y Fd(\017)21 b Fm(Principal)13 b(gran)o(ularit)o(y)-28 2233 y Fd(\017)21 b Fm(Enforcemen)o(t)14 b(gran)o(ularit)o(y)e(and)i(mo)q(de) -90 2321 y(In)f(making)d(design)j(c)o(hoices)h(w)o(e)f(applied)f(the)h(w)o (ell-kno)o(wn)f Fl(end-to-end)h Fm(argumen)o(t)f(whic)o(h)h(essen)o(tially)f (states)i(that)f(the)h(placemen)o(t)e(of)-90 2371 y(con)o(trols)h(\(p)q (olicy)m(,)f(in)h(this)h(con)o(text\))g(should)f(b)q(e)h(at)f(the)h(highest)g (proto)q(col)f(la)o(y)o(er)g(at)g(the)h(end-p)q(oin)o(ts)g(of)e(comm)o (unication.)j(When)e(the)-90 2421 y(resource)j(in)d(question)i(is)e(an)h (end-system)g(that)g(engages)h(in)e(in)o(ter-AD)h(comm)o(unication,)c(the)15 b Fl(end-to-end)g Fm(argumen)o(t)e(suggests)i(that)-90 2471 y(this)g(end-system)g(should)f(b)q(e)h(able)g(to)f(protect)i(itself.)k(By)15 b(the)g(same)f(tok)o(en,)g(other)h(net)o(w)o(ork)g(resources,)i(including)d (unequipp)q(ed)h(or)-90 2521 y(strictly-in)o(ternal)10 b(end-systems,)h(m)o (ust)e(b)q(e)h(protected)i(at)e(AD)g(b)q(oundaries)g(b)o(y)g(b)q(order)h (routers.)18 b(Similarly)l(,)7 b(access)12 b(to)e(in)o(ter-AD)g(routes)-90 2570 y(m)o(ust)k(also)h(b)q(e)h(con)o(trolled)f(b)q(efore)h(an)o(y)e (tra\016c)i(is)f(allo)o(w)o(ed)f(to)h(cross)h(the)g(AD)f(b)q(oundary)m(.)22 b(Therefore,)16 b(to)f(the)h(exten)o(t)g(that)g(net)o(w)o(ork)-90 2620 y(resources)j(require)f(protection,)g(the)f(highest)g(relev)n(an)o(t)g (endp)q(oin)o(t)g(is)g(the)g(b)q(order)h(router)g(and)f(the)g(asso)q(ciated)h (pac)o(k)o(et-forw)o(arding)-90 2670 y(and)c(routing)f(proto)q(cols.)18 b(In)c(this)g(sense,)h(the)g Fl(end-to-end)g Fm(argumen)o(t)d(supp)q(orts)j (implemen)o(ting)c(con)o(trols)j(at)g(the)g(net)o(w)o(ork)g(la)o(y)o(er.)2028 2770 y(72)p eop %%Page: 73 13 bop -90 -108 a Fe(6.1.2)55 b(Stub)19 b(AD)g(P)n(olicy)f(Enforcemen)n(t)-90 -14 y Fm(Chapter)i(3)f(addressed)h(the)g(design)f(of)g(p)q(olicy)f (enforcemen)o(t)i(for)e(stub)i(AD)f(comm)o(unicatio)o(n)d(using)j(the)h (guidelines)f(outlined)f(in)-90 36 y(our)d(framew)o(ork.)21 b(The)16 b(goal)e(of)h(stub)g(AD)h(p)q(olicy)e(enforcemen)o(t)i(is)f(to)g(p)q (ermit)f(only)h(authorized,)h(authen)o(ticated)g(and)f(timely)e(com-)-90 86 y(m)o(unication)i(to)h(tak)o(e)h(place)g(across)h(stub)f(AD)g(b)q (oundaries.)27 b(Earlier,)17 b(in)g(Chapter)g(2)g(w)o(e)g(discussed)h(sev)o (eral)g(existing)e(approac)o(hes)-90 135 y(for)g(con)o(trolling)f(in)o (ternet)o(w)o(ork)j(comm)o(uni)o(cation)c(and)i(concluded)h(that)g(they)g (pro)o(vide)g(solutions)f(that)g(are)h(either)h(to)q(o)e(restrictiv)o(e,)-90 185 y(insecure,)f(or)f(not)g(general)g(enough.)-28 253 y Fl(Visa)h Fm(proto)q(col)f(presen)o(ted)j(in)d(Chapter)h(3)g(is)f(a)h(simple,)d(y)o(et) j(p)q(o)o(w)o(erful)g(mec)o(hanism)d(for)i(con)o(trolling)g(pac)o(k)o(et)h (tra\016c)f(at)h(stub)g(AD)-90 303 y(net)o(w)o(ork)e(b)q(oundaries.)19 b(The)14 b(primary)d(goal)h(of)h Fl(Visa)g Fm(proto)q(col)g(is)g(the)h (protection)g(of)f(stub)g(AD)g(net)o(w)o(ork)h(and)f(end-system)h(resources) -90 353 y(from)d(unauthorized)j(access.)19 b(This)13 b(goal)f(is)h(ac)o(hiev) o(ed)g(b)o(y)g(requiring)g(that)g(all)e(comm)o(unication)f(b)q(e)k(\014rst)f (authorized)h(b)o(y)e(the)i(A)o(CSs)f(in)-90 402 y(end-p)q(oin)o(t)g(ADs.)19 b(Authorization)13 b(to)g(comm)o(unicate)e(is)j(then)g(em)o(b)q(o)q(died)f (in)g(a)g(visa)g(whic)o(h)h(is)f(issued)i(to)e(the)h(requesting)h(end-system) -90 452 y(and)e(distributed)g(to)g(the)h(in)o(terv)o(ening)f(visa-routers.)18 b(Subsequen)o(t)d(pac)o(k)o(ets)e(carry)h(unforgeable)f(visa-stamps)e(whic)o (h)i(are)h(v)o(eri\014ed)f(b)o(y)-90 502 y(the)h(visa-routers.)19 b(Visas)14 b(are)g(terminated)g(when)g(the)h(underlying)e(comm)o(unication)e (exceeds)16 b(a)d(pre-determined)i(resource)h(limit.)-28 570 y(One)d(of)f(the)h(main)e(adv)n(an)o(tages)h(of)g Fl(Visa)g Fm(is)g(that)h(visa-routers)g(do)f(not)g(b)q(ear)h(the)g(brun)o(t)g(of)f(the) h(resp)q(onsibilit)o(y)f(for)g(making)e(access)-90 620 y(con)o(trol)15 b(decisions.)22 b(By)15 b(issuing)g(a)g(visa,)f(an)h(A)o(CS)g(has)g (pre-computed)h(an)f(authorization)f(decision.)22 b(The)15 b(task)g(of)g(a)g(visa-router)g(is)-90 669 y(th)o(us)g(reduced)h(to)e (ensuring)h(that)g(a)f(visa)g(is)g(v)n(alid)f(and)h(is)h(b)q(eing)f(used)h (appropriately;)f(the)h(exp)q(ensiv)o(e)h(part)e(of)g(p)q(olicy)g(enforcemen) o(t)-90 719 y(is)f(done)h(once)g(p)q(er)h(connection,)e(b)o(y)h(the)g(A)o (CSs)g(of)e(the)j(end-p)q(oin)o(t)e(ADs,)g(rather)i(than)e(once)h(p)q(er)h (pac)o(k)o(et,)e(b)o(y)g(the)h(b)q(order)h(routers.)k(In)-90 769 y(addition,)13 b Fl(Visa)h Fm(do)q(es)h(not)f(impact)f(in)o(tra-AD)g (tra\016c)h(and)h(has)f(no)g(b)q(earing)g(up)q(on)h(end-systems)f(that)h(do)f (not)g(partak)o(e)g(in)g(in)o(ter-AD)-90 819 y(comm)o(unication.)-28 886 y(As)k(part)f(of)g(the)h(design)f(pro)q(cess,)j(w)o(e)d(ev)n(aluated)g (the)h(securit)o(y)g(of)f(the)h(prop)q(osed)g Fl(Visa)f Fm(proto)q(col)g (using)g(the)h(motiv)n(ation)c(and)-90 936 y(some)e(terminology)e(\(but)j (not)g(the)g(metho)q(ds\))g(from)e(the)i(w)o(ell-kno)o(wn)e(BAN)j(logic)d ([9].)17 b(The)c(proto)q(col)f(w)o(as)h(sho)o(wn)g(to)f(b)q(e)i(resistan)o(t) f(to)-90 986 y(hostile)j(attac)o(ks)g(\(assuming)e(a)h(strong)h(underlying)g (cryptosystem.\))24 b(The)16 b(securit)o(y)h(analysis)e(also)g(demonstrated)h (the)g(limitations)-90 1036 y(to)e(the)g(b)q(eliefs)g(and)g(assurances)i (attained)e(b)o(y)f(proto)q(col)h(participan)o(ts.)-28 1104 y(F)m(or)e(the)h(purp)q(ose)h(of)e(quan)o(tifying)e(the)j(costs)h(of)e(stub)h (AD)f(p)q(olicy)g(enforcemen)o(t,)g(w)o(e)h(conducted)h(exp)q(erimen)o(ts)e (with)g(a)g(protot)o(yp)q(e)-90 1153 y Fl(Visa)17 b Fm(proto)q(col)h(implem)o (en)o(tation.)26 b(As)18 b(illustrated)g(b)o(y)f(the)h(exp)q(erimen)o(tal)f (results)i(in)e(Chapter)h(5,)g(the)g(cost)g(of)f(the)h(initial)e(setup)-90 1203 y(phase)f(is)e(still)g(somewhat)g(high.)18 b(Ho)o(w)o(ev)o(er,)c(data)f (pac)o(k)o(et)h(o)o(v)o(erhead)h(w)o(as)e(demonstrated)h(to)g(b)q(e)h(quite)f (insigni\014can)o(t)f(for)g(the)i(case)g(of)-90 1253 y(non-cryptographic)f (pac)o(k)o(et)g(signatures.)-90 1392 y Fe(6.1.3)55 b(T)-5 b(ransit)19 b(AD)g(P)n(olicy)f(Enforcemen)n(t)-90 1486 y Fm(Relativ)o(e)d(to)g(stub)h(AD) f(access)j(con)o(trol,)d(access)i(con)o(trol)e(with)h(resp)q(ect)h(to)f (transit)g(net)o(w)o(ork)f(resources)j(is)e(a)f(new)h(phenomenon.)22 b(It)-90 1536 y(has)14 b(b)q(een)h(brough)o(t)f(ab)q(out)g(b)o(y)f(\(among)f (other)j(factors\))f(the)h(increasing)f(commercializati)o(on)d(of)i(transit)h (in)o(ternet)o(w)o(ork)h(facilities.)-28 1604 y(The)20 b(framew)o(ork)e (discussion)i(in)f(Chapter)h(1)f(suggested)i(that)f(con)o(trolling)e(the)i (usage)g(of)f(\(i.e.,)g(access)j(to\))d(transit)h(net)o(w)o(ork)-90 1653 y(resources)h(\(suc)o(h)f(as)f(routers)h(and)f(links\))f(requires)j(a)d (new)h(generation)h(of)e(routing)g(and)h(pac)o(k)o(et-forw)o(arding)f(proto)q (cols)h(b)q(ecause)-90 1703 y(of)d(the)h(need)g(to)f(co)q(ordinate)g(transit) h(p)q(olicies)f(among)e(all)h(in)o(terv)o(ening)h(ADs.)26 b(This)16 b(rules)h(out)f(unilateral)f(p)q(olicy)h(enforcemen)o(t)g(at)-90 1753 y(pac)o(k)o(et-forw)o(arding)f(time.)21 b(Instead,)16 b(in)o(ternet)o(w)o(ork)g(routing)f(decisions)h(m)o(ust)f(b)q(e)h(made)e (according)h(to)h(p)q(olicy-related)f(parameters)-90 1803 y(suc)o(h)g(as)f (access)h(righ)o(ts)f(and)g(cost,)g(in)f(addition)g(to)h(the)g(traditional)f (parameters)h(of)f(connectivit)o(y)h(and)g(dela)o(y)m(.)-28 1870 y(Chapter)k(4)e(addressed)i(the)f(design)g(of)f(proto)q(cols)h(for)f Fc(secure)g Fm(con)o(trol)g(of)g(transit)h(in)o(ternet)o(w)o(ork)g(tra\016c)g (using)f(In)o(ter)i(Domain)-90 1920 y(P)o(olicy)13 b(Routing)g(\(IDPR\))g(as) h(the)h(design)f(foundation.)j(W)m(e)c(concen)o(trated)j(on)e(PR)f(setup)i (and)f(pac)o(k)o(et-forw)o(arding)f(proto)q(cols.)-28 1988 y(W)m(e)18 b(b)q(egan)g(b)o(y)g(iden)o(tifying)f(p)q(oten)o(tial)g(securit)o (y)i(threats)h(facing)d(IDPR)g(and)h(discussed)i(a)e(n)o(um)o(b)q(er)f(of)h (defense)h(mec)o(hanisms.)-90 2038 y(Sp)q(ecial)14 b(atten)o(tion)h(w)o(as)f (paid)g(to)g(the)h(costs)g(of)f(implemen)o(ting)d(securit)o(y)16 b(services.)21 b(In)14 b(particular,)g(w)o(e)h(considered)h(\(and)e(ev)n (aluated\))-90 2088 y(a)e(range)h(of)f(data)h(in)o(tegrit)o(y)f(scenarios)i (v)n(arying)d(in)h(b)q(oth)h(strength)h(and)f(cost.)18 b(The)13 b(\015exibilit)o(y)e(to)i(select)h(a)e(desired)i(tradeo\013)g(b)q(et)o(w)o (een)-90 2137 y(securit)o(y)h(and)f(p)q(erformance)f(is)h(built)f(in)o(to)g (the)i(arc)o(hitecture.)-28 2205 y(After)h(sp)q(ecifying)g(PR)f(setup)h(and)f (pac)o(k)o(et-forw)o(arding)g(proto)q(cols)h(w)o(e)f(conducted)i(a)e (thorough)g(analysis)g(of)g(their)g(securit)o(y)m(.)23 b(As)-90 2255 y(in)14 b Fl(Visa)g Fm(proto)q(col,)g(this)h(analysis)e(iden)o(ti\014ed) i(the)g(exact)g(b)q(eliefs)g(attained)f(b)o(y)g(the)h(proto)q(col)f (participan)o(ts,)g(i.e.,)f(PGs.)20 b(A)o(t)15 b(the)g(same)-90 2305 y(time,)i(it)h(rev)o(ealed)g(that)g(certain)h(goals)e(are)h(ultimately)e (unattainable,)i(e.g.,)f(reliable)h(v)o(eri\014cation)f(of)h(the)g(exact)h (path)f(a)g(pac)o(k)o(et)-90 2355 y(tra)o(v)o(erses.)-28 2422 y(Exp)q(erimen)o(tal)c(results)h(obtained)g(from)d(actual)j(proto)q(col)f (implemen)o(tatio)o(ns)e(app)q(ear)j(v)o(ery)g(reassuring.)21 b(The)15 b(cost)g(of)f(PR)g(setup)-90 2472 y(w)o(as)j(sho)o(wn)g(to)g(b)q(e)h (tolerable,)f(at)g(around)g(55)p Fk(ms)g Fm(p)q(er)h(PG)f(hop.)27 b(The)18 b(o)o(v)o(erhead)f(cost)h(of)f(data)f(pac)o(k)o(et)i(switc)o(hing)f (in)f(IDPR)h(is)g(of)-90 2522 y(greater)e(concern)g(than)f(the)g(cost)h(of)e (PR)h(setup.)19 b(Ho)o(w)o(ev)o(er,)14 b(our)f(measuremen)o(ts)h(indicated)f (that)h(ev)o(en)h(for)e(large)h(pac)o(k)o(et)g(sizes)h(\(e.g.,)-90 2572 y(1Kb)o(yte\))f(pac)o(k)o(et-switc)o(hing)g(o)o(v)o(erhead)h(p)q(er)f (PG)g(hop)g(amoun)o(ted)e(to)i(less)h(than)e(0)p Fk(:)p Fm(5)p Fk(ms)p Fm(.)2028 2770 y(73)p eop %%Page: 74 14 bop -90 -108 a Fe(6.1.4)55 b(Securit)n(y)18 b(.vs.)24 b(Cost)-90 -14 y Fm(Securit)o(y)13 b(and)f(p)q(erformance)g(are)h(alw)o(a)o(ys)e(at)h(o) q(dds.)18 b(This)12 b(is)g(neither)h(surprising)g(nor)f(easily)g(remedied.)17 b(Throughout)12 b(this)h(thesis,)g(w)o(e)-90 36 y(attempted)i(to)g(reduce)h (as)f(m)o(uc)o(h)f(as)h(p)q(ossible)h(the)f(adv)o(erse)h(e\013ects)h(of)e (our)g(proto)q(cols)g(\(namely)m(,)e(added)i(costs\))h(without)f (sacri\014cing)-90 86 y(securit)o(y)m(.)-28 153 y(Certain)i(t)o(yp)q(es)h(of) f(o)o(v)o(erhead)g(are)g(di\016cult,)g(if)f(not)h(imp)q(ossible,)f(to)h(a)o (v)o(oid.)26 b(F)m(or)16 b(example,)g(reducing)i(the)f(n)o(um)o(b)q(er)g(of)f (pac)o(k)o(ets)-90 203 y(exc)o(hanged)h(during)f(connection)h(setup)g(in)f Fl(Visa)g Fm(proto)q(col)g(or)g(PR)g(setup)i(in)d(IDPR)h(is)g(not)h(feasible) f(without)f(sacri\014cing)i(securit)o(y)m(.)-90 253 y(On)e(the)h(other)g (hand,)f(using)g Fl(light-weight)f Fm(data)h(authen)o(tication)f(metho)q(ds)h (can)h(greatly)e(in\015uence)j(pac)o(k)o(et-switc)o(hing)e(o)o(v)o(erhead)g (in)-90 303 y(visa-routers)g(and)e(PGs.)-28 370 y(An)e(imp)q(ortan)o(t)d(con) o(tribution)i(of)f(this)h(thesis)h(is)f(the)h(dev)o(elopmen)o(t)e(of)g (encryption-free)j(metho)q(ds)e(for)f(v)o(erifying)g(data)h(authen)o(ticit)o (y)m(.)-90 420 y(In)15 b(App)q(endix)h(A,)e(w)o(e)i(describ)q(e)h(t)o(w)o(o)d (metho)q(ds)h(for)g(computing)e(MD4)i(message)g(digests)h(based)f(on)g(a)g (secret)i(quan)o(tit)o(y)m(.)k(W)m(e)15 b(b)q(eliev)o(e)-90 470 y(the)f(strength)i(of)d(these)i(metho)q(ds)f(to)f(b)q(e)i(at)f(the)g(v)o (ery)g(least)g(equal)g(to)g(the)g(strength)h(of)e(the)i(underlying)e(one-w)o (a)o(y)h(hash)g(function.)-90 625 y Ff(6.2)70 b(F)-6 b(uture)23 b(W)-6 b(ork)-90 734 y Fm(This)14 b(thesis)h(represen)o(ts)i(a)d(\014rst)h (attempt)e(at)h(consolidating)f(p)q(olicy)h(enforcemen)o(t)g(mec)o(hanisms.)j (There)f(remain)c(n)o(umerous)i(opp)q(or-)-90 784 y(tunities)g(for)g(future)g (researc)o(h;)h(a)f(few)g(of)f(them)g(are)i(discussed)g(b)q(elo)o(w.)-90 922 y Fe(6.2.1)55 b(Multicasting)-90 1017 y Fm(Multicasting)13 b(is)g(a)h(useful)f(and)h(con)o(v)o(enien)o(t)f(tec)o(hnique)i(for)e(comm)o (unication)d(within)j(no)q(de)h(groups)g([86)o(].)j(Multicasting)c(supp)q (ort)h(for)-90 1067 y(the)g(in)o(ternet)o(w)o(ork)h(en)o(vironmen)o(t)e(ha)o (v)o(e)g(b)q(een)i(prop)q(osed)g(in)f([18)o(].)j(Tw)o(o)d(t)o(yp)q(es)g(of)g (m)o(ulticast)e(predominate:)-39 1168 y(1.)20 b(Multicasting)13 b(within)h(small,)d(static)k(and)f(short-term)g(groups,)g(e.g.,)f(for)h(the)h (purp)q(ose)g(of)f(tele-)g(or)h(video-conferencing.)k(This)14 1217 y(t)o(yp)q(e)14 b(of)f(comm)o(unication)e(t)o(ypically)h(has)i(high)g (bandwidth)f(requiremen)o(ts.)-39 1300 y(2.)20 b(Multicasting)15 b(within)f(large,)i(dynamic)d(and)j(long-term)e(groups,)h(e.g.,)g(name)f(or)i (time)e(serv)o(ers.)25 b(T)o(ypically)m(,)13 b(comm)o(unication)14 1350 y(is)h(infrequen)o(t)g(and)g(not)f(bandwidth-in)o(tensiv)o(e,)g(e.g.,)g (global)f(time)h(serv)o(er)i(up)q(dates)g(can)f(tak)o(e)g(place)g(once)h(ev)o (ery)f(hour.)-90 1451 y Fl(Visa)h Fm(proto)q(col,)f(as)h(sp)q(eci\014ed,)i (pro)o(vides)e(no)f(sp)q(ecial)i(supp)q(ort)f(for)g(either)h(t)o(yp)q(e)f(of) f(m)o(ulticasting.)19 b(Consequen)o(tly)m(,)c Fk(n)g Fm(separate)h(visas)-90 1501 y(w)o(ould)e(b)q(e)i(required)g(for)f(a)g(m)o(ulticast)e(group)i(mem)o (b)q(er)f(to)h(comm)o(unicate)e(with)i Fk(n)g Fm(p)q(eers)h(assuming)e Fl(typ)n(e)i(1)g Fm(m)o(ulticast.)k(Things)15 b(get)-90 1551 y(m)o(uc)o(h)d(w)o(orse)i(when)g Fk(n)f Fm(is)g(not)g(kno)o(wn)g(in)g(adv)n (ance)h(\()p Fl(typ)n(e)g(2)g Fm(m)o(ulticast\))e(and)h(the)h(exact)g(lo)q (cations)e(of)h(the)h(p)q(eers)h(are)f(not)f(kno)o(wn.)k(W)m(e)-90 1601 y(b)q(eliev)o(e)d(this)g(to)f(b)q(e)h(a)f(problem)g(not)g(unique)h(to)f Fl(Visa)g Fm(proto)q(col)h(but)g(inheren)o(t)g(to)f(an)o(y)g(strong)h(net)o (w)o(ork)g(access)h(con)o(trol)f(mec)o(hanism.)-28 1668 y(IDPR)f(is)g(also)f (not)h(equipp)q(ed)h(with)e(m)o(ulticast)g(supp)q(ort.)18 b(In)13 b(order)h(to)f(ac)o(hiev)o(e)g Fl(typ)n(e)h(1)f Fm(m)o(ulticast)f(using)h (the)g(proto)q(cols)g(sp)q(eci\014ed)-90 1718 y(in)i(Chapter)i(4,)e(ev)o(ery) h(group)g(mem)o(b)q(er)e(m)o(ust)h(set)h(up)g Fk(n)f Fm(distinct)h(PRs,)g (one)g(to)f(eac)o(h)i(p)q(eer.)24 b(Moreo)o(v)o(er,)17 b(subsequen)o(t)g (tra\016c)f(w)o(ould)-90 1768 y(ha)o(v)o(e)11 b(to)f(b)q(e)i(replicated)f (individually)e(for)h(ev)o(ery)i(suc)o(h)g(PR.)e(Ideally)m(,)g(w)o(e)h(w)o (ould)f(lik)o(e)g(to)h(a)o(v)o(oid)e(unnecessary)k(replication)e(and)f (excessiv)o(e)-90 1818 y(state)i(in)f(PGs.)17 b(This)11 b(can)g(b)q(e)h(made) e(p)q(ossible)h(if)f(IDPR)h(is)g(augmen)o(ted)f(to)h(allo)o(w)e(setup)j(of)f (m)o(ulti-destination)d(PR)j("trees")h(in)f(addition)-90 1867 y(to)16 b(regular,)f(single-destination)g(PRs.)24 b(F)m(urthermore,)15 b(subsequen)o(t)j(data)d(tra\016c)h(m)o(ust)f(b)q(e)h(m)o(ultiplexed)e(along) g(ev)o(ery)j(tree)g(branc)o(h)-90 1917 y(in)c(transit)i(PGs.)-28 1985 y(Supp)q(orting)d Fl(typ)n(e)h(2)e Fm(m)o(ulticasting)f(is)h(more)g (complicated)f(b)q(ecause)j(of)e(large)h(group)f(sizes)i(and)e(v)o(olatile)f (group)i(mem)o(b)q(ership.)j(One)-90 2035 y(p)q(ossible)c(solution)f(is)h(to) g(treat)g(suc)o(h)h(m)o(ulticast)d(tra\016c)i(as)g(b)q(eing)g("exempt")f (from)f(certain)i(con)o(trols.)17 b(F)m(or)11 b(example,)f(w)o(e)h(could)f (restrict)-90 2085 y(uncon)o(trolled)k(m)o(ulticast)e(to)i(w)o(ell-kno)o(wn)e (groups)i(suc)o(h)h(as)f(time)e(or)i(name)f(serv)o(ers.)19 b(The)c(main)c(dra)o(wbac)o(k)j(is)g(that)g(an)f(in)o(truder)i(can)-90 2134 y(use)i(this)f Fl(b)n(ack-do)n(or)h Fm(as)f(an)g(opp)q(ortunit)o(y)f (for)h(abuse)h(b)o(y)f(\015o)q(o)q(ding)f(an)h(AD)g(with)g(fraudulen)o(t)g (tra\016c.)25 b(Alternativ)o(ely)m(,)15 b(m)o(ulticasting)-90 2184 y(can)f(b)q(e)h(restricted)h(to)d(destinations)h(\(p)q(eers\))i(that)e (ha)o(v)o(e)g(existing)f(PRs.)-28 2252 y(F)m(ull)h(supp)q(ort)h(of)f(m)o (ulticasting)e(in)i(the)h(presence)i(of)d(p)q(olicy)g(enforcemen)o(t)h(ma)o (y)d(pro)o(v)o(e)j(to)f(b)q(e)i(imp)q(ossible,)c(ho)o(w)o(ev)o(er,)j(it)f (remains)-90 2302 y(sub)r(ject)h(to)f(future)h(w)o(ork)e(to)h(determine)g (exactly)g(to)f(what)h(exten)o(t)h(m)o(ulticasting)d(can)i(co)q(exist)g(with) g(p)q(olicy)f(enforcemen)o(t.)-90 2440 y Fe(6.2.2)55 b(F)-5 b(ault)19 b(T)-5 b(olerance)-90 2535 y Fm(F)m(ault)17 b(tolerance)h(in)g Fl(Visa)f Fm(and)h(IDPR)f(has)h(not)f(b)q(een)i(extensiv)o(ely)f(considered)h (in)f(this)f(thesis.)31 b(This)17 b(do)q(es)i(not)e(imply)f(that)h(the)-90 2585 y(sub)r(ject)j(is)e(unimp)q(ortan)o(t,)f(quite)h(the)h(con)o(trary)m(.) 31 b(In)18 b(this)g(section,)i(w)o(e)e(consider)h(the)g(issues)g(of)f(state)h (reco)o(v)o(ery)g(and)f(connection)-90 2634 y(repair.)2028 2770 y(74)p eop %%Page: 75 15 bop -90 -108 a Fc(6.2.2.1)48 b(State)15 b(Reco)o(v)o(ery)-90 -14 y Fm(State)f(reco)o(v)o(ery)h(is)f(the)g(problem)f(of)g(reestablishing)h (lost)g(state)h(whenev)o(er)g(a)e(visa-router)h(or)g(a)g(PG)f(crashes)j(and)e (reapp)q(ears)h(shortly)-90 36 y(thereafter.)-28 104 y(When)j(a)f (visa-router)h(crashes,)i(its)d(visa-table)g(is)h(lost.)29 b Fl(Visa)17 b Fm(proto)q(col)g(description)h(incorp)q(orates)h(a)e(means)g (for)g(an)h(A)o(CS)f(to)-90 153 y(reestablish)c(a)f(visa-table)f(in)h(a)g ("re-incarnated")h(visa-router.)k(Ho)o(w)o(ev)o(er,)c(the)f(imp)q(ortan)o(t)f (dra)o(wbac)o(k)h(of)f(this)i(metho)q(d)e(is)h(that)g(A)o(CSs,)-90 203 y(unlik)o(e)j(visa-routers,)g(do)g(not)g(k)o(eep)h(up-to-date)f (visa-tables,)g(i.e.,)f(a)h(visa-table)g(en)o(try)g(in)g(an)g(A)o(CS)g(do)q (es)h(not)f(re\015ect)i(an)o(y)e(resource)-90 253 y(usage)h(since)g(a)f (corresp)q(onding)h(visa)f(w)o(as)h(originally)d(issued.)23 b(This)15 b(is)h(b)q(ecause,)h(all)d(records)j(of)e(resource)i(usage)f(are)g (irreco)o(v)o(erably)-90 303 y(lost)e(when)g(a)g(visa-router)g(crashes.)19 b(Therefore,)c(simply)d(refreshing)j(a)e(visa-router)i(ma)o(y)c(not)j(b)q(e)h (an)e(optimal)f(decision.)-28 370 y(IDPR)j(do)q(es)g(not)g(curren)o(tly)h(sp) q(ecify)f(an)o(y)g(mec)o(hanism)e(for)h(the)i(reco)o(v)o(ery)g(from)d(PG)i (crashes.)22 b(Belo)o(w,)15 b(w)o(e)g(outline)g(one)g(p)q(ossible)-90 420 y(solution.)-28 488 y(If)d(a)f(PG)h(crashes,)h(it)f(loses)g(its)g(en)o (tire)g(PR)g(table.)17 b(Ho)o(w)o(ev)o(er,)12 b(w)o(e)h(assume)e(that)h(all)e (PGs)i(ha)o(v)o(e)g(reliable)f(\(p)q(erhaps,)i(stored)g(in)f(stable)-90 538 y(storage\))j(kno)o(wledge)f(of)g(their)g(neigh)o(b)q(or)h(PGs.)k(When)c (a)f(PG)g(reco)o(v)o(ers)i(from)c(a)i(crash)i(it)e(\014rst)h(announces)g (itself)f(to)g(the)h(neigh)o(b)q(ors.)-90 588 y(Eac)o(h)h(neigh)o(b)q(or)f (then)h(pro)q(ceeds)i(to)d(searc)o(h)i(its)e(PR)g(table)h(for)f(all)f(en)o (tries)i(that)g(sp)q(ecify)g(the)g(said)f(PG)g(as)h(either)g(previous)g(or)f (next)-90 637 y(PG)e(hop.)k(Ha)o(ving)12 b(collected)i(all)d(suc)o(h)j(en)o (tries,)f(eac)o(h)h(neigh)o(b)q(or)e(comp)q(oses)h(a)g(sp)q(ecial)g(REFRESH)f (pac)o(k)o(et)i(whic)o(h)e(it)h(forw)o(ards)g(to)f(the)-90 687 y(PG)h(in)f(question.)18 b(Up)q(on)13 b(receiving)g(REFRESH)g(pac)o(k)o (ets)g(from)e(all)h(of)g(its)h(neigh)o(b)q(ors,)g(a)f(PG)h(should)g(b)q(e)g (able)g(to)f(reconstruct)j(its)e(PR)-90 737 y(table)h(with)f(high)h(accuracy) m(,)g(including)e(ev)o(en)j(suc)o(h)g(details)e(as)h(pac)o(k)o(et)h(and)e (data)h(meters.)-28 805 y(This)g(approac)o(h)f(w)o(orks)g(b)q(est)i(for)e (reco)o(v)o(ering)h(PRs)f(for)g(whic)o(h)h(the)g(crashed)g(PG)g(is)f (TRANSIT.)f(This)i(is)f(b)q(ecause)i(b)q(oth)f(previous)-90 855 y(and)19 b(next)i(hop)e(PGs)h(are)g(de\014ned)g(for)g(TRANSITs.)35 b(Therefore,)22 b(in)d(order)h(to)g(fully)e(reco)o(v)o(er)j(a)e Fl(lost)g Fm(PR,)g(a)h(PG)f(m)o(ust)g(receiv)o(e)-90 904 y(t)o(w)o(o)d (REFRESH)g(pac)o(k)o(ets)h(\(from)d(t)o(w)o(o)i(of)g(its)g(neigh)o(b)q(ors\)) g(suc)o(h)h(that)f(eac)o(h)h(con)o(taining)e(a)h(matc)o(hing)e(record)k(for)e (the)g(said)g(PR.)g(By)-90 954 y(com)o(bining)d(the)k(information)12 b(in)j(the)i(records,)g(a)e(PG)h(can)g(recreate)h(an)f(en)o(try)g(in)f(its)h (PR)f(table.)24 b(Resource)17 b(usage)f(meters)f(can)h(b)q(e)-90 1004 y(reco)o(v)o(ered)g(b)o(y)d(taking)g(the)i(smaller)d(set)j(of)e(v)n (alues)h(from)e(the)i(t)o(w)o(o)g(REFRESH)g(pac)o(k)o(ets.)-28 1072 y(It)k(is)g(sligh)o(tly)e(more)h(problematic)f(to)i(reco)o(v)o(er)h(PRs) f(that)g(sp)q(ecify)g(the)g(failed)f(PG)h(as)f(either)i(ORIGINA)m(TOR)e(or)h (T)m(AR)o(GET.)-90 1121 y(Since)e(there)h(is)f(but)g(a)f(single)h(source)h (of)e(information,)e(only)i(one)h(REFRESH)f(can)h(b)q(e)h(exp)q(ected.)25 b(Hence,)18 b(there)f(is)e(no)h(longer)f(the)-90 1171 y(assurance)k(from)d(t) o(w)o(o)h(indep)q(enden)o(t)h(sources.)31 b(Moreo)o(v)o(er,)18 b(in)f(b)q(oth)h(cases,)h(a)e(REFRESH)h(alw)o(a)o(ys)e(comes)h(from)f(a)h (neigh)o(b)q(or)g(in)g(a)-90 1221 y(di\013eren)o(t)d(\(though)f (directly-connected\))i(AD.)e(This)g(raises)g(the)h(issue)g(of)e(trust,)i (i.e.,)e(what)h(kind)f(of)h(assurances)i(are)e(necessary)j(for)c(a)-90 1271 y(PG)h(to)g(reestablish)h(its)f(PR)f(table)h(reliably?)k(P)o(erhaps)d (ev)o(ery)g(PG)f(should)f(store)i(copies)g(of)e(signed)h(SETUP)h(pac)o(k)o (ets)g(for)e(eac)o(h)i(activ)o(e)-90 1321 y(PR)g(just)g(in)f(case)i(a)f (neigh)o(b)q(or)f(crashes)j(and)e(subsequen)o(tly)h(demands)e(strong)h (evidence)h(of)f(PRs')f(existence.)-90 1451 y Fc(6.2.2.2)48 b(Connection)14 b(and)h(Route)f(Repair)-90 1545 y Fm(An)g(issue)g(related)g (to)g(state)g(reco)o(v)o(ery)h(is)f(connection)g(and)f(route)i(repair.)j (When)c(a)f(visa-router)h(or)g(a)f(PG)g(crashes)j(and)d(then)i(fails)d(to)-90 1595 y(reco)o(v)o(er,)j(previously)e(authorized)i(tra\016c)f(will)e(b)q(e)j (unable)e(to)h(propagate)g(as)g(exp)q(ected.)-28 1663 y(In)19 b Fl(Visa)p Fm(,)h(unless)g(an)f(alternate)h(visa-router)g(is)f(a)o(v)n (ailable,)f(connection)h(repair)h(will)e(not)h(succeed.)36 b(T)m(o)19 b(allo)o(w)e(for)i Fl(on-the-\015y)-90 1713 y Fm(adaptation)13 b(to)h(crashes,)h(all)d(p)q(oten)o(tial)i("bac)o(kup")f(visa-routers)i(m)o (ust)e(replicate)h(the)g(necessary)i(state.)-28 1780 y(In)e(IDPR,)e(when)i(a) f(PG)g(crashes,)h(it)f(ma)o(y)f(still)g(b)q(e)i(p)q(ossible)g(to)f(utilize)g (the)h(original)d(PR.)i(This)g(is)g(b)q(ecause)i(a)e(PR)g(sp)q(eci\014es)i (ADs,)-90 1830 y(not)h(ph)o(ysical)g(PGs.)26 b(Hence,)18 b(if)e(there)h(is)g (an)f(alternate)h(PG,)e Fl(p)n(ar)n(al)r(lel)h Fm(to)g(the)h(one)g(that)f (failed)f(\(i.e.,)h(a)g(PG)g(in)g(the)h(same)f(AD)g(and)-90 1880 y(the)i(same)e(AD\),)h(route)g(repair)h(ma)o(y)d(succeed,)20 b(esp)q(ecially)d(if)g(PR)f(state)i(is)f(replicated)h(in)f(parallel)f(PGs)h (at)g(setup)h(time.)27 b(Barring)-90 1930 y(replication,)15 b(the)i(previous)f(hop)g(PG)g(ma)o(y)e(attempt)h(to)h(repair)g(the)h(PR)e(b)o (y)h(setting)g(up)g(appropriate)g(state)h(in)f(the)g(alternate)h(PG;)-90 1980 y(ho)o(w)o(ev)o(er,)d(it)f(m)o(ust)g(b)q(e)i(able)e(to)h(pro)q(duce)h(a) f(cop)o(y)g(of)f(the)h(original)e(SETUP)j(pac)o(k)o(et.)-28 2047 y(If)f(a)g(PG)f(crashes)j(and)e(no)g(parallel)e(PGs)i(are)h(a)o(v)n (ailable,)c(the)k(issue)f(of)g(route)g(repair)h(b)q(ecomes)f(more)f (complicated.)k(Su\016ce)d(it)g(to)-90 2097 y(sa)o(y)f(that,)f(b)q(ecause)j (of)d(p)q(olicy)h(considerations,)g(a)g(transit)g(PG)f(can)i(not)e(attempt)h (route)g(repair)g(unilaterally)m(.)j(In)d(other)h(w)o(ords,)f(a)f(PR)-90 2147 y(can)i(not)g(b)q(e)g(mo)q(di\014ed)f(without)g(prior)h(authorization)f (from)f(its)i(original)e(source.)-28 2215 y(One)j(solution)f(is)g(to)g (tear-do)o(wn)h(the)g(PR)f(and)g(let)g(the)h(source)h(recompute)f(an)f (alternate)g(route.)21 b(This)14 b(approac)o(h)g(is)g(simple)f(and)-90 2264 y(requires)i(no)f(sp)q(ecial)g(proto)q(col)g(supp)q(ort.)k(Ho)o(w)o(ev)o (er,)c(it)g(in)o(v)o(olv)o(es)f(a)g(signi\014can)o(t)h(amoun)o(t)e(of)h(o)o (v)o(erhead.)-28 2332 y(Alternativ)o(ely)m(,)19 b(the)g(source)h(can)f (pre-compute)g(a)g(n)o(um)o(b)q(er)f(of)g(di\013eren)o(t)i(PRs)e(for)h(the)g (same)f(destination)h(and)f Fl(bund)r(le)i Fm(them)-90 2382 y(together)c(in)e(a)h(single)f(SETUP)i(pac)o(k)o(et.)21 b(All)14 b(of)h(the)g(enclosed)h(PRs)f(can)g(then)h(b)q(e)f(set)h(up)f(sim)o (ultaneously)m(.)k(When)c(a)f(a)h(transit)g(PG)-90 2432 y(b)q(ecomes)j(una)o (v)n(ailable,)f(the)h(previous)g(hop)g(PG)g(can)g(switc)o(h)g(to)g(a)g ("sibling")e(PR)i(transparen)o(tly)m(.)30 b(This)18 b(tec)o(hnique)h(is)e (kno)o(wn)h(as)-90 2482 y Fl(A)n(daptive)d(Multi-Path)g(Sour)n(c)n(e)g(R)n (outing)f Fm(and)g(is)g(sub)r(ject)h(of)e(curren)o(t)j(and)d(future)i (researc)o(h)h([8)o(].)2028 2770 y(75)p eop %%Page: 76 16 bop -90 -108 a Fe(6.2.3)55 b(Accoun)n(ting)19 b(and)g(Billing)-90 -14 y Fm(In)o(ternet)o(w)o(ork)e(comm)o(unication)c(has)k(b)q(een,)h(un)o (til)e(no)o(w,)g(treated)i(mostly)c(as)j(a)f(free)h(\(or)g(\014xed-cost\))h (go)q(o)q(d)e([13)o(].)25 b(This)17 b(is)f(lik)o(ely)f(to)-90 36 y(c)o(hange)f(with)g(the)g(adv)o(en)o(t)g(of)f(in)o(ternet)o(w)o(ork)i(p)q (olicy)e(enforcemen)o(t)h(and)g(commercially-)o(o)o(wned)d(and)j(op)q(erated) h(transit)f(facilities.)-28 104 y(If)h(comm)o(unication)d(is)j(to)g(b)q(e)h (c)o(harged)g(for)f(on)g(a)g(usage-sensitiv)o(e)h(basis,)f(accoun)o(ting)h(m) o(ust)e(tak)o(e)h(place)h(in)e(transit)i(ADs.)22 b(Con-)-90 153 y(siderations)17 b(for)f(usage)h(accoun)o(ting)f(are)h(extensiv)o(ely)g (discussed)h(in)e([33)o(,)g(16].)25 b(IDPR,)15 b(b)o(y)i(virtue)f(of)g(main)o (taining)d(state)18 b(in)e(p)q(olicy)-90 203 y(gatew)o(a)o(ys,)d(can)h (easily)g(supp)q(ort)g(accoun)o(ting)g(on)g(the)g(basis)g(of)f(pac)o(k)o (ets,)i(or)e(PR)h(duration)1366 188 y Fi(1)1384 203 y Fm(.)-28 271 y(Cost)k(reco)o(v)o(ery)h(is)e(an)g(en)o(tirely)h(di\013eren)o(t)g (matter.)28 b(As)18 b(Clark)f(p)q(oin)o(ts)h(out)f(in)g([13)o(],)g(it)h(is)f (a)g(v)o(ery)h(complicated)e(problem)g(with)-90 321 y(man)o(y)g(unresolv)o (ed)i(issues.)30 b(One)18 b(of)f(the)h(more)f(di\016cult)g(ones)h(is)f(the)i (problem)d(of)h(reliable)g(billing.)27 b(Lo)q(oking)16 b(to)i(the)g(real-w)o (orld)-90 370 y(for)c(an)h(analogy)m(,)d(credit)j(card)h(billing)c(statemen)o (ts)j(often)g(include)f(itemized)g(c)o(harges)i(that)e(help)h(the)g(consumer) g(in)f(iden)o(tifying)f(and)-90 420 y(v)o(erifying)e(individual)g(c)o (harges.)18 b(F)m(urthermore,)12 b(most)g(credit)h(card)g(companies)e(are)i (willing)e(to)h(pro)o(vide)g(copies)h(of)f(signed)h(receipts)h(to)-90 470 y(customers)h(who)f(ha)o(v)o(e)h Fl(tr)n(ouble)f Fm(remem)o(b)q(ering)f (certain)i(purc)o(hases.)22 b(In)15 b(other)g(w)o(ords,)g(a)f(customer)h(can) f(c)o(ho)q(ose)i(to)e(main)o(tain)e(a)i(sort)-90 520 y(of)g(a)f("stateless")i (mo)q(del)e(with)h(resp)q(ect)i(to)e(the)h(purc)o(hases)h(made)d(and)h(still) f(b)q(e)h(assured)i(of)d(the)i(v)n(alidit)o(y)d(of)i(individual)e(items)h (billed)-90 570 y(at)h(the)g(end)h(of)e(the)h(mon)o(th.)-28 637 y(Ideally)m(,)d(a)h(transit)g(AD)g(billing)e(for)i(service)i(w)o(ould)d (pro)o(vide)h(an)g(equiv)n(alen)o(t)f(of)h(a)g(signed)g(statemen)o(t)g(to)g (its)g(stub)h(AD)f(subscrib)q(ers.)-90 687 y(Whether)j(or)f(not)g(this)g (billing)d(in)o(tegrit)o(y)j(can)g(b)q(e)g(accomplished)f(remains)g(to)h(b)q (e)g(seen.)-90 825 y Fe(6.2.4)55 b(In)n(tegration)-90 919 y Fm(In)10 b(Chapter)g(1,)g(w)o(e)f(argued)h(for)f(dividing)f(the)j(discussion) f(of)f(securit)o(y)h(according)g(to)f(the)h(t)o(yp)q(e)h(of)e(resource)i(b)q (eing)f(protected.)18 b(Ho)o(w)o(ev)o(er,)-90 969 y(from)13 b(a)h(tec)o(hnical)h(and)f(p)q(olicy)g(p)q(ersp)q(ectiv)o(e,)i(it)e(is)g (essen)o(tial)h(for)f(these)i(t)o(w)o(o)e(t)o(yp)q(es)i(of)d(p)q(olicy)h (enforcemen)o(t)h(to)f(b)q(e)h(co)q(ordinated)g(and)-90 1019 y(consisten)o(t.)100 1004 y Fi(2)141 1019 y Fm(T)m(o)f(this)h(end,)g(w)o(e)g (discuss)h(an)f(in)o(tegrated)g(view)g(of)f(p)q(olicy)h(enforcemen)o(t)g (supp)q(ort.)22 b(W)m(e)14 b(fo)q(cus)i(on)e(t)o(w)o(o)h(opp)q(ortunities)-90 1069 y(for)f(in)o(tegration)f({)g(b)q(order)i(routers)g(and)f(sp)q(ecialized) h(serv)o(ers.)-90 1198 y Fc(6.2.4.1)48 b(Border)14 b(Routers)-90 1292 y Fm(The)f(hea)o(viest)f(burden)h(of)f(p)q(olicy)f(enforcemen)o(t)i (falls)e(on)h(the)g(b)q(order)h(routers.)19 b(This)12 b(is)g(particularly)g (true)h(of)e(b)q(order)i(routers)h(in)d(stub)-90 1342 y(ADs)j(whic)o(h)g (need)h(to)e(implemen)o(t)f(con)o(trols)i(at)f(the)i(gran)o(ularit)o(y)d(of)i (b)q(oth)g(ADs)g(and)f(end-systems,)h(i.e.,)f Fl(Visa)g Fm(and)h(IDPR.)-28 1410 y(F)m(or)19 b(lo)q(cally)e(originated)h(tra\016c,)i(the)f(b)q(order)h (router)g(needs)g(to)f(con)o(trol:)27 b(i\))19 b(source)h(end-system)f (access)i(to)d(the)i(outside,)g(ii\))-90 1460 y(destination)14 b(AD)f(and)h(end-system,)f(and)h(iii\))e(in)o(ter-AD)i(route)g(access.)20 b(T)m(ra\016c)14 b(coming)d(in)j(from)e(the)i(outside)g(has)g(to)g(b)q(e)g (con)o(trolled)-90 1510 y(on)g(the)h(same)f(basis,)g(with)g(the)h(exception)g (of)f(route)h(selection)g(\(if)f(routes)h(are)g(comp)q(osed)f(at)h(the)g (source\).)21 b(Ho)o(w)o(ev)o(er,)14 b(it)g(is)h(p)q(ossible)-90 1559 y(for)f(a)f(b)q(order)i(router)g(in)e(a)h(destination)f(AD)h(to)g (refuse)h(incoming)d(tra\016c)i(based)g(on)g(the)g(route)h(it)e(follo)o(w)o (ed.)-28 1627 y(No)f(attempt)g(has)g(b)q(een)i(made)d(in)g(this)i(thesis)g (to)f(in)o(tegrate)g(and)g(streamline)g(the)h(t)o(w)o(o)e(t)o(yp)q(es)j(of)d (enforcemen)o(t)i(mec)o(hanisms.)i(This)-90 1677 y(do)q(es)i(not)f(imply)d (that)j(in)o(tegration)f(is)h(not)g(p)q(ossible)g(or)g(desirable.)25 b(On)16 b(the)h(con)o(trary)m(,)f(signi\014can)o(t)g(p)q(erformance)f(b)q (ene\014ts)j(can)e(b)q(e)-90 1727 y(gained)d(through)h(in)o(tegration.)-28 1794 y Fl(Visa)20 b Fm(and)g(IDPR)g(can)h(b)q(ene\014t)g(substan)o(tially)f (from)e(sharing)i(man)o(y)f(t)o(yp)q(es)i(of)e(information.)35 b(F)m(or)20 b(example,)g(a)g(visa-router)-90 1844 y(main)o(tains)14 b(a)j(visa-table)f(where)i(ev)o(ery)g(en)o(try)f(refers)i(to)d(a)h (connection)h(b)q(et)o(w)o(een)g(t)o(w)o(o)e(end-systems.)28 b(Similarly)l(,)14 b(a)j(PG)f(in)h(a)f(stub)-90 1894 y(AD)f(main)o(tains)e(a) i(host-table)h(where)g(ev)o(ery)h(en)o(try)f(p)q(oin)o(ts)f(to)g(a)g(PR.)g (If)g(a)g(router)h(implemen)o(ts)d(b)q(oth)j Fl(Visa)f Fm(and)g(IDPR,)g(it)g (is)g(more)-90 1944 y(than)i(lik)o(ely)f(that)h(the)h(same)e(information)e (is)j(duplicated)g(in)g(the)g(t)o(w)o(o)g(tables.)28 b(Merging)17 b(these)h(t)o(w)o(o)f(tables)g(in)o(to)f(one)i(can)f(sa)o(v)o(e)g(a)-90 1994 y(lot)d(of)g(storage)h(space.)22 b(Moreo)o(v)o(er,)15 b(pro)q(cessing)h(o)o(v)o(erhead)f(can)g(b)q(e)g(reduced)h(if)e(only)g(a)h (single)f(table)h(lo)q(okup)f(is)g(p)q(erformed)g(for)h(b)q(oth)-90 2043 y(proto)q(cols.)-90 2173 y Fc(6.2.4.2)48 b(Sp)q(ecialized)13 b(Serv)o(ers)-90 2267 y Fm(Net)o(w)o(ork)h(administrators)d(need)k(to)e (create)i(consisten)o(t)f(p)q(olicies)f(across)h(all)e(three)j(t)o(yp)q(es)f (of)f(con)o(trols)g(addressed.)20 b(This)13 b(ma)o(y)e(in)o(v)o(olv)o(e)-90 2317 y(more)j(than)i(one)f(serv)o(er)i(function.)22 b(In)15 b(a)g(stub)h(AD,)f(net)o(w)o(ork)g(administrators)f(will)g(de\014ne)j(whic)o (h)e(end-systems)h(will)d(b)q(e)j(reac)o(hable)-90 2367 y(from)h(the)i (outside.)32 b(These)19 b(p)q(olicies)f(are)h(then)g(enforced)h(b)o(y)e(the)h (particular)f(Access)j(Con)o(trol)c(Serv)o(er)j(\(A)o(CS\))f(used.)32 b(The)19 b(A)o(CS)-90 2417 y(con)o(trols)g(the)g(inclusion)e(of)h(particular) h(principals)f(and)g(ob)r(jects)i(\(e.g.,)e(end-system)h(addresses\))i(in)d (router)h(access)h(con)o(trol)f(lists.)-90 2466 y(F)m(or)c(those)h (end-systems)g(that)g(are)f(made)g(accessible,)h(net)o(w)o(ork)g (administrators)e(will)g(w)o(an)o(t)h(to)g(monitor)e(the)j(end-system)g(con)o (trols)-90 2516 y(emplo)o(y)o(ed)c(to)i(mak)o(e)e(sure)j(that)f(unreac)o (hable)h(end-systems)f(are)h(not)f(vulnerable)f(to)h(external)h(access.)p -90 2592 864 2 v -44 2619 a Fh(1)-26 2630 y Fg(Actually)m(,)9 b(IDPR)j(already)d(supp)q(orts)h(pac)o(k)o(et,)f(data)i(and)f(time)h(coun)o (ters)e(on)i(a)h(p)q(er)e(PR)i(basis.)-44 2658 y Fh(2)-26 2670 y Fg(This)f(is)h(similar)d(to)j(the)e(in)o(tegrated)f(la)o(y)o(er)h(pro)q (cessing)f(argumen)o(t)g(presen)o(ted)g(in)i([14)o(].)2028 2770 y Fm(76)p eop %%Page: 77 17 bop -28 -108 a Fm(These)11 b(same)e(net)o(w)o(ork)h(administrators)f(will)f (create)j(p)q(olicies)f(to)g(b)q(e)g(used)h(in)e(selecting)i(routes.)17 b(The)10 b(same)f(in)o(ter-AD)h(relationships)-90 -59 y(and)g(trust)g(lev)o (els)g(that)g(determine)g(the)g(end-system)g(and)g(net)o(w)o(ork)g(resource)i (access)f(p)q(olicies)f(will)e(determine)i(route)h(selection)f(criteria.)-90 -9 y(Once)k(routes)g(are)f(selected)h(for)f(p)q(ossible)f(use)i(b)o(y)e(the)i (AD,)e(route)h(serv)o(ers)i(are)e(resp)q(onsible)g(for)g(handing)f(out)g (routes)i(to)e(end-systems)-90 41 y(\(or)k(b)q(order)h(routers\))g(within)e (the)h(AD.)f(Therefore,)i(net)o(w)o(ork)f(administrators)f(m)o(ust)f(also)h (sp)q(ecify)i(access)g(con)o(trol)f(lists)g(to)f(con)o(trol)-90 91 y(distribution)i(of)f(the)i(route)g(serv)o(ers')g(routes.)29 b(A)18 b(route)f(serv)o(er,)j(therefore,)f(is)e(in)o(v)o(olv)o(ed)e(in)i(all) f(three)j(t)o(yp)q(es)f(of)e(p)q(olicy)h({)g(net)o(w)o(ork)-90 141 y(resource)h(con)o(trol)e(p)q(olicies)f(are)h(considered)i(in)d(route)i (computation,)d(follo)o(w)o(ed)g(b)o(y)i(route)g(selection)h(p)q(olicies,)f (and)f(\014nally)g(b)o(y)h(end-)-90 190 y(system)h(p)q(olicies)h(that)f(con)o (trol)h(distribution)f(of)g(routes.)30 b(Finally)m(,)16 b(for)h(h)o(ybrid)g (ADs)h(that)f(supp)q(ort)i(some)e(transit)g(tra\016c)h(as)g(w)o(ell)-90 240 y(as)d(end-system)h(access,)h(transit)e(routing)g(p)q(olicies,)g(adv)o (ertised)h(via)e(the)i(in)o(ter-AD)f(routing)g(proto)q(col,)g(m)o(ust)f(b)q (e)i(co)q(ordinated)f(with)-90 290 y(stub-AD)f(net)o(w)o(ork)g(resource)i (con)o(trols.)-28 358 y(In)h(the)g(case)g(of)f(transit)h(ADs,)f(there)i(is)e (less)i(of)d(a)h(concern)i(with)e(co)q(ordinating)g(sev)o(eral)h(t)o(yp)q(es) g(of)f(p)q(olicy)m(.)25 b(Ho)o(w)o(ev)o(er,)17 b(net)o(w)o(ork)-90 408 y(administrators)d(will)f(need)j(to)q(ols)f(to)g(assist)h(them)e(in)h (comp)q(osing)e(useful)j(transit)f(p)q(olicies.)22 b(Suc)o(h)15 b(p)q(olicies)g(m)o(ust)f(on)h(the)h(one)f(hand)-90 457 y(realize)e(the)h (AD's)f(con)o(trol)g(requiremen)o(ts,)g(and)g(on)f(the)i(other)g(hand,)e(b)q (e)i(as)f(compatible)e(as)j(p)q(ossible)f(with)g(the)g(p)q(olicies)g(of)g (all)e(other)-90 507 y(ADs.)18 b(If)12 b(no)h(atten)o(tion)f(is)h(paid)f(to)g (compatibilit)o(y)m(,)d(then)k(the)h(transit)f(service)h(ma)o(y)d(b)q(e)i(of) f(little)g(use)h(to)g(an)o(y)o(one)f(in)h(the)g(in)o(ternet)o(w)o(ork.)-90 646 y Fe(6.2.5)55 b(Other)18 b(P)n(olicy)g(Routing)h(Approac)n(hes)-90 740 y Fm(The)e(IDPR)f(arc)o(hitecture)j(describ)q(ed)f(in)f(this)f(thesis)i (is)f(not)f(the)h(only)f(p)q(ossible)h(paradigm)e(for)h(P)o(olicy)g(Routing.) 25 b(Other)18 b(existing)-90 790 y(prop)q(osals)f(review)o(ed)i(in)e(Chapter) h(2)f(are)g(no)h(matc)o(h)e(for)h(IDPR)g(insofar)f(as)i(the)g(range)f(of)g(p) q(olicies)g(supp)q(orted.)30 b(Nev)o(ertheless,)20 b(it)-90 840 y(is)c(conceiv)n(able)g(that)h(other,)g(radically)e(di\013eren)o(t)i (approac)o(hes)g(ma)o(y)d(b)q(e)j(more)e(suitable)i(to)f(P)o(olicy)f (Routing.)24 b(\(Alternativ)o(e)17 b(P)o(olicy)-90 890 y(Routing)c(approac)o (hes)i(are)g(discussed)h(in)e([7)o(].\))20 b(F)m(or)13 b(example,)g(it)h(has) h(b)q(een)g(suggested)h(that)e(IDRP)g(\(not)h(IDPR\))f(b)q(e)h(augmen)o(ted)e (to)-90 939 y(include)g(full)f(AD-lev)o(el)h(paths)h(coupled)f(with)g(asso)q (ciated)h(p)q(olicies)g(along)e(the)i(distance)g(v)o(ector)g(tables)f(it)g (already)g(exc)o(hanges)1948 924 y Fi(3)1968 939 y Fm(.)18 b(It)13 b(is)-90 989 y(unclear)h(at)g(the)h(time)d(of)h(this)h(writing)g (whether)h(the)f(resultan)o(t)h(arc)o(hitecture)g(can)f(con)o(tend)h(with)f (IDPR.)p -90 2631 864 2 v -44 2658 a Fh(3)-26 2670 y Fg(D.)d(Estrin,)f(priv)n (ate)g(comm)o(unica)o(tion)o(,)f(Marc)o(h)i(1990.)2028 2770 y Fm(77)p eop %%Page: 78 18 bop -90 192 a Ff(Reference)21 b(List)-48 424 y Fm([1])e(Adv)n(anced)d(Micro)f (Devices,)h(Inc.,)e Fl(AMD)j(MOS)f(Micr)n(opr)n(o)n(c)n(essors)f(and)h (Peripher)n(als)g(Data)g(Bo)n(ok)p Fm(,)f Fc(Adv)m(anced)i(Micro)g(De-)16 474 y(vices,)f(Inc.)p Fm(,)d(Sunn)o(yv)n(ale,)g(CA.)h(1987)-48 557 y([2])19 b(ANSI,)10 b Fl(Interme)n(diate)h(System)h(to)f(Interme)n(diate) g(System)h(Inter-Domain)g(R)n(outeing)g(Information)f(Exchange)i(Pr)n(oto)n (c)n(ol)p Fm(,)d Fc(ANSI)16 607 y(Do)q(cumen)o(t)k(X3S3.3/90-132)p Fm(,)e(June)j(1990.)-48 690 y([3])k(E.)g(Biham,)e(A.)i(Shamir,)e Fl(Di\013er)n(ential)i(Cryptanalysis)g(of)g(DES-like)h(Cryptosystems)p Fm(,)f Fc(Pro)q(ceedings)g(of)h(CR)l(YPTO'90)p Fm(,)16 740 y(August)15 b(1990.)-48 823 y([4])k(M.)14 b(Bishop,)f Fl(A)h(Se)n(curity)h(A) o(nalysis)f(of)h(V)m(ersion)f(2)h(of)g(the)g(Network)e(Time)h(Pr)n(oto)n(c)n (ol)h(\(NTP\))p Fm(,)d Fc(Dartmouth)h(College)i(T)l(ec)o(h-)16 872 y(nical)g(Rep)q(ort)f(PCS-TR91-154)p Fm(,)e(Jan)o(uary)i(1991.)-48 955 y([5])19 b Fl(Blacker)14 b(F)m(r)n(ont)f(End)h(Interfac)n(e)f(Contr)n(ol) g(Do)n(cument)g Fc(DDN)h(Proto)q(col)e(Handb)q(o)q(ok,)i(V)l(ol.)g(1)p Fm(,)e(DDN)g(Net)o(w)o(ork)g(Information)16 1005 y(Cen)o(ter,)j(SRI)e(In)o (ternational,)g(1985.)-48 1088 y([6])19 b(A.)14 b(Birrell,)f(B.)g(Lampson,)f (R.)g(Needham,)h(M.)g(Sc)o(hro)q(eder,)i Fl(A)f(Glob)n(al)g(A)o(uthentic)n (ation)h(Servic)n(e)g(Without)g(Glob)n(al)f(T)m(rust)p Fm(,)e Fc(Pro-)16 1138 y(ceedings)i(of)i(1986)f(IEEE)i(Symp)q(osium)d(on)h(Securit)o (y)e(and)j(Priv)m(acy)p Fm(,)d(Ma)o(y)g(1986.)-48 1221 y([7])19 b(L.)11 b(Breslau)g(and)g(D.)f(Estrin,)h Fl(Design)h(of)g(Inter-A)n(dministr) n(ative)f(Domain)h(R)n(outing)h(Pr)n(oto)n(c)n(ols)p Fm(,)d Fc(Pro)q(ceedings)g(of)i(1990)f(A)o(CM)16 1271 y(Sigcomm)k(Conference)p Fm(,)c(Septem)o(b)q(er)k(1990.)-48 1354 y([8])k(L.)d(Breslau,)i(D.)d(Estrin,) j(and)e(L.)g(Zhang,)g Fl(A)n(daptive)i(Multi-Path)f(Sour)n(c)n(e)g(R)n (outing)p Fm(,)h Fc(DRAFT,)g(in)g(submission)d(to)k(1991)16 1404 y(A)o(CM)e(Sigcomm)d(Conference)p Fm(,)e(April)h(1991.)-48 1487 y([9])19 b(M.)d(Burro)o(ws,)g(M.)f(Abadi,)h(and)f(R.)g(Needham,)g Fl(A)i(L)n(o)n(gic)f(of)g(A)o(uthentic)n(ation)p Fm(,)g Fc(Pro)q(ceedings)g (of)h(A)o(CM)i(Symp)q(osium)d(on)16 1537 y(Op)q(erating)e(System)h(Principl)o (es)p Fm(,)10 b(Decem)o(b)q(er)k(1989.)-69 1620 y([10])19 b(CCITT,)10 b Fl(The)i(Dir)n(e)n(ctory,)f(Part)h(1:)17 b(Overview)11 b(of)h(Conc)n(epts,) g(Mo)n(dels,)g(and)h(Servic)n(es)p Fm(,)d Fc(CCITT)k(Recommendation)9 b(X.500)p Fm(,)16 1669 y(Decem)o(b)q(er)15 b(1988.)-69 1752 y([11])k(CCITT,)14 b Fl(The)h(Dir)n(e)n(ctory)f(A)o(uthentic)n(ation)h(F)m(r) n(amework)p Fm(,)d Fc(CCITT)17 b(Recommendation)c(X.509)p Fm(,)g(1988.)-69 1835 y([12])19 b(D.)h(Clark,)h Fl(Design)g(Philosophy)h(of)e(the)h(D)o(ARP)m (A)g(Internet)g(Pr)n(oto)n(c)n(ols)p Fm(,)g Fc(Pro)q(ceedings)f(of)j(1988)g (A)o(CM)h(SIGCOMM)16 1885 y(Symp)q(osium)p Fm(,)11 b(August)k(1988.)-69 1968 y([13])k(D.)e(Clark,)h Fl(Policy)g(R)n(outing)h(in)f(Internet)h(Pr)n (oto)n(c)n(ols)p Fm(,)e Fc(Journal)h(of)i(In)o(ternet)o(w)o(or)o(kin)o(g:)27 b(Researc)o(h)19 b(and)h(Exp)q(erience)p Fm(,)16 2018 y(V)m(ol.)13 b(1,)g(No.)g(1,)g(Octob)q(er)j(1990.)-69 2101 y([14])j(D.)13 b(Clark)h(and)g(D.)f(T)m(ennenhouse,)h Fl(A)o(r)n(chite)n(ctur)n(al)g (Consider)n(ations)g(for)h(a)g(New)f(Gener)n(ation)h(of)g(Pr)n(oto)n(c)n(ols) p Fm(,)e Fc(Pro)q(ceedings)h(of)16 2151 y(1990)i(A)o(CM)g(SIGCOMM)g(Symp)q (osium)p Fm(,)11 b(Septem)o(b)q(er)k(1990.)-69 2234 y([15])k(D.)d(Clark,)g (D.)g(Wilson,)f Fl(A)i(Comp)n(arison)g(of)h(Commer)n(cial)e(and)i(Military)e (Computer)h(Se)n(curity)g(Policies)p Fm(,)f Fc(Pro)q(ceedings)h(of)16 2284 y(1987)f(IEEE)h(Symp)q(osium)c(on)j(Securit)o(y)d(and)i(Priv)m(acy)p Fm(,)e(Ma)o(y)h(1987.)-69 2367 y([16])19 b(R.)f(Co)q(cc)o(hi,)j(D.)d(Estrin,) i(S.)f(Shenk)o(er,)i(L.)d(Zhang,)i Fl(A)f(Study)i(of)e(Priority)g(Pricing)g (in)h(Multiple)f(Servic)n(e)g(Class)g(Networks)p Fm(,)16 2417 y Fc(DRAFT,)d(in)f(submission)d(to)j(1991)h(A)o(CM)g(SIGCOMM)g(Symp)q(osium)p Fm(,)11 b(April)j(1991.)-69 2500 y([17])19 b(D.)13 b(Da)o(vies)h(and)g(W.)f (Price,)h Fl(Se)n(curity)h(F)m(or)f(Computer)h(Networks)p Fm(,)d Fc(New)17 b(Y)l(ork,)f(NY:Wiley)p Fm(,)d(1984.)-69 2583 y([18])19 b(S.)13 b(Deering,)h Fl(Multic)n(ast)g(R)n(outing)h(in)f(Internetworks)g(and) h(Extende)n(d)h(LANs)p Fm(,)c Fc(Pro)q(ceedings)h(of)i(1988)g(A)o(CM)h (SIGCOMM)16 2633 y(Symp)q(osium)p Fm(,)11 b(August)k(1988.)2028 2770 y(78)p eop %%Page: 79 19 bop -69 -108 a Fm([19])19 b(W.)d(Di\016e,)h Fl(The)g(First)g(T)m(en)g(Y)m(e)n (ars)g(of)h(Public-Key)f(Crypto)n(gr)n(aphy)p Fm(,)g Fc(Pro)q(ceedings)g(of)i (the)f(IEEE)p Fm(,)g(V)m(ol.)d(76,)h(No.)h(5,)f(Ma)o(y)16 -59 y(1988.)-69 22 y([20])j(W.)e(Di\016e)g(and)g(M.)g(Hellman,)f Fl(New)h(Dir)n(e)n(ctions)h(in)g(Crypto)n(gr)n(aphy)p Fm(,)g Fc(IEEE)j(T)l(ransactions)d(on)h(Information)e(Theory)p Fm(,)16 72 y(V)m(ol.)c(22,)g(No.)g(11,)g(No)o(v)o(em)o(b)q(er,)f(1976.)-69 153 y([21])19 b(Digital)c(Equipmen)o(t)h(Corp)q(oration,)g Fl(Interme)n(diate)h(System)h(to)g(Interme)n(diate)f(System)g(Intr)n (a-Domain)h(R)n(outeing)h(Exchange)16 203 y(Pr)n(oto)n(c)n(ol)p Fm(,)13 b(Octob)q(er)j(1989.)-69 284 y([22])j(E.)14 b(Dijkstra,)e Fl(Self-Stabilization)j(in)f(Spite)h(of)g(Distribute)n(d)f(Contr)n(ol)p Fm(,)f Fc(Comm)o(unication)o(s)g(of)i(the)g(A)o(CM)p Fm(,)e(No)o(v)o(em)o(b)q (er)g(1974.)-69 365 y([23])19 b(T.)12 b(El)g(Gamal,)d Fl(A)k(Public)g(Key)h (Cryptosystem)f(and)h(a)f(Signatur)n(e)h(Base)n(d)f(on)h(Discr)n(ete)f(L)n(o) n(garithms)p Fm(,)e Fc(IEEE)16 b(T)l(ransaction)c(on)16 415 y(Information)h(Theory)p Fm(,)g(V)m(ol.)f(31,)h(July)h(1985.)-69 496 y([24])19 b(D.)11 b(Estrin,)h Fl(Contr)n(ols)g(for)h(Inter-Or)n (ganization)f(Networks)p Fm(,)f Fc(IEEE)j(T)l(ransactions)d(on)i(Soft)o(w)o (are)e(Engineering)p Fm(,)e(F)m(ebruary)16 546 y(1987.)-69 627 y([25])19 b(D.)g(Estrin,)i Fl(Inter)n(c)n(onne)n(ction)g(Pr)n(oto)n(c)n (ols)e(for)h(Inter)n(or)n(ganization)g(Networks)p Fm(,)f Fc(IEEE)24 b(Journal)c(on)i(Selected)e(Areas)i(in)16 676 y(Comm)o(unications)p Fm(,)10 b(Decem)o(b)q(er)k(1987.)-69 757 y([26])19 b(D.)f(Estrin,)h Fl(Policy)f(R)n(e)n(quir)n(ements)h(for)f(Inter)g(A)n(dministr)n(ative)f (Domain)j(R)n(outing)p Fm(,)f Fc(Computer)g(Net)o(w)o(orks)h(and)f(ISDN)16 807 y(Systems)p Fm(,)12 b(T)m(o)h(app)q(ear)i(in)e(1991.)-69 888 y([27])19 b(D.)12 b(Estrin,)g(J.)g(Mogul,)g(G.)f(Tsudik,)h Fl(Visa)h(Pr)n(oto)n(c)n(ols)f(for)h(Contr)n(ol)r(ling)g(Inter-Or)n (ganizational)f(Datagr)n(am)i(Flow)p Fm(,)d Fc(IEEE)k(Jour-)16 938 y(nal)g(on)h(Selected)d(Areas)j(in)e(Comm)o(unications)p Fm(,)c(Ma)o(y)k(1989.)-69 1019 y([28])19 b(D.)11 b(Estrin)h(and)f(M.)g (Steenstrup,)i Fl(Inter-Domain)g(Policy)g(R)n(outing:)18 b(Overview)12 b(of)g(A)o(r)n(chite)n(ctur)n(e)f(and)j(Pr)n(oto)n(c)n(ols)p Fm(,)c Fc(A)o(CM)k(Com-)16 1069 y(puter)g(Comm)o(unications)f(Review)p Fm(,)g(Jan)o(uary)g(1991.)-69 1150 y([29])19 b(D.)f(Estrin)h(and)f(G.)f (Tsudik,)i Fl(Se)n(cur)n(e)g(Contr)n(ol)g(of)g(T)m(r)n(ansit)e(Internetwork)i (T)m(r)n(a\016c)p Fm(,)f Fc(Computer)h(Net)o(w)o(orks)h(and)g(ISDN)16 1200 y(Systems)p Fm(,)12 b(T)m(o)h(app)q(ear)i(in)e(1991.)-69 1281 y([30])19 b(D.)13 b(Estrin)h(and)f(G.)f(Tsudik,)h(End-to-End)h Fl(A)o(r)n(gument)g(for)g(Network-L)n(ayer)f(A)n(c)n(c)n(ess)h(Contr)n(ols)p Fm(,)e Fc(Journal)h(of)h(In)o(ternet)o(w)o(ork-)16 1331 y(ing:)20 b(Researc)o(h)15 b(and)g(Exp)q(erience)p Fm(,)d(V)m(ol.)h(2,)g(No.)g(2,)g(Ma) o(y)h(1991.)-69 1412 y([31])19 b(D.)g(Estrin)h(and)f(G.)f(Tsudik,)i Fl(Se)n(curity)f(Issues)h(in)g(Policy)g(R)n(outing)p Fm(,)g Fc(Pro)q(ceedings)g(of)h(1989)h(IEEE)h(Symp)q(osium)d(on)16 1461 y(Securit)o(y)14 b(and)h(Priv)m(acy)p Fm(,)e(Ma)o(y)g(1989.)-69 1542 y([32])19 b(D.)d(Estrin)h(and)f(G.)f(Tsudik,)h Fl(Visa)h(Scheme)h(for)f (Inter-Or)n(ganization)f(Network)g(Se)n(curity)p Fm(,)g Fc(Pro)q(ceedings)h (of)h(1987)g(IEEE)16 1592 y(Symp)q(osium)c(on)h(Securit)o(y)f(and)h(Priv)m (acy)p Fm(,)e(April)g(1987.)-69 1673 y([33])19 b(D.)10 b(Estrin)i(and)e(L.)g (Zhang,)h Fl(Design)i(Consider)n(ations)f(for)f(Usage)h(A)n(c)n(c)n(ounting)h (and)f(F)m(e)n(e)n(db)n(ack)h(in)f(Internetworks)p Fm(,)e Fc(SIGCOMM)16 1723 y(Computer)15 b(Comm)o(unication)o(s)e(Review)p Fm(,)g(Octob)q(er)i (1990.)-69 1804 y([34])k(Europ)q(ean)11 b(Computer)f(Man)o(ufacturers)h(Asso) q(ciation,)g Fl(Inter-Domain)h(Interme)n(diate)f(Systems)h(R)n(outing)p Fm(,)f Fc(T)l(ec)o(hnical)e(Rep)q(ort)16 1854 y(ECMA/TC32-TG10/89/56)p Fm(,)14 b(Ma)o(y)f(1989.)-69 1935 y([35])19 b(L.)14 b(F)m(ord)f(and)h(D.)f(F) m(ulk)o(erson,)g Fl(Flows)i(in)g(Networks)p Fm(,)d Fc(Princeton,)h (NJ:Princeton)h(Univ)o(ersit)n(y)f(Press)p Fm(,)f(1962.)-69 2016 y([36])19 b(J.)13 b(Galvin,)e(K.)i(McCloghrie,)f(J.)h(Da)o(vin,)e Fl(Se)n(cur)n(e)j(Management)h(of)f(SNMP)g(Networks)p Fm(,)e Fc(Pro)q(ceedings)g(of)i(1991)h(In)o(tegrated)16 2066 y(Net)o(w)o(ork)h (Managemen)o(t)e(Symp)q(osium)p Fm(,)d(April)i(1991.)-69 2147 y([37])19 b(M.)c(Gasser,)h(A.)f(Goldstein,)g(C.)g(Kaufman,)e(B.)i(Lampson,)f Fl(The)i(Digital)g(System)h(Se)n(curity)f(A)o(r)n(chite)n(ctur)n(e)p Fm(,)d Fc(Pro)q(ceedings)j(of)16 2197 y(1989)g(National)e(Computer)g(Securit) o(y)g(Conference)p Fm(,)d(No)o(v)o(eb)q(er)k(1989.)-69 2278 y([38])k(D.)13 b(Gom)o(b)q(erg,)e Fl(A)j(Mo)n(del)h(of)f(Inter-administr)n (ation)f(Network)h(User)g(A)o(uthentic)n(ation)g(and)h(A)n(c)n(c)n(ess)f (Contr)n(ol)p Fm(,)e Fc(MITRE)k(Corp.)16 2327 y(T)l(ec)o(hnical)e(Rep)q(ort)h (MTR-87W00003)p Fm(,)e(Decem)o(b)q(er)h(1987.)-69 2408 y([39])19 b(S.)f(Hares,)i(D.)d(Katz)i Fl(A)n(dministr)n(ative)f(Domains)h(and)h(R)n (outing)f(Domains,)i(a)e(Mo)n(del)g(for)f(R)n(outing)h(in)g(the)g(Internet)p Fm(,)g Fc(RF)o(C)16 2458 y(1136,)d(SRI)f(Net)o(w)o(ork)h(Information)c(Cen)o (ter)p Fm(,)g(Decem)o(b)q(er)j(1989.)-69 2539 y([40])k(C.)14 b(Hedric)o(k,)g Fl(A)o(n)h(Intr)n(o)n(duction)g(to)g(IGRP)p Fm(,)f Fc(Rutgers)g(Univ)o(ersit)n(y)f(T)l(ec)o(hnical)h(Rep)q(ort)p Fm(,)e(Octob)q(er)j(1989.)-69 2620 y([41])k(E.)14 b(Horo)o(witz)g(and)f(S.)h (Sahni,)f Fl(F)m(undamentals)i(of)g(Computer)g(A)o(lgorithms)p Fm(,)d Fc(Ro)q(c)o(kville,)i(MD:Computer)g(Science)h(Press)p Fm(,)16 2670 y(1978.)2028 2770 y(79)p eop %%Page: 80 20 bop -69 -108 a Fm([42])19 b(IEEE)k(802.10,)f(Standard)g(for)g(In)o(terop)q (erable)i(LAN)e(Securit)o(y,)i Fc(LAN)i(Securit)o(y)d(W)l(orking)h(Group,)i (P802.10/D6)p Fm(,)16 -59 y(Septem)o(b)q(er)15 b(1989.)-69 23 y([43])k(In)o(ternational)c(Standards)i(Organization,)e Fl(Information)i(Pr)n(o)n(c)n(essing)f(Systems)h({)g(Op)n(en)g(Systems)g (Inter)n(c)n(onne)n(ction)g({)g(Basic)16 73 y(R)n(efer)n(enc)n(e)e(Mo)n(del)p Fm(,)f Fc(ISO)h(7498)p Fm(,)e(1977)-69 155 y([44])19 b(In)o(ternational)14 b(Standards)g(Organization,)f Fl(Se)n(curity)h(A)o(r)n(chite)n(ctur)n(e)p Fm(,)e Fc(ISO)k(7498-2-1988\(E\))p Fm(,)11 b(1988)-69 237 y([45])19 b(In)o(ternational)14 b(Standards)g(Organization,)f Fl(OSI)i(R)n(outeing)g(F) m(r)n(amework)p Fm(,)e Fc(ISO/TF)i(9575)p Fm(,)e(Jan)o(uary)h(1989.)-69 318 y([46])19 b(P)m(.)13 b(Karger,)h Fl(A)o(uthentic)n(ation)h(and)g(Discr)n (etionary)f(Contr)n(ol)g(in)h(Computer)f(Networks)p Fm(,)e Fc(Computer)i(Net)o(w)o(orks)h(and)f(ISDN)16 368 y(Systems)p Fm(,)e(Jan)o(uary)i(1986.)-69 450 y([47])19 b(C.)12 b(Ken)o(t)i(and)e(J.)h (Mogul,)e Fl(F)m(r)n(agmentation)j(Consider)n(e)n(d)f(Harmful)p Fm(,)f Fc(Pro)q(ceedings)g(of)h(1987)h(A)o(CM)h(SIGCOMM)g(Symp)q(o-)16 500 y(sium)p Fm(,)d(August)i(1987.)-69 582 y([48])19 b(S.)c(Ken)o(t,)h Fl(Pr)n(oto)n(c)n(ols)f(and)i(T)m(e)n(chniques)f(for)f(Data)i(Communic)n (ation)f(Networks)p Fm(,)e Fc(Englew)o(o)q(o)q(d)i(Cli\013s,)h(NJ:Pren)o (tice)d(Hall)p Fm(,)16 631 y(1980.)-69 713 y([49])19 b(A.)14 b(Konheim,)e(Cryptograph)o(y)p Fl(,)i(a)h(Primer)e Fc(New)k(Y)l(ork,)f (NY:Wiley)p Fm(,)d(1981.)-69 795 y([50])19 b(M.)c(Lepp)h(and)f(M.)g (Steenstrup,)i Fl(A)o(n)f(A)o(r)n(chite)n(ctur)n(e)f(for)g(Inter-Domain)h (Policy)g(R)n(outing)p Fm(,)g Fc(BBN)i(Rep)q(ort)e(Num)o(b)q(er)g(7345)p Fm(,)16 845 y(July)e(1990,)e(BBN)j(Corp)q(oration,)e(Cam)o(bridge,)f(MA)i (02138.)-69 927 y([51])19 b(J.)e(Linn,)g Fl(Privacy)h(Enhanc)n(ement)h(for)e (Internet)h(Ele)n(ctr)n(onic)f(Mail.)g(Part)g(I:)h(Message)g(Encipherment)g (and)h(A)o(uthentic)n(ation)16 977 y(Pr)n(o)n(c)n(e)n(dur)n(es)p Fm(,)13 b Fc(RF)o(C)j(1113,)g(SRI)f(Net)o(w)o(ork)g(Information)e(Cen)o(ter)p Fm(,)f(Jan)o(uary)i(1989.)-69 1058 y([52])19 b(M.)14 b(Little,)f Fl(Dissimilar)h(Gateway)h(Pr)n(oto)n(c)n(ol)f(\(DGP\))p Fm(,)g Fc(W)l(orking)g(P)o(ap)q(er)p Fm(,)f(1988.)-69 1140 y([53])19 b(K.)12 b(Lougheed)h(and)f(Y.)f(Rekh)o(ter,)i Fl(Bor)n(der)g(Gateway)g(Pr)n (oto)n(c)n(ol)p Fm(,)f Fc(RF)o(C)h(1163,)h(SRI)g(Net)o(w)o(ork)f(Information) e(Cen)o(ter)p Fm(,)f(June)16 1190 y(1990.)-69 1272 y([54])19 b(K.)13 b(Lougheed)g(and)g(Y.)g(Rekh)o(ter,)g Fl(Bor)n(der)h(Gateway)g(Pr)n (oto)n(c)n(ol)e Fc(RF)o(C)j(1105,)g(SRI)f(Net)o(w)o(ork)g(Information)e(Cen)o (ter)p Fm(,)f(June)16 1322 y(1989.)-69 1403 y([55])19 b(J.)11 b(McQuillan,)g Fl(A)n(daptive)h(R)n(outing)h(A)o(lgorithms)f(for)g (Distribute)n(d)f(Computer)i(Networks)p Fm(,)d Fc(BBN)j(Inc,)h(BBN)f(TR)g (2831)p Fm(,)d(Ma)o(y)16 1453 y(1974.)-69 1535 y([56])19 b(J.)g(McQuillan,)f (I.)f(Ric)o(her,)j(E.)e(Rosen,)h Fl(The)g(New)f(R)n(outing)i(A)o(lgorithm)e (for)g(the)h(ARP)m(ANET)p Fm(,)e Fc(IEEE)23 b(T)l(ransactions)c(on)16 1585 y(Comm)o(unications)p Fm(,)10 b(Ma)o(y)j(1980.)-69 1667 y([57])19 b(R.)13 b(Merkle,)h Fl(One-way)h(Hash)g(functions)h(and)f(DES)p Fm(,)g Fc(Pro)q(ceedings)e(of)i(CR)l(YPTO)h(89)p Fm(,)d(August)i(1989.)-69 1749 y([58])k(D.)f(Mills,)g Fl(On)h(the)g(A)n(c)n(cur)n(acy)f(and)i (Stability)e(of)h(Clo)n(cks)g(Synchr)n(onize)n(d)g(by)h(the)f(Network)f(Time) g(Pr)n(oto)n(c)n(ol)g(in)h(the)g(Internet)16 1798 y(System)p Fm(,)14 b Fc(A)o(CM)j(Computer)d(Comm)o(unication)o(s)f(Review)p Fm(,)g(Jan)o(uary)h(1990.)-69 1880 y([59])19 b(D.)13 b(Mills,)f Fl(Internet)j(Time)f(Synchr)n(onization:)20 b(the)15 b(Network)e(Time)h(Pr)n (oto)n(c)n(ol)p Fm(,)f Fc(RF)o(C)j(1129,)f(SRI)g(Net)o(w)o(ork)g(Information) 16 1930 y(Cen)o(ter)p Fm(,)d(Octob)q(er)k(1989.)-69 2012 y([60])j(P)m(.)d(Mo) q(c)o(k)n(ap)q(etris,)g Fl(Domain)i(Names)e(-)h(Implementation)g(and)g(Sp)n (e)n(ci\014c)n(ation)p Fm(,)g Fc(RF)o(C)h(1035,)h(SRI)e(Net)o(w)o(ork)h (Information)16 2062 y(Cen)o(ter)p Fm(,)12 b(No)o(v)o(em)o(b)q(er)i(1987.)-69 2143 y([61])19 b(J.)e(Mogul,)f Fl(Simple)i(and)g(Flexible)g(Datagr)n(am)f(A)n (c)n(c)n(ess)h(Contr)n(ols)f(for)g(Unix-b)n(ase)n(d)h(Gateways)p Fm(,)f Fc(Pro)q(ceedings)g(of)i(Summer)16 2193 y(1989)d(USENIX)g(T)l(ec)o (hnical)e(Conference)p Fm(,)e(August)i(1989.)-69 2275 y([62])19 b(J.)14 b(Mo)o(y)m(,)e Fl(The)i(Op)n(en)h(Shortest)f(Path)h(First)e(\(OSPF\)) i(Sp)n(e)n(ci\014c)n(ation)p Fm(,)f Fc(RF)o(C)h(1131,)g(SRI)g(Net)o(w)o(ork)g (Information)d(Cen)o(ter)p Fm(,)16 2325 y(Octob)q(er)k(1989.)-69 2407 y([63])j(J.)14 b(Mracek,)g Fl(Network)g(A)n(c)n(c)n(ess)g(Contr)n(ol)g (in)h(Multi-Net)f(Internet)h(T)m(r)n(ansp)n(ort)p Fm(,)d Fc(S.B.)k(Thesis,)e (MIT)j(Departmen)o(t)12 b(of)j(Elec-)16 2457 y(trical)f(Engineering)f(and)i (Computer)f(Science)p Fm(,)e(June)j(1983.)-69 2538 y([64])k(S.)12 b(Mulender)h(et)f(al,)f Fl(A)o(mo)n(eb)n(a:)18 b(A)13 b(Distribute)n(d)f(Op)n (er)n(ating)h(System)g(for)g(the)g(1990s)p Fm(,)f Fc(IEEE)j(Computer)p Fm(,)10 b(V)m(ol.)g(23,)i(No.)f(5,)g(Ma)o(y)16 2588 y(1990.)-69 2670 y([65])19 b(T.)14 b(Narten,)g Fl(Internet)h(R)n(outing)p Fm(,)f Fc(Pro)q(ceedings)f(of)i(1988)h(A)o(CM)g(SIGCOMM)g(Symp)q(osium)p Fm(,)11 b(August)k(1989.)2028 2770 y(80)p eop %%Page: 81 21 bop -69 -108 a Fm([66])19 b(National)c(Bureau)h(of)f(Standards,)i Fl(F)m(e)n(der)n(al)e(Information)i(Pr)n(o)n(c)n(essing)f(Standar)n(ds)p Fm(,)h(National)d(Bureau)j(of)e(Standards,)h(Publi-)16 -59 y(cation)e(46,)f(1977.)-69 24 y([67])19 b(R.)13 b(Needham)g(and)g(M.)g(Sc)o (hro)q(eder,)h Fl(Using)h(Encryption)g(for)e(A)o(uthentic)n(ation)i(in)f(L)n (ar)n(ge)h(Networks)e(of)h(Computers)p Fm(,)f Fc(Comm)o(u-)16 74 y(nications)h(of)h(the)g(A)o(CM)p Fm(,)f(V)m(ol.)e(21,)h(No.)g(12,)g (Decem)o(b)q(er)h(1978.)-69 157 y([68])19 b(R.)c(Needham)f(and)h(M.)g(Sc)o (hro)q(eder,)h Fl(A)o(uthentic)n(ation)h(R)n(evisite)n(d)p Fm(,)d Fc(A)o(CM)k(Op)q(erating)d(Systems)h(Review)p Fm(,)e(V)m(ol.)g(21,)g (No.)h(7,)16 207 y(Jan)o(uary)f(1987.)-69 290 y([69])19 b(D.)13 b(Nessett,)h Fl(F)m(actors)g(A\013e)n(cting)h(Distribute)n(d)e(System)i(Se)n (curity)p Fm(,)d Fc(IEEE)17 b(T)l(ransaction)c(on)h(Soft)o(w)o(are)f (Engineering)p Fm(,)d(V)m(ol.)16 340 y(SE-13,)j(1987.)-69 423 y([70])19 b(M.)14 b(P)o(adlipsky)m(,)e Fl(The)j(Elements)g(of)f(Networking)h (Style)p Fm(,)e Fc(Englew)o(o)q(o)q(d)i(Cli\013s,)g(NJ:Pren)o(tice)e(Hall)p Fm(,)g(1985.)-69 506 y([71])19 b(R.)e(P)o(erlman,)g Fl(Network)g(L)n(ayer)h (Pr)n(oto)n(c)n(ols)f(with)h(Byzantine)h(R)n(obustness)p Fm(,)g Fc(Ph.D.)g(Dissertation)o(,)f(MIT)j(LCS)f(TR-429)p Fm(,)16 556 y(Octob)q(er)c(1988.)-69 639 y([72])j(R.)g(P)o(erlman,)f Fl(F)m(ault-T)m(oler)n(ant)h(Br)n(o)n(adc)n(ast)h(of)g(R)n(outing)g (Information)p Fm(,)g Fc(Computer)h(Net)o(w)o(orks)g(and)g(ISDN)h(Systems)p Fm(,)16 689 y(Decem)o(b)q(er)15 b(1983.)-69 772 y([73])k(J.)14 b(P)o(ostel,)g Fl(Internet)h(Pr)n(oto)n(c)n(ol)p Fm(,)d Fc(RF)o(C)k(791,)g (SRI)f(Net)o(w)o(ork)h(Information)d(Cen)o(ter)p Fm(,)f(Septem)o(b)q(er)i (1981.)-69 855 y([74])19 b(J.)13 b(P)o(ostel,)g Fl(Internet)h(Contr)n(ol)f (Message)i(Pr)n(oto)n(c)n(ol)p Fm(,)c Fc(RF)o(C)k(792,)g(SRI)f(Net)o(w)o(ork) g(Information)e(Cen)o(ter)p Fm(,)f(Septem)o(b)q(er)i(1981.)-69 938 y([75])19 b(R.)13 b(Riv)o(est,)g Fl(The)i(MD4)h(Message)f(Digest)g(A)o (lgorithm)p Fm(,)e Fc(Pro)q(ceedings)g(of)i(CR)l(YPTO'90)p Fm(,)f(August)g(1990.)-69 1021 y([76])19 b(R.)12 b(Riv)o(est,)g(A.)h(Shamir)e (and)h(L.)h(Adleman,)e Fl(A)i(Metho)n(d)i(for)e(Obtaining)h(Digital)g (Signatur)n(es)g(and)g(Public)g(Key)g(Cryptosystems)p Fm(,)16 1070 y Fc(Comm)o(unications)f(of)i(the)g(A)o(CM)p Fm(,)f(F)m(ebruary)g(1978.) -69 1153 y([77])19 b(E.)14 b(Rosen,)g Fl(Exterior)g(Gateway)h(Pr)n(oto)n(c)n (ol)f(\(EGP\))p Fm(,)g Fc(RF)o(C)i(827,)f(SRI)h(Net)o(w)o(ork)f(Information)e (Cen)o(ter)p Fm(,)f(Octob)q(er)j(1982.)-69 1236 y([78])k(J.)11 b(Saltzer,)h(D.)e(Reed,)i(and)f(D.)f(Clark,)g Fl(End-to-End)k(A)o(r)n (guments)e(in)g(System)g(Design)p Fm(,)g Fc(A)o(CM)h(T)l(ransactions)e(on)h (Computer)16 1286 y(Systems)p Fm(,)g(June)j(1984.)-69 1369 y([79])k(J.)i(Saltzer)g(and)f(M.)g(Sc)o(hro)q(eder,)k Fl(Pr)n(ote)n(ction)d (of)g(Information)g(in)g(Computer)g(Systems)p Fm(,)h Fc(Pro)q(ceedings)f(of)i (the)f(IEEE)p Fm(,)16 1419 y(Septem)o(b)q(er)15 b(1975.)-69 1502 y([80])k(M.)11 b(Sat)o(y)o(anara)o(y)o(an,)f Fl(Sc)n(alable,)j(Se)n(cur) n(e,)g(and)g(Highly)g(A)o(vailable)f(File)g(A)n(c)n(c)n(ess)p Fm(,)f Fc(IEEE)j(Computer)p Fm(,)c(V)m(ol.)g(23,)h(No.)f(5,)i(Ma)o(y)e(1990.) -69 1585 y([81])19 b(SDNS)c(Proto)q(col)f(and)g(Signaling)e(W)m(orking)h (Group,)h(SP3)g(Subgroup,)g Fl(SDNS)i(Se)n(cur)n(e)g(Data)f(Network)g(System) g(Se)n(curity)g(Pr)n(o-)16 1635 y(to)n(c)n(ol)g(3)g(\(SP3\))p Fm(,)f Fc(SDN.301)h(Revision)f(1.5)i(1989-05-15)-69 1718 y Fm([82])j(A.)12 b(Shimizu,)f(S.)h(Miy)o(aguc)o(hi,)f Fl(F)m(ast)i(Data)h (Encryption)g(A)o(lgorithm)e(\(FEAL\))p Fm(,)g Fc(Pro)q(ceedings)g(of)i(EUR)o (OCR)l(YPT'87)p Fm(,)d(April)16 1768 y(1987)-69 1851 y([83])19 b(K.)d(Sollings,)e Fl(Casc)n(ade)n(d)k(A)o(uthentic)n(ation)p Fm(,)e Fc(Pro)q(ceedings)f(of)j(1987)g(IEEE)h(Symp)q(osium)d(on)i(Securit)o (y)d(and)j(Priv)m(acy)p Fm(,)16 1901 y(April)c(1987.)-69 1984 y([84])19 b(M.)f(Steenstrup)j(and)d(Op)q(en)i(Routing)d(W)m(orking)g(Group,)i Fl(Inter-Domain)h(Policy)f(R)n(outing)h(Sp)n(e)n(ci\014c)n(ation)p Fm(,)g Fc(BBN)h(Rep)q(ort)16 2033 y(Num)o(b)q(er)15 b(7346)p Fm(,)e(Decem)o(b)q(er)h(1990,)e(BBN)j(Corp)q(oration,)e(Cam)o(bridge)f(MA)i (02138.)-69 2117 y([85])19 b(J.)12 b(Steiner,)g Fl(The)h(Kerb)n(er)n(os)f (Network)g(A)o(uthentic)n(ation)h(Servic)n(e)f(Overview)p Fm(,)f Fc(MIT)j(Pro)s(ject)d(A)o(thena)h(RF)o(C,)h(Draft)f(1)p Fm(,)f(April)16 2166 y(1989.)-69 2249 y([86])19 b(A.)14 b(T)m(anen)o(baum,)d Fl(Computer)k(Networks)p Fm(,)d Fc(Englew)o(o)q(o)q(d)j(Cli\013s,)g(NJ:Pren)o (tice)f(Hall)p Fm(,)e(1981.)-69 2332 y([87])19 b(P)m(.)10 b(Tsuc)o(hiy)o(a,)h Fl(E\016cient)h(and)h(R)n(obust)f(Policy)g(R)n(outing)h(using)f(Multiple)f (Hier)n(ar)n(chic)n(al)g(A)n(ddr)n(esses)p Fm(,)f Fc(DRAFT,)j(in)e(submissio) o(n)16 2382 y(to)16 b(1991)f(A)o(CM)i(SIGCOMM)f(Symp)q(osium)p Fm(,)11 b(April)i(1991.)-69 2465 y([88])19 b(G.)13 b(Tsudik,)g Fl(Datagr)n(am)i(A)o(uthentic)n(ation)g(in)g(Internet)f(Gateways)p Fm(,)g Fc(IEEE)j(Journal)c(on)i(Selected)e(Areas)j(in)e(Comm)o(uni-)16 2515 y(cations)p Fm(,)e(Ma)o(y)i(1989.)-69 2598 y([89])19 b(U.S.)11 b(Departmen)o(t)g(of)g(Defense,)i Fl(T)m(ruste)n(d)f(Computer)g(System)h (Evaluation)g(Criteria)p Fm(,)d Fc(Standard)h(5200.28-STD)p Fm(,)f(Decem)o(b)q(er)16 2648 y(1985.)2028 2770 y(81)p eop %%Page: 82 22 bop -69 -108 a Fm([90])19 b(V.)e(V)m(o)o(ydo)q(c)o(k)f(and)h(S.)g(Ken)o(t,)h Fl(Se)n(curity)f(Me)n(chanisms)i(in)f(High-level)f(Network)f(Pr)n(oto)n(c)n (ols)p Fm(,)h Fc(A)o(CM)j(Computing)d(Surv)o(eys)p Fm(,)16 -59 y(June)e(1983.)-69 24 y([91])k(S.)e(W)m(alk)o(er,)f Fl(Network)h(Se)n (curity:)24 b(the)18 b(Parts)f(of)g(the)h(Sum)p Fm(,)g Fc(Pro)q(ceedings)f (of)h(1989)h(IEEE)i(Symp)q(osium)c(on)i(Securit)o(y)16 74 y(and)d(Priv)m(acy) p Fm(,)d(Ma)o(y)g(1989.)2028 2770 y(82)p eop %%Page: 83 23 bop -90 192 a Ff(App)r(endix)22 b(A)-90 367 y(Message)h(Authen)n(tication)e (with)h(One-W)-6 b(a)n(y)23 b(Hash)g(F)-6 b(unctions)-90 601 y Fm(In)19 b(this)g(app)q(endix,)g(w)o(e)g(discuss)h(some)e(p)q(oten)o(tial)h (applications)e(of)i(fast)f(one-w)o(a)o(y)g(hash)i(functions)e(to)h(the)h (problem)d(of)h(message)-90 651 y(authen)o(tication.)f(Sev)o(eral)12 b(metho)q(ds)e(for)i(protection)f(against)g(message)g(substitution)h(are)g (presen)o(ted.)19 b(The)12 b(securit)o(y)g(of)f(the)h(prop)q(osed)-90 701 y(metho)q(ds)h(is)h(conjectured)i(to)e(b)q(e)g(equiv)n(alen)o(t)f(to)h (the)g(strength)i(of)d(the)h(underlying)g(one-w)o(a)o(y)f(hash)h(function.) -90 856 y Ff(A.1)69 b(In)n(tro)r(duction)-90 965 y Fm(In)15 b(recen)o(t)i(y)o(ears,)f(some)f(imp)q(ortan)o(t)e(adv)n(ances)j(w)o(ere)h (made)d(in)h(the)h(area)f(of)g(fast)g(one-w)o(a)o(y)g(hash)h(functions)f(for) g(message)g(in)o(tegrit)o(y)m(.)-90 1014 y(One)f(of)e(these)j(functions,)d (Riv)o(est's)h(Message)h(Digest)f(algorithm)e(\(MD4\)[75)o(],)h(is)h (considered)h(b)o(y)f(man)o(y)e(in)i(the)g(securit)o(y)h(comm)o(unit)o(y)-90 1064 y(to)e(b)q(e)g(the)h(most)d(promising)g(\(and)i(hereto)h(un)o(brok)o (en\))f(metho)q(d.)k(Due)c(to)g(its)g(structure,)i(MD4)d(lends)h(itself)g(to) f(soft)o(w)o(are)h(implemen)o(ta-)-90 1114 y(tions)i(that)g(can)h(p)q(erform) e(at)i(sp)q(eeds)h(signi\014can)o(tly)d(higher)h(than)h(earlier,)f (encryption-based)h(in)o(tegrit)o(y)f(metho)q(ds,)f(e.g.,)g(DES-based)-90 1164 y(MA)o(C[66)o(,)g(17].)-28 1232 y(In)g(brief,)g(MD4)g(computes)g(a)g (128-bit)f(digest)h(of)g(an)g(arbitrary)g(length)g(message.)18 b(Its)c(basic)f(input)g(unit)g(is)g(a)g(512-bit)f(data)h(blo)q(c)o(k.)-90 1281 y(It)h(is)g(conjectured)h(that)f(MD4)g(p)q(ossesses)i(the)f(follo)o (wing)c(prop)q(erties:)-39 1382 y(1.)20 b(The)14 b(di\016cult)o(y)f(of)g (computing)g(t)o(w)o(o)g(distinct)h(messages,)g Fk(M)981 1388 y Fi(1)1013 1382 y Fm(and)g Fk(M)1134 1388 y Fi(2)1167 1382 y Fm(suc)o(h)h(that)f Fk(M)5 b(D)q Fm(4\()p Fk(M)1508 1388 y Fi(1)1527 1382 y Fm(\))11 b(=)h Fk(M)5 b(D)q Fm(4\()p Fk(M)1755 1388 y Fi(2)1774 1382 y Fm(\))14 b(is)g(on)g(the)g(order)14 1432 y(of)f(2)82 1417 y Fi(64)131 1432 y Fm(op)q(erations.)-39 1515 y(2.)20 b(Giv)o(en)11 b(a)h(message)f(digest,)h Fk(M)5 b(D)q Fm(,)13 b(the)f(di\016cult)o(y)f(of)h(computing)e(a)h(message,)h Fk(M)17 b Fm(suc)o(h)12 b(that)g Fk(M)5 b(D)q Fm(4\()p Fk(M)g Fm(\))12 b(=)g Fk(M)5 b(D)13 b Fm(is)f(on)g(the)g(order)14 1565 y(of)h(2)82 1550 y Fi(128)147 1565 y Fm(op)q(erations.)-90 1666 y(The)f(second)h(prop)q(ert)o(y)g(is)f(of)f(particular)h(in)o(terest.)18 b(It)12 b(is)g(based)g(on)g(the)g(fact)g(that)g(MD4)f(maps)g(2)1451 1651 y Fi(512)1514 1666 y Fm(512-bit)g(blo)q(c)o(ks)h(in)o(to)f(2)1880 1651 y Fi(128)1943 1666 y Fm(128-bit)-90 1716 y(digests.)28 b(Consequen)o(tly)m(,)17 b(on)g(the)g(a)o(v)o(erage,)g([2)673 1701 y Fi(512)724 1716 y Fk(=)p Fm(2)766 1701 y Fi(128)834 1716 y Fm(=)g(2)904 1701 y Fi(384)955 1716 y Fm(])g(blo)q(c)o(ks)g(are)g (hashed)g(in)o(to)g(the)g(same)f(128-bit)g(digest.)27 b(Therefore,)-90 1765 y(giv)o(en)14 b(a)h(message)f(digest,)h(it)g(tak)o(es,)g(on)f(the)i(a)o (v)o(erage,)e(2)823 1750 y Fi(128)890 1765 y Fm(trials)g(b)q(efore)i(disco)o (v)o(ering)e(one)h(of)g(the)g(2)1556 1750 y Fi(384)1622 1765 y Fm(messages)g(that)g(maps)f(in)o(to)-90 1815 y(that)g(digest.)-90 1970 y Ff(A.2)69 b(Motiv)l(ation)-90 2079 y Fm(In)12 b(the)h(realm)e(of)h (secure)i(comm)o(unicatio)o(ns,)c(message)i(in)o(tegrit)o(y)g(alone)f(do)q (es)i(not)g(pro)o(vide)f(su\016cien)o(t)g(defense)i(against)e(some)f(attac)o (ks.)-90 2129 y(While)e(a)g(strong)h(one-w)o(a)o(y)f(hash)h(function)f (protects)j(against)d(data)g(mo)q(di\014cation,)f(protection)i(against)f Fl(message)i(substitution)f Fm(requires)-90 2179 y(that)j(the)g(message)g(in) o(tegrit)o(y)f(v)n(alue)g(b)q(e)h(irrepro)q(ducible.)19 b(Encryption-based)13 b(in)o(tegrit)o(y)f(metho)q(ds)h(pro)o(vide)f(this)h(service)h(since)g(one)f (of)-90 2229 y(the)d(inputs)g(to)g(the)g(in)o(tegrit)o(y)f(function)g(is)h(a) f(secret)j(k)o(ey)e(\(e.g.,)f(DES\).)h(This)f(is)h(not)f(the)i(case)f(with)g (MD4.)16 b(Since)10 b(MD4)f(implemen)o(tations)-90 2278 y(are)15 b(readily)e(a)o(v)n(ailable,)f(an)o(y)o(one)i(can)g(pro)q(duce)i(an)e(MD4)f (v)n(alue)h(of)f(an)h(arbitrary)g(message)g(and)g(insert)h([)p Fk(msg)q(;)7 b(M)e(D)q Fm(4\()p Fk(msg)q Fm(\)])16 b(in)o(to)d(the)-90 2328 y(stream.)18 b(One)d(simple)e(solution)g(is)h(to)g(require)h(that)f(the) h(message)e(source)j(encrypt)f(the)g(MD4)e(v)n(alue)h(of)f(eac)o(h)i (message.)j(In)c(a)g(public)-90 2378 y(k)o(ey)h(cryptosystem,)h(this)f(can)h (b)q(e)g(done)f(with)g(the)h(sender's)h(priv)n(ate)e(k)o(ey)m(.)22 b(In)15 b(a)g(con)o(v)o(en)o(tional)f(cryptosystem,)i(the)g(sender)h(can)e (use)-90 2428 y(the)f(secret)i(k)o(ey)e(shared)h(amongst)d(the)j(appropriate) f(parties.)-28 2496 y(While)h(this)g(simple)e(approac)o(h)i(solv)o(es)h(the)f (message)g(substitution)g(problem,)f(it)h(has)g(some)f(dra)o(wbac)o(ks.)22 b(Ev)o(en)16 b(though)e(the)i(use)-90 2545 y(of)g(exp)q(ensiv)o(e)i (encryption)f(is)g(limited)d(to)j(signing)e(a)i(short)g(\014xed-length)g (message)f(digest,)h(encryption)h(still)d(tak)o(es)j(its)e(toll.)25 b(Ev)o(en)-90 2595 y(the)18 b(fastest)g(commercially)c(a)o(v)n(ailable)h (cryptographic)i(devices)i(op)q(erate)f(at)f(rates)h(ab)q(out)f(an)g(order)h (of)f(magnitude)e(b)q(ehind)j(MD4,)-90 2645 y(esp)q(ecially)m(,)13 b(for)h(small)d(data)j(units)g([1)o(].)2028 2770 y(83)p eop %%Page: 84 24 bop -28 -108 a Fm(Dra)o(wing)14 b(from)g(the)i(discussion)f(ab)q(o)o(v)o(e,)g (an)g(ideal)f(scenario)i(for)f(coun)o(tering)h(b)q(oth)f(message)g (substitution)g(and)g(message)g(mo)q(di-)-90 -59 y(\014cation)f(attac)o(ks)h (w)o(ould:)j(i\))c(a)o(v)o(oid)f(encryption)i(altogether,)f(and)h(ii\))e(pro) q(duce)j(unforgeable)e(in)o(tegrit)o(y)g(v)n(alues.)19 b(Initially)m(,)12 b(these)j(t)o(w)o(o)-90 -9 y(prop)q(erties)i(app)q(ear)g(to)f(b)q(e)g(at)g(o) q(dds,)g(ho)o(w)o(ev)o(er,)g(some)f(inno)o(v)n(ativ)o(e)g(application)f(of)i (fast)f(one-w)o(a)o(y)h(hash)g(functions)g(ma)o(y)e(b)q(e)i(able)g(to)-90 41 y(reconcile)f(them.)-90 196 y Ff(A.3)69 b(Proto)r(col)23 b(Description)-90 305 y Fm(W)m(e)17 b(supp)q(ose)h(that)f(t)o(w)o(o)f (principals,)h Fk(A)g Fm(and)g Fk(B)r Fm(,)g(w)o(ould)g(lik)o(e)f(to)g(comm)o (unicate)f(o)o(v)o(er)i(an)g(insecure)h(c)o(hannel.)28 b(F)m(urthermore,)17 b(there)-90 355 y(exist)c(secure)i(means)d(of)g(principal)g(authen)o (tication)h([67)o(,)f(90)o(,)h(85)o(].)k(A)o(t)c(the)h(time)d(of)h(session)i (initiation,)c(after)k(m)o(utual)c(authen)o(tication)-90 405 y(is)j(ac)o(hiev)o(ed,)g(one)h(of)f(principals,)f(sa)o(y)m(,)g Fk(A)p Fm(,)h(generates)i(a)e(random)f(512-bit)g(v)n(alue,)g Fk(S)1238 411 y Fj(AB)1292 405 y Fm(.)18 b Fk(A)c Fm(then)g(comm)o(uni)o (cates)e Fk(S)1754 411 y Fj(AB)1821 405 y Fm(to)h Fk(B)j Fm(in)d(secret)-90 454 y(\(using)h(encryption,)g(if)f(necessary\).)-28 522 y(When)k Fk(A)g Fm(has)f(a)h(message)f Fk(M)21 b Fm(to)c(send)g(to)f Fk(B)r Fm(,)i(it)e(computes)g Fk(M)5 b(D)1058 528 y Fj(M)1111 522 y Fm(=)16 b Fk(M)5 b(D)q Fm(4\()p Fk(M)g Fd(jj)p Fk(S)1370 528 y Fj(AB)1424 522 y Fm(\))1440 507 y Fi(1)1458 522 y Fm(.)26 b(It)17 b(then)g(sends)h([)p Fk(M)r(;)7 b(M)e(D)1907 528 y Fj(M)1943 522 y Fm(])16 b(to)h Fk(B)r Fm(.)-90 572 y(Since)c Fk(B)h Fm(p)q(ossesses)h Fk(S)263 578 y Fj(AB)317 572 y Fm(,)d(it)g(can)g (re-compute)g Fk(M)5 b(D)q Fm(4\()p Fk(M)g Fd(jj)p Fk(S)881 578 y Fj(AB)934 572 y Fm(\))12 b(and)g(v)o(erify)g Fk(M)5 b(D)1234 578 y Fj(M)1271 572 y Fm(.)17 b(W)m(e)12 b(refer)h(to)f(this)g(metho)q(d)f (as)i(the)f Fl(se)n(cr)n(et)h(su\016x)-90 622 y Fm(tec)o(hnique.)-28 689 y(Alternativ)o(ely)m(,)h Fk(A)h Fm(and)g Fk(B)i Fm(can)e(agree)h(to)f (compute)f Fk(M)5 b(D)896 695 y Fj(M)948 689 y Fm(as)15 b Fk(M)5 b(D)q Fm(4\()p Fk(S)1142 695 y Fj(AB)1196 689 y Fd(jj)p Fk(M)g Fm(\))14 b(and)h(use)h Fk(S)1475 695 y Fj(AB)1543 689 y Fm(as)f(a)g Fl(se)n(cr)n(et)g(pr)n(e\014x)p Fm(.)22 b(The)15 b(secret)-90 739 y(pre\014x)g(metho)q(d)f(w)o(as)h(dev)o(elop)q(ed)g(indep)q(enden)o(tly)h (b)o(y)e(the)i(In)o(ternet)g(Securit)o(y)f(and)g(Priv)n(acy)f(W)m(orking)f (Group)i(\(SPW)o(G\))1866 724 y Fi(2)1898 739 y Fm(for)g(use)g(in)-90 789 y(Simple)d(Net)o(w)o(ork)i(Managemen)o(t)f(Proto)q(col)h(\(SNMP\))g ([36].)-90 944 y Ff(A.4)69 b(Informal)23 b(Analysis)-90 1053 y Fm(Throughout)16 b(the)g(follo)o(wing)d(discussion)k(it)e(is)h(assumed)f (that)h(an)g(in)o(truder)g(has)g(the)h(abilit)o(y)d(to)i(record)h(and)e (analyze)h(messages)g(as)-90 1103 y(w)o(ell)f(as)h(insert)g(fraudulen)o(t)g (messages)g(in)o(to)f(the)h(message)f(stream.)24 b(In)15 b(order)i(to)e(moun) o(t)f(a)i(successful)h(attac)o(k)f(or)g(e\013ectiv)o(ely)g Fl(br)n(e)n(ak)-90 1153 y Fm(the)h(proto)q(col,)g(an)f(in)o(truder)i(has)f (to)f(b)q(e)h(able)g(to)f(pro)q(duce)i(a)f(fraudulen)o(t)f(message)h(and)f (an)h(accompan)o(ying)d(digest)j(suc)o(h)h(that)e(the)-90 1202 y(\()p Fk(messag)q(e;)7 b(dig)q(est)p Fm(\))17 b(pair)c(is)h(accepted)i(as)e (gen)o(uine)g(b)o(y)f(an)o(y)h(of)f(the)h(legitimate)e(principals.)-28 1270 y(The)j(follo)o(wing)c(observ)n(ations)j(are)g(based)h(on)e(the)i (second)g(prop)q(ert)o(y)1073 1255 y Fi(3)1106 1270 y Fm(of)e(the)i(MD4)e (algorithm:)-28 1371 y Fd(\017)21 b Fc(Claim)15 b(1:)k Fl(Given)c(a)g (message)h(digest,)e Fk(M)5 b(D)q Fl(,)15 b(and)h(a)f(message)h Fk(M)1086 1377 y Fi(1)1104 1371 y Fl(,)f(the)g(di\016culty)g(of)g(c)n (omputing)g(a)g(message,)h Fk(M)1872 1377 y Fi(2)1905 1371 y Fl(such)g(that)14 1421 y Fk(M)5 b(D)q Fm(4\()p Fk(M)171 1427 y Fi(2)190 1421 y Fd(jj)p Fk(M)254 1427 y Fi(1)272 1421 y Fm(\))12 b(=)f Fk(M)5 b(D)17 b Fl(is)d(on)h(the)g(or)n(der)g(of)f Fm(2)790 1406 y Fi(128)857 1421 y Fl(op)n(er)n(ations.)-28 1504 y Fd(\017)21 b Fc(Claim)15 b(2:)k Fl(Given)c(a)g(message)h(digest,)e Fk(M)5 b(D)q Fl(,)15 b(and)h(a)f(message)h Fk(M)1086 1510 y Fi(1)1104 1504 y Fl(,)f(the)g(di\016culty)g(of)g(c)n(omputing)g(a)g(message,)h Fk(M)1872 1510 y Fi(2)1905 1504 y Fl(such)g(that)14 1554 y Fk(M)5 b(D)q Fm(4\()p Fk(M)171 1560 y Fi(1)190 1554 y Fd(jj)p Fk(M)254 1560 y Fi(2)272 1554 y Fm(\))12 b(=)f Fk(M)5 b(D)17 b Fl(is)d(on)h(the)g(or)n(der)g(of)f Fm(2)790 1539 y Fi(128)857 1554 y Fl(op)n(er)n(ations.)-28 1654 y Fm(Assuming)h(these)j(t)o(w)o(o)e (claims)e(hold,)i(the)g(only)g(v)o(en)o(ue)h(left)f(to)g(the)g(in)o(truder)h (is)f(the)h Fl(brute)g(for)n(c)n(e)e Fm(attac)o(k.)25 b(F)m(or)16 b(most)f(purp)q(oses,)-90 1704 y(attac)o(ks)h(that)g(tak)o(e)g(on)f(the)h (order)h(of)e(2)552 1689 y Fi(128)619 1704 y Fm(are)h(considered)h Fl(futile)p Fm(,)e(i.e.,)g(the)h(system)g(b)q(eing)g(attac)o(k)o(ed)g(is)f (considered)i(secure)1948 1689 y Fi(4)1985 1704 y Fm(Still,)-90 1754 y(understanding)i(the)g(details)f(of)f(p)q(ossible)i(attac)o(ks)f(is)g (of)g(in)o(terest.)32 b(As)19 b(describ)q(ed)h(b)q(elo)o(w,)e(the)h(t)o(w)o (o)f(seemingly)f(similar)e(metho)q(ds)-90 1804 y(prop)q(osed)g(di\013er)f(in) g(their)g(abilit)o(y)e(to)i(withstand)g(brute)g(force)h(attac)o(ks.)-90 1942 y Fe(A.4.1)56 b(De\014nitions)-28 2036 y Fd(\017)21 b Fm(Giv)o(en)12 b(t)o(w)o(o)h(512-bit)f(blo)q(c)o(ks,)h Fk(M)528 2042 y Fi(1)560 2036 y Fm(and)h Fk(M)681 2042 y Fi(2)699 2036 y Fm(,)f(w)o(e)h(sa)o(y)f(that)g Fk(M)985 2042 y Fi(1)1016 2036 y Fd(\021)f Fk(M)1100 2042 y Fi(2)1132 2036 y Fm(if)g Fk(M)5 b(D)q Fm(4\()p Fk(M)1326 2042 y Fi(1)1345 2036 y Fm(\))12 b(=)g Fk(M)5 b(D)q Fm(4\()p Fk(M)1574 2042 y Fi(2)1593 2036 y Fm(\).)18 b(The)c(')p Fd(\021)p Fm(')e(sym)o(b)q(ol)g(denotes)14 2085 y(that)h Fk(M)143 2091 y Fi(1)175 2085 y Fm(and)g Fk(M)295 2091 y Fi(2)327 2085 y Fm(are)g Fl(pr)n(e\014x-e)n(quivalent)p Fm(.)18 b(F)m(or)13 b(a)g(giv)o(en)f(512-bit)g(blo)q(c)o(k)h Fk(M)5 b Fm(,)13 b(let)g Fk(P)6 b(E)r(C)1405 2091 y Fj(M)1454 2085 y Fm(denote)14 b(the)f Fl(pr)n(e\014x-e)n(quivalenc)n(e)i(class)14 2135 y Fm(of)e Fk(M)5 b Fm(.)-28 2218 y Fd(\017)21 b Fm(Tw)o(o)14 b(512-bit)f(blo)q(c)o(ks,)h Fk(M)427 2224 y Fi(1)469 2195 y Fk(:)459 2218 y Fm(=)f Fk(M)544 2224 y Fi(2)577 2218 y Fm(if)h(for)g(all)f (blo)q(c)o(ks)h Fk(M)5 b Fm(,)14 b Fk(M)5 b(D)q Fm(4\()p Fk(M)g Fd(jj)p Fk(M)1161 2224 y Fi(1)1179 2218 y Fm(\))13 b(=)g Fk(M)5 b(D)q Fm(4\()p Fk(M)g Fd(jj)p Fk(M)1479 2224 y Fi(2)1497 2218 y Fm(\).)20 b(The)15 b(')1653 2195 y Fk(:)1643 2218 y Fm(=')e(sym)o(b)q(ol)g (denotes)j(that)14 2268 y Fk(M)54 2274 y Fi(1)87 2268 y Fm(and)d Fk(M)207 2274 y Fi(2)240 2268 y Fm(are)h Fl(su\016x-e)n(quivalent)p Fm(.)k(Let)d Fk(S)r(E)r(C)792 2274 y Fj(M)843 2268 y Fm(denote)g(the)f Fl(su\016x-e)n(quivalenc)n(e)i(class)d Fm(of)h(a)f(512-bit)g(blo)q(c)o(k)g Fk(M)5 b Fm(.)p -90 2348 864 2 v -44 2375 a Fh(1)-26 2387 y Fb(jj)11 b Fg(denotes)e(concatenation)o(.)-44 2415 y Fh(2)-26 2427 y Fg(S.)i(Cro)q(c)o(k)o(er,)f(S.)h(Ken)o(t,)g(Priv)n(ate)f(Comm)o (unication)o(,)f(Decem)o(b)q(er)g(1990.)-44 2454 y Fh(3)-26 2466 y Fg(See)h(Section)g(A.1.)-44 2494 y Fh(4)-26 2506 y Fg(Brute)g(force)g (attac)o(k)g(on)h(DES)g(requires)f Fa(only)i Fg(on)f(the)g(order)f(of)i(2)878 2494 y Fh(56)922 2506 y Fg(op)q(erations.)2028 2770 y Fm(84)p eop %%Page: 85 25 bop -90 -108 a Fe(A.4.2)56 b(Secret)17 b(Pre\014x)-90 -14 y Fm(A)12 b(naiv)o(e)g(in)o(truder)h(wishing)e(to)h(disco)o(v)o(er)g(the)h (secret)h(pre\014x)f(w)o(ould)f(\014rst)g(record)i(a)e(message)f(M)i (accompanied)e(b)o(y)g(its)i(in)o(tegrit)o(y)e(v)n(alue,)-90 36 y Fk(M)5 b(D)q Fm(4\()p Fk(S)52 42 y Fj(AB)106 36 y Fd(jj)p Fk(M)g Fm(\).)19 b(He)c(w)o(ould)f(then)h(need)g(to)g(try)f(on)h(the)g(a)o(v) o(erage)f(2)1021 21 y Fi(128)1087 36 y Fm(p)q(ossibilities)g(b)q(efore)h (disco)o(v)o(ering)g(a)f(pre\014x)h(string)1929 25 y(^)1922 36 y Fk(S)i Fm(where)-83 75 y(^)-90 86 y Fk(S)d Fd(\021)e Fk(S)18 92 y Fj(AB)72 86 y Fm(.)-28 153 y(One)k(imp)q(ortan)o(t)c(observ)n(ation)j (that)f(can)h(b)q(e)g(made)e(b)o(y)i(a)f(more)f Fl(astute)i Fm(in)o(truder)g(is)f(that)h(the)g(secret)i(pre\014x,)e Fk(S)1773 159 y Fj(AB)1827 153 y Fm(,)f(is)g(not)h(really)-90 203 y(what)g(is)h(needed) h(to)e Fl(br)n(e)n(ak)g Fm(the)h(proto)q(col.)23 b(In)16 b(other)g(w)o(ords,) f(the)i(secret)g(pre\014x)f(is)g(su\016cien)o(t,)g(y)o(et)f(not)h(necessary)m (,)h(for)e(a)g(successful)-90 253 y(attac)o(k.)j(Instead,)13 b(to)g(attain)g(the)h(goal)d(of)i(comp)q(osing)f Fl(genuine)i Fm(messages,)f(the)g(in)o(truder)h(needs)h(only)d(the)i(in)o(termediate)e (MD4)h(v)n(alue)-90 303 y(of)d Fk(S)-21 309 y Fj(AB)33 303 y Fm(,)h(i.e.,)f Fk(M)5 b(D)q Fm(4\()p Fk(S)274 309 y Fj(AB)329 303 y Fm(\).)17 b(The)11 b(length)g(of)f Fk(M)5 b(D)q Fm(4\()p Fk(S)766 309 y Fj(AB)821 303 y Fm(\))11 b(is)f(128)g(bits)h(regardless)i(of)d (the)h(length)g(of)g Fk(S)1533 309 y Fj(AB)1587 303 y Fm(.)17 b(Nev)o(ertheless,)c(the)f(n)o(um)o(b)q(er)-90 353 y(of)h(op)q(erations)h (required)h(to)f(\014nd)g Fk(M)5 b(D)q Fm(4\()p Fk(S)598 359 y Fj(AB)652 353 y Fm(\))14 b(remains)f(a)h(heft)o(y)g(2)998 338 y Fi(128)1049 353 y Fm(.)-28 420 y(The)g(subtle)f(di\013erence)i(b)q(et)o (w)o(een)f(the)g Fl(naive)f Fm(and)g(the)g(more)f Fl(e)n(duc)n(ate)n(d)i Fm(brute)g(force)f(attac)o(ks)g(is)g(that,)g(in)f(the)i(latter,)f(the)g(in)o (truder)-90 470 y(is)g(guaran)o(teed)i(to)e(disco)o(v)o(er)h Fk(M)5 b(D)q Fm(4\()p Fk(S)515 476 y Fj(AB)569 470 y Fm(\))14 b(\(hence,)h(successfully)g(attac)o(king)d(the)j(proto)q(col\))e(in)g(at)h (most)e(2)1616 455 y Fi(128)1681 470 y Fm(op)q(erations.)18 b(This)c(is)f(in)-90 520 y(con)o(trast)i(to)f(the)g(former)f(where)i(on)f (the)h Fc(a)o(v)o(erage)e Fm(2)767 505 y Fi(128)832 520 y Fm(op)q(erations)h (are)h(required.)k(In)14 b(summary)m(,)d(the)j(shortcut)i(mak)o(es)c(the)j (attac)o(k)-90 570 y Fl(deterministic)e Fm(as)h(opp)q(osed)g(to)g Fl(pr)n(ob)n(abilistic)p Fm(.)-90 708 y Fe(A.4.3)56 b(Secret)17 b(Su\016x)-90 803 y Fm(A)f(brute)h(force)f(attac)o(k)g(on)g(the)g(secret)i (su\016x)e(v)n(arian)o(t)f(is)g(similar)f(in)h(that)h(the)g(in)o(truder)h(w)o (ould)e(need)i(to)e(try)i(on)e(the)i(a)o(v)o(erage)f(2)2019 788 y Fi(128)-90 853 y Fm(p)q(ossibilities)e(b)q(efore)g(disco)o(v)o(ering)g (an)537 842 y(^)530 853 y Fk(S)j Fm(suc)o(h)e(that)g Fk(M)5 b(D)q Fm(4\()p Fk(M)g Fd(jj)949 842 y Fm(^)943 853 y Fk(S)q Fm(\))13 b(=)f Fk(M)5 b(D)q Fm(4\()p Fk(M)g Fd(jj)p Fk(S)1253 859 y Fj(AB)1306 853 y Fm(\).)19 b(Ho)o(w)o(ev)o(er,)14 b(the)h(probabilit)o (y)e(that)1914 842 y(^)1907 853 y Fk(S)i Fm(=)d Fk(S)2016 859 y Fj(AB)-90 902 y Fm(is)i(only)f(1)p Fk(=)p Fm(2)106 887 y Fi(384)171 902 y Fm(\(since)h(there)i(are,)d(on)h(the)h(a)o(v)o(erage,)e(2) 786 887 y Fi(384)851 902 y Fm(512-bit)g(blo)q(c)o(ks)h(whic)o(h)f(are)i (hashed)f(in)o(to)f(the)i(same)e(128-bit)g(MD4)g(v)n(alue\).)-90 952 y(On)h(the)h(other)f(hand,)f(\014nding)h(an)478 942 y(^)471 952 y Fk(S)i Fm(suc)o(h)f(that)703 942 y(^)696 952 y Fk(S)746 929 y(:)735 952 y Fm(=)d Fk(S)804 958 y Fj(AB)872 952 y Fm(is,)h(for)h(all)e (purp)q(oses,)j(equiv)n(alen)o(t)e(to)h(\014nding)f Fk(S)1641 958 y Fj(AB)1695 952 y Fm(.)-28 1020 y(A)o(t)k(this)h(p)q(oin)o(t)e(in)h (time,)f(b)q(ecause)i(of)f(MD4's)f(relativ)o(ely)h(recen)o(t)h(in)o(tro)q (duction,)f(and,)h(hence,)g(limited)d(analysis)i(thereof,)h(little)-90 1070 y(can)e(b)q(e)g(said)f(with)g(certain)o(t)o(y)g(ab)q(out)h(the)g(a)o(v)o (erage)f(size)h(of)f(su\016x-equiv)n(alence)g(classes.)24 b(One)16 b(conjecture)h(that)f(can)f(b)q(e)h(made)e(with)-90 1119 y(some)j(degree)i (of)e(certain)o(t)o(y)h(is)g(that)f(the)i(size)f(of)f(an)h(a)o(v)o(erage)f (su\016x-equiv)n(alence)h(class)g(is)g(no)f(greater)i(than)f(that)f(of)g(an)h (a)o(v)o(erage)-90 1169 y(pre\014x-equiv)n(alence)d(class.)-28 1237 y(This)f(do)q(es)h(not)f(imply)m(,)c(ho)o(w)o(ev)o(er,)k(that)g(it)g (tak)o(es)g(at)g(most)f(2)942 1222 y Fi(128)1007 1237 y Fm(op)q(erations)i (to)e(\014nd)1351 1226 y(^)1344 1237 y Fk(S)1393 1213 y(:)1383 1237 y Fm(=)f Fk(S)1452 1243 y Fj(AB)1506 1237 y Fm(.)18 b(Note)d(that)f(the) g(in)o(truder)h(has)f(to)-90 1287 y(record)h(m)o(ultiple)c Fl(genuine)k Fm(messages)f(and)f(compute)h(their)g(resp)q(ectiv)o(e)h (digests)g(at)e(eac)o(h)i(step)f(of)f(the)i(attac)o(k.)j(Th)o(us,)13 b(the)i(n)o(um)o(b)q(er)e(of)-90 1337 y(op)q(erations)h(required)h(to)f (\014nd)416 1326 y(^)409 1337 y Fk(S)i Fm(is)e Fk(N)g Fd(\002)c Fm(2)602 1322 y Fi(128)667 1337 y Fm(where)15 b Fk(N)k Fm(is)14 b(the)g(size)h(of)e(the)h(in)o(truder's)h Fl(message)g(test)g(p)n(o)n(ol)p Fm(.)-28 1404 y(W)m(e)e(also)f(note)h(that,)f(in)g(the)i(su\016x)e(v)n(arian) o(t,)f(there)j(app)q(ears)g(to)e(b)q(e)i(no)e(coun)o(terpart)i(to)f(the)g (shortcut)h(describ)q(ed)g(in)e(the)i(previous)-90 1454 y(section.)-90 1609 y Ff(A.5)69 b(Cost)-90 1718 y Fm(It)15 b(is)f(eviden)o(t)h(from)d(the)j (ab)q(o)o(v)o(e)f(discussion)h(that,)g(pro)o(vided)f(MD4's)g(conjectured)i (prop)q(erties)g(hold,)d(b)q(oth)i(secret)h(su\016x)f(and)f(secret)-90 1768 y(pre\014x)d(v)n(arian)o(ts)e(pro)o(vide)h(strong)h(protection)f (against)g(unauthorized)g(message)g(fabrication)f(and)h(tamp)q(ering.)16 b(Just)11 b(as)f(there)h(are)g(some)-90 1818 y(subtle)j(di\013erences)h (among)c(the)i(t)o(w)o(o)g(v)n(arian)o(ts)f(with)h(resp)q(ect)i(to)e(their)g (abilit)o(y)e(to)i(withstand)g(attac)o(ks,)g(there)h(are)g(also)e (di\013erences)j(in)-90 1867 y(their)f(resp)q(ectiv)o(e)i(cost.)-28 1935 y(The)d(pre\014x)h(v)n(arian)o(t)d(costs)j(close)f(to)g(nothing,)e (since)j(the)f(in)o(termediate)f(MD4)g(v)n(alue)g(of)g(the)i(secret)g (pre\014x)g(can)f(b)q(e)g(pre-computed)-90 1985 y(and)i(used)h(as)g(a)f(sort) g(of)g(a)g Fl(initialization)g(ve)n(ctor)g Fm(for)g(v)o(erifying)f(message)h (signatures.)23 b(F)m(urthermore,)15 b(the)h(concept)h(of)d(a)h Fl(pr)n(e\014x)h Fm(can)-90 2035 y(b)q(e)f(abandoned)e(altogether)i(in)e(fa)o (v)o(or)g(of)g(a)h(128-bit)e Fl(MD4)k(initialization)e(ve)n(ctor)p Fm(.)-28 2102 y(Secret)i(su\016x)e(costs)h(sligh)o(tly)d(more)h(as)h(no)f (pre-computation)g(can)h(b)q(e)h(done.)j(The)c(cost)h(amoun)o(ts)d(to)i (exactly)g(one)g(extra)g(512-bit)-90 2152 y(blo)q(c)o(k)g(MD4)f(computation)f (p)q(er)j(message.)-90 2307 y Ff(A.6)69 b(An)23 b(Extension)-90 2416 y Fm(A)o(t)17 b(this)f(time,)g(an)o(y)g(proto)q(col)g(requiring)h(on)f (the)h(order)h(of)e(2)909 2401 y Fi(128)977 2416 y Fm(op)q(erations)h(to)f (defeat)h(is)g(considered)h(strong,)f(i.e.,)e(secure.)29 b(Nev-)-90 2466 y(ertheless,)19 b(it)e(is)f(conceiv)n(able)h(that)g(a)f(need)i(for)f (stronger)g(proto)q(cols)g(ma)o(y)e(arise)i(in)g(the)g(future.)28 b(F)m(or)16 b(this)h(reason,)h(w)o(e)f(consider)g(a)-90 2516 y(com)o(bination)10 b(of)i(the)g(secret)j(su\016x/secret)f(pre\014x)f(v)n (arian)o(ts.)k(In)12 b(this)h(third)f(v)n(arian)o(t,)f(the)i(MD4)f(v)n(alue)f (of)h(a)g(message)g(is)g(computed)g(b)o(y)-90 2566 y(using)g(a)g(secret)i (initialization)c(v)o(ector)j(and)f(b)o(y)g(app)q(ending)g(an)g(\(also)f (secret\))k(512-bit)c(su\016x.)17 b(The)c(cost)g(of)e(this)h(v)n(arian)o(t)g (is)g(equiv)n(alen)o(t)2028 2770 y(85)p eop %%Page: 86 26 bop -90 -108 a Fm(to)14 b(the)g(cost)g(of)f(the)i(su\016x)e(metho)q(d)g (alone)591 -124 y Fi(5)609 -108 y Fm(,)h(while)f(the)h(brute)h(force)f(attac) o(k)g(w)o(ould)f(require)h(2)1433 -124 y Fi(256)1499 -108 y Fm(op)q(erations.)k(This)13 b(is)h(signi\014can)o(tly)-90 -59 y(stronger)h(than)f(either)g(of)g(the)g(t)o(w)o(o)g(metho)q(ds)f(discussed)j (th)o(us)e(far.)-90 96 y Ff(A.7)69 b(Applications)-90 205 y Fm(The)16 b(secret)i(su\016x/pre\014x)e(metho)q(ds)f(are)h(particularly)f (applicable)g(to)h(en)o(vironmen)o(ts)f(where)i(high)e(bandwidth)g(and)g(lo)o (w)g(dela)o(y)g(re-)-90 255 y(quiremen)o(ts)10 b(ha)o(v)o(e,)h(un)o(til)e(no) o(w,)i(made)e(the)i(implemen)o(tation)c(of)j(certain)h(securit)o(y)h (services)g(prohibitiv)o(ely)d(exp)q(ensiv)o(e,)j(e.g.,)e(pac)o(k)o(etized) -90 305 y(v)o(oice)16 b(and)g(video)g(applications.)24 b(Also,)16 b(net)o(w)o(ork)h(la)o(y)o(er)f(proto)q(cols,)g(e.g.,)g(In)o(ter-Domain)e(P)o (olicy)h(Routing)g(\(IDPR\))h([84)o(])g(and)g Fl(Visa)-90 355 y Fm(proto)q(col)e([27)o(],)f(can)h(b)q(ene\014t)h(substan)o(tially)e(from)f (encryption-free)j(message)f(authen)o(tication.)-90 510 y Ff(A.8)69 b(Summary)-90 619 y Fm(In)16 b(conclusion,)g(fast)f(one-w)o(a)o(y)h(hash)g (functions)g(suc)o(h)g(as)g(MD4)f(can)h(b)q(e)h(used)f(as)g(a)g(foundation)f (for)g(some)g(no)o(v)o(el)g(implemen)o(tations)-90 668 y(of)i(securit)o(y)h (services.)30 b(In)18 b(particular,)f(simple)f(and)i(inexp)q(ensiv)o(e)g (secret)h(pre\014x)f(and)f(secret)j(su\016x)d(metho)q(ds)g(pro)o(vide)g (protection)-90 718 y(against)g(message)f(substitution)i(attac)o(ks)f(when)h (used)g(in)f(conjunction)g(with)g(a)g(strong)g(one-w)o(a)o(y)g(hash)g (function)g(\(whic)o(h)g(protects)-90 768 y(against)c(message)h(mo)q (di\014cation\).)i(The)e(strength)h(of)e(the)i(metho)q(ds)e(presen)o(ted)j (herein)f(is)e(largely)g(dep)q(enden)o(t)j(on)e(the)g(abilit)o(y)e(of)h(the) -90 818 y(underlying)h(hash)g(function)f(to)h(withstand)g(hostile)g(attac)o (ks.)p -90 2631 864 2 v -44 2658 a Fh(5)-26 2670 y Fg(As)e(men)o(tioned)c(ab) q(o)o(v)o(e,)i(the)h(secret)f(pre\014x)g(metho)q(d)f(adds)i(no)g(cost)g(to)g (digest)f(computatio)o(n.)2028 2770 y Fm(86)p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF