%! % The following defines procedures assumed and used by program "dvi2ps" % % $Header: tex.ps,v 1.20 88/08/30 04:48:29 van Exp $ % % Original By: Neal Holtz, Carleton University, Ottawa, Canada % % % June, 1985 % Seriously hacked by Van Jacobson, LBL % /TeXDict 200 dict def % define a working dictionary TeXDict begin /bdef {bind def} def /Mtrx 6 array def %%%%%%%%%%%%%%%%%%%%% Page setup (user) options %%%%%%%%%%%%%%%%%%%%%%%% % dvi2ps will output coordinates in the TeX system ([0,0] 1" down and in % from top left, with y +ive downward). The default PostScript system % is [0,0] at bottom left, y +ive up. The Many Matrix Machinations in % the following code are an attempt to reconcile that. The intent is to % specify the scaling as 1 and have only translations in the matrix to % properly position the text. Caution: the default device matrices are % *not* the same in all PostScript devices; that should not matter in most % of the code below (except for lanscape mode -- in that, rotations of % -90 degrees resulted in the the rotation matrix [ e 1 ] % [ 1 e ] % where the "e"s were almost exactly but not quite unlike zeros. % % The order we expect to get things from dvi2ps is: % @start (sets default origin at 1" in, 1" down) % (the next can appear in an order) % @letter,@note,@legal (optional: re-init device with appro. matrix) % @landscape (optional: rotate image 90 deg) % @draft (optional: set up for draft printing) % @manualfeed (optional) % n @copies (optional) % r @startdoc (required: sets scaling for supplied resolution, % must be last) % % @start - -- start everything /@start { 72 720 translate } bdef % r @startdoc - /@startdoc { 72 exch div dup neg scale % set scaling to 1 pixel % move coor. system to nearest pixel boundary 0 0 transform round exch round exch itransform translate Mtrx currentmatrix pop /@TeXSave save def } def /@letter { /letter where {pop letter initmatrix}if } def % note mode is like letter, except it uses less VM /@note { /note where {pop note initmatrix}if } def /@legal { /legal where {pop legal initmatrix}if 0 216 translate % move up 3 more inches } def /@landscape { initmatrix 90 rotate 72 -72 translate } def /@manualfeed { statusdict /manualfeed true put } def % n @copies - set number of copies /@copies { /#copies exch def } def %%%%%%%%%%%%%%%%%%%% Procedure Defintions %%%%%%%%%%%%%%%%%%%%%%%%%% % scale id @newfont - initialize a new font dictionary /@newfont { /newname exch def newname 7 dict def % allocate new font dictionary newname load begin /FontType 3 def dup neg matrix scale /FontMatrix exch def /FontBBox [0 0 1 1] def /BitMaps 128 array def /BuildChar {CharBuilder} def /Encoding 128 array def 0 1 127 {Encoding exch /.undef put} for end newname newname load definefont pop } bdef % the following is the only character builder we need. it looks up the % char data in the BitMaps array, and paints the character if possible. % char data -- a bitmap descriptor -- is an array of length 6, of % which the various slots are: /ch-image {ch-data 0 get} bdef % the hex string image /ch-width {ch-data 1 get} bdef % the number of pixels across /ch-height {ch-data 2 get} bdef % the number of pixels tall /ch-xoff {ch-data 3 get} bdef % number of pixels below origin /ch-yoff {ch-data 4 get} bdef % number of pixels to left of origin /ch-tfmw {ch-data 5 get} bdef % spacing to next character % fontdict ch Charbuilder - -- image one character /CharBuilder { /ch-code exch def % save the char code /font-dict exch def % and the font dict. /ch-data font-dict /BitMaps get ch-code get def % get the bitmap ch-data null eq not { ch-tfmw 0 ch-xoff neg ch-yoff neg ch-width ch-xoff sub ch-height ch-yoff sub setcachedevice ch-width ch-height true [1 0 0 1 ch-xoff ch-yoff] {ch-image} imagemask } if } bdef % fontdict @sf - -- make that the current font /@sf { setfont } bdef % in the following, the font-cacheing mechanism requires that % a name unique in the particular font be generated % char-data ch @dc - -- define a new character bitmap in current font /@dc { /ch-code exch def dup 0 get length 2 lt { pop [ <00> 1 1 0 0 8.00 ] } % replace <> with null if /ch-data exch def currentfont /BitMaps get ch-code ch-data put % generate a unique name simply from the character code currentfont /Encoding get ch-code dup ( ) cvs cvn put } bdef /@DRAFTF { gsave initmatrix newpath /Helvetica-Bold findfont setfont (Draft) dup stringwidth pop 8.875 exch div dup 72 mul dup scale 52.3 rotate 2.5 exch div -.35 translate 0.95 setgray 0 0 moveto show grestore } bdef /@DRAFTM { gsave initmatrix newpath /Helvetica-Bold findfont 72 scalefont setfont 0.95 setgray 576 702 moveto (Draft) stringwidth exch neg exch neg rmoveto (Draft) show grestore } bdef % n @bop0 - -- begin the char def section of a new page /@bop0 { pop } bdef % n @bop1 - -- begin a brand new page /@bop1 { pop Mtrx setmatrix /SaveImage save def } bdef /@draft { /@bop1 { 1 le {@DRAFTF} {@DRAFTM} ifelse Mtrx setmatrix /SaveImage save def } bdef } bdef % - @eop - -- end a page /@eop { showpage SaveImage restore } bdef % - @end - -- done the whole shebang /@end { end } bdef % x y p - -- move to position /p { moveto } bdef % x r - -- move right /r { 0 rmoveto } bdef % string s - -- show the string /s { show } bdef % x string m - -- move right then show string /m { exch 0 rmoveto show } bdef % ch c - -- show the character (code given) /c { c-string dup 0 4 -1 roll put show } bdef /c-string ( ) def % dx dy ru - -- set a rule (rectangle) /ru { /dy exch neg def % because dy is height up from bottom /dx exch def /x currentpoint /y exch def def % remember current point newpath x y moveto dx 0 rlineto 0 dy rlineto dx neg 0 rlineto closepath fill x y moveto } bdef /@MacSetUp { userdict /md known % if md is defined { userdict /md get type /dicttype eq % and if it is a dictionary { md begin % then redefine some stuff /letter {} def /note {} def /legal {} def /od{ppr dup 0 0 put 1 0 put txpose 1 0 mtx defaultmatrix dtransform exch atan/pa exch def 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 }def /txpose{ pxs pys scale ppr aload pop por { noflips { pop exch neg exch translate pop 1 -1 scale }if xflip yflip and { pop exch neg exch translate 180 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg translate }if xflip yflip not and { pop exch neg exch translate pop 180 rotate ppr 3 get ppr 1 get neg sub neg 0 translate }if yflip xflip not and { ppr 1 get neg ppr 0 get neg translate }if } { noflips { translate pop pop 270 rotate 1 -1 scale }if xflip yflip and { translate 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 translate }if xflip yflip not and { translate pop pop 90 rotate ppr 3 get ppr 1 get neg sub neg 0 translate }if yflip xflip not and { translate pop pop 270 rotate ppr 2 get ppr 0 get neg sub neg 0 exch translate }if }ifelse scaleby96 { ppr aload pop 4 -1 roll add 2 div 3 1 roll add 2 div 2 copy translate .96 dup scale neg exch neg exch translate }if }def /cp {pop pop showpage pm restore}def end }if } if } bdef %! % All software, documentation, and related files in this distribution of % psfig/tex are Copyright (c) 1987 Trevor J. Darrell % % Permission is granted for use and non-profit distribution of psfig/tex % providing that this notice be clearly maintained, but the right to % distribute any portion of psfig/tex for profit or as part of any commercial % product is specifically reserved for the author. % % % psfigTeX PostScript Prolog % $Header: tex.ps,v 1.20 88/08/30 04:48:29 van Exp $ % /psf$TeXscale { 65536 div } def gsave initgraphics /DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecap currentlinejoin currentdash currentgray currentmiterlimit ] cvx def grestore % x y bb-llx bb-lly bb-urx bb-ury startFig - /startTexFig { /psf$SavedState save def userdict maxlength dict begin currentpoint transform DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix itransform moveto /psf$ury exch psf$TeXscale def /psf$urx exch psf$TeXscale def /psf$lly exch psf$TeXscale def /psf$llx exch psf$TeXscale def /psf$y exch psf$TeXscale def /psf$x exch psf$TeXscale def currentpoint /psf$cy exch def /psf$cx exch def /psf$sx psf$x psf$urx psf$llx sub div def % scaling for x /psf$sy psf$y psf$ury psf$lly sub div def % scaling for y psf$sx psf$sy scale % scale by (sx,sy) psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub translate /DefFigCTM matrix currentmatrix def /initmatrix { DefFigCTM setmatrix } def /defaultmatrix { DefFigCTM exch copy } def /initgraphics { DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix DefFigCTM setmatrix } def /showpage { initgraphics } def /erasepage { initgraphics } def /copypage { initgraphics } def @MacSetUp } bdef % - doclip - /doclip { llx lly urx ury currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll exch lineto exch lineto exch lineto closepath clip newpath moveto } bdef % - endTexFig - /endTexFig { end psf$SavedState restore } def %%%% Additions by LA Carr to reencode Adobe fonts as TeX fonts (almost) %%%% Based on routine in LaserWriter Cookbook /ReEncodeForTeX { /newfontname exch def /basefontname exch def /TeXstr 30 string def /basefontdict basefontname findfont def /newfont basefontdict maxlength dict def basefontdict { exch dup /FID ne { dup /Encoding eq { exch dup length array copy newfont 3 1 roll put } { exch newfont 3 1 roll put } ifelse } { pop pop } ifelse } forall basefontdict /MathFontName known not { /TeXvec basefontname TeXstr cvs (Courier) search { pop pop pop TeXcourvec } { pop TeXnormalvec } ifelse def TeXvec aload pop TeXvec length 2 idiv { newfont /Encoding get 3 1 roll put } repeat } if newfontname newfont definefont pop } bdef /TeXnormalvec [ 8#014 /fi 8#015 /fl 8#020 /dotlessi 8#022 /grave 8#023 /acute 8#024 /caron 8#025 /breve 8#026 /macron 8#027 /ring 8#030 /cedilla 8#031 /germandbls 8#032 /ae 8#033 /oe 8#034 /oslash 8#035 /AE 8#036 /OE 8#037 /Oslash 8#042 /quotedblright 8#074 /exclamdown 8#076 /questiondown 8#134 /quotedblleft 8#136 /circumflex 8#137 /dotaccent 8#173 /endash 8#174 /emdash 8#175 /hungarumlat 8#176 /tilde 8#177 /dieresis ] def /TeXcourvec [ 8#016 /exclamdown 8#017 /questiondown 8#020 /dotlessi 8#022 /grave 8#023 /acute 8#024 /caron 8#025 /breve 8#026 /macron 8#027 /ring 8#030 /cedilla 8#031 /germandbls 8#032 /ae 8#033 /oe 8#034 /oslash 8#035 /AE 8#036 /OE 8#037 /Oslash 8#074 /less 8#076 /greater 8#134 /backslash 8#136 /circumflex 8#137 /underscore 8#173 /braceleft 8#174 /bar 8#175 /braceright 8#177 /dieresis ] def /TeXPSmakefont { % defines a routine for generating PS fonts, fudged! /TeXsize exch def findfont [ TeXsize 0 0 TeXsize neg 0 0 ] makefont } bdef % fontname basefontname angle ObliqueFont - % Create a General Oblique font /ObliqueFont { /ObliqueAngle exch def /ObliqueBaseName exch def /ObliqueFontName exch def /ObliqueTransform [1 0 ObliqueAngle sin ObliqueAngle cos div 1 0 0] def /basefontdict ObliqueBaseName findfont ObliqueTransform makefont def /newfont basefontdict maxlength dict def basefontdict { exch dup /FID ne { dup /Encoding eq { exch dup length array copy newfont 3 1 roll put } { exch newfont 3 1 roll put } ifelse } { pop pop } ifelse } forall newfont /FontName ObliqueFontName put ObliqueFontName newfont definefont pop } bdef % Palatino-ItalicUnslanted? You must be joking! % fontname basename SmallCapsFont - Create a General SmallCaps font /SmallCapsFont { /SmallCapsBaseName exch def /SmallCapsFontName exch def /basefontdict SmallCapsBaseName findfont def /newfont basefontdict maxlength 10 add dict def newfont begin /FontName SmallCapsFontName def /FontBaseDict basefontdict 1000 scalefont def /FontSCDict FontBaseDict .8 scalefont def /FontType 3 def /BuildChar {SmallCapChar} def /FontMatrix dup basefontdict exch get def /FontBBox dup basefontdict exch get def /Encoding dup basefontdict exch get def end SmallCapsFontName newfont definefont pop } bdef % fontdict ch SmallCapChar - % It shouldn't be so damn hard to do this (make one font out % of two others) but I tried several dozen variations on this % theme until I found something that worked. -- vj /SmallCapChar { /achar (A) def achar exch 0 exch put begin achar 0 get dup 97 ge exch 122 le and { % handle 'a' through 'z' specially achar 0 achar 0 get 32 sub put FontSCDict } { FontBaseDict } ifelse setfont achar stringwidth FontBBox setcachedevice newpath 0 0 moveto achar show end } bdef /MathEncodingVec [ /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon1 /Phi /Psi /Omega /alpha /beta /gamma /delta /epsilon /zeta /nu /theta /iota /kappa /lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon /phi /chi /psi /omega /epsilon /theta1 /omega1 /rho /sigma /phi1 /arrowleft /arrowleft /arrowright /arrowright /suchthat /congruent /proportional /angle /zero /one /two /three /four /five /six /seven /eight /nine /period /comma /less /slash /greater /asteriskmath /partialdiff /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 /registerserif /copyrightserif /trademarkserif /logicalor /logicaland /section /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 /dotlessi /j /weierstrass /macron /breve ] def % the following gives the character codes of the above characters % in their font. I.e., this is the character we have to hand "show" % to image the characters above. /MathCharVec [ 71 68 81 76 88 80 83 161 70 89 87 97 98 103 100 101 122 110 113 105 107 108 109 110 120 112 114 115 116 117 102 99 121 119 101 74 118 114 115 106 172 172 174 174 39 64 181 208 48 49 50 51 52 53 54 55 56 57 46 44 60 47 62 42 182 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 210 211 212 218 217 167 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 245 106 195 197 198 ] def % this array tells which font dictionary holds each character above % (0 = basefont, 1 = symbol (maybe slanted), 2 = symbol (unslanted)). /MathDictVec [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 ] def % fontname basename symbolname symbolbase angle MathOblique - % Create a "math" font with the symbol font characters slanted % by "angle" /MathOblique { 3 copy ObliqueFont pop pop MathFont } bdef % fontname basename symbolname MathFont - Create a math italic font % % We build this font out of the base font & the symbol font % using an encoding vec as close as we can get to cmmi10 with % standard postscript characters. An array parallel to the % encoding vector tells which font dictionary to use for a % particular character. /MathFont { /MathSymName exch def /MathBaseName exch def /MathFontName exch def /basefontdict MathBaseName findfont def /newfont basefontdict maxlength 10 add dict def newfont begin /FontName MathFontName def /FontDictArray [ basefontdict 1000 scalefont MathSymName findfont 950 scalefont /Symbol findfont 950 scalefont ] def /FontType 3 def /BuildChar {MathFontChar} def /FontMatrix dup basefontdict exch get def /FontBBox dup basefontdict exch get def % the encoding vector is a copy of the original font's % encoding, modified "appropriately". /Encoding dup basefontdict exch get dup length array copy def /WhichFont MathDictVec def /WhichChar MathCharVec def MathEncodingVec Encoding copy pop /achar (A) def end MathFontName newfont definefont pop } bdef % fontdict ch MathFontChar - % (there's some serious magic going on here: see note on % SmallCapChar above -- vj). /MathFontChar { exch begin achar exch 0 exch put FontDictArray WhichFont achar 0 get get get setfont achar dup 0 get WhichChar exch get 0 exch put achar stringwidth FontBBox setcachedevice newpath 0 0 moveto achar show end } bdef /@flushfonts { @TeXSave restore /@TeXSave save def} bdef end % revert to previous dictionary TeXDict begin @start %%Title: spec.dvi %%Creator: dvi2ps %%EndProlog 300 @startdoc 124 @bop0 /Times-Roman /t-rom.300 ReEncodeForTeX /t-rom.300 /t-rom.300 41.666629 TeXPSmakefont def /Times-Bold /t-bol.420 ReEncodeForTeX /t-bol.420 /t-bol.420 58.333229 TeXPSmakefont def 124 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p (Security)s 15(Considerations)m t-rom.300 @sf 0 306 p (All)s 12(OSPF)m 11(protocol)m 12(exchanges)m 12(are)m 11(authenticated.)m 18(This)m 11(is)m 12(accomplished)m 12(through)m 11(authentication)m 12(\014elds)m 12(contained)m 11(in)m 12(the)m 0 356 p (OSPF)s 10(packet)m 11(header)m -1 r 46 c 12(For)m 11(more)m 10(information,)m 11(see)m 10(Sections)m 11(8.1,)m 10(8.2,)m 10(and)m 11(Appendix)m 10(E.)m t-bol.420 @sf 0 513 p (Author)s 1 r 39 c -1 r 115 c 13(Addr)m (ess)s t-rom.300 @sf 104 623 p (John)s 10(Moy)m 104 673 p (Proteon,)s 10(Inc.)m 104 722 p 50 c 10 r 84 c -2(echnology)m 10(Drive)m 104 772 p 87 c -3(estborough,)m 10(MA)m 10(01581)m 104 839 p (Phone:)s 14(\(508\))m 10(898-2800)m 104 888 p (EMail:)s 14(jmoy@proteon.com)m 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(124])m @eop 123 @bop0 /Times-Bold /t-bol.300 ReEncodeForTeX /t-bol.300 /t-bol.300 41.666629 TeXPSmakefont def /Times-Bold /t-bol.360 ReEncodeForTeX /t-bol.360 /t-bol.360 49.999929 TeXPSmakefont def 123 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p 70 c -3(.3.2)m 41(Packet)m 10(simpli\014cation)m t-rom.300 @sf 0 291 p 84 c -2 r 111 c 9(simplify)m 10(the)m 10(format)m 10(of)m 10(Database)m 10(Description)m 9(packets)m 10(and)m 10(Link)m 10(State)m 10(Acknowledgment)m 10(packets,)m 10(their)m 10(description)m 10(of)m 0 341 p (link)s 11(state)m 11(advertisements)m 11(has)m 11(been)m 11(modi\014ed.)m 15(Each)m 11(advertisement)m 11(is)m 11(now)m 11(be)m 10(described)m 11(by)m 11(its)m 11(20-byte)m 11(link)m 11(state)m 11(header)m 0 390 p (\(see)s 9(Section)m 9(A.4\).)m 13(This)m 10(does)m 9(not)m 9(consume)m 9(any)m 9(additional)m 9(space)m 9(in)m 9(the)m 9(packets.)m 13(The)m 9(one)m 9(additional)m 9(piece)m 9(of)m 9(information)m 0 440 p (that)s 11(will)m 11(be)m 11(present)m 11(is)m 10(the)m 11(LS)m 11(length.)m 15(However)m 44 c 10(this)m 11(\014eld)m 11(need)m 10(not)m 11(be)m 11(used)m 11(when)m 11(processing)m 11(the)m 11(Database)m 11(Description)m 0 490 p (and)s 10(Link)m 11(State)m 10(Acknowledgment)m 11(packets.)m t-bol.300 @sf 0 618 p 70 c -3(.3.3)m 41(Adding)m 10(forwarding)m 11(addr)m (esses)s 9(to)m 11(AS)m 10(external)m 11(advertisements)m t-rom.300 @sf 0 714 p (As)s 10(discussed)m 11(in)m 10(Section)m 11 r 70 c -3(.1.3,)m 10 r 97 c 10(forwarding)m 11(address)m 10(\014eld)m 10(has)m 11(been)m 10(added)m 11(to)m 10(the)m 10(AS)m 11(external)m 10(advertisement.)m t-bol.300 @sf 0 842 p 70 c -3(.3.4)m 41(Labelling)m 10(of)m 11(virtual)m 10(links)m t-rom.300 @sf 0 938 p 86 c -2(irtual)m 13(links)m 14(will)m 13(be)m 14(labelled)m 13(as)m 14(such)m 14(in)m 13(router)m 14(links)m 13(advertisements.)m 24(This)m 13(separates)m 14(virtual)m 13(links)m 14(from)m 13(unnumbered)m 0 988 p (point-to-point)s 10(links,)m 9(allowing)m 10(all)m 10(backbone)m 9(routers)m 10(to)m 10(discover)m 9(whether)m 10(any)m 9(virtual)m 10(links)m 10(are)m 9(in)m 10(use.)m 14(See)m 9(Section)m 10(12.4.1)m 0 1038 p (for)s 10(more)m 11(details.)m t-bol.300 @sf 0 1166 p 70 c -3(.3.5)m 41 r 84 c (OS)s 9(costs)m 11(order)m (ed)s t-rom.300 @sf 0 1262 p (When)s 9 r 97 c 9(link)m 8(state)m 9(advertisement)m 9(speci\014es)m 9 r 97 c 9(separate)m 8(cost)m 9(depending)m 9(on)m 9 r 84 c (OS,)s 8(these)m 9(costs)m 8(must)m 9(be)m 9(ordered)m 9(by)m 9(increasing)m 0 1312 p 84 c (OS)s 10(value.)m 14(In)m 10(other)m 10(words,)m 11(the)m 10(cost)m 11(for)m 10 r 84 c (OS)s 10(16)m 10(must)m 11(always)m 10(follow)m 10(the)m 11(cost)m 10(for)m 11 r 84 c (OS)s 9(8.)m t-bol.300 @sf 0 1440 p 70 c -3(.3.6)m 41(OSPF')m -1 r 115 c 10 r 84 c (OS)s 9(encoding)m 11 r 114 c (ede\014ned)s t-rom.300 @sf 0 1536 p (The)s 10(way)m 9(that)m 10(OSPF)m 10(encodes)m 9 r 84 c (OS)s 9(in)m 10(its)m 10(link)m 10(state)m 9(advertisements)m 10(has)m 10(been)m 9(rede\014ned)m 10(in)m 10(version)m 9(2.)m 14(OSPF')m -1 r 115 c 8(encoding)m 10(of)m 0 1585 p (the)s 10(Delay)m 11(\(D\),)m 10(Throughput)m 11(\(T\),)m 10(and)m 10(Reliability)m 11(\(R\))m 10 r 84 c (OS)s 10(\015ags)m 10(de\014ned)m 11(by)m 10([RFC)m 11(791])m 10(is)m 10(described)m 11(in)m 10(Section)m 11(12.3.)m t-bol.360 @sf 0 1722 p 70 c -4(.4)m 49(Backward-compatibility)m 13(pr)m (ovisions)s t-rom.300 @sf 0 1818 p (Additional)s 14(functionality)m 13(will)m 14(probably)m 14(be)m 14(added)m 13(to)m 14(OSPF)m 14(in)m 13(the)m 14(future.)m 24(One)m 14(example)m 13(of)m 14(this)m 14(is)m 13 r 97 c 14(multicast)m 14(routing)m 0 1868 p (capability)s -2 r 44 c 11(which)m 11(is)m 12(currently)m 11(under)m 12(development.)m 17(In)m 11(order)m 12(to)m 11(be)m 12(able)m 11(to)m 12(add)m 11(such)m 12(features)m 11(in)m 12 r 97 c 11(backward-compatible)m 0 1917 p (manner)s -1 r 44 c 10(the)m 10(following)m 11(provisions)m 10(have)m 10(been)m 11(made)m 10(in)m 11(the)m 10(OSPF)m 10(speci\014cation.)m 0 1985 p (New)s 12(capabilities)m 13(will)m 12(probably)m 12(involve)m 13(the)m 12(introduction)m 13(of)m 12(new)m 12(link)m 13(state)m 12(advertisements.)m 20(If)m 12 r 97 c 13(router)m 12(receives)m 12 r 97 c 13(link)m 0 2035 p (state)s 11(advertisement)m 10(of)m 11(unknown)m 10(type)m 11(during)m 10(the)m 11(\015ooding)m 11(procedure,)m 10(the)m 11(advertisement)m 10(is)m 11(simply)m 10(ignored)m 11(\(Section)m 11(13.)m 0 2085 p (The)s 12(router)m 12(should)m 12(not)m 12(attempt)m 12(to)m 12(further)m 12(\015ood)m 12(the)m 11(advertisement,)m 13(nor)m 12(acknowledge)m 12(it.)m 18(The)m 12(advertisement)m 12(should)m 12(not)m 0 2134 p (be)s 11(installed)m 10(into)m 11(the)m 11(link)m 11(state)m 10(database.)m 15(If)m 11(the)m 10(router)m 11(receives)m 11(an)m 11(advertisement)m 10(of)m 11(unknown)m 11(type)m 10(during)m 11(the)m 11(Database)m 0 2184 p (Description)s 10(process,)m 11(this)m 10(is)m 11(an)m 10(error)m 10(\(see)m 11(Sections)m 10(10.6)m 11(and)m 10(10.3\).)m 14(The)m 10(Database)m 11(Description)m 10(process)m 11(is)m 10(then)m 11(restarted.)m 0 2252 p (There)s 13(is)m 12(also)m 13(an)m t-bol.300 @sf 13(Options)m t-rom.300 @sf 13(\014eld)m 12(in)m 13(both)m 13(the)m 12(Hello)m 13(packets,)m 13(Database)m 13(Description)m 13(packets)m 12(and)m 13(the)m 13(link)m 13(state)m 12(advertise-)m 0 2302 p (ment)s 13(headers.)m 20(Unrecognized)m 13(capabilities)m 12(found)m 13(in)m 13(these)m 12(places)m 13(should)m 12(be)m 13(ignored,)m 13(and)m 13(should)m 13(not)m 12(af)m (fect)s 12(the)m 13(normal)m 0 2352 p (processing)s 14(of)m 13(protocol)m 14(packets/link)m 13(state)m 14(advertisements)m 13(\(see)m 14(Sections)m 13(10.5)m 14(and)m 27(10.6\).)m 23(Routers)m 14(will)m 13(originate)m 14(their)m 0 2401 p (Hello)s 10(packets,)m 9(Database)m 10(Description)m 9(packets)m 10(and)m 10(link)m 9(state)m 10(advertisements)m 9(with)m 10(unrecognized)m 9(capabilities)m 10(set)m 10(to)m 9 r 48 c 10(\(see)m 0 2451 p (Sections)s 10(9.5,)m 11(10.8)m 10(and)m 11(12.1.2\).)m 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(123])m @eop 122 @bop0 /Courier /c-med.300 ReEncodeForTeX /c-med.300 /c-med.300 41.666629 TeXPSmakefont def 122 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (appears)s 8(on)m 8(any)m 9(neighbor)m t-bol.300 @sf 8(Link)m 8(State)m 8(Retransmission)m 8(lists)m t-rom.300 @sf 9(and)m 8(b\))m 8(none)m 8(of)m 9(the)m 8(router)m 1 r 39 c -1 r 115 c 7(neighbors)m 8(are)m 9(in)m 8(states)m t-bol.300 @sf 8(Exchange)m t-rom.300 @sf 0 245 p (or)s t-bol.300 @sf 10(Loading)m t-rom.300 @sf 46 c 14(See)m 11(Sections)m 10(13)m 11(\(step)m 10(4c\))m 10(and)m 11(14.1)m 10(for)m 11(more)m 10(details.)m 0 313 p (In)s 10(addition,)m 11 r 97 c 10(new)m 10(step)m 11(has)m 10(been)m 10(added)m 10(to)m 11(the)m 10(\015ooding)m 10(procedure)m 11(\(Section)m 10(13\))m 10(in)m 11(order)m 10(to)m 10(make)m 11(the)m 10(Database)m 10(Descrip-)m 0 362 p (tion)s 13(process)m 14(more)m 13(robust.)m 23(This)m 13(step)m 14(detects)m 13(when)m 13 r 97 c 14(neighbor)m 13(lists)m 13(one)m 14(instance)m 13(of)m 14(an)m 13(advertisement)m 13(in)m 14(its)m 13(Database)m 0 412 p (Description)s 11(packets,)m 11(but)m 11(responds)m 11(to)m 11(Link)m 10(State)m 11(Request)m 11(packets)m 11(by)m 11(sending)m 11(another)m 11(\(earlier\))m 11(instance.)m 15(This)m 11(behavior)m 0 462 p (now)s 10(causes)m 10(the)m 11(event)m t-bol.300 @sf 10(BadLSReq)m t-rom.300 @sf 10(to)m 10(be)m 10(generated,)m 11(which)m 10(restarts)m 10(the)m 10(Database)m 10(Description)m 11(process)m 10(with)m 10(the)m 10(neighbor)m -1 r 46 c 0 512 p (In)s 10(OSPF)m 11(version)m 10(1,)m 11(the)m 10(neighbor)m 10(event)m t-bol.300 @sf 11(BadLSReq)m t-rom.300 @sf 10(erroneously)m 11(did)m 10(not)m 11(restart)m 10(the)m 10(Database)m 11(Description)m 10(process.)m t-bol.300 @sf 0 640 p 70 c -3(.2.7)m 41(Receiving)m 10(OSPF)m 11(Hello)m 10(packets)m t-rom.300 @sf 0 736 p (The)s 12(section)m 12(detailing)m 12(the)m 12(receive)m 13(processing)m 12(of)m 12(OSPF)m 12(Hello)m 12(packets)m 12(\(Section)m 12(10.5\))m 12(has)m 13(been)m 12(modi\014ed)m 12(to)m 12(include)m 12(the)m 0 786 p (generation)s 15(of)m 15(the)m 15(neighbor)m t-bol.300 @sf 15(Backup)m 15(Seen)m t-rom.300 @sf 15(event.)m 28(In)m 15(addition,)m 16(the)m 15(section)m 15(detailing)m 15(the)m 15(Designated)m 15(Router)m 16(election)m 0 835 p (algorithm)s 10(\(Section)m 11(9.4\))m 10(has)m 11(been)m 10(modi\014ed)m 10(to)m 11(include)m 10(the)m 11(algorithm')m -2 r 115 c 10(initial)m 10(state.)m t-bol.300 @sf 0 964 p 70 c -3(.2.8)m 41(Network)m 10(mask)m 11(de\014ned)m 10(for)m 10(default)m 11 r 114 c (oute)s t-rom.300 @sf 0 1060 p (The)s 10(network)m 10(mask)m 10(for)m 9(the)m 10(default)m 10(route,)m 10(when)m 10(it)m 10(appears)m 10(as)m 10(the)m 10(destination)m 9(in)m 10(either)m 10(an)m 10(AS)m 10(external)m 10(link)m 10(advertisement)m 0 1109 p (or)s 10(in)m 11 r 97 c 10(summary)m 11(link)m 10(advertisement,)m 10(has)m 11(been)m 10(set)m 11(to)m c-med.300 @sf 10(0.0.0.0)m t-rom.300 @sf 46 c 14(See)m 10(Sections)m 11(A.4.4)m 10(and)m 11(A.4.5)m 10(for)m 11(more)m 10(details.)m t-bol.300 @sf 0 1238 p 70 c -3(.2.9)m 41(Rate)m 10(limit)m 11(imposed)m 10(on)m 10(\015ooding)m t-rom.300 @sf 0 1333 p (When)s 12(an)m 13(advertisement)m 12(is)m 13(installed)m 12(in)m 13(the)m 12(link)m 13(state)m 12(database,)m 13(it)m 13(is)m 12(timestamped.)m 20(The)m 13(\015ooding)m 12(procedure)m 13(is)m 12(then)m 13(not)m 0 1383 p (allowed)s 10(to)m 10(install)m 10 r 97 c 10(new)m 10(instance)m 10(of)m 10(the)m 10(advertisement)m 10(until)m 10(MinLSInterval)m 10(seconds)m 10(have)m 10(elapsed.)m 14(This)m 10(enforces)m 10 r 97 c 10(rate)m 0 1433 p (limit)s 11(on)m 11(the)m 11(\015ooding)m 12(procedure;)m 11 r 97 c 11(new)m 11(instance)m 11(can)m 12(be)m 11(\015ooded)m 11(only)m 11(once)m 11(every)m 11(MinLSInterval)m 11(seconds.)m 16(This)m 12(guards)m 0 1483 p (against)s 12(routers)m 12(that)m 12(disregard)m 12(the)m 12(limit)m 13(on)m 12(self-originated)m 12(advertisements)m 12(\(already)m 12(present)m 12(in)m 12(OSPF)m 12(version)m 12(1\))m 12(of)m 12(one)m 0 1533 p (origination)s 10(every)m 11(MinLSInterval)m 10(seconds.)m 14(For)m 11(more)m 10(information,)m 10(see)m 11(Section)m 10(13.)m t-bol.360 @sf 0 1669 p 70 c -4(.3)m 49(Packet)m 13(format)m 12(changes)m t-rom.300 @sf 0 1765 p (The)s 11(following)m 12(changes)m 11(have)m 12(been)m 11(made)m 11(to)m 12(the)m 11(format)m 12(of)m 11(OSPF)m 11(packets)m 12(and)m 11(link)m 12(state)m 11(advertisements.)m 17(Some)m 11(of)m 12(these)m 0 1815 p (changes)s 12(were)m 11(required)m 12(to)m 11(support)m 12(the)m 11(added)m 12(functionality)m 11(listed)m 12(above.)m 17(Other)m 11(changes)m 12(were)m 11(made)m 12(to)m 11(further)m 12(simplify)m 0 1865 p (the)s 10(parsing)m 11(of)m 10(OSPF)m 11(packets.)m t-bol.300 @sf 0 1993 p 70 c -3(.3.1)m 41(Adding)m 10 r 97 c 11(Capability)m 10(bit\014eld)m t-rom.300 @sf 0 2089 p 84 c -2 r 111 c 12(support)m 14(the)m 13(new)m 14(\\stub)m 13(area")m 13(and)m 14(\\optional)m 13 r 84 c (OS")s 13(features,)m 14 r 97 c 13(bit\014eld)m 14(listing)m 13(protocol)m 13(capabilities)m 14(has)m 13(been)m 14(added)m 0 2138 p (to)s 11(the)m 12(Hello)m 11(packet,)m 12(Database)m 11(Description)m 11(packet)m 12(and)m 11(all)m 12(link)m 11(state)m 11(advertisements.)m 17(When)m 11(used)m 12(in)m 11(Hello)m 12(packets,)m 11(this)m 0 2188 p (allows)s 8 r 97 c 8(router)m 8(to)m 8(reject)m 8 r 97 c 8(neighbor)m 8(because)m 8(of)m 7 r 97 c 8(capability)m 8(mismatch.)m 13(Alternatively)m -1 r 44 c 7(when)m 8(capabilities)m 8(are)m 8(exchanged)m 8(in)m 0 2238 p (Database)s 8(Description)m 8(packets)m 8 r 97 c 7(router)m 8(can)m 8(choose)m 8(not)m 8(to)m 8(forward)m 7(certain)m 8(link)m 8(state)m 8(advertisements)m 8(to)m 8 r 97 c 8(neighbor)m 7(because)m 0 2288 p (of)s 8(its)m 8(reduced)m 9(functionality)m -2 r 46 c 12(Lastly)m -2 r 44 c 8(listing)m 8(capabilities)m 9(in)m 8(link)m 8(state)m 8(advertisements)m 8(allows)m 9(routers)m 8(to)m 8(route)m 8(traf)m (\014c)s 8(around)m 0 2338 p (reduced)s 11(functionality)m 10(router)m 44 c 9(by)m 11(excluding)m 11(them)m 10(from)m 11(parts)m 10(of)m 11(the)m 11(routing)m 10(table)m 11(calculation.)m 14(See)m 11(Section)m 11(A.2)m 10(for)m 11(more)m 0 2387 p (details.)s 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(122])m @eop 121 @bop0 121 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (of)s 9(the)m 10(advertisement)m 9(must)m 9(be)m 10(originated)m 9(\(due)m 9(either)m 10(to)m 9(topological)m 9(change)m 10(of)m 9(the)m 9(expiration)m 10(of)m 9(the)m 9(LS)m 10(refresh)m 9(timer\))m 9(the)m 0 245 p (current)s 10(instance)m 11(must)m 10(\014rst)m 11(be)m 10(\\prematurely)m 10(aged".)m 0 312 p (There)s 14(will)m 15(be)m 14 r 97 c 14(new)m 15(section)m 14(discussing)m 14(premature)m 15(aging)m 14(\(Section)m 14(14.1\).)m 26(This)m 14(is)m 15 r 97 c 14(method)m 14(for)m 15(\015ushing)m 14 r 97 c 14(link)m 15(state)m 0 361 p (advertisement)s 10(from)m 10(the)m 10(routing)m 10(domain:)m 14(the)m 10(advertisement')m -1 r 115 c 9(age)m 10(is)m 10(set)m 11(to)m 10(MaxAge)m 10(and)m 10(advertisement)m 10(is)m 10(re\015ooded)m 10(just)m 0 411 p (as)s 14(if)m 14(it)m 15(were)m 14 r 97 c 14(newly)m 14(received)m 14(advertisement.)m 26(As)m 14(soon)m 14(as)m 14(the)m 14(new)m 15(\015ooding)m 14(is)m 14(acknowledged)m 14(by)m 14(all)m 14(of)m 15(the)m 14(router)m 1 r 39 c -1 r 115 c 0 461 p (adjacent)s 10(neighbors,)m 11(the)m 10(advertisement)m 11(is)m 10(\015ushed)m 10(from)m 11(the)m 10(database.)m 0 528 p (Premature)s 10(aging)m 9(can)m 10(also)m 10(be)m 9(used)m 10(when,)m 10(for)m 10(example,)m 9 r 97 c 10(previously)m 10(advertised)m 9(external)m 10(route)m 10(is)m 9(no)m 10(longer)m 10(reachable.)m 13(In)m 0 577 p (this)s 12(circumstance,)m 12(premature)m 12(aging)m 11(is)m 12(preferable)m 12(to)m 12(the)m 11(alternative,)m 12(which)m 12(is)m 12(to)m 12(originate)m 11 r 97 c 12(new)m 12(advertisement)m 12(for)m 11(the)m 0 627 p (destination)s 10(specifying)m 11 r 97 c 10(metric)m 11(of)m 10(LSIn\014nity)m -2 r 46 c 0 694 p 65 c 11(router)m 10(may)m 11(only)m 10(prematurely)m 11(age)m 10(its)m 11(own)m 10(\(self-originated\))m 11(link)m 10(state)m 11(advertisements.)m 14(These)m 11(are)m 10(the)m 11(link)m 10(state)m 11(adver-)m 0 744 p (tisements)s 10(having)m 11(the)m 10(router)m 2 r 39 c -2 r 115 c 10(own)m 10(OSPF)m 11(router)m 10(ID)m 11(in)m 10(the)m t-bol.300 @sf 10(Advertising)m 11(Router)m t-rom.300 @sf 10(\014eld.)m t-bol.300 @sf 0 871 p 70 c -3(.2.2)m 41(Flooding)m 10(of)m 11(unexpected)m 10(MaxAge)m 10(advertisements)m t-rom.300 @sf 0 965 p 86 c -4(ersion)m 11 r 49 c 13(of)m 12(the)m 12(OSPF)m 12(omitted)m 12(the)m 12(handling)m 12(of)m 12 r 97 c 12(special)m 12(case)m 12(in)m 12(the)m 12(\015ooding)m 12(procedure:)m 18(the)m 12(reception)m 12(of)m 12 r 97 c 12(MaxAge)m 0 1015 p (advertisement)s 11(that)m 11(has)m 12(no)m 11(database)m 11(instance.)m 17 r 65 c 11(paragraph)m 11(has)m 11(been)m 11(added)m 12(to)m 11(Section)m 11(13)m 11(to)m 12(deal)m 11(with)m 11(this)m 11(occurrence.)m 0 1065 p 87 c -1(ithout)m 10(this)m 10(paragraph,)m 10(retransmissions)m 11(of)m 10(MaxAge)m 11(advertisements)m 10(could)m 10(possibly)m 11(delay)m 10(their)m 10(being)m 11(\015ushed)m 10(from)m 11(the)m 0 1115 p (routing)s 10(domain.)m t-bol.300 @sf 0 1242 p 70 c -3(.2.3)m 41 r 86 c -1(irtual)m 10(links)m 10(and)m 11(addr)m (ess)s 9(ranges)m t-rom.300 @sf 0 1336 p (When)s 14(summarizing)m 15(information)m 14(into)m 14 r 97 c 14(virtual)m 15(link')m -2 r 115 c 13(transit)m 15(area,)m 15(version)m 14 r 50 c 14(of)m 15(the)m 14(OSPF)m 14(speci\014cation)m 14(prohibits)m 15(the)m 0 1386 p (collapsing)s 12(of)m 12(multiple)m 12(backbone)m 12(IP)m 11(networks/subnets)m 12(into)m 12 r 97 c 12(single)m 12(summary)m 12(link.)m 18(This)m 12(restriction)m 12(has)m 12(been)m 12(added)m 12(to)m 0 1436 p (deal)s 10(with)m 11(certain)m 10(anomalous)m 11(OSPF)m 10(area)m 10(con\014gurations.)m 14(See)m 11(Sections)m 10(15)m 11(and)m 10(12.4.3)m 10(for)m 11(more)m 10(information.)m t-bol.300 @sf 0 1563 p 70 c -3(.2.4)m 41(Routing)m 10(table)m 11(lookup)m 10(explained)m t-rom.300 @sf 0 1657 p (When)s 10(forwarding)m 10(an)m 10(IP)m 9(data)m 10(packet,)m 10 r 97 c 10(router)m 10(looks)m 10(up)m 10(the)m 9(packet')m -1 r 115 c 9(IP)m 10(destination)m 10(in)m 10(the)m 9(routing)m 10(table.)m 14(This)m 10(determines)m 0 1707 p (the)s 13(packet')m -2 r 115 c 12(next)m 12(hop.)m 21 r 65 c 12(new)m 13(section)m 13(\(Section)m 12 r 49 c (1.1\))s 11(has)m 13(been)m 12(added)m 13(describing)m 13(the)m 12(routing)m 13(table)m 12(lookup)m 13(\(instead)m 12(of)m 0 1757 p (just)s 11(specifying)m 11 r 97 c 12(\\best)m 11(match"\).)m 16(This)m 11(section)m 11(clari\014es)m 12(OSPF')m -2 r 115 c 11(four)m 11(level)m 11(routing)m 11(hierarchy)m 11(\(i.e.,)m 12(intra-area,)m 11(inter)m (-area,)s 0 1807 p (external)s 10(type)m 11 r 49 c 10(and)m 11(external)m 10(type)m 10 r 50 c 11(routes\).)m 14(It)m 10(also)m 11(speci\014es)m 10(the)m 10(ef)m (fect)s 10(of)m 11 r 84 c (OS)s 9(on)m 11(routing.)m t-bol.300 @sf 0 1934 p 70 c -3(.2.5)m 41(Sending)m 10(Link)m 11(State)m 10(Request)m 10(packets)m t-rom.300 @sf 0 2028 p (OSPF)s 11 r 86 c -3(ersion)m 10 r 50 c 12(eases)m 11(the)m 11(restrictions)m 12(on)m 11(the)m 12(sending)m 11(of)m 11(Link)m 12(State)m 11(Request)m 12(packets.)m 16(Link)m 12(State)m 11(Request)m 12(packets)m 11(can)m 0 2078 p (now)s 9(be)m 9(sent)m 9(to)m 10 r 97 c 9(neighboring)m 9(router)m 9(before)m 9 r 97 c 9(complete)m 10(set)m 9(of)m 9(Database)m 9(Description)m 9(packets)m 9(have)m 10(been)m 9(exchanged.)m 13(This)m 0 2128 p (enables)s 10 r 97 c 11(more)m 10(ef)m (\014cient)s 9(use)m 11(of)m 10 r 97 c 10(router)m 2 r 39 c -2 r 115 c 10(memory)m 10(resources;)m 10(an)m 10(OSPF)m 11(version)m 10 r 50 c 10(implementation)m 10(may)m 11(limit)m 10(the)m 10(size)m 10(of)m 0 2178 p (the)s 10(neighbor)m t-bol.300 @sf 11(Link)m 10(state)m 11 r 114 c (equest)s 9(lists)m t-rom.300 @sf 46 c 14(See)m 11(Sections)m 10(10.9,)m 10(10.7)m 11(and)m 10(10.3)m 11(for)m 10(more)m 11(details.)m t-bol.300 @sf 0 2305 p 70 c -3(.2.6)m 41(Changes)m 10(to)m 11(the)m 10(Database)m 10(description)m 11(pr)m (ocess)s t-rom.300 @sf 0 2399 p (The)s 14(speci\014cation)m 14(has)m 14(been)m 15(modi\014ed)m 14(to)m 14(ensure)m 14(that,)m 15(when)m 14(two)m 14(routers)m 14(are)m 14(synchronizing)m 15(their)m 14(databases)m 14(during)m 14(the)m 0 2449 p (Database)s 15(Description)m 16(process,)m 16(none)m 15(of)m 16(the)m 15(component)m 15(link)m 16(state)m 15(advertisements)m 15(can)m 16(have)m 15(their)m 15(sequence)m 15(numbers)m 0 2499 p (decrease.)s 25 r 65 c 13(link)m 14(state)m 14(advertisement')m -1 r 115 c 13(sequence)m 14(number)m 14(decreases)m 14(when)m 14(it)m 14(is)m 14(\015ushed)m 14(from)m 14(the)m 14(routing)m 14(domain)m 14(via)m 0 2549 p (premature-aging,)s 11(and)m 11(then)m 10(reoriginated)m 11(with)m 11(the)m 11(smallest)m 11(sequence)m 10(number)m c-med.300 @sf 11(0x80000001)m t-rom.300 @sf 11(\(see)m 11(Section)m 10(14.1\).)m 15(So)m 11(the)m 0 2599 p (speci\014cation)s 12(now)m 11(dictates)m 12(that)m 11(an)m 12(advertisement)m 11(cannot)m 12(be)m 11(\015ushed)m 12(from)m 12 r 97 c 11(router)m 2 r 39 c -2 r 115 c 11(database)m 11(until)m 12(both)m 12(a\))m 11(it)m 12(no)m 11(longer)m 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(121])m @eop 120 @bop0 120 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p 88 c 11(from)m 11(the)m 11(calculation.)m 15(In)m 11(ef)m (fect,)s 10(an)m 11(attempt)m 11(will)m 10(be)m 11(made)m 11(to)m 11(bypass)m 11(router)m 11 r 88 c 11(when)m 10(forwarding)m 11(non-zero)m 11 r 84 c (OS)s 10(traf)m (\014c.)s 0 245 p (Summary)s 13(link)m 12(and)m 13(AS)m 13(external)m 12(link)m 13(advertisements)m 13(can)m 12(also)m 13(indicate)m 13(their)m 12(non-availability)m 13(for)m 13(non-zero)m 13 r 84 c (OS)s 11(traf)m (\014c)s 0 295 p (\(Sections)s 10(12.4.3)m 11(and)m 10(12.4.4\).)m 0 362 p (The)s 9(result)m 9(may)m 9(be)m 9(that)m 9(no)m 9(route)m 9(can)m 9(be)m 9(found)m 9(for)m 9(some)m 9(non-zero)m 9(value)m 9(of)m 9 r 84 c (OS.)s 9(When)m 9(this)m 9(happens,)m 9(the)m 9(packet)m 9(is)m 9(routed)m 0 412 p (along)s 10(the)m 11 r 84 c (OS)s 9 r 48 c 11(route)m 10(instead)m 11(\(Section)m 10 r 49 c (1.1\).)s 0 480 p (It)s 11(is)m 11(still)m 10(mandatory)m 11(for)m 11(all)m 11(OSPF)m 10(implementations)m 11(to)m 11(be)m 11(able)m 10(to)m 11(construct)m 11(separate)m 11(routing)m 10(tables)m 11(for)m 11(each)m 11 r 84 c (OS)s 10(value,)m 0 530 p (if)s 10(desired)m 11(by)m 10(the)m 11(system)m 10(administrator)m -1 r 46 c t-bol.300 @sf 0 658 p 70 c -3(.1.3)m 41(Pr)m (eventing)s 9(external)m 11(extra-hops)m t-rom.300 @sf 0 754 p (In)s 16(some)m 15(cases,)m 17(version)m 15 r 49 c 16(of)m 16(the)m 15(OSPF)m 16(speci\014cation)m 15(will)m 16(introduce)m 15(extra-hops)m 16(when)m 15(calculating)m 16(routes)m 15(to)m 16(external)m 0 804 p (destinations.)s 13(This)m 8(is)m 8(because)m 8(it)m 8(is)m 9(implicit)m 8(in)m 8(the)m 8(format)m 8(of)m 8(AS)m 8(external)m 8(advertisements)m 8(that)m 8(packets)m 8(should)m 8(be)m 8(forwarded)m 0 853 p (through)s 13(the)m 13(advertising)m 13(router)m -1 r 46 c 21(However)m -1 r 44 c 13(consider)m 13(the)m 13(situation)m 13(where)m 13(multiple)m 13(OSPF)m 13(routers)m 13(share)m 13 r 97 c 13(LAN)m 13(with)m 13(an)m 0 903 p (external)s 12(router)m 11(\(call)m 12(it)m 11(router)m 12(Y\))m 11 r 44 c 12(and)m 11(only)m 12(one)m 12(OSPF)m 11(router)m 12(\(call)m 11(it)m 12(router)m 11(X\))m 12(exchanges)m 11(routing)m 12(information)m 12(with)m 11 r 89 c -4 r 46 c 0 953 p (The)s 10(OSPF)m 10(routers)m 10(on)m 9(the)m 10(LAN)m 10(other)m 10(than)m 10 r 88 c 10(will)m 9(forward)m 10(packets)m 10(destined)m 10(for)m 10 r 89 c 10(and)m 9(beyond)m 10(through)m 10(X,)m 10(generating)m 10(an)m 0 1003 p (extra)s 10(hop)m 11(\(see)m 10(Section)m 11(2.2\).)m 0 1070 p 84 c -2 r 111 c 13(\014x)m 13(this,)m 14 r 97 c 14(new)m 13(\014eld)m 14(has)m 13(been)m 13(added)m 14(to)m 13(AS)m 14(external)m 13(advertisements.)m 23(This)m 14(\014eld)m 13(\(called)m 14(the)m t-bol.300 @sf 13(forwarding)m 14(addr)m (ess)s t-rom.300 @sf 41 c 0 1120 p (will)s 11(indicate)m 11(the)m 11(router)m 11(address)m 11(to)m 12(which)m 11(packets)m 11(should)m 11(be)m 11(forwarded)m 11(\(Section)m 11(12.4.4\).)m 16(In)m 11(the)m 11(above)m 11(example,)m 11(router)m 0 1170 p 88 c 13(will)m 13(put)m 13(Y')m -1 r 115 c 12(IP)m 13(address)m 13(into)m 14(this)m 13(\014eld.)m 22(If)m 13(the)m 13(\014eld)m 13(is)m 13(0,)m 14(packets)m 13(are)m 13(\(as)m 13(before\))m 14(forwarded)m 13(to)m 13(the)m 13(originator)m 13(of)m 13(the)m 0 1220 p (advertisement.)s 14 r 65 c 10(dif)m (ferent)s t-bol.300 @sf 10(forwarding)m 10(addr)m (ess)s t-rom.300 @sf 10(can)m 10(be)m 11(speci\014ed)m 10(for)m 11(each)m 10 r 84 c (OS)s 10(value.)m 0 1288 p (Whenever)s 14(possible,)m 16(this)m 14(new)m 15(\014eld)m 14(should)m 15(be)m 14(set)m 15(to)m 14(0.)m 26(This)m 15(is)m 14(because)m 15(setting)m 14(it)m 15(to)m 14(an)m 15(actual)m 14(router)m 15(address)m 14(incurs)m 0 1337 p (additional)s 10(cost)m 11(during)m 10(the)m 11(routing)m 10(table)m 10(build)m 11(process)m 10(\(Section)m 11(16.4\).)m 0 1405 p (Besides)s 12(preventing)m 12(extra-hops,)m 13(there)m 12(are)m 12(two)m 12(other)m 12(applications)m 12(for)m 12(this)m 12(\014eld.)m 19(The)m 12(\014rst)m 12(is)m 12(for)m 12(use)m 13(by)m 12(\\route)m 12(servers".)m 0 1455 p (Using)s 12(the)m t-bol.300 @sf 11(forwarding)m 12(addr)m (ess)s t-rom.300 @sf 44 c 12 r 97 c 11(router)m 12(in)m 12(the)m 11(middle)m 12(of)m 12(the)m 12(Autonomous)m 11(System)m 12(can)m 12(gather)m 12(external)m 11(routing)m 12(infor-)m 0 1505 p (mation)s 9(and)m 10(originate)m 9(AS)m 10(external)m 9(advertisements)m 10(that)m 9(specify)m 10(the)m 9(correct)m 10(exit)m 9(route)m 10(to)m 9(use)m 10(for)m 9(each)m 10(external)m 9(destination)m 0 1555 p (\(Section)s 10(2.2\).)m 0 1622 p (The)s 13(other)m 13(application)m 13(possibly)m 12(enables)m 13(the)m 13(reduction)m 13(of)m 13(the)m 13(number)m 13(of)m 13(AS)m 12(external)m 13(advertisements)m 13(that)m 13(need)m 13(be)m 13(im-)m 0 1672 p (ported.)s 15(Suppose)m 10(in)m 11(the)m 11(example)m 10(at)m 11(the)m 11(beginning)m 10(of)m 11(this)m 11(section)m 11(that)m 10(there)m 11(are)m 11(two)m 10(routers)m 11(\(X)m 11(and)m 10(Z\))m 11(exchanging)m 11(EGP)m 0 1722 p (information)s 13(with)m 14(the)m 13(non-OSPF)m 13(router)m 14 r 89 c -5 r 46 c 13(It)m 13(is)m 14(then)m 13(likely)m 13(that)m 14(both)m 13 r 88 c 13(and)m 14 r 90 c 13(will)m 14(originate)m 13(the)m 13(same)m 14(set)m 13(of)m 13(external)m 0 1772 p (routes.)s 23 r 84 c -1(wo)m 12(AS)m 14(external)m 13(advertisements)m 14(that)m 14(specify)m 13(the)m 14(same)m 13(\(non-zero\))m 14(forwarding)m 13(address,)m 15(destination)m 13(and)m 14(cost)m 0 1821 p (are)s 14(obviously)m 13(functionally)m 14(equivalent,)m 14(regardless)m 14(of)m 14(their)m 13(originators)m 14(\(advertising)m 14(routers\).)m 23(The)m 14(OSPF)m 14(speci\014cation)m 0 1871 p (dictates)s 9(that)m 10(the)m 9(advertisement)m 9(originated)m 10(by)m 9(the)m 9(router)m 10(with)m 9(the)m 9(lar)m (gest)s 9(Router)m 9(ID)m 9(will)m 10(always)m 9(be)m 9(used.)m 14(This)m 9(allows)m 10(the)m 0 1921 p (other)s 10(router)m 11(to)m 10(\015ush)m 11(its)m 10(equivalent)m 10(advertisement)m 11(\(Section)m 10(12.4.4\).)m t-bol.360 @sf 0 2058 p 70 c -4(.2)m 49(Corr)m (ected)s 12(pr)m (oblems)s t-rom.300 @sf 0 2153 p (The)s 10(following)m 11(problems)m 10(in)m 11(OSPF)m 10(version)m 10 r 49 c 11(have)m 10(been)m 11(corrected)m 10(in)m 11(version)m 10(2.)m t-bol.300 @sf 0 2282 p 70 c -3(.2.1)m 41(LS)m 10(sequence)m 11(number)m 10(space)m 10(changes)m t-rom.300 @sf 0 2377 p (The)s 13(LS)m 13(sequence)m 13(number)m 13(space)m 13(has)m 13(been)m 13(changed)m 14(from)m 13(version)m 13(1')m -2 r 115 c 12(lollipop)m 14(shape)m 13(to)m 13 r 97 c 13(linear)m 13(sequence)m 13(space)m 13(\(Sec-)m 0 2427 p (tion)s 13(12.1.6\).)m 21(Sequence)m 13(numbers)m 13(will)m 13(now)m 12(be)m 13(compared)m 13(as)m 13(signed)m 13(32-bit)m 13(integers.)m 21(Link)m 13(state)m 13(advertisements)m 12(having)m 0 2477 p (lar)s (ger)s 8(sequence)m 9(numbers)m 9(will)m 9(be)m 9(considered)m 9(more)m 9(recent.)m 13(The)m 9(sequence)m 9(number)m 9(space)m 9(will)m 8(still)m 9(begin)m 9(at)m 9(\(-N+1\))m 9(\(where)m 0 2527 p 78 c 10 r 61 c 10(2**31\).)m 14(The)m 9(value)m 10(of)m 10(-N)m 10(remains)m 10(reserved.)m 14(The)m 10(LS)m 10(sequence)m 10(number)m 10(of)m 10(successive)m 9(instances)m 10(of)m 10(an)m 10(advertisement)m 0 2577 p (will)s 10(continue)m 10(to)m 9(be)m 10(incremented)m 10(until)m 10(it)m 9(reaches)m 10(the)m 10(maximum)m 10(possible)m 9(value:)m 14(N-1.)m 14(At)m 9(this)m 10(point,)m 10(when)m 10 r 97 c 9(new)m 10(instance)m 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(120])m @eop 119 @bop0 119 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p 70 c 58 r 86 c -4(ersion)m 14 r 49 c 14(differ)m (ences)s t-rom.300 @sf 0 305 p (This)s 13(section)m 13(documents)m 13(the)m 13(changes)m 13(between)m 14(OSPF)m 13(version)m 13 r 49 c 13(and)m 13(OSPF)m 13(version)m 13(2.)m 22(The)m 13(impetus)m 13(for)m 13(these)m 13(changes)m 0 355 p (derives)s 13(from)m 13(comments)m 13(received)m 13(on)m 13(RFC)m 12 r 49 c (131)s 12(and)m 13(recent)m 13(\014eld)m 13(experience)m 13(with)m 12(the)m 13(OSPF)m 13(protocol.)m 22(Unfortunately)m -2 r 44 c 0 405 p (the)s 12(changes)m 11(are)m 12(not)m 12(backward-compatible.)m 17(For)m 12(that)m 12(reason,)m 12(OSPF)m 11(version)m 12 r 49 c 12(will)m 12(not)m 11(interoperate)m 12(with)m 12(OSPF)m 11(version)m 0 455 p (2.)s 17(However)m 44 c 10(the)m 12(changes)m 11(are)m 12(small)m 11(in)m 12(scope)m 11(and)m 12(should)m 11(not)m 12(greatly)m 11(af)m (fect)s 11(any)m 12(existing)m 11(implementations.)m 17(In)m 12(addition,)m 0 505 p (some)s 11(of)m 11(the)m 12(proposed)m 11(changes)m 11(should)m 11(enable)m 12(future)m 11(protocol)m 11(additions)m 11(to)m 11(be)m 12(made)m 11(in)m 11 r 97 c 11(backward-compatible)m 12(manner)m 0 555 p (\(see)s 10(Section)m 11 r 70 c -3(.4\).)m t-bol.360 @sf 0 691 p 70 c -4(.1)m 49(Pr)m (otocol)s 12(Enhancements)m t-rom.300 @sf 0 786 p (The)s 10(following)m 11(enhancements)m 10(were)m 11(made)m 10(to)m 10(the)m 11(OSPF)m 10(protocol.)m t-bol.300 @sf 0 914 p 70 c -3(.1.1)m 41(Stub)m 10(ar)m (ea)s 10(support)m t-rom.300 @sf 0 1010 p (In)s 11(many)m 12(Autonomous)m 11(Systems,)m 12(the)m 11(majority)m 11(of)m 12(the)m 11(OSPF)m 11(link)m 12(state)m 11(database)m 11(consists)m 12(of)m 11(AS)m 11(external)m 12(advertisements.)m 0 1059 p (In)s 13(these)m 12(Autonomous)m 13(Systems,)m 13(some)m 13(OSPF)m 13(areas)m 12(may)m 13(be)m 13(or)m (ganized)s 12(in)m 12(such)m 13 r 97 c 13(way)m 12(that)m 13(external)m 13(advertisements)m 12(can)m 0 1109 p (be)s 12(safely)m 11(ignored,)m 12(enabling)m 12 r 97 c 11(reduction)m 12(of)m 11(the)m 12(area')m -1 r 115 c 10(database)m 12(size.)m 17(This)m 12(applies)m 11(to)m 12(OSPF)m 11(areas)m 12(where)m 11(there)m 12(is)m 12(only)m 11 r 97 c 0 1159 p (single)s 13(exit/entry)m 13(that)m 12(is)m 13(used)m 13(by)m 13(all)m 12(externally)m 13(addressed)m 13(packets,)m 13(or)m 13(to)m 13(cases)m 13(where)m 12(some)m 13(sub-optimality)m 13(of)m 13(external)m 0 1209 p (routing)s 10(is)m 11(acceptable.)m 0 1276 p (Therefore,)s 8(an)m 7(OSPF)m 8(area)m 7(con\014guration)m 8(option)m 7(has)m 8(been)m 7(added)m 7(\(see)m 8(Sections)m 7(3.6)m 8(and)m 7(C.2\))m 8(allowing)m 7(the)m 8(import)m 7(of)m 7(external)m 0 1326 p (advertisements)s 10(to)m 9(be)m 10(disabled)m 10(for)m 10(an)m 9(area.)m 14(When)m 10(this)m 10(option)m 9(is)m 10(enabled,)m 10(no)m 10(AS)m 9(external)m 10(advertisements)m 10(will)m 10(be)m 9(\015ooded)m 0 1376 p (into)s 10(the)m 10(area)m 10(\(Sections)m 10(13,)m 10(13.3)m 9(and)m 10(10.3\).)m 14(Instead,)m 10(within)m 10(the)m 10(area)m 10(all)m 10(data)m 10(traf)m (\014c)s 9(to)m 10(external)m 10(destinations)m 10(will)m 10(follow)m 9 r 97 c 0 1426 p (\(per)s (-area\))s 10(default)m 10(route.)m 14(These)m 10(areas)m 11(are)m 10(called)m 11(\\stub")m 10(areas.)m 0 1493 p 84 c -2 r 111 c 11(implement)m 11(this,)m 12(all)m 11(area)m 12(border)m 11(routers)m 12(attached)m 11(to)m 12(stub)m 11(areas)m 11(will)m 12(originate)m 11 r 97 c 12(default)m 11(summary)m 12(link)m 11(advertisement)m 0 1543 p (for)s 11(the)m 11(area)m 11(\(Section)m 11(12.4.3\).)m 16(This)m 11(will)m 11(direct)m 11(all)m 11(internal)m 11(routers)m 11(to)m 12(an)m 11(area)m 11(border)m 11(router)m 11(when)m 11(forwarding)m 11(externally)m 0 1593 p (addressed)s 8(packets.)m 13(In)m 9(addition,)m 8(to)m 8(ensure)m 9(that)m 8(stub)m 8(areas)m 8(are)m 8(con\014gured)m 8(consistently)m -1 r 44 c 7(an)m t-bol.300 @sf 9(Options)m t-rom.300 @sf 8(\014eld)m 8(has)m 8(been)m 8(added)m 9(to)m 0 1643 p (OSPF)s 7(Hello)m 8(packets)m 7(\(Sections)m 7(A.2)m 7(and)m 8(A.3.2\).)m 12 r 65 c 8(bit)m 7(is)m 7(reset)m 8(in)m 7(the)m 7(Options)m 7(\014eld)m 8(indicating)m 7(that)m 7(the)m 7(attached)m 8(area)m 7(is)m 7 r 97 c 7(stub)m 0 1692 p (area)s 11(\(Section)m 11(9.5\).)m 15 r 65 c 11(router)m 11(will)m 11(not)m 11(accept)m 10 r 97 c 11(neighbor)m 2 r 39 c -1 r 115 c 9(hellos)m 11(unless)m 11(they)m 11(both)m 11(agree)m 11(on)m 11(the)m 11(area')m -2 r 115 c 10(ability)m 11(to)m 11(process)m 0 1742 p (AS)s 13(external)m 13(advertisements)m 13(\(Section)m 14(10.5\).)m 22(In)m 13(this)m 13(way)m -2 r 44 c 13 r 97 c 13(system)m 14(administrator)m 13(will)m 13(be)m 13(able)m 13(to)m 13(discover)m 14(incorrectly)m 0 1792 p (con\014gured)s 13(routers,)m 14(and)m 13(data)m 14(traf)m (\014c)s 12(will)m 13(be)m 13(routed)m 14(around)m 13(them)m 13(\(in)m 13(order)m 13(to)m 14(avoid)m 13(potential)m 13(looping)m 13(situations\))m 13(until)m 0 1842 p (their)s 10(con\014guration)m 11(can)m 10(be)m 11(repaired.)m t-bol.300 @sf 0 1970 p 70 c -3(.1.2)m 41(Optional)m 10 r 84 c (OS)s 10(support)m t-rom.300 @sf 0 2065 p (In)s 8(OSPF)m 9(there)m 8(is)m 8(conceptually)m 9 r 97 c 8(separate)m 8(routing)m 9(table)m 8(for)m 8(each)m 8 r 84 c (OS;)s 8(the)m 8(calculations)m 9(detailed)m 8(in)m 8(steps)m 9(1-5)m 8(of)m 8(Section)m 9(16)m 0 2115 p (must)s 12(be)m 12(done)m 12(separately)m 12(for)m 11(each)m 12 r 84 c (OS.)s 11(\(Note)m 12(however)m 12(that)m 12(link)m 12(and)m 12(summary)m 12(costs)m 12(need)m 11(not)m 12(be)m 12(speci\014ed)m 12(separately)m 0 2165 p (for)s 10(each)m 11 r 84 c (OS;)s 9(costs)m 11(for)m 10(unspeci\014ed)m 11 r 84 c (OS)s 9(values)m 11(default)m 10(to)m 11(the)m 10(cost)m 10(of)m 11 r 84 c (OS)s 10(0\).)m 0 2232 p (In)s 12(version)m 12 r 49 c 12(of)m 12(the)m 12(OSPF)m 12(speci\014cation,)m 12(all)m 12(OSPF)m 12(routers)m 12(were)m 12(required)m 11(to)m 12(route)m 12(based)m 12(on)m 12 r 84 c (OS.)s 11(However)m 44 c 11(producing)m 0 2282 p 97 c 12(separate)m 12(routing)m 12(table)m 13(for)m 12(each)m 12 r 84 c (OS)s 11(may)m 13(prove)m 12(costly)m -2 r 44 c 12(both)m 12(in)m 12(terms)m 12(of)m 12(memory)m 12(and)m 13(processor)m 12(resources.)m 19(For)m 12(this)m 0 2332 p (reason,)s 11(version)m 10 r 50 c 10(allows)m 11(the)m 10(system)m 11(administrator)m 10(to)m 11(con\014gure)m 10(routers)m 11(to)m 10(calculate/use)m 11(only)m 10 r 97 c 11(single)m 10(routing)m 11(table)m 10(\(the)m 0 2382 p 84 c (OS)s 9 r 48 c 10(table\).)m 14(When)m 9(this)m 10(is)m 10(done,)m 10(some)m 10(traf)m (\014c)s 9(may)m 9(take)m 10(non-optimal)m 10(routes.)m 14(But)m 10(all)m 9(packets)m 10(will)m 10(still)m 10(be)m 10(delivered,)m 9(and)m 0 2431 p (routing)s 10(will)m 11(remain)m 10(loop)m 11(free)m 10(\(see)m 10(Section)m 11(2.4\).)m 0 2499 p (In)s 15(order)m 15(to)m 14(avoid)m 15(routing)m 15(loops,)m 16 r 97 c 15(router)m 15(\(router)m 14(X\))m 15(using)m 15 r 97 c 15(single)m 15(table)m 14(must)m 15(communicate)m 15(this)m 15(information)m 15(to)m 14(its)m 0 2549 p (peers.)s 14(This)m 9(is)m 10(done)m 10(by)m 9(resetting)m 10(the)m 10(new)m 9 r 84 c (OS-capable)s 9(bit)m 10(in)m 9(the)m 10(router)m 10(X')m -1 r 115 c 8(router)m 10(links)m 10(advertisement)m 9(\(Section)m 10(12.4.1\).)m 0 2599 p (Then,)s 12(when)m 12(its)m 12(peers)m 12(perform)m 12(the)m 12(Dijkstra)m 12(calculation)m 12(\(Section)m 12(16.1\))m 12(for)m 12(non-zero)m 12 r 84 c (OS)s 11(values,)m 13(they)m 12(will)m 12(omit)m 12(router)m 0 2723 p ([J.)s 10(Moy])m 1627([Page)m 10 r 49 c (19])s @eop 118 @bop0 /Times-Italic /t-ita.300 ReEncodeForTeX /t-ita.300 /t-ita.300 41.666629 TeXPSmakefont def 118 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p 69 c 58(Authentication)m t-rom.300 @sf 0 306 p (All)s 10(OSPF)m 10(protocol)m 10(exchanges)m 10(are)m 11(authenticated.)m 13(The)m 10(OSPF)m 11(packet)m 10(header)m 10(\(see)m 10(Section)m 10(A.3.1\))m 10(includes)m 10(an)m 10(authentica-)m 0 356 p (tion)s 10(type)m 11(\014eld,)m 10(and)m 11(64-bits)m 10(of)m 10(data)m 11(for)m 10(use)m 11(by)m 10(the)m 11(appropriate)m 10(authentication)m 10(scheme)m 11(\(determined)m 10(by)m 11(the)m 10(type)m 10(\014eld\).)m 0 423 p (The)s 12(authentication)m 13(type)m 12(is)m 13(con\014gurable)m 12(on)m 12 r 97 c 13(per)m (-area)s 11(basis.)m 20(Additional)m 12(authentication)m 13(data)m 12(is)m 13(con\014gurable)m 12(on)m 12 r 97 c 13(per)m 45 c 0 473 p (interface)s 12(basis.)m 17(For)m 12(example,)m 12(if)m 11(an)m 12(area)m 11(uses)m 12 r 97 c 12(simple)m 11(password)m 12(scheme)m 12(for)m 11(authentication,)m 12 r 97 c 12(separate)m 11(password)m 12(may)m 0 523 p (be)s 10(con\014gured)m 11(for)m 10(each)m 11(network)m 10(contained)m 10(in)m 11(the)m 10(area.)m 0 591 p (Authentication)s 9(types)m 8 r 48 c 9(and)m 9 r 49 c 9(are)m 8(de\014ned)m 9(by)m 9(this)m 8(speci\014cation.)m 14(All)m 9(other)m 8(authentication)m 9(types)m 9(are)m 8(reserved)m 9(for)m 9(de\014nition)m 0 640 p (by)s 10(the)m 11(IANA)m 10(\(iana@ISI.EDU\).)m 11(The)m 10(current)m 10(list)m 11(of)m 10(authentication)m 11(types)m 10(is)m 11(described)m 10(below)m 10(in)m 11 r 84 c -2(able)m 9(24.)m 376 747 p 1198 2 ru 375 796 p 2 50 ru t-ita.300 @sf 422 781 p (AuT)s -3(ype)m 590 796 p 2 50 ru 616 781 p (Description)s 1573 796 p 2 50 ru 376 798 p 1198 2 ru 375 848 p 2 50 ru t-rom.300 @sf 473 833 p 48 c 590 848 p 2 50 ru 616 833 p (No)s 11(authentication)m 1573 848 p 2 50 ru 375 898 p 2 50 ru 473 883 p 49 c 590 898 p 2 50 ru 616 883 p (Simple)s 11(password)m 1573 898 p 2 50 ru 375 947 p 2 50 ru 401 932 p (All)s 10(others)m 590 947 p 2 50 ru 616 932 p (Reserved)s 11(for)m 10(assignment)m 10(by)m 11(the)m 10(IANA)m 11(\(iana@ISI.EDU\))m 1573 947 p 2 50 ru 376 949 p 1198 2 ru 663 1086 p 84 c -2(able)m 9(24:)m 14(OSPF)m 11(authentication)m 10(types.)m t-bol.360 @sf 0 1264 p (E.1)s 50(Autype)m 12 r 48 c 13 r 123 c 12(No)m 13(authentication)m t-rom.300 @sf 0 1359 p (Use)s 11(of)m 11(this)m 10(authentication)m 11(type)m 11(means)m 11(that)m 10(routing)m 11(exchanges)m 11(in)m 11(the)m 10(area)m 11(are)m 11(not)m 11(authenticated.)m 14(The)m 11(64-bit)m 11(\014eld)m 11(in)m 10(the)m 0 1409 p (OSPF)s 10(header)m 11(can)m 10(contain)m 11(anything;)m 10(it)m 10(is)m 11(not)m 10(examined)m 11(on)m 10(packet)m 11(reception.)m t-bol.360 @sf 0 1546 p (E.2)s 50(Autype)m 12 r 49 c 13 r 123 c 12(Simple)m 13(password)m t-rom.300 @sf 0 1642 p (Using)s 13(this)m 14(authentication)m 13(type,)m 14 r 97 c 14(64-bit)m 13(\014eld)m 14(is)m 13(con\014gured)m 14(on)m 13 r 97 c 13(per)m (-network)s 13(basis.)m 23(All)m 13(packets)m 14(sent)m 13(on)m 14 r 97 c 13(particular)m 0 1691 p (network)s 10(must)m 11(have)m 10(this)m 10(con\014gured)m 10(value)m 11(in)m 10(their)m 10(OSPF)m 10(header)m 11(64-bit)m 10(authentication)m 10(\014eld.)m 14(This)m 10(essentially)m 11(serves)m 10(as)m 10 r 97 c 0 1741 p (\\clear)s 2 r 34 c 10(64-bit)m 10(password.)m 0 1809 p (This)s 14(guards)m 13(against)m 14(routers)m 14(inadvertently)m 14(coming)m 13(up)m 14(in)m 14(the)m 13(area.)m 24(They)m 14(must)m 14(\014rst)m 13(be)m 14(con\014gured)m 14(with)m 13(their)m 14(attached)m 0 1859 p (networks')s 10(passwords)m 11(before)m 10(they)m 11(can)m 10(join)m 10(the)m 11(routing)m 10(domain.)m 0 2723 p ([J.)s 10(Moy])m 1627([Page)m 10 r 49 c (18])s @eop 117 @bop0 117 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 248 201 p 1454 2 ru 247 251 p 2 50 ru t-ita.300 @sf 273 236 p (LS)s 10(type)m 421 251 p 2 50 ru 447 236 p (Link)s 10(State)m 10(ID)m 693 251 p 2 50 ru 719 236 p (Advertising)s 10(Router)m 1059 251 p 2 50 ru 1084 236 p (LS)s 11(seq)m 10(no)m 1270 251 p 2 50 ru 1296 236 p (LS)s 11(age)m 1435 251 p 2 50 ru 1461 236 p (LS)s 10(checksum)m 1701 251 p 2 50 ru 248 252 p 1454 2 ru 247 302 p 2 50 ru t-rom.300 @sf 324 287 p 49 c 421 302 p 2 50 ru 447 287 p (192.1.1.1)s 693 302 p 2 50 ru 719 287 p (192.1.1.1)s 1059 302 p 2 50 ru 1155 287 p 42 c 1270 302 p 2 50 ru 1343 287 p 42 c 1435 302 p 2 50 ru 1558 287 p 42 c 1701 302 p 2 50 ru 247 352 p 2 50 ru 324 337 p 49 c 421 352 p 2 50 ru 447 337 p (192.1.1.2)s 693 352 p 2 50 ru 719 337 p (192.1.1.2)s 1059 352 p 2 50 ru 1155 337 p 42 c 1270 352 p 2 50 ru 1343 337 p 42 c 1435 352 p 2 50 ru 1558 337 p 42 c 1701 352 p 2 50 ru 247 402 p 2 50 ru 324 387 p 49 c 421 402 p 2 50 ru 447 387 p (192.1.1.3)s 693 402 p 2 50 ru 719 387 p (192.1.1.3)s 1059 402 p 2 50 ru 1155 387 p 42 c 1270 402 p 2 50 ru 1343 387 p 42 c 1435 402 p 2 50 ru 1558 387 p 42 c 1701 402 p 2 50 ru 247 452 p 2 50 ru 324 437 p 49 c 421 452 p 2 50 ru 447 437 p (192.1.1.4)s 693 452 p 2 50 ru 719 437 p (192.1.1.4)s 1059 452 p 2 50 ru 1155 437 p 42 c 1270 452 p 2 50 ru 1343 437 p 42 c 1435 452 p 2 50 ru 1558 437 p 42 c 1701 452 p 2 50 ru 248 453 p 1454 2 ru 247 503 p 2 50 ru 324 488 p 50 c 421 503 p 2 50 ru 447 488 p (192.1.1.4)s 693 503 p 2 50 ru 719 488 p (192.1.1.4)s 1059 503 p 2 50 ru 1155 488 p 42 c 1270 503 p 2 50 ru 1343 488 p 42 c 1435 503 p 2 50 ru 1558 488 p 42 c 1701 503 p 2 50 ru 248 505 p 1454 2 ru 247 555 p 2 50 ru 324 540 p 51 c 421 555 p 2 50 ru 447 540 p (Ia,Ib)s 693 555 p 2 50 ru 719 540 p (192.1.1.3)s 1059 555 p 2 50 ru 1155 540 p 42 c 1270 555 p 2 50 ru 1343 540 p 42 c 1435 555 p 2 50 ru 1558 540 p 42 c 1701 555 p 2 50 ru 247 604 p 2 50 ru 324 589 p 51 c 421 604 p 2 50 ru 447 589 p (N6)s 693 604 p 2 50 ru 719 589 p (192.1.1.3)s 1059 604 p 2 50 ru 1155 589 p 42 c 1270 604 p 2 50 ru 1343 589 p 42 c 1435 604 p 2 50 ru 1558 589 p 42 c 1701 604 p 2 50 ru 247 654 p 2 50 ru 324 639 p 51 c 421 654 p 2 50 ru 447 639 p (N7)s 693 654 p 2 50 ru 719 639 p (192.1.1.3)s 1059 654 p 2 50 ru 1155 639 p 42 c 1270 654 p 2 50 ru 1343 639 p 42 c 1435 654 p 2 50 ru 1558 639 p 42 c 1701 654 p 2 50 ru 247 704 p 2 50 ru 324 689 p 51 c 421 704 p 2 50 ru 447 689 p (N8)s 693 704 p 2 50 ru 719 689 p (192.1.1.3)s 1059 704 p 2 50 ru 1155 689 p 42 c 1270 704 p 2 50 ru 1343 689 p 42 c 1435 704 p 2 50 ru 1558 689 p 42 c 1701 704 p 2 50 ru 247 754 p 2 50 ru 324 739 p 51 c 421 754 p 2 50 ru 447 739 p (N9-N1)s -1(1,H1)m 693 754 p 2 50 ru 719 739 p (192.1.1.3)s 1059 754 p 2 50 ru 1155 739 p 42 c 1270 754 p 2 50 ru 1343 739 p 42 c 1435 754 p 2 50 ru 1558 739 p 42 c 1701 754 p 2 50 ru 247 804 p 2 50 ru 324 789 p 51 c 421 804 p 2 50 ru 447 789 p (Ia,Ib)s 693 804 p 2 50 ru 719 789 p (192.1.1.4)s 1059 804 p 2 50 ru 1155 789 p 42 c 1270 804 p 2 50 ru 1343 789 p 42 c 1435 804 p 2 50 ru 1558 789 p 42 c 1701 804 p 2 50 ru 247 853 p 2 50 ru 324 839 p 51 c 421 853 p 2 50 ru 447 839 p (N6)s 693 853 p 2 50 ru 719 839 p (192.1.1.4)s 1059 853 p 2 50 ru 1155 839 p 42 c 1270 853 p 2 50 ru 1343 839 p 42 c 1435 853 p 2 50 ru 1558 839 p 42 c 1701 853 p 2 50 ru 247 903 p 2 50 ru 324 888 p 51 c 421 903 p 2 50 ru 447 888 p (N7)s 693 903 p 2 50 ru 719 888 p (192.1.1.4)s 1059 903 p 2 50 ru 1155 888 p 42 c 1270 903 p 2 50 ru 1343 888 p 42 c 1435 903 p 2 50 ru 1558 888 p 42 c 1701 903 p 2 50 ru 247 953 p 2 50 ru 324 938 p 51 c 421 953 p 2 50 ru 447 938 p (N8)s 693 953 p 2 50 ru 719 938 p (192.1.1.4)s 1059 953 p 2 50 ru 1155 938 p 42 c 1270 953 p 2 50 ru 1343 938 p 42 c 1435 953 p 2 50 ru 1558 938 p 42 c 1701 953 p 2 50 ru 247 1003 p 2 50 ru 324 988 p 51 c 421 1003 p 2 50 ru 447 988 p (N9-N1)s -1(1,H1)m 693 1003 p 2 50 ru 719 988 p (192.1.1.4)s 1059 1003 p 2 50 ru 1155 988 p 42 c 1270 1003 p 2 50 ru 1343 988 p 42 c 1435 1003 p 2 50 ru 1558 988 p 42 c 1701 1003 p 2 50 ru 247 1053 p 2 50 ru 324 1038 p 52 c 421 1053 p 2 50 ru 447 1038 p 82 c -2(T5)m 693 1053 p 2 50 ru 719 1038 p (192.1.1.3)s 1059 1053 p 2 50 ru 1155 1038 p 42 c 1270 1053 p 2 50 ru 1343 1038 p 42 c 1435 1053 p 2 50 ru 1558 1038 p 42 c 1701 1053 p 2 50 ru 247 1103 p 2 50 ru 324 1088 p 52 c 421 1103 p 2 50 ru 447 1088 p 82 c -2(T7)m 693 1103 p 2 50 ru 719 1088 p (192.1.1.3)s 1059 1103 p 2 50 ru 1155 1088 p 42 c 1270 1103 p 2 50 ru 1343 1088 p 42 c 1435 1103 p 2 50 ru 1558 1088 p 42 c 1701 1103 p 2 50 ru 247 1152 p 2 50 ru 324 1137 p 52 c 421 1152 p 2 50 ru 447 1137 p 82 c -2(T5)m 693 1152 p 2 50 ru 719 1137 p (192.1.1.4)s 1059 1152 p 2 50 ru 1155 1137 p 42 c 1270 1152 p 2 50 ru 1343 1137 p 42 c 1435 1152 p 2 50 ru 1558 1137 p 42 c 1701 1152 p 2 50 ru 247 1202 p 2 50 ru 324 1187 p 52 c 421 1202 p 2 50 ru 447 1187 p 82 c -2(T7)m 693 1202 p 2 50 ru 719 1187 p (192.1.1.4)s 1059 1202 p 2 50 ru 1155 1187 p 42 c 1270 1202 p 2 50 ru 1343 1187 p 42 c 1435 1202 p 2 50 ru 1558 1187 p 42 c 1701 1202 p 2 50 ru 248 1204 p 1454 2 ru 247 1254 p 2 50 ru 324 1239 p 52 c 421 1254 p 2 50 ru 447 1239 p (N12)s 693 1254 p 2 50 ru 719 1239 p 82 c -2(T5')m -2 r 115 c 9(ID)m 1059 1254 p 2 50 ru 1155 1239 p 42 c 1270 1254 p 2 50 ru 1343 1239 p 42 c 1435 1254 p 2 50 ru 1558 1239 p 42 c 1701 1254 p 2 50 ru 247 1303 p 2 50 ru 324 1288 p 52 c 421 1303 p 2 50 ru 447 1288 p (N13)s 693 1303 p 2 50 ru 719 1288 p 82 c -2(T5')m -2 r 115 c 9(ID)m 1059 1303 p 2 50 ru 1155 1288 p 42 c 1270 1303 p 2 50 ru 1343 1288 p 42 c 1435 1303 p 2 50 ru 1558 1288 p 42 c 1701 1303 p 2 50 ru 247 1353 p 2 50 ru 324 1338 p 52 c 421 1353 p 2 50 ru 447 1338 p (N14)s 693 1353 p 2 50 ru 719 1338 p 82 c -2(T5')m -2 r 115 c 9(ID)m 1059 1353 p 2 50 ru 1155 1338 p 42 c 1270 1353 p 2 50 ru 1343 1338 p 42 c 1435 1353 p 2 50 ru 1558 1338 p 42 c 1701 1353 p 2 50 ru 247 1403 p 2 50 ru 324 1388 p 52 c 421 1403 p 2 50 ru 447 1388 p (N12)s 693 1403 p 2 50 ru 719 1388 p 82 c -2(T7')m -2 r 115 c 9(ID)m 1059 1403 p 2 50 ru 1155 1388 p 42 c 1270 1403 p 2 50 ru 1343 1388 p 42 c 1435 1403 p 2 50 ru 1558 1388 p 42 c 1701 1403 p 2 50 ru 247 1453 p 2 50 ru 324 1438 p 52 c 421 1453 p 2 50 ru 447 1438 p (N15)s 693 1453 p 2 50 ru 719 1438 p 82 c -2(T7')m -2 r 115 c 9(ID)m 1059 1453 p 2 50 ru 1155 1438 p 42 c 1270 1453 p 2 50 ru 1343 1438 p 42 c 1435 1453 p 2 50 ru 1558 1438 p 42 c 1701 1453 p 2 50 ru 248 1455 p 1454 2 ru 546 1591 p 84 c -2(able)m 9(23:)m 14(Sample)m 10(OSPF)m 11(link)m 10(state)m 11(database)m 10(display)m -2 r 46 c 52 1725 p (6.)s 21 r 65 c 11(listing)m 10(of)m 11(the)m 11(entire)m 11(routing)m 11(table.)m 16(Several)m 11(examples)m 11(are)m 11(shown)m 11(in)m 11(Section)m 11 r 49 c -1(1.)m 15(The)m 11(routing)m 11(table)m 11(is)m 11(calculated)m 104 1775 p (from)s 9(the)m 9(combined)m 9(databases)m 10(of)m 9(each)m 9(attached)m 9(area)m 9(\(see)m 9(Section)m 10(16\).)m 13(It)m 9(may)m 9(be)m 10(desirable)m 9(to)m 9(sort)m 9(the)m 9(routing)m 10(table)m 104 1825 p (by)s 10 r 84 c -2(ype)m 10(of)m 10(Service,)m 11(or)m 10(by)m 10(destination,)m 11(or)m 10 r 97 c 11(combination)m 10(of)m 10(the)m 11(two.)m 0 2723 p ([J.)s 10(Moy])m 1627([Page)m 10 r 49 c (17])s @eop 116 @bop0 1 /cmmi10.300 @newfont cmmi10.300 @sf [ 32 24 -3 2 32.286] 62 @dc 1 /cmr10.300 @newfont cmr10.300 @sf [<7FFFFFC0FFFFFFE000000000000000000000000000000000000000000000000000000000000000 00FFFFFFE07FFFFFC0> 32 12 -2 -4 32.286] 61 @dc 116 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 104 195 p (Again)s 13(consider)m 13(router)m 13 r 82 c -2(T3)m 12(in)m 14(Figure)m 13(15.)m 21 r 84 c -2(able)m 13(21)m 13(below)m 13(indicates)m 13(that)m 13 r 82 c -2(T4)m 12(has)m 13(been)m 13(selected)m 13(as)m 13(Designated)m 104 245 p (Router)s 9(for)m 9(network)m 10(N3,)m 9(and)m 9(router)m 9 r 82 c -1(T1)m 8(has)m 9(been)m 10(selected)m 9(as)m 9(Backup.)m 14(Adjacencies)m 9(have)m 9(been)m 9(established)m 10(to)m 9(both)m 104 295 p (of)s 9(these)m 9(routers.)m 13(There)m 9(are)m 9(no)m 9(routers)m 10(besides)m 9 r 82 c -2(T3)m 8(attached)m 9(to)m 9(network)m 9(N4,)m 10(so)m 9(it)m 9(becomes)m 9(DR,)m 9(yet)m 9(still)m 9(advertises)m 104 345 p (the)s 10(network)m 11(as)m 10 r 97 c 10(stub)m 11(in)m 10(its)m 11(router)m 10(links)m 11(advertisements.)m 262 438 p 1427 2 ru 261 488 p 2 50 ru t-ita.300 @sf 286 473 p (Interface)s 11(IP)m 10(addr)m (ess)s 649 488 p 2 50 ru 675 473 p (state)s 853 488 p 2 50 ru 879 473 p (cost)s 970 488 p 2 50 ru 996 473 p (DR)s 1176 488 p 2 50 ru 1202 473 p (Backup)s 1382 488 p 2 50 ru 1408 473 p 35 c 10(nbrs)m 1537 488 p 2 50 ru 1563 473 p 35 c 10(adjs)m 1688 488 p 2 50 ru 262 489 p 1427 2 ru 261 539 p 2 50 ru t-rom.300 @sf 286 524 p (192.1.1.3)s 649 539 p 2 50 ru 675 524 p (DR)s 10(other)m 853 539 p 2 50 ru 902 524 p 49 c 970 539 p 2 50 ru 996 524 p (192.1.1.4)s 1176 539 p 2 50 ru 1202 524 p (192.1.1.1)s 1382 539 p 2 50 ru 1450 524 p 51 c 1537 539 p 2 50 ru 1603 524 p 50 c 1688 539 p 2 50 ru 261 589 p 2 50 ru 286 574 p (192.1.4.3)s 649 589 p 2 50 ru 675 574 p (DR)s 853 589 p 2 50 ru 902 574 p 50 c 970 589 p 2 50 ru 996 574 p (192.1.4.3)s 1176 589 p 2 50 ru 1202 574 p (none)s 1382 589 p 2 50 ru 1450 574 p 48 c 1537 589 p 2 50 ru 1603 574 p 48 c 1688 589 p 2 50 ru 262 591 p 1427 2 ru 625 728 p 84 c -2(able)m 10(21:)m 14(Sample)m 10(OSPF)m 11(interface)m 10(display)m -2 r 46 c 52 847 p (3.)s 21(The)m 9(list)m 10(of)m 9(neighbors)m 10(associated)m 9(with)m 10 r 97 c 9(particular)m 10(interface.)m 14(Each)m 9(neighbor)m 2 r 39 c -2 r 115 c 9(IP)m 9(address,)m 10(router)m 10(ID,)m 9(state,)m 10(and)m 10(the)m 104 896 p (length)s 10(of)m 11(the)m 10(three)m 10(link)m 11(state)m 10(advertisement)m 11(queues)m 10(\(see)m 11(Section)m 10(10\))m 10(to)m 11(the)m 10(neighbor)m 11(is)m 10(displayed.)m 104 961 p (Suppose)s 10(router)m 10 r 82 c -1(T4)m 9(is)m 11(the)m 10(Designated)m 10(Router)m 11(for)m 10(network)m 10(N3,)m 11(and)m 10(router)m 10 r 82 c -1(T1)m 9(is)m 10(the)m 11(Backup)m 10(Designated)m 10(router)m -1 r 46 c 104 1010 p (Suppose)s 12(also)m 12(that)m 13(the)m 12(adjacency)m 12(between)m 12(router)m 13 r 82 c -2(T3)m 11(and)m 13 r 82 c -2(T1)m 11(has)m 13(not)m 12(yet)m 12(fully)m 12(formed.)m 20(The)m 12(display)m 12(of)m 12(router)m 104 1060 p 82 c -2(T3')m -2 r 115 c 7(neighbors)m 9(\(associated)m 8(with)m 8(its)m 9(interface)m 8(to)m 9(network)m 8(N3\))m 8(may)m 9(then)m 8(look)m 8(like)m 9 r 84 c -2(able)m 7(22.)m 13(The)m 9(display)m 8(indicates)m 104 1110 p (that)s 14 r 82 c -1(T3)m 13(and)m 15 r 82 c -2(T1)m 14(are)m 14(still)m 15(in)m 14(the)m 15(database)m 14(exchange)m 14(procedure,)m 16(Router)m 14 r 82 c -1(T3)m 13(has)m 15(more)m 14(Database)m 15(Description)m 104 1160 p (packets)s 13(to)m 14(send)m 14(to)m 13 r 82 c -1(T1,)m 13(and)m 14 r 82 c -2(T1)m 13(has)m 14(at)m 13(least)m 14(one)m 13(link)m 14(state)m 14(advertisement)m 13(that)m 14 r 82 c -2(T3)m 13(doesn')m (t.)s 23(Also,)m 14(there)m 14(is)m 14 r 97 c 104 1210 p (single)s 11(link)m 11(state)m 12(advertisement)m 11(that)m 11(has)m 12(been)m 11(\015ooded,)m 12(but)m 11(not)m 11(acknowledged,)m 12(to)m 11(each)m 12(neighbor)m 11(that)m 11(participates)m 104 1260 p (in)s 11(the)m 10(\015ooding)m 11(procedure)m 11(\(state)m cmmi10.300 @sf 10 r 62 c cmr10.300 @sf 61 c t-bol.300 @sf 11(Exchng)m t-rom.300 @sf (\).)s 15(\(In)m 11(the)m 11(following)m 10(examples)m 11(we)m 11(assume)m 10(that)m 11 r 97 c 11(router)m 1 r 39 c -1 r 115 c 10(Router)m 11(ID)m 104 1309 p (is)s 10(assigned)m 11(to)m 10(be)m 10(its)m 11(smallest)m 10(IP)m 11(interface)m 10(address\).)m 212 1411 p 1526 2 ru 211 1461 p 2 50 ru t-ita.300 @sf 237 1446 p (Neighbor)s 10(IP)m 11(addr)m -1(ess)m 607 1461 p 2 50 ru 632 1446 p (Router)s 11(ID)m 824 1461 p 2 50 ru 850 1446 p (state)s 1001 1461 p 2 50 ru 1027 1446 p (LS)s 10(rxmt)m 11(len)m 1243 1461 p 2 50 ru 1269 1446 p (DB)s 10(summ)m 11(len)m 1518 1461 p 2 50 ru 1543 1446 p (LS)s 11 r 114 c -1(eq)m 10(len)m 1737 1461 p 2 50 ru 212 1463 p 1526 2 ru 211 1513 p 2 50 ru t-rom.300 @sf 237 1498 p (192.1.1.1)s 607 1513 p 2 50 ru 632 1498 p (192.1.1.1)s 824 1513 p 2 50 ru 850 1498 p (Exchng)s 1001 1513 p 2 50 ru 1113 1498 p 49 c 1243 1513 p 2 50 ru 1360 1498 p (10)s 1518 1513 p 2 50 ru 1618 1498 p 49 c 1737 1513 p 2 50 ru 211 1562 p 2 50 ru 237 1547 p (192.1.1.2)s 607 1562 p 2 50 ru 632 1547 p (192.1.1.2)s 824 1562 p 2 50 ru 850 1547 p (2-W)s -2(ay)m 1001 1562 p 2 50 ru 1113 1547 p 48 c 1243 1562 p 2 50 ru 1371 1547 p 48 c 1518 1562 p 2 50 ru 1618 1547 p 48 c 1737 1562 p 2 50 ru 211 1612 p 2 50 ru 237 1597 p (192.1.1.4)s 607 1612 p 2 50 ru 632 1597 p (192.1.1.4)s 824 1612 p 2 50 ru 850 1597 p (Full)s 1001 1612 p 2 50 ru 1113 1597 p 49 c 1243 1612 p 2 50 ru 1371 1597 p 48 c 1518 1612 p 2 50 ru 1618 1597 p 48 c 1737 1612 p 2 50 ru 212 1614 p 1526 2 ru 624 1751 p 84 c -2(able)m 10(22:)m 14(Sample)m 10(OSPF)m 10(neighbor)m 11(display)m -2 r 46 c 52 1870 p (4.)s 21 r 65 c 13(list)m 14(of)m 13(the)m 14(area')m -1 r 115 c 12(link)m 14(state)m 13(database.)m 24(This)m 14(is)m 13(the)m 14(same)m 13(in)m 14(all)m 14(of)m 13(the)m 14(routers)m 13(attached)m 14(to)m 14(the)m 13(area.)m 24(It)m 13(is)m 14(com-)m 104 1919 p (posed)s 11(of)m 11(that)m 12(area')m -2 r 115 c 11(router)m 11(links,)m 11(network)m 12(links,)m 11(and)m 12(summary)m 11(links)m 11(advertisements.)m 17(Also,)m 11(the)m 12(AS)m 11(external)m 11(link)m 104 1969 p (advertisements)s 10(are)m 11 r 97 c 10(part)m 10(of)m 11(all)m 10(the)m 11(areas')m 10(databases.)m 104 2034 p (The)s 10(link)m 11(state)m 11(database)m 10(for)m 11(Area)m 10 r 49 c 11(in)m 11(Figure)m 10(15)m 11(might)m 11(look)m 10(like)m 11 r 84 c -2(able)m 10(23)m 10(\(compare)m 11(this)m 10(with)m 11(Figure)m 11(7\).)m 14(Assume)m 104 2083 p (the)s 12(the)m 11(Designated)m 12(Router)m 12(for)m 12(network)m 12(N3)m 12(is)m 11(router)m 12 r 82 c -1(T4,)m 11(as)m 12(above.)m 18(Both)m 12(routers)m 12 r 82 c -2(T3)m 11(and)m 12 r 82 c -2(T4)m 11(are)m 12(originating)m 104 2133 p (summary)s 14(link)m 14(advertisements)m 14(into)m 14(Area)m 14(1,)m 15(since)m 14(they)m 14(are)m 14(area)m 14(border)m 14(routers.)m 24(Routers)m 14 r 82 c -1(T5)m 13(and)m 14 r 82 c -2(T7)m 13(are)m 14(AS)m 104 2183 p (external)s 13(routers.)m 21(Their)m 13(location)m 13(must)m 13(be)m 13(described)m 13(in)m 13(summary)m 13(links)m 13(advertisements.)m 22(Also,)m 13(their)m 13(AS)m 13(external)m 104 2233 p (link)s 10(advertisements)m 11(are)m 10(\015ooded)m 10(throughout)m 11(the)m 10(entire)m 11(AS.)m 104 2297 p (Router)s 11 r 82 c -2(T3)m 10(can)m 11(locate)m 11(its)m 11(self-originated)m 11(advertisements)m 12(by)m 11(looking)m 11(for)m 11(its)m 11(own)m 11(router)m 11(ID)m 11(\(192.1.1.3\))m 11(in)m 11(adver-)m 104 2347 p (tisements')s 10(Advertising)m 11(Router)m 10(\014elds.)m 104 2411 p (The)s 11(LS)m 11(sequence)m 11(number)m 44 c 10(LS)m 11(age,)m 12(and)m 11(LS)m 11(checksum)m 11(\014elds)m 11(indicate)m 12(the)m 11(advertisement')m -1 r 115 c 10(instance.)m 16(Their)m 11(values)m 104 2461 p (are)s 10(stored)m 11(in)m 10(the)m 10(advertisement')m -1 r 115 c 10(link)m 10(state)m 10(header;)m 11(we)m 10(have)m 11(not)m 10(bothered)m 10(to)m 11(make)m 10(up)m 11(values)m 10(for)m 11(the)m 10(example.)m 52 2549 p (5.)s 21(The)m 10(contents)m 10(of)m 11(any)m 10(particular)m 11(link)m 10(state)m 11(advertisement.)m 14(For)m 10(example,)m 10 r 97 c 11(listing)m 10(of)m 11(the)m 10(router)m 11(links)m 10(advertisement)m 104 2599 p (for)s 10(Area)m 11(1,)m 10(with)m 10(LS)m 11(type)m 10 r 61 c 11 r 49 c 10(and)m 11(Link)m 10(State)m 10(ID)m 11 r 61 c 10(192.1.1.3)m 11(is)m 10(shown)m 10(in)m 11(Section)m 10(12.4.1.)m 0 2723 p ([J.)s 10(Moy])m 1627([Page)m 10 r 49 c (16])s @eop 115 @bop0 115 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 34 195 p (R5)s 21(An)m 10(advertisement)m 10(has)m 11(been)m 10(received)m 10(through)m 10(the)m 10(\015ooding)m 10(procedure)m 10(that)m 11(is)m 10(LESS)m 10(recent)m 10(the)m 10(the)m 10(router)m 2 r 39 c -2 r 115 c 10(current)m 104 245 p (database)s 8(copy)m 9(\(see)m 8(Section)m 9(13\).)m 13(The)m 9(logging)m 8(message)m 9(should)m 9(include)m 8(the)m 9(received)m 8(advertisement')m -1 r 115 c 8(LS)m 8(type,)m 9(Link)m 104 295 p (State)s 9(ID,)m 8(Advertising)m 9(Router)m 44 c 8(LS)m 9(sequence)m 9(number)m -1 r 44 c 8(LS)m 9(age)m 9(and)m 9(LS)m 9(checksum.)m 13(Also,)m 9(the)m 9(message)m 9(should)m 9(display)m 104 345 p (the)s 10(neighbor)m 11(from)m 10(whom)m 10(the)m 11(advertisement)m 10(was)m 11(received.)m 0 454 p (The)s 14(following)m 13(messages)m 14(are)m 14(indication)m 14(of)m 13(normal,)m 15(yet)m 14(infrequent)m 13(protocol)m 14(events.)m 24(These)m 14(messages)m 13(will)m 14(help)m 14(in)m 13(the)m 0 504 p (interpretation)s 10(of)m 11(some)m 10(of)m 11(the)m 10(above)m 10(messages:)m 32 613 p (N1)s 21(The)m 11(Link)m 12(state)m 12(refresh)m 11(timer)m 12(has)m 11(\014red)m 12(for)m 12(one)m 11(of)m 12(the)m 11(router)m 2 r 39 c -1 r 115 c 10(self-originated)m 12(advertisements)m 11(\(see)m 12(Section)m 11(12.4\).)m 104 663 p 65 c 12(new)m 12(instance)m 12(of)m 13(the)m 12(advertisement)m 12(must)m 12(be)m 12(originated.)m 20(The)m 12(message)m 12(should)m 12(include)m 13(the)m 12(advertisement')m -2 r 115 c 12(LS)m 104 712 p (type,)s 10(Link)m 11(State)m 10(ID)m 10(and)m 11(Advertising)m 10(Router)m -1 r 46 c 32 795 p (N2)s 21(One)m 9(of)m 9(the)m 9(advertisements)m 9(in)m 9(the)m 9(router)m 2 r 39 c -2 r 115 c 8(link)m 9(state)m 9(database)m 9(has)m 9(aged)m 9(to)m 10(MaxAge)m 9(\(see)m 9(Section)m 9(14\).)m 13(At)m 9(this)m 9(point,)m 104 845 p (the)s 11(advertisement)m 12(is)m 12(no)m 11(longer)m 12(included)m 11(in)m 12(the)m 11(routing)m 12(table)m 12(calculation,)m 11(and)m 12(is)m 12(re\015ooded.)m 17(The)m 12(message)m 11(should)m 104 895 p (list)s 10(the)m 11(advertisement')m -2 r 115 c 10(LS)m 10(type,)m 11(Link)m 10(State)m 10(ID)m 11(and)m 10(Advertising)m 11(Router)m -2 r 46 c 32 978 p (N3)s 21(An)m 11(advertisement)m 11(of)m 11(age)m 11(MaxAge)m 11(has)m 11(been)m 10(\015ushed)m 11(from)m 11(the)m 11(router)m 2 r 39 c -1 r 115 c 9(database.)m 16(This)m 11(occurs)m 11(after)m 11(the)m 11(advertise-)m 104 1028 p (ment)s 11(has)m 12(been)m 12(acknowledged)m 11(by)m 12(all)m 11(adjacent)m 12(neighbors.)m 17(The)m 12(message)m 12(should)m 11(list)m 12(the)m 11(advertisement')m -1 r 115 c 11(LS)m 11(type,)m 104 1078 p (Link)s 10(State)m 11(ID)m 10(and)m 10(Advertising)m 11(Router)m -1 r 46 c t-bol.360 @sf 0 1214 p (D.2)s 50(Cumulative)m 12(statistics)m t-rom.300 @sf 0 1310 p (These)s 13(statistics)m 14(display)m 13(collections)m 13(of)m 13(the)m 14(routing)m 13(data)m 13(structures.)m 23(They)m 13(should)m 13(be)m 13(able)m 14(to)m 13(be)m 13(obtained)m 13(interactively)m -1 r 44 c 0 1360 p (through)s 10(some)m 11(kind)m 10(of)m 11(network)m 10(management)m 10(facility)m -1 r 46 c 0 1427 p (All)s 13(the)m 13(following)m 13(statistics)m 13(displays,)m 13(with)m 13(the)m 13(exception)m 13(of)m 13(the)m 13(area)m 13(list,)m 13(routing)m 13(table)m 13(and)m 13(the)m 13(AS)m 13(external)m 13(links,)m 14(are)m 0 1477 p (speci\014c)s 10(to)m 11 r 97 c 10(single)m 11(area.)m 14(As)m 10(noted)m 10(in)m 11(Section)m 10(4,)m 11(most)m 10(OSPF)m 10(protocol)m 11(mechanisms)m 10(work)m 11(on)m 10(each)m 11(area)m 10(separately)m -2 r 46 c 0 1545 p (The)s 10(following)m 11(statistics)m 10(displays)m 11(should)m 10(be)m 10(available:)m 52 1654 p (1.)s 21 r 65 c 9(list)m 10(of)m 10(all)m 10(the)m 10(areas)m 9(attached)m 10(to)m 10(the)m 10(router)m -1 r 44 c 9(along)m 10(with)m 10(the)m 10(authentication)m 9(type)m 10(to)m 10(use)m 10(for)m 10(the)m 10(area,)m 10(the)m 9(number)m 10(of)m 104 1704 p (router)s 10(interfaces)m 11(attaching)m 10(to)m 10(the)m 11(area,)m 10(and)m 11(the)m 10(total)m 11(number)m 10(of)m 10(nets)m 11(and)m 10(routers)m 11(belonging)m 10(to)m 10(the)m 11(area.)m 104 1770 p (For)s 11(example,)m 11(consider)m 11(the)m 10(router)m 11 r 82 c -1(T3)m 10(pictured)m 11(in)m 10(Figure)m 11(15.)m 16(It)m 11(has)m 10(interfaces)m 11(to)m 11(two)m 11(separate)m 11(areas,)m 11(Area)m 11 r 49 c 11(and)m 104 1820 p (the)s 9(backbone)m 10(\(Area)m 10(0\).)m 14 r 84 c -2(able)m 8(20)m 10(then)m 10(indicates)m 9(that)m 10(the)m 10(backbone)m 10(is)m 9(using)m 10 r 97 c 10(simple)m 9(password)m 10(for)m 10(authentication,)m 104 1870 p (and)s 8(that)m 7(Area)m 8 r 49 c 8(is)m 8(not)m 8(using)m 8(any)m 8(authentication.)m 13(The)m 7(number)m 8(of)m 8(nets)m 8(includes)m 8(IP)m 8(networks,)m 8(subnets,)m 8(and)m 8(hosts)m 8(\(this)m 104 1920 p (is)s 12(the)m 11(reason)m 12(for)m 12 r 50 c 12(backbone)m 11(nets)m 12 r 123 c 12(they)m 12(are)m 12(the)m 11(host)m 12(routes)m 12(corresponding)m 12(to)m 12(the)m 11(serial)m 12(line)m 12(between)m 12(backbone)m 104 1970 p (routers)s 10 r 82 c -1(T6)m 9(and)m 11 r 82 c -2(T10\).)m 553 2074 p 845 2 ru 552 2124 p 2 50 ru t-ita.300 @sf 578 2109 p (Ar)s -1(ea)m 9(ID)m 735 2124 p 2 50 ru 761 2109 p 35 c 11(ifcs)m 874 2124 p 2 50 ru 900 2109 p (AuT)s -2(ype)m 1048 2124 p 2 50 ru 1074 2109 p 35 c 11(nets)m 1197 2124 p 2 50 ru 1222 2109 p 35 c 11 r 114 c -1(outers)m 1396 2124 p 2 50 ru 553 2126 p 845 2 ru 552 2175 p 2 50 ru t-rom.300 @sf 634 2160 p 48 c 735 2175 p 2 50 ru 795 2160 p 49 c 874 2175 p 2 50 ru 952 2160 p 49 c 1048 2175 p 2 50 ru 1113 2160 p 50 c 1197 2175 p 2 50 ru 1287 2160 p 55 c 1396 2175 p 2 50 ru 552 2225 p 2 50 ru 634 2210 p 49 c 735 2225 p 2 50 ru 795 2210 p 50 c 874 2225 p 2 50 ru 952 2210 p 48 c 1048 2225 p 2 50 ru 1113 2210 p 52 c 1197 2225 p 2 50 ru 1287 2210 p 52 c 1396 2225 p 2 50 ru 553 2227 p 845 2 ru 664 2364 p 84 c -2(able)m 9(20:)m 14(Sample)m 10(OSPF)m 11(area)m 10(display)m -1 r 46 c 52 2489 p (2.)s 21 r 65 c 9(list)m 10(of)m 10(all)m 10(the)m 10(router)m 1 r 39 c -1 r 115 c 9(interfaces)m 10(to)m 10(an)m 9(area,)m 10(along)m 10(with)m 10(their)m 10(addresses,)m 10(output)m 10(cost,)m 10(current)m 10(state,)m 10(the)m 9(\(Backup\))m 104 2539 p (Designated)s 8(Router)m 8(for)m 8(the)m 8(attached)m 8(network,)m 8(and)m 8(the)m 8(number)m 8(of)m 8(neighbors)m 8(currently)m 8(associated)m 8(with)m 8(the)m 8(interface.)m 104 2589 p (Some)s 10(number)m 11(of)m 10(these)m 10(neighbors)m 11(will)m 10(have)m 11(become)m 10(adjacent,)m 11(the)m 10(number)m 10(of)m 11(these)m 10(is)m 11(noted)m 10(in)m 10(the)m 11(display)m 10(also.)m 0 2723 p ([J.)s 10(Moy])m 1627([Page)m 10 r 49 c (15])s @eop 114 @bop0 114 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 34 195 p (C1)s 21 r 65 c 8(received)m 7(OSPF)m 7(packet)m 8(is)m 7(rejected)m 8(due)m 7(to)m 8(errors)m 7(in)m 8(its)m 7(IP/OSPF)m 7(header)m -1 r 46 c 12(The)m 8(reasons)m 7(for)m 7(rejection)m 8(are)m 7(documented)m 104 245 p (in)s 12(Section)m 11(8.2.)m 19(They)m 11(include)m 12(OSPF)m 12(checksum)m 12(failure,)m 12(authentication)m 12(failure,)m 12(and)m 12(inability)m 12(to)m 12(match)m 11(the)m 12(source)m 104 295 p (with)s 13(an)m 14(active)m 14(OSPF)m 14(neighbor)m -2 r 46 c 23(The)m 14(logging)m 13(message)m 14(produced)m 14(should)m 14(include)m 13(the)m 14(IP)m 14(source)m 13(and)m 14(destination)m 104 345 p (addresses,)s 10(the)m 11(router)m 10(ID)m 10(in)m 11(the)m 10(OSPF)m 11(header)m -1 r 44 c 9(and)m 11(the)m 10(reason)m 11(for)m 10(the)m 11(rejection.)m 34 425 p (C2)s 21(An)m 8(incoming)m 7(Hello)m 8(packet)m 7(is)m 8(rejected)m 7(due)m 8(to)m 7(mismatches)m 7(between)m 8(the)m 7(Hello')m -1 r 115 c 7(parameters)m 7(and)m 8(those)m 7(con\014gured)m 8(for)m 104 475 p (the)s 10(receiving)m 10(interface)m 10(\(see)m 11(Section)m 10(10.5\).)m 14(This)m 10(indicates)m 10 r 97 c 10(con\014guration)m 10(problem)m 11(on)m 10(the)m 10(attached)m 10(network.)m 14(The)m 104 524 p (logging)s 10(message)m 11(should)m 10(include)m 10(the)m 11(Hello')m -1 r 115 c 9(source,)m 10(the)m 11(receiving)m 10(interface,)m 11(and)m 10(the)m 10(non-matching)m 11(parameters.)m 34 605 p (C3)s 21(An)m 15(incoming)m 15(Database)m 16(Description)m 15(packet,)m 16(Link)m 15(State)m 16(Request)m 15(Packet,)m 16(Link)m 15(State)m 15(Acknowledgment)m 16(Packet)m 104 654 p (or)s 20(Link)m 20(State)m 20(Update)m 20(packet)m 20(is)m 20(rejected)m 20(due)m 20(to)m 20(the)m 20(source)m 20(neighbor)m 20(being)m 20(in)m 20(the)m 20(wrong)m 20(state)m 20(\(see)m 20(Sec-)m 104 704 p (tions)s 14(10.6,)m 14(10.7,)m 15(13.7)m 14 r 44 c 15(and)m 14(13)m 15(respectively\).)m 25(This)m 14(can)m 15(be)m 14(normal)m 14(when)m 14(the)m 15(identity)m 14(of)m 14(the)m 14(network')m -1 r 115 c 13(Desig-)m 104 754 p (nated)s 9(Router)m 8(changes,)m 10(causing)m 8(momentary)m 9(disagreements)m 9(over)m 9(the)m 9(validity)m 9(of)m 8(adjacencies.)m 14(The)m 9(logging)m 8(message)m 104 804 p (should)s 10(include)m 11(the)m 10(source)m 10(neighbor)m 44 c 9(its)m 11(state,)m 10(and)m 10(the)m 11(packet')m -1 r 115 c 9(type.)m 34 884 p (C4)s 21 r 65 c 11(Database)m 11(Description)m 11(packet)m 11(has)m 11(been)m 11(retransmitted.)m 16(This)m 11(may)m 11(mean)m 11(that)m 11(the)m 11(value)m 11(of)m 11(RxmtInterval)m 11(that)m 11(has)m 104 934 p (been)s 11(con\014gured)m 12(for)m 12(the)m 11(associated)m 12(interface)m 12(is)m 11(too)m 12(small.)m 18(The)m 11(logging)m 12(message)m 12(should)m 11(include)m 12(the)m 12(neighbor)m 11(to)m 104 984 p (whom)s 10(the)m 11(packet)m 10(is)m 10(being)m 11(sent.)m 0 1083 p (The)s 10(following)m 11(messages)m 10(can)m 11(be)m 10(caused)m 10(by)m 11(packet)m 10(transmission)m 11(errors,)m 10(or)m 11(software)m 10(errors)m 10(in)m 11(an)m 10(OSPF)m 11(implementation:)m 37 1182 p (E1)s 20(The)m 7(checksum)m 7(in)m 7 r 97 c 7(received)m 7(link)m 7(state)m 7(advertisement)m 7(is)m 7(incorrect.)m 13(The)m 7(advertisement)m 7(is)m 7(discarded)m 7(\(see)m 7(Section)m 7(13\).)m 104 1232 p (The)s 9(logging)m 10(message)m 10(should)m 9(include)m 10(the)m 9(advertisement')m -1 r 115 c 9(LS)m 9(type,)m 10(Link)m 9(State)m 10(ID)m 10(and)m 9(Advertising)m 10(Router)m 9(\(which)m 104 1282 p (may)s 10(be)m 11(incorrect\).)m 13(The)m 11(message)m 10(should)m 11(also)m 10(include)m 11(the)m 10(neighbor)m 10(from)m 11(whom)m 10(the)m 11(advertisement)m 10(was)m 10(received.)m 37 1362 p (E2)s 20(During)m 8(the)m 8(aging)m 8(process,)m 8(it)m 8(is)m 8(discovered)m 8(that)m 7(one)m 8(of)m 8(the)m 8(link)m 8(state)m 7(advertisements)m 8(in)m 8(the)m 8(database)m 8(has)m 7(an)m 8(incorrect)m 104 1412 p (checksum.)s 13(This)m 7(indicates)m 7(memory)m 7(corruption)m 7(or)m 7 r 97 c 7(software)m 7(error)m 7(in)m 7(the)m 7(router)m 7(itself.)m 13(The)m 7(router)m 7(should)m 7(be)m 7(dumped)m 104 1462 p (and)s 10(restarted.)m 0 1561 p (The)s 10(following)m 10(messages)m 10(are)m 10(an)m 10(indication)m 10(that)m 10 r 97 c 10(router)m 10(has)m 10(restarted,)m 10(losing)m 10(track)m 10(of)m 10(its)m 10(previous)m 10(LS)m 10(sequence)m 10(number)m -2 r 46 c 0 1611 p (Should)s 10(these)m 11(messages)m 10(continue,)m 11(it)m 10(may)m 10(indicate)m 11(the)m 10(presence)m 11(of)m 10(duplicate)m 11(Router)m 10(IDs:)m 34 1710 p (R1)s 21 r 84 c -2(wo)m 16(link)m 16(state)m 17(advertisements)m 16(have)m 17(been)m 16(seen,)m 18(whose)m 17(LS)m 16(type,)m 18(Link)m 17(State)m 16(ID,)m 17(Advertising)m 16(Router)m 17(and)m 16(LS)m 104 1760 p (sequence)s 15(number)m 16(are)m 16(the)m 15(same,)m 17(yet)m 16(with)m 15(dif)m (fering)s 15(LS)m 16(checksums.)m 29(These)m 16(are)m 15(considered)m 16(to)m 16(be)m 15(dif)m (ferent)s 15(in-)m 104 1810 p (stances)s 15(of)m 15(the)m 16(same)m 15(advertisement.)m 29(The)m 15(instance)m 15(with)m 16(the)m 15(lar)m (ger)s 14(checksum)m 16(is)m 15(accepted)m 15(as)m 16(more)m 15(recent)m 15(\(see)m 104 1860 p (Section)s 11(12.1.7,)m 10(13.1\).)m 15(The)m 11(logging)m 11(message)m 11(should)m 10(include)m 11(the)m 11(LS)m 11(type,)m 11(Link)m 10(State)m 11(ID,)m 11(Advertising)m 11(Router)m -1 r 44 c 10(LS)m 104 1909 p (sequence)s 10(number)m 11(and)m 10(the)m 10(two)m 11(dif)m (fering)s 10(checksums.)m 34 1990 p (R2)s 21 r 84 c -2(wo)m 10(link)m 10(state)m 10(advertisements)m 11(have)m 10(been)m 10(seen,)m 11(whose)m 10(LS)m 11(type,)m 10(Link)m 10(State)m 11(ID,)m 10(Advertising)m 10(Router)m 44 c 9(LS)m 10(sequence)m 104 2040 p (number)s 12(and)m 13(LS)m 12(checksum)m 13(are)m 13(the)m 12(same,)m 13(yet)m 13(can)m 12(be)m 13(distinguished)m 12(by)m 13(their)m 13(LS)m 12(age)m 13(\014elds.)m 20(This)m 13(means)m 12(that)m 13(one)m 104 2089 p (of)s 15(the)m 15(advertisement')m -2 r 115 c 14(LS)m 15(age)m 15(is)m 15(MaxAge,)m 16(or)m 15(the)m 15(two)m 15(LS)m 15(age)m 15(\014elds)m 15(dif)m (fer)s 14(by)m 15(more)m 15(than)m 15(MaxAgeDif)m (f.)s 27(The)m 104 2139 p (logging)s 11(message)m 12(should)m 12(include)m 11(the)m 12(LS)m 12(type,)m 12(Link)m 11(State)m 12(ID,)m 12(Advertising)m 11(Router)m 44 c 11(LS)m 11(sequence)m 12(number)m 12(and)m 11(the)m 104 2189 p (two)s 10(dif)m (fering)s 10(ages.)m 34 2269 p (R3)s 21(The)m 12(router)m 13(has)m 12(received)m 12(an)m 12(instance)m 13(of)m 12(one)m 12(of)m 12(its)m 13(self-originated)m 12(advertisements,)m 13(that)m 12(is)m 12(considered)m 13(to)m 12(be)m 12(more)m 104 2319 p (recent.)s 14(This)m 10(forces)m 10(the)m 11(router)m 10(to)m 10(originate)m 10 r 97 c 11(new)m 10(advertisement)m 10(\(see)m 11(Section)m 10(13.4\).)m 14(The)m 10(logging)m 10(message)m 11(should)m 104 2369 p (include)s 9(the)m 9(advertisement')m -2 r 115 c 8(LS)m 9(type,)m 9(Link)m 9(State)m 9(ID,)m 9(and)m 9(Advertising)m 9(Router)m 9(along)m 9(with)m 8(the)m 9(neighbor)m 9(from)m 9(whom)m 104 2419 p (the)s 10(advertisement)m 11(was)m 10(received.)m 34 2499 p (R4)s 21(An)m 10(acknowledgment)m 9(has)m 10(been)m 10(received)m 9(for)m 10(an)m 10(instance)m 9(of)m 10(an)m 9(advertisement)m 10(that)m 10(is)m 9(not)m 10(currently)m 10(contained)m 9(in)m 10(the)m 104 2549 p (router)s 1 r 39 c -1 r 115 c 11(database)m 11(\(see)m 12(Section)m 11(13.7\).)m 17(The)m 12(logging)m 11(message)m 12(should)m 11(detail)m 12(the)m 11(instance)m 12(being)m 11(acknowledged)m 12(and)m 104 2599 p (the)s 10(database)m 11(copy)m 10(\(if)m 10(any\),)m 11(along)m 10(with)m 11(the)m 10(neighbor)m 11(from)m 10(whom)m 10(the)m 11(acknowledgment)m 10(was)m 11(received.)m 0 2723 p ([J.)s 10(Moy])m 1627([Page)m 10 r 49 c (14])s @eop 113 @bop0 113 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p 68 c 58(Requir)m (ed)s 14(Statistics)m t-rom.300 @sf 0 306 p (An)s 13(OSPF)m 13(implementation)m 13(must)m 13(provide)m 13 r 97 c 13(minimum)m 13(set)m 13(of)m 13(statistics)m 13(indicating)m 13(the)m 13(operational)m 13(state)m 13(of)m 13(the)m 13(protocol.)m 0 356 p (These)s 15(statistics)m 15(must)m 16(be)m 15(accessible)m 15(to)m 15(the)m 15(user;)m 18(this)m 15(will)m 15(probably)m 15(be)m 15(accomplished)m 16(through)m 15(some)m 15(sort)m 15(of)m 15(network)m 0 405 p (management)s 10(interface.)m 0 473 p (It)s 12(is)m 12(hoped)m 12(that)m 12(these)m 12(statistics)m 12(will)m 12(aid)m 12(in)m 12(the)m 12(debugging)m 12(of)m 12(the)m 12(implementation,)m 13(and)m 12(in)m 12(the)m 12(analysis)m 12(of)m 12(the)m 12(protocol')m -2 r 115 c 0 523 p (performance.)s 0 591 p (The)s 9(statistics)m 9(can)m 9(be)m 9(broken)m 10(into)m 9(two)m 9(broad)m 9(categories.)m 13(The)m 9(\014rst)m 10(consists)m 9(of)m 9(what)m 9(we)m 9(will)m 9(call)m 9(logging)m 9(messages.)m 14(These)m 0 640 p (are)s 10(messages)m 10(produced)m 11(in)m 10(real)m 10(time,)m 10(with)m 10(generally)m 10 r 97 c 11(single)m 10(message)m 10(produced)m 10(as)m 10(the)m 11(result)m 10(of)m 10 r 97 c 10(single)m 10(protocol)m 10(event.)m 0 690 p (Such)s 10(messages)m 11(are)m 10(also)m 11(commonly)m 10(referred)m 10(to)m 11(as)m 10(traps.)m 0 758 p (The)s 11(second)m 11(category)m 11(will)m 11(be)m 11(referred)m 11(to)m 11(as)m 11(cumulative)m 11(statistics.)m 16(These)m 11(are)m 11(counters)m 11(whose)m 11(value)m 11(have)m 11(collected)m 11(over)m 0 808 p (time,)s 10(such)m 9(as)m 10(the)m 9(count)m 10(of)m 9(link)m 10(state)m 10(retransmissions)m 9(over)m 10(the)m 9(last)m 10(hour)m -2 r 46 c 13(Also)m 10(falling)m 9(into)m 10(this)m 9(category)m 10(are)m 9(dumps)m 10(of)m 9(the)m 0 857 p (various)s 10(routing)m 11(data)m 10(structures.)m t-bol.360 @sf 0 994 p (D.1)s 50(Logging)m 12(messages)m t-rom.300 @sf 0 1090 p 65 c 11(logging)m 11(message)m 11(should)m 11(be)m 10(produced)m 11(on)m 11(every)m 11(signi\014cant)m 11(protocol)m 11(event.)m 15(The)m 11(major)m 11(events)m 11(are)m 11(listed)m 10(below)m -1 r 46 c 14(Most)m 0 1140 p (of)s 10(these)m 10(events)m 10(indicate)m 10 r 97 c 10(topological)m 10(change)m 10(in)m 10(the)m 10(routing)m 10(domain.)m 14(However)m -1 r 44 c 9(some)m 10(number)m 10(of)m 10(logging)m 11(messages)m 10(can)m 0 1189 p (be)s 9(expected)m 8(even)m 9(when)m 8(the)m 9(routing)m 8(domain)m 9(remains)m 8(intact)m 9(for)m 8(long)m 9(periods)m 8(of)m 9(time.)m 13(For)m 9(example,)m 9(link)m 8(state)m 9(originations)m 0 1239 p (will)s 10(still)m 11(happen)m 10(due)m 11(to)m 10(the)m 10(link)m 11(state)m 10(refresh)m 11(timer)m 10(\014ring.)m 0 1307 p (Any)s 13(of)m 13(the)m 13(messages)m 13(that)m 13(refer)m 13(to)m 13(link)m 13(state)m 12(advertisements)m 13(should)m 13(print)m 13(the)m 13(area)m 13(associated)m 13(with)m 13(the)m 13(advertisement.)m 0 1357 p (There)s 10(is)m 11(no)m 10(area)m 11(associated)m 10(with)m 10(AS)m 11(external)m 10(link)m 11(advertisements.)m 0 1424 p (The)s 10(following)m 11(list)m 10(of)m 11(logging)m 10(messages)m 10(indicate)m 11(topological)m 10(changes)m 11(in)m 10(the)m 11(routing)m 10(domain:)m 37 1534 p (T1)s 20(The)m 15(state)m 15(of)m 15 r 97 c 15(router)m 14(interface)m 15(changes.)m 27(Interface)m 15(state)m 15(changes)m 15(are)m 14(documented)m 15(in)m 15(Section)m 15(9.3.)m 27(In)m 15(general,)m 104 1583 p (they)s 12(will)m 11(cause)m 12(new)m 12(link)m 12(state)m 12(advertisements)m 11(to)m 12(be)m 12(originated.)m 18(The)m 12(logging)m 12(message)m 11(produced)m 12(should)m 12(include)m 104 1633 p (the)s 13(interface')m -1 r 115 c 12(IP)m 13(address)m 13(\(or)m 14(other)m 13(name\),)m 14(interface)m 13(type)m 13(\(virtual)m 13(link,)m 14(etc.\))m 23(and)m 13(old)m 13(and)m 13(new)m 13(state)m 14(values)m 13(\(as)m 104 1683 p (documented)s 10(in)m 11(Section)m 10(9.1\).)m 37 1766 p (T2)s 20(The)m 10(state)m 10(of)m 9 r 97 c 10(neighbor)m 10(changes.)m 13(Neighbor)m 10(state)m 10(changes)m 9(are)m 10(documented)m 10(in)m 9(Section)m 10(10.3.)m 14(The)m 9(logging)m 10(message)m 104 1816 p (produced)s 10(should)m 11(include)m 10(the)m 10(neighbor)m 11(IP)m 10(address,)m 11(and)m 10(old)m 11(and)m 10(new)m 10(state)m 11(values.)m 37 1899 p (T3)s 20(The)m 12(\(Backup\))m 12(Designated)m 12(Router)m 12(has)m 12(changed)m 11(on)m 12(one)m 12(of)m 12(the)m 12(attached)m 12(networks.)m 18(See)m 12(Section)m 11(9.4.)m 19(The)m 11(logging)m 104 1949 p (message)s 10(produced)m 11(should)m 10(include)m 10(the)m 11(network)m 10(IP)m 11(address,)m 10(and)m 11(the)m 10(old)m 10(and)m 11(new)m 10(\(Backup\))m 11(Designated)m 10(Routers.)m 37 2032 p (T4)s 20(The)m 13(router)m 13(is)m 12(originating)m 13 r 97 c 12(new)m 13(instance)m 12(of)m 13 r 97 c 13(link)m 12(state)m 13(advertisement.)m 20(The)m 13(logging)m 12(message)m 13(produced)m 12(should)m 104 2082 p (indicate)s 8(the)m 9(LS)m 8(type,)m 9(Link)m 9(State)m 8(ID)m 9(and)m 8(Advertising)m 9(Router)m 9(associated)m 8(with)m 9(the)m 8(advertisement)m 9(\(see)m 8(Section)m 9(12.4\).)m 37 2165 p (T5)s 20(The)m 13(router)m 13(has)m 13(received)m 13 r 97 c 13(new)m 13(instance)m 13(of)m 13 r 97 c 13(link)m 13(state)m 13(advertisement.)m 21(The)m 13(router)m 13(receives)m 13(these)m 13(in)m 13(Link)m 13(State)m 104 2214 p (Update)s 10(packets.)m 15(This)m 11(will)m 11(cause)m 10(recalculation)m 11(of)m 11(the)m 10(routing)m 11(table.)m 15(The)m 10(logging)m 11(message)m 11(produced)m 10(should)m 11(indi-)m 104 2264 p (cate)s 11(the)m 12(advertisement')m -1 r 115 c 11(LS)m 11(type,)m 12(Link)m 12(State)m 12(ID)m 11(and)m 12(Advertising)m 12(Router)m -1 r 46 c 16(The)m 12(message)m 12(should)m 11(also)m 12(include)m 12(the)m 104 2314 p (neighbor)s 10(from)m 11(whom)m 10(the)m 10(advertisement)m 11(was)m 10(received.)m 37 2397 p (T6)s 20(An)m 11(entry)m 12(in)m 11(the)m 11(routing)m 11(table)m 11(has)m 11(changed)m 11(\(see)m 11(Section)m 11 r 49 c -1(1\).)m 15(The)m 11(logging)m 11(message)m 11(produced)m 11(should)m 11(indicate)m 11(the)m 104 2447 p (Destination)s 10(type,)m 11(Destination)m 10(ID,)m 10(and)m 11(the)m 10(old)m 11(and)m 10(new)m 11(paths)m 10(to)m 10(the)m 11(destination.)m 0 2556 p (The)s 10(following)m 11(logging)m 10(messages)m 11(may)m 10(indicate)m 10(that)m 11(there)m 10(is)m 11 r 97 c 10(network)m 11(con\014guration)m 10(error:)m 0 2723 p ([J.)s 10(Moy])m 1627([Page)m 10 r 49 c (13])s @eop 112 @bop0 112 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (C.4)s 50 r 86 c -1(irtual)m 12(link)m 12(parameters)m t-rom.300 @sf 0 286 p 86 c -2(irtual)m 15(links)m 15(are)m 16(used)m 15(to)m 16(restore/increase)m 15(connectivity)m 16(of)m 15(the)m 16(backbone.)m 29 r 86 c -2(irtual)m 15(links)m 15(may)m 16(be)m 15(con\014gured)m 16(between)m 0 336 p (any)s 13(pair)m 13(of)m 13(area)m 13(border)m 13(routers)m 13(having)m 12(interfaces)m 13(to)m 13 r 97 c 13(common)m 13(\(non-backbone\))m 13(area.)m 21(The)m 13(virtual)m 13(link)m 13(appears)m 13(as)m 13(an)m 0 386 p (unnumbered)s 10(point-to-point)m 11(link)m 10(in)m 10(the)m 10(graph)m 11(for)m 10(the)m 10(backbone.)m 14(The)m 10(virtual)m 11(link)m 10(must)m 10(be)m 11(con\014gured)m 10(in)m 10(both)m 11(of)m 10(the)m 10(area)m 0 436 p (border)s 10(routers.)m 0 499 p 65 c 11(virtual)m 11(link)m 11(appears)m 11(in)m 11(router)m 11(links)m 11(advertisements)m 12(\(for)m 11(the)m 11(backbone\))m 11(as)m 11(if)m 11(it)m 11(were)m 11 r 97 c 11(separate)m 11(router)m 11(interface)m 11(to)m 11(the)m 0 549 p (backbone.)s 14(As)m 9(such,)m 10(it)m 9(has)m 10(all)m 9(of)m 10(the)m 9(parameters)m 10(associated)m 9(with)m 10 r 97 c 9(router)m 10(interface)m 9(\(see)m 10(Section)m 9(C.3\).)m 14(Although)m 9 r 97 c 10(virtual)m 0 598 p (link)s 9(acts)m 9(like)m 9(an)m 9(unnumbered)m 9(point-to-point)m 9(link,)m 9(it)m 9(does)m 9(have)m 9(an)m 9(associated)m t-bol.300 @sf 9(IP)m 9(interface)m 9(addr)m (ess)s t-rom.300 @sf 46 c 13(This)m 9(address)m 9(is)m 9(used)m 0 648 p (as)s 9(the)m 9(IP)m 9(source)m 10(in)m 9(protocol)m 9(packets)m 9(it)m 9(sends)m 9(along)m 9(the)m 9(virtual)m 10(link,)m 9(and)m 9(is)m 9(set)m 9(dynamically)m 10(during)m 9(the)m 9(routing)m 9(table)m 9(build)m 0 698 p (process.)s t-bol.300 @sf 14(Interface)m 9(output)m 9(cost)m t-rom.300 @sf 9(is)m 10(also)m 9(set)m 9(dynamically)m 10(on)m 9(virtual)m 9(links)m 9(to)m 10(be)m 9(the)m 9(cost)m 9(of)m 10(the)m 9(intra-area)m 9(path)m 10(between)m 9(the)m 0 748 p (two)s 10(routers.)m 14(The)m 10(parameter)m t-bol.300 @sf 10(RxmtInterval)m t-rom.300 @sf 10(must)m 10(be)m 10(con\014gured,)m 10(and)m 10(should)m 10(be)m 10(well)m 9(over)m 10(the)m 10(expected)m 10(round-trip)m 10(delay)m 0 798 p (between)s 10(the)m 11(two)m 10(routers.)m 14(This)m 11(may)m 10(be)m 10(hard)m 11(to)m 10(estimate)m 11(for)m 10 r 97 c 10(virtual)m 11(link.)m 14(It)m 10(is)m 11(better)m 10(to)m 10(err)m 11(on)m 10(the)m 11(side)m 10(of)m 11(making)m 10(it)m 10(too)m 0 847 p (lar)s (ge.)s t-bol.300 @sf 13(Router)m 11(Priority)m t-rom.300 @sf 10(is)m 10(not)m 11(used)m 10(on)m 11(virtual)m 10(links.)m 0 911 p 65 c 7(virtual)m 7(link)m 7(is)m 7(de\014ned)m 7(by)m 7(the)m 7(following)m 7(two)m 7(con\014gurable)m 7(parameters:)m 13(the)m 7(Router)m 7(ID)m 7(of)m 7(the)m 7(virtual)m 7(link')m -2 r 115 c 7(other)m 7(endpoint,)m 0 960 p (and)s 10(the)m 9(\(non-backbone\))m 10(area)m 9(through)m 10(which)m 10(the)m 9(virtual)m 10(link)m 10(runs)m 9(\(referred)m 10(to)m 9(as)m 10(the)m 10(virtual)m 9(link')m -1 r 115 c t-bol.300 @sf 9(transit)m 9(ar)m (ea)s t-rom.300 @sf (\).)s 13 r 86 c -2(irtual)m 0 1010 p (links)s 10(cannot)m 11(be)m 10(con\014gured)m 11(through)m 10(stub)m 10(areas.)m t-bol.360 @sf 0 1140 p (C.5)s 50(Non-br)m (oadcast,)s 12(multi-access)m 12(network)m 13(parameters)m t-rom.300 @sf 0 1231 p (OSPF)s 15(treats)m 14 r 97 c 15(non-broadcast,)m 16(multi-access)m 15(network)m 14(much)m 15(like)m 15(it)m 15(treats)m 14 r 97 c 15(broadcast)m 15(network.)m 27(Since)m 14(there)m 15(many)m 15(be)m 0 1281 p (many)s 11(routers)m 12(attached)m 11(to)m 11(the)m 12(network,)m 11 r 97 c 12(Designated)m 11(Router)m 11(is)m 11(selected)m 12(for)m 11(the)m 11(network.)m 17(This)m 11(Designated)m 12(Router)m 11(then)m 0 1331 p (originates)s 10 r 97 c 11(networks)m 10(links)m 11(advertisement,)m 10(which)m 10(lists)m 11(all)m 10(routers)m 11(attached)m 10(to)m 11(the)m 10(non-broadcast)m 10(network.)m 0 1394 p (However)s -1 r 44 c 12(due)m 12(to)m 12(the)m 12(lack)m 12(of)m 12(broadcast)m 12(capabilities,)m 12(it)m 12(is)m 12(necessary)m 12(to)m 12(use)m 12(con\014guration)m 12(parameters)m 12(in)m 12(the)m 12(Designated)m 0 1444 p (Router)s 12(selection.)m 20(These)m 12(parameters)m 12(need)m 13(only)m 12(be)m 12(con\014gured)m 13(in)m 12(those)m 12(routers)m 12(that)m 13(are)m 12(themselves)m 12(eligible)m 13(to)m 12(become)m 0 1494 p (Designated)s 10(Router)m 11(\(i.e.,)m 10(those)m 11(router)m 1 r 39 c -1 r 115 c 9(whose)m 11(DR)m 10(Priority)m 11(for)m 10(the)m 10(network)m 11(is)m 10(non-zero\):)m t-bol.300 @sf 0 1588 p (List)s 10(of)m 11(all)m 10(other)m 11(attached)m 10 r 114 c (outers)s t-rom.300 @sf 20(The)m 11(list)m 11(of)m 10(all)m 11(other)m 11(routers)m 10(attached)m 11(to)m 11(the)m 11(non-broadcast)m 10(network.)m 15(Each)m 11(router)m 10(is)m 104 1638 p (listed)s 11(by)m 10(its)m 11(IP)m 11(interface)m 11(address)m 10(on)m 11(the)m 11(network.)m 15(Also,)m 11(for)m 10(each)m 11(router)m 11(listed,)m 11(that)m 10(router)m 2 r 39 c -1 r 115 c 9(eligibility)m 11(to)m 11(become)m 104 1687 p (Designated)s 11(Router)m 11(must)m 11(be)m 11(de\014ned.)m 16(When)m 11(an)m 11(interface)m 11(to)m 11 r 97 c 11(non-broadcast)m 11(network)m 12(comes)m 11(up,)m 11(the)m 11(router)m 11(sends)m 104 1737 p (Hello)s 9(packets)m 9(only)m 9(to)m 9(those)m 9(neighbors)m 9(eligible)m 9(to)m 9(become)m 9(Designated)m 10(Router)m -1 r 44 c 8(until)m 9(the)m 9(identity)m 9(of)m 10(the)m 9(Designated)m 104 1787 p (Router)s 10(is)m 11(discovered.)m t-bol.300 @sf 0 1866 p (PollInterval)s t-rom.300 @sf 21(If)m 8 r 97 c 9(neighboring)m 8(router)m 9(has)m 8(become)m 8(inactive)m 9(\(hellos)m 8(have)m 9(not)m 8(been)m 9(seen)m 8(for)m 9(RouterDeadInterval)m 8(seconds\),)m 104 1916 p (it)s 14(may)m 14(still)m 15(be)m 14(necessary)m 14(to)m 14(send)m 15(Hellos)m 14(to)m 14(the)m 15(dead)m 14(neighbor)m -1 r 46 c 24(These)m 14(Hellos)m 15(will)m 14(be)m 14(sent)m 14(at)m 15(the)m 14(reduced)m 14(rate)m 104 1965 p (PollInterval,)s 8(which)m 8(should)m 7(be)m 8(much)m 8(lar)m (ger)s 7(than)m 8(HelloInterval.)m 13(Sample)m 7(value)m 8(for)m 8 r 97 c 8(PDN)m 7(X.25)m 8(network:)m 13 r 50 c 7(minutes.)m t-bol.360 @sf 0 2096 p (C.6)s 50(Host)m 12 r 114 c (oute)s 12(parameters)m t-rom.300 @sf 0 2187 p (Host)s 10(routes)m 10(are)m 9(advertised)m 10(in)m 10(network)m 10(links)m 9(advertisements)m 10(as)m 10(stub)m 10(networks)m 9(with)m 10(mask)m c-med.300 @sf 10(0xffffffff)m t-rom.300 @sf 46 c 14(They)m 9(indicate)m 0 2236 p (either)s 11(router)m 12(interfaces)m 11(to)m 11(point-to-point)m 12(networks,)m 11(looped)m 12(router)m 11(interfaces,)m 12(or)m 11(IP)m 11(hosts)m 12(that)m 11(are)m 11(directly)m 12(connected)m 11(to)m 0 2286 p (the)s 8(router)m 8(\(e.g.,)m 9(via)m 8 r 97 c 8(SLIP)m 8(line\).)m 13(For)m 8(each)m 9(host)m 8(directly)m 8(connected)m 8(to)m 8(the)m 8(router)m 44 c 7(the)m 8(following)m 8(items)m 8(must)m 9(be)m 8(con\014gured:)m t-bol.300 @sf 0 2380 p (Host)s 10(IP)m 11(addr)m (ess)s t-rom.300 @sf 20(The)m 10(IP)m 11(address)m 10(of)m 11(the)m 10(host.)m t-bol.300 @sf 0 2459 p (Cost)s 10(of)m 11(link)m 10(to)m 11(host)m t-rom.300 @sf 20(The)m 10(cost)m 10(of)m 10(sending)m 10 r 97 c 10(packet)m 9(to)m 10(the)m 10(host,)m 10(in)m 10(terms)m 10(of)m 10(the)m 9(link)m 10(state)m 10(metric.)m 14(There)m 10(may)m 10(be)m 9(multiple)m 104 2509 p (costs)s 12(con\014gured,)m 13(one)m 13(for)m 12(each)m 13(IP)m 12 r 84 c (OS.)s 20(However)m -1 r 44 c 12(since)m 13(the)m 12(host)m 13(probably)m 13(has)m 12(only)m 13 r 97 c 12(single)m 13(connection)m 12(to)m 13(the)m 104 2559 p (internet,)s 10(the)m 11(actual)m 10(con\014gured)m 10(cost\(s\))m 11(in)m 10(many)m 11(cases)m 10(is)m 11(unimportant)m 10(\(i.e.,)m 10(will)m 11(have)m 10(no)m 11(ef)m (fect)s 9(on)m 11(routing\).)m 0 2723 p ([J.)s 10(Moy])m 1627([Page)m 10 r 49 c (12])s @eop 111 @bop0 111 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (StubDefaultCost)s t-rom.300 @sf 21(If)m 13(the)m 13(area)m 13(has)m 13(been)m 13(con\014gured)m 14(as)m 13 r 97 c 13(stub)m 13(area,)m 14(and)m 13(the)m 13(router)m 13(itself)m 13(is)m 13(an)m 14(area)m 13(border)m 13(router)m -1 r 44 c 13(then)m 104 245 p (the)s 9(StubDefaultCost)m 10(indicates)m 9(the)m 9(cost)m 10(of)m 9(the)m 10(default)m 9(summary)m 10(link)m 9(that)m 9(the)m 10(router)m 9(should)m 10(advertise)m 9(into)m 9(the)m 10(area.)m 104 295 p (There)s 10(can)m 11(be)m 10 r 97 c 10(separate)m 11(cost)m 10(con\014gured)m 11(for)m 10(each)m 11(IP)m 10 r 84 c (OS.)s 13(See)m 10(Section)m 11(12.4.3)m 10(for)m 11(more)m 10(information.)m t-bol.360 @sf 0 431 p (C.3)s 50(Router)m 12(interface)m 13(parameters)m t-rom.300 @sf 0 526 p (Some)s 13(of)m 12(the)m 13(con\014gurable)m 12(router)m 13(interface)m 12(parameters)m 13(\(such)m 12(as)m 13(IP)m 12(interface)m 13(address)m 12(and)m 13(subnet)m 12(mask\))m 13(actually)m 12(imply)m 0 576 p (properties)s 12(of)m 12(the)m 12(attached)m 12(networks,)m 13(and)m 12(therefore)m 12(must)m 12(be)m 12(consistent)m 12(across)m 12(all)m 12(the)m 12(routers)m 12(attached)m 12(to)m 12(that)m 12(network.)m 0 626 p (The)s 10(parameters)m 11(that)m 10(must)m 11(be)m 10(con\014gured)m 10(for)m 11 r 97 c 10(router)m 11(interface)m 10(are:)m t-bol.300 @sf 0 733 p (IP)s 10(interface)m 11(addr)m (ess)s t-rom.300 @sf 20(The)m 13(IP)m 14(protocol)m 14(address)m 13(for)m 14(this)m 13(interface.)m 24(This)m 13(uniquely)m 14(identi\014es)m 13(the)m 14(router)m 14(over)m 13(the)m 14(entire)m 104 783 p (internet.)s 14(An)m 10(IP)m 10(address)m 11(is)m 10(not)m 11(required)m 10(on)m 11(serial)m 10(lines.)m 14(Such)m 10 r 97 c 11(serial)m 10(line)m 11(is)m 10(called)m 10(\\unnumbered".)m t-bol.300 @sf 0 866 p (IP)s 10(interface)m 11(mask)m t-rom.300 @sf 21(This)m 12(denotes)m 13(the)m 12(portion)m 12(of)m 13(the)m 12(IP)m 13(interface)m 12(address)m 13(that)m 12(identi\014es)m 13(the)m 12(attached)m 13(network.)m 20(This)m 12(is)m 104 915 p (often)s 10(referred)m 11(to)m 10(as)m 10(the)m 11(subnet)m 10(mask.)m t-bol.300 @sf 0 998 p (Interface)s 10(output)m 11(cost\(s\))m t-rom.300 @sf 21(The)m 14(cost)m 14(of)m 14(sending)m 14 r 97 c 13(packet)m 14(on)m 14(the)m 14(interface,)m 15(expressed)m 14(in)m 14(the)m 14(link)m 14(state)m 14(metric.)m 25(This)m 14(is)m 104 1048 p (advertised)s 11(as)m 11(the)m 11(link)m 11(cost)m 11(for)m 11(this)m 11(interface)m 11(in)m 11(the)m 11(router)m 1 r 39 c -1 r 115 c 10(router)m 11(links)m 11(advertisement.)m 16(There)m 11(may)m 11(be)m 11 r 97 c 11(separate)m 104 1098 p (cost)s 10(for)m 11(each)m 10(IP)m 10 r 84 c -1(ype)m 9(of)m 10(Service.)m 14(The)m 11(interface)m 10(output)m 10(cost\(s\))m 11(must)m 10(always)m 11(be)m 10(greater)m 11(than)m 10(0.)m t-bol.300 @sf 0 1180 p (RxmtInterval)s t-rom.300 @sf 21(The)m 12(number)m 13(of)m 12(seconds)m 12(between)m 13(link)m 12(state)m 12(advertisement)m 13(retransmissions,)m 13(for)m 12(adjacencies)m 13(belonging)m 104 1230 p (to)s 13(this)m 13(interface.)m 22(Also)m 14(used)m 13(when)m 13(retransmitting)m 13(Database)m 13(Description)m 14(and)m 13(Link)m 13(State)m 13(Request)m 13(Packets.)m 23(This)m 104 1280 p (should)s 9(be)m 9(well)m 9(over)m 9(the)m 10(expected)m 9(round-trip)m 9(delay)m 9(between)m 9(any)m 10(two)m 9(routers)m 9(on)m 9(the)m 9(attached)m 9(network.)m 14(The)m 9(setting)m 104 1330 p (of)s 13(this)m 14(value)m 14(should)m 13(be)m 14(conservative)m 14(or)m 13(needless)m 14(retransmissions)m 14(will)m 13(result.)m 24(It)m 14(will)m 13(need)m 14(to)m 14(be)m 13(lar)m (ger)s 13(on)m 14(low)m 104 1380 p (speed)s 10(serial)m 11(lines)m 10(and)m 10(virtual)m 11(links.)m 14(Sample)m 10(value)m 11(for)m 10 r 97 c 10(local)m 11(area)m 10(network:)m 14 r 53 c 11(seconds.)m t-bol.300 @sf 0 1462 p (InfT)s -2(ransDelay)m t-rom.300 @sf 20(The)m 10(estimated)m 11(number)m 11(of)m 11(seconds)m 10(it)m 11(takes)m 11(to)m 11(transmit)m 11 r 97 c 10(Link)m 11(State)m 11(Update)m 11(Packet)m 10(over)m 11(this)m 11(interface.)m 104 1512 p (Link)s 9(state)m 9(advertisements)m 9(contained)m 8(in)m 9(the)m 9(update)m 9(packet)m 9(must)m 9(have)m 9(their)m 9(age)m 9(incremented)m 9(by)m 9(this)m 9(amount)m 9(before)m 104 1562 p (transmission.)s 16(This)m 11(value)m 11(should)m 11(take)m 12(into)m 11(account)m 11(the)m 11(transmission)m 11(and)m 11(propagation)m 12(delays)m 11(for)m 11(the)m 11(interface.)m 16(It)m 104 1612 p (must)s 10(be)m 11(greater)m 10(than)m 10(0.)m 14(Sample)m 11(value)m 10(for)m 11 r 97 c 10(local)m 10(area)m 11(network:)m 14 r 49 c 10(second.)m t-bol.300 @sf 0 1694 p (Router)s 10(Priority)m t-rom.300 @sf 21(An)m 11(8-bit)m 12(unsigned)m 11(integer)m -2 r 46 c 16(When)m 11(two)m 11(routers)m 11(attached)m 11(to)m 11 r 97 c 12(network)m 11(both)m 11(attempt)m 11(to)m 11(become)m 11(Desig-)m 104 1744 p (nated)s 10(Router)m -1 r 44 c 9(the)m 10(one)m 11(with)m 10(the)m 10(highest)m 10(Router)m 10(Priority)m 10(takes)m 10(precedence.)m 14(If)m 10(there)m 10(is)m 10(still)m 10 r 97 c 10(tie,)m 11(the)m 10(router)m 10(with)m 10(the)m 104 1794 p (highest)s 8(Router)m 7(ID)m 8(takes)m 8(precedence.)m 13 r 65 c 8(router)m 8(whose)m 8(Router)m 8(Priority)m 7(is)m 8(set)m 8(to)m 8 r 48 c 8(is)m 8(ineligible)m 7(to)m 8(become)m 8(Designated)m 104 1844 p (Router)s 10(on)m 11(the)m 10(attached)m 10(network.)m 14(Router)m 11(Priority)m 10(is)m 11(only)m 10(con\014gured)m 10(for)m 11(interfaces)m 10(to)m 11(multi-access)m 10(networks.)m t-bol.300 @sf 0 1926 p (HelloInterval)s t-rom.300 @sf 21(The)m 11(length)m 11(of)m 11(time,)m 11(in)m 11(seconds,)m 11(between)m 11(the)m 11(Hello)m 11(packets)m 11(that)m 11(the)m 11(router)m 11(sends)m 11(on)m 11(the)m 11(interface.)m 16(This)m 104 1976 p (value)s 15(is)m 14(advertised)m 15(in)m 15(the)m 15(router)m 1 r 39 c -1 r 115 c 14(Hello)m 14(packets.)m 27(It)m 15(must)m 15(be)m 15(the)m 14(same)m 15(for)m 15(all)m 15(routers)m 15(attached)m 14(to)m 15 r 97 c 15(common)m 104 2026 p (network.)s 14(The)m 9(smaller)m 10(the)m 10(hello)m 10(interval,)m 10(the)m 10(faster)m 10(topological)m 10(changes)m 10(will)m 10(be)m 10(detected,)m 10(but)m 10(more)m 10(routing)m 10(traf)m (\014c)s 104 2076 p (will)s 13(ensue.)m 23(Sample)m 14(value)m 13(for)m 13 r 97 c 14(X.25)m 13(PDN)m 14(network:)m 20(30)m 13(seconds.)m 23(Sample)m 13(value)m 14(for)m 13 r 97 c 14(local)m 13(area)m 14(network:)m 19(10)m 104 2125 p (seconds.)s t-bol.300 @sf 0 2208 p (RouterDeadInterval)s t-rom.300 @sf 21(The)m 11(number)m 12(of)m 12(seconds)m 12(that)m 11 r 97 c 12(router)m 2 r 39 c -2 r 115 c 11(Hellos)m 12(have)m 12(not)m 11(been)m 12(seen)m 12(before)m 11(its)m 12(neighbors)m 12(declare)m 104 2258 p (the)s 10(router)m 11(down.)m 14(This)m 10(is)m 11(also)m 10(advertised)m 11(in)m 10(the)m 11(router)m 1 r 39 c -1 r 115 c 9(Hello)m 11(Packets)m 10(in)m 11(the)m 10(DeadInt)m 11(\014eld.)m 14(This)m 10(should)m 11(be)m 10(some)m 104 2308 p (multiple)s 12(of)m 12(the)m 11(HelloInterval)m 12(\(say)m 12(4\).)m 18(This)m 12(value)m 12(again)m 12(must)m 12(be)m 12(the)m 12(same)m 11(for)m 12(all)m 12(routers)m 12(attached)m 12(to)m 12 r 97 c 12(common)m 104 2357 p (network.)s t-bol.300 @sf 0 2440 p (Authentication)s 10(key)m t-rom.300 @sf 21(This)m 13(con\014gured)m 12(data)m 13(allows)m 12(the)m 13(authentication)m 13(procedure)m 12(to)m 13(generate)m 12(and/or)m 13(verify)m 12(the)m 13(authen-)m 104 2490 p (tication)s 13(\014eld)m 13(in)m 13(the)m 13(OSPF)m 13(header)m -1 r 46 c 21(For)m 13(example,)m 14(if)m 13(the)m 13(authentication)m 13(type)m 14(indicates)m 13(simple)m 13(password,)m 14(the)m 13(au-)m 104 2540 p (thentication)s 12(key)m 11(would)m 12(be)m 12 r 97 c 12(64-bit)m 11(password.)m 18(This)m 12(key)m 12(would)m 12(be)m 12(inserted)m 11(directly)m 12(into)m 12(the)m 12(OSPF)m 11(header)m 12(when)m 104 2589 p (originating)s 10(routing)m 11(protocol)m 10(packets.)m 14(There)m 10(could)m 11(be)m 10 r 97 c 11(separate)m 10(password)m 10(for)m 11(each)m 10(network.)m 0 2723 p ([J.)s 10(Moy])m 1628([Page)m 11 r 49 c -1 r 49 c -1(1])m @eop 110 @bop0 110 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p 67 c 58(Con\014gurable)m 15(Constants)m t-rom.300 @sf 0 302 p (The)s 13(OSPF)m 12(protocol)m 13(has)m 13(quite)m 13 r 97 c 12(few)m 13(con\014gurable)m 13(parameters.)m 20(These)m 13(parameters)m 13(are)m 13(listed)m 12(below)m -1 r 46 c 19(They)m 13(are)m 13(grouped)m 0 352 p (into)s 12(general)m 11(functional)m 12(categories)m 11(\(area)m 12(parameters,)m 12(interface)m 11(parameters,)m 12(etc.\).)m 17(Sample)m 12(values)m 12(are)m 11(given)m 12(for)m 11(some)m 12(of)m 0 402 p (the)s 10(parameters.)m 0 466 p (Some)s 9(parameter)m 9(settings)m 9(need)m 9(to)m 9(be)m 9(consistent)m 10(among)m 9(groups)m 9(of)m 9(routers.)m 13(For)m 9(example,)m 10(all)m 9(routers)m 9(in)m 9(an)m 9(area)m 9(must)m 9(agree)m 0 515 p (on)s 11(that)m 11(area')m -1 r 115 c 10(parameters,)m 11(and)m 11(all)m 11(routers)m 11(attached)m 12(to)m 11 r 97 c 11(network)m 11(must)m 11(agree)m 11(on)m 11(that)m 11(network')m -1 r 115 c 10(IP)m 11(network)m 11(number)m 11(and)m 0 565 p (mask.)s 0 629 p (Some)s 14(parameters)m 15(may)m 14(be)m 15(determined)m 14(by)m 14(router)m 15(algorithms)m 14(outside)m 14(of)m 15(this)m 14(speci\014cation)m 15(\(e.g.,)m 15(the)m 14(address)m 15(of)m 14 r 97 c 14(host)m 0 679 p (connected)s 10(to)m 11(the)m 10(router)m 11(via)m 10 r 97 c 10(SLIP)m 11(line\).)m 14(From)m 10(OSPF')m -1 r 115 c 9(point)m 11(of)m 10(view)m -2 r 44 c 10(these)m 10(items)m 11(are)m 10(still)m 11(con\014gurable.)m t-bol.360 @sf 0 810 p (C.1)s 50(Global)m 12(parameters)m t-rom.300 @sf 0 902 p (In)s 11(general,)m 10 r 97 c 11(separate)m 10(copy)m 11(of)m 10(the)m 11(OSPF)m 10(protocol)m 11(is)m 10(run)m 11(for)m 10(each)m 11(area.)m 14(Because)m 11(of)m 10(this,)m 11(most)m 10(con\014guration)m 11(parameters)m 0 952 p (are)s 10(de\014ned)m 11(on)m 10 r 97 c 11(per)m (-area)s 9(basis.)m 14(The)m 11(few)m 10(global)m 10(con\014guration)m 11(parameters)m 10(are)m 11(listed)m 10(below)m -2 r 46 c t-bol.300 @sf 0 1049 p (Router)s 10(ID)m t-rom.300 @sf 21(This)m 11(is)m 11 r 97 c 11(32-bit)m 10(number)m 11(that)m 11(uniquely)m 11(identi\014es)m 11(the)m 10(router)m 11(in)m 11(the)m 11(Autonomous)m 11(System.)m 15(One)m 10(algorithm)m 11(for)m 104 1099 p (Router)s 11(ID)m 12(assignment)m 11(is)m 11(to)m 12(choose)m 11(the)m 11(lar)m (gest)s 11(or)m 12(smallest)m 11(IP)m 11(address)m 12(assigned)m 11(to)m 11(the)m 12(router)m -1 r 46 c 15(If)m 12 r 97 c 11(router)m 2 r 39 c -2 r 115 c 11(OSPF)m 104 1148 p (Router)s 10(ID)m 11(is)m 10(changed,)m 10(the)m 11(router)m 1 r 39 c -1 r 115 c 10(OSPF)m 10(software)m 10(should)m 11(be)m 10(restarted)m 11(before)m 10(the)m 10(new)m 11(Router)m 10(ID)m 11(takes)m 10(ef)m (fect.)s t-bol.300 @sf 0 1228 p 84 c (OS)s 10(capability)m t-rom.300 @sf 20(This)m 11(item)m 11(indicates)m 11(whether)m 10(the)m 11(router)m 11(will)m 10(calculate)m 11(separate)m 11(routes)m 11(based)m 10(on)m 11 r 84 c (OS.)s 14(For)m 11(more)m 10(infor-)m 104 1278 p (mation,)s 10(see)m 11(Sections)m 10(4.5)m 10(and)m 11(16.9.)m t-bol.360 @sf 0 1409 p (C.2)s 50(Ar)m (ea)s 12(parameters)m t-rom.300 @sf 0 1501 p (All)s 10(routers)m 9(belonging)m 10(to)m 10(an)m 10(area)m 9(must)m 10(agree)m 10(on)m 9(that)m 10(area')m -1 r 115 c 9(con\014guration.)m 13(Disagreements)m 10(between)m 10(two)m 9(routers)m 10(will)m 10(lead)m 0 1551 p (to)s 10(an)m 10(inability)m 10(for)m 10(adjacencies)m 10(to)m 10(form)m 10(between)m 10(them,)m 10(with)m 10 r 97 c 10(resulting)m 10(hindrance)m 10(to)m 10(the)m 10(\015ow)m 10(of)m 10(routing)m 9(protocol)m 10(traf)m (\014c.)s 0 1601 p (The)s 10(following)m 11(items)m 10(must)m 11(be)m 10(con\014gured)m 10(for)m 11(an)m 10(area:)m t-bol.300 @sf 0 1697 p (Ar)s (ea)s 10(ID)m t-rom.300 @sf 20(This)m 12(is)m 12 r 97 c 12(32-bit)m 12(number)m 11(that)m 12(identi\014es)m 12(the)m 12(area.)m 18(The)m 12(Area)m 12(ID)m 11(of)m 12 r 48 c 12(is)m 12(reserved)m 12(for)m 11(the)m 12(backbone.)m 18(If)m 12(the)m 12(area)m 104 1747 p (represents)s 10 r 97 c 11(subnetted)m 10(network,)m 10(the)m 11(IP)m 10(network)m 11(number)m 10(of)m 11(the)m 10(subnetted)m 10(network)m 11(may)m 10(be)m 11(used)m 10(for)m 10(the)m 11(area)m 10(ID.)m t-bol.300 @sf 0 1827 p (List)s 10(of)m 11(addr)m (ess)s 9(ranges)m t-rom.300 @sf 21(An)m 9(OSPF)m 8(area)m 9(is)m 8(de\014ned)m 8(as)m 9 r 97 c 8(list)m 9(of)m 8([IP)m 9(address,)m 8(mask])m 9(pairs.)m 13(Each)m 8(pair)m 9(describes)m 8 r 97 c 9(range)m 8(of)m 9(IP)m 104 1877 p (addresses.)s 13(Networks)m 10(and)m 10(hosts)m 10(are)m 10(assigned)m 10(to)m 10(an)m 9(area)m 10(depending)m 10(on)m 10(whether)m 10(their)m 10(addresses)m 10(fall)m 9(into)m 10(one)m 10(of)m 10(the)m 104 1926 p (area')s -2 r 115 c 10(de\014ning)m 11(address)m 11(ranges.)m 16(Routers)m 11(are)m 10(viewed)m 11(as)m 11(belonging)m 11(to)m 11(multiple)m 11(areas,)m 11(depending)m 11(on)m 11(their)m 11(attached)m 104 1976 p (networks')s 9(area)m 9(membership.)m 13(Routing)m 9(information)m 9(is)m 9(condensed)m 9(at)m 9(area)m 9(boundaries.)m 14(External)m 9(to)m 9(the)m 9(area,)m 9 r 97 c 9(single)m 104 2026 p (route)s 10(is)m 11(advertised)m 10(for)m 10(each)m 11(address)m 10(range.)m 104 2091 p (As)s 11(an)m 10(example,)m 11(suppose)m 11(an)m 11(IP)m 11(subnetted)m 11(network)m 11(is)m 11(to)m 10(be)m 11(its)m 11(own)m 11(OSPF)m 11(area.)m 15(The)m 11(area)m 11(would)m 11(be)m 10(con\014gured)m 11(as)m 104 2141 p 97 c 10(single)m 9(address)m 10(range,)m 10(whose)m 10(IP)m 10(address)m 10(is)m 9(the)m 10(address)m 10(of)m 10(the)m 10(subnetted)m 10(network,)m 10(and)m 9(whose)m 10(mask)m 10(is)m 10(the)m 10(natural)m 104 2190 p (class)s 13(A,)m 12(B,)m 13(or)m 13 r 67 c 13(internet)m 12(mask.)m 21 r 65 c 13(single)m 13(route)m 13(would)m 13(be)m 12(advertised)m 13(external)m 13(to)m 13(the)m 12(area,)m 14(describing)m 13(the)m 12(entire)m 104 2240 p (subnetted)s 10(network.)m t-bol.300 @sf 0 2320 p (Authentication)s 10(type)m t-rom.300 @sf 21(Each)m 10(area)m 9(can)m 10(be)m 9(con\014gured)m 10(for)m 9 r 97 c 10(separate)m 9(type)m 10(of)m 9(authentication.)m 14(See)m 10(Appendix)m 9 r 69 c 10(for)m 9 r 97 c 10(discus-)m 104 2370 p (sion)s 10(of)m 11(the)m 10(de\014ned)m 10(authentication)m 11(types.)m t-bol.300 @sf 0 2449 p (External)s 10 r 114 c (outing)s 10(capability)m t-rom.300 @sf 21(Whether)m 14(AS)m 14(external)m 14(advertisements)m 14(will)m 14(be)m 14(\015ooded)m 14(into/throughout)m 14(the)m 14(area.)m 25(If)m 14(AS)m 104 2499 p (external)s 10(advertisements)m 10(are)m 10(excluded)m 10(from)m 10(the)m 10(area,)m 11(the)m 10(area)m 10(is)m 10(called)m 10 r 97 c 10(\\stub".)m 14(Internal)m 10(to)m 10(stub)m 10(areas,)m 11(routing)m 10(to)m 104 2549 p (external)s 10(destinations)m 11(will)m 10(be)m 11(based)m 10(solely)m 10(on)m 11 r 97 c 10(default)m 11(summary)m 10(route.)m 14(The)m 11(backbone)m 10(cannot)m 11(be)m 10(con\014gured)m 10(as)m 11 r 97 c 104 2599 p (stub)s 10(area.)m 14(Also,)m 10(virtual)m 11(links)m 10(cannot)m 11(be)m 10(con\014gured)m 11(through)m 10(stub)m 10(areas.)m 14(For)m 11(more)m 10(information,)m 11(see)m 10(Section)m 10(3.6.)m 0 2723 p ([J.)s 10(Moy])m 1627([Page)m 10 r 49 c (10])s @eop 109 @bop0 109 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p 66 c 58(Ar)m (chitectural)s 14(Constants)m t-rom.300 @sf 0 306 p (Several)s 10(OSPF)m 10(protocol)m 11(parameters)m 10(have)m 10(\014xed)m 10(architectural)m 10(values.)m 14(These)m 10(parameters)m 11(have)m 10(been)m 10(referred)m 10(to)m 11(in)m 10(the)m 10(text)m 0 356 p (by)s 13(names)m 13(such)m 12(as)m 13(LSRefreshT)m (imer)s -3 r 46 c 20(The)m 13(same)m 13(naming)m 12(convention)m 13(is)m 13(used)m 13(for)m 12(the)m 13(con\014gurable)m 13(protocol)m 13(parameters.)m 0 405 p (They)s 10(are)m 11(de\014ned)m 10(in)m 11(appendix)m 10(C.)m 0 473 p (The)s 10(name)m 11(of)m 10(each)m 11(architectural)m 10(constant)m 10(follows,)m 11(together)m 10(with)m 11(its)m 10(value)m 11(and)m 10 r 97 c 10(short)m 11(description)m 10(of)m 11(its)m 10(function.)m t-bol.300 @sf 0 582 p (LSRefr)s (eshT)s -1(ime)m t-rom.300 @sf 20(The)m 15(maximum)m 14(time)m 14(between)m 14(distinct)m 14(originations)m 15(of)m 14(any)m 14(particular)m 14(link)m 15(state)m 14(advertisement.)m 25(For)m 104 632 p (each)s 10(link)m 10(state)m 11(advertisement)m 10(that)m 10 r 97 c 10(router)m 10(originates,)m 11(an)m 10(interval)m 10(timer)m 10(should)m 11(be)m 10(set)m 10(to)m 10(this)m 11(value.)m 14(Firing)m 10(of)m 10(this)m 104 682 p (timer)s 10(causes)m 10 r 97 c 10(new)m 10(instance)m 10(of)m 10(the)m 10(link)m 10(state)m 10(advertisement)m 10(to)m 10(be)m 11(originated.)m 13(The)m 10(value)m 10(of)m 10(LSRefreshT)m (ime)s 9(is)m 10(set)m 104 732 p (to)s 10(30)m 11(minutes.)m t-bol.300 @sf 0 815 p (MinLSInterval)s t-rom.300 @sf 21(The)m 7(minimum)m 8(time)m 8(between)m 7(distinct)m 8(originations)m 7(of)m 8(any)m 8(particular)m 7(link)m 8(state)m 7(advertisement.)m 13(The)m 8(value)m 104 864 p (of)s 10(MinLSInterval)m 11(is)m 10(set)m 10(to)m 11 r 53 c 10(seconds.)m t-bol.300 @sf 0 948 p (MaxAge)s t-rom.300 @sf 21(The)m 8(maximum)m 9(age)m 8(that)m 8 r 97 c 9(link)m 8(state)m 9(advertisement)m 8(can)m 9(attain.)m 13(When)m 8(an)m 9(advertisement')m -2 r 115 c 8(age)m 8(reaches)m 9(MaxAge,)m 104 997 p (it)s 10(is)m 9(re\015ooded.)m 14(It)m 10(is)m 10(then)m 10(removed)m 9(from)m 10(the)m 10(database)m 10(as)m 10(soon)m 10(as)m 9(this)m 10(\015ood)m 10(is)m 10(acknowledged,)m 10(i.e.,)m 10(as)m 10(soon)m 9(as)m 10(it)m 10(has)m 104 1047 p (been)s 11(removed)m 10(from)m 11(all)m 11(neighbor)m t-bol.300 @sf 11(Link)m 11(state)m 11 r 114 c (etransmission)s 10(lists)m t-rom.300 @sf 46 c 15(Advertisements)m 11(having)m 11(age)m 11(MaxAge)m 10(are)m 11(not)m 104 1097 p (used)s 10(in)m 11(the)m 10(routing)m 10(table)m 11(calculation.)m 14(The)m 10(value)m 10(of)m 11(MaxAge)m 10(must)m 11(be)m 10(greater)m 10(than)m 11(LSRefreshT)m -1(ime.)m 13(The)m 11(value)m 10(of)m 104 1147 p (MaxAge)s 10(is)m 11(set)m 10(to)m 10 r 49 c 11(hour)m -1 r 46 c t-bol.300 @sf 0 1230 p (CheckAge)s t-rom.300 @sf 21(When)m 13(the)m 14(age)m 13(of)m 14 r 97 c 14(link)m 13(state)m 14(advertisement)m 13(\(that)m 14(is)m 13(contained)m 14(in)m 14(the)m 13(link)m 14(state)m 13(database\))m 14(hits)m 14 r 97 c 13(multiple)m 104 1280 p (of)s 11(CheckAge,)m 10(the)m 11(advertisement')m -1 r 115 c 10(checksum)m 10(is)m 11(veri\014ed.)m 15(An)m 11(incorrect)m 11(checksum)m 11(at)m 10(this)m 11(time)m 11(indicates)m 11 r 97 c 10(serious)m 104 1329 p (error)s -2 r 46 c 13(The)m 11(value)m 10(of)m 11(CheckAge)m 10(is)m 10(set)m 11(to)m 10 r 53 c 11(minutes.)m t-bol.300 @sf 0 1412 p (MaxAgeDiff)s t-rom.300 @sf 21(The)m 8(maximum)m 8(time)m 8(dispersion)m 8(that)m 8(can)m 8(occur)m 44 c 7(as)m 8 r 97 c 9(link)m 8(state)m 8(advertisement)m 8(is)m 8(\015ooded)m 8(throughout)m 8(the)m 8(AS.)m 104 1462 p (Most)s 9(of)m 10(this)m 9(time)m 10(is)m 9(accounted)m 10(for)m 9(by)m 10(the)m 9(link)m 10(state)m 9(advertisements)m 9(sitting)m 10(on)m 9(router)m 10(output)m 9(queues)m 10(\(and)m 9(therefore)m 104 1512 p (not)s 10(aging\))m 11(during)m 10(the)m 10(\015ooding)m 11(process.)m 14(The)m 10(value)m 11(of)m 10(MaxAgeDif)m 102 c 10(is)m 10(set)m 10(to)m 11(15)m 10(minutes.)m t-bol.300 @sf 0 1595 p (LSIn\014nity)s t-rom.300 @sf 21(The)m 13(link)m 13(state)m 14(metric)m 13(value)m 13(indicating)m 14(that)m 13(the)m 13(destination)m 14(is)m 13(unreachable.)m 23(It)m 13(is)m 13(de\014ned)m 14(to)m 13(be)m 13(the)m 14(binary)m 104 1645 p (value)s 11(of)m 10(all)m 11(ones.)m 15(It)m 11(depends)m 11(on)m 11(the)m 11(size)m 11(of)m 10(the)m 11(metric)m 11(\014eld,)m 11(which)m 11(is)m 11(16)m 10(bits)m 11(in)m 11(router)m 11(links)m 11(advertisements,)m 11(and)m 104 1695 p (24)s 10(bits)m 11(in)m 10(both)m 10(summary)m 11(and)m 10(AS)m 11(external)m 10(links)m 11(advertisements.)m t-bol.300 @sf 0 1778 p (DefaultDestination)s t-rom.300 @sf 21(The)m 12(Destination)m 11(ID)m 12(that)m 12(indicates)m 12(the)m 11(default)m 12(route.)m 18(This)m 12(route)m 12(is)m 12(used)m 11(when)m 12(no)m 12(other)m 12(matching)m 104 1828 p (routing)s 11(table)m 12(entry)m 11(can)m 11(be)m 12(found.)m 17(The)m 11(default)m 12(destination)m 11(can)m 11(only)m 12(be)m 11(advertised)m 12(in)m 11(AS)m 11(external)m 12(link)m 11(advertise-)m 104 1877 p (ments)s 10(and)m 11(in)m 10(type)m 10 r 51 c 11(summary)m 10(link)m 11(advertisements)m 10(for)m 11(stub)m 10(areas.)m 14(Its)m 10(value)m 11(is)m 10(the)m 10(IP)m 11(address)m c-med.300 @sf 10(0.0.0.0)m t-rom.300 @sf 46 c 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(109])m @eop 108 @bop0 108 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p 84 c (OS)s t-rom.300 @sf 53(The)m 9 r 84 c -2(ype)m 7(of)m 9(Service)m 9(that)m 8(the)m 9(following)m 9(cost)m 8(concerns.)m 14(The)m 8(encoding)m 9(of)m 9 r 84 c (OS)s 8(in)m 8(OSPF)m 9(link)m 9(state)m 8(advertisements)m 136 245 p (is)s 11(described)m 10(in)m 11(Section)m 10(12.3.)m t-bol.300 @sf 0 328 p (metric)s t-rom.300 @sf 21(The)m 10(cost)m 11(of)m 10(this)m 10(route.)m 14(Interpretation)m 11(depends)m 10(on)m 11(the)m 10(external)m 10(type)m 11(indication)m 10(\(bit)m 11 r 69 c 10(above\).)m t-bol.300 @sf 0 411 p (External)s 10(Route)m 11 r 84 c -3(ag)m t-rom.300 @sf 20 r 65 c 12(32-bit)m 12(\014eld)m 12(attached)m 12(to)m 12(each)m 12(external)m 12(route.)m 19(This)m 12(is)m 12(not)m 12(used)m 12(by)m 12(the)m 12(OSPF)m 12(protocol)m 12(itself.)m 19(It)m 136 461 p (may)s 8(be)m 8(used)m 7(to)m 8(communicate)m 7(information)m 8(between)m 8(AS)m 7(boundary)m 8(routers;)m 8(the)m 8(precise)m 7(nature)m 8(of)m 8(such)m 7(information)m 136 511 p (is)s 11(outside)m 10(the)m 11(scope)m 10(of)m 11(this)m 10(speci\014cation.)m 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(108])m @eop 107 @bop0 107 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (A.4.5)s 42(AS)m 10(external)m 10(link)m 11(advertisements)m t-rom.300 @sf 0 289 p (AS)s 11(external)m 11(link)m 10(advertisements)m 11(are)m 11(the)m 11 r 84 c -2(ype)m 10 r 53 c 10(link)m 11(state)m 11(advertisements.)m 15(These)m 11(advertisements)m 10(are)m 11(originated)m 11(by)m 11(AS)m 0 338 p (boundary)s 9(routers.)m 14 r 65 c 9(separate)m 9(advertisement)m 9(is)m 9(made)m 9(for)m 10(each)m 9(destination)m 9(\(known)m 9(to)m 9(the)m 9(router\))m 10(which)m 9(is)m 9(external)m 9(to)m 9(the)m 0 388 p (AS.)s 10(For)m 11(details)m 10(concerning)m 11(the)m 10(construction)m 10(of)m 11(AS)m 10(external)m 11(link)m 10(advertisements,)m 11(see)m 10(Section)m 10(12.4.3.)m 0 454 p (AS)s 11(external)m 11(link)m 11(advertisements)m 11(usually)m 11(describe)m 11 r 97 c 12(particular)m 11(external)m 11(destination.)m 16(For)m 11(these)m 11(advertisements)m 11(the)m 11(Link)m 0 503 p (State)s 14(ID)m 13(\014eld)m 14(speci\014es)m 13(an)m 14(IP)m 14(network)m 13(number)m -1 r 46 c 22(AS)m 14(external)m 14(link)m 13(advertisements)m 14(are)m 13(also)m 14(used)m 14(to)m 13(describe)m 14 r 97 c 13(default)m 0 553 p (route.)s 19(Default)m 12(routes)m 12(are)m 12(used)m 12(when)m 12(no)m 11(speci\014c)m 12(route)m 12(exists)m 12(to)m 12(the)m 12(destination.)m 19(When)m 12(describing)m 12 r 97 c 12(default)m 12(route,)m 12(the)m 0 603 p (Link)s 10(State)m 11(ID)m 10(is)m 11(always)m 10(set)m 10(to)m 11(DefaultDestination)m 10 r 40 c c-med.300 @sf (0.0.0.0)s t-rom.300 @sf 41 c 11(and)m 10(the)m 11(Network)m 10(Mask)m 10(is)m 11(set)m 10(to)m c-med.300 @sf 11(0.0.0.0)m t-rom.300 @sf 46 c 0 668 p (Separate)s 9(costs)m 9(may)m 9(be)m 8(advertised)m 9(for)m 9(each)m 9(IP)m 9 r 84 c -2(ype)m 8(of)m 9(Service.)m 13(The)m 9(encoding)m 9(of)m 9 r 84 c (OS)s 8(in)m 9(OSPF)m 8(link)m 9(state)m 9(advertisements)m 0 718 p (is)s 12(described)m 11(in)m 12(Section)m 11(12.3.)m 17(Note)m 12(that)m 11(the)m 12(cost)m 11(for)m 12 r 84 c (OS)s 11 r 48 c 11(must)m 12(be)m 11(included,)m 12(and)m 11(is)m 12(always)m 11(listed)m 12(\014rst.)m 17(If)m 12(the)m t-bol.300 @sf 11 r 84 c -3(-bit)m t-rom.300 @sf 11(is)m 0 768 p (reset)s 10(in)m 10(the)m 10(advertisement')m -2 r 115 c t-bol.300 @sf 9(Option)m 10(\014eld)m t-rom.300 @sf 44 c 10(only)m 10 r 97 c 10(route)m 9(for)m 10 r 84 c (OS)s 9 r 48 c 10(is)m 10(described)m 10(by)m 10(the)m 10(advertisement.)m 13(Otherwise,)m 10(routes)m 0 818 p (for)s 9(the)m 9(other)m 9 r 84 c (OS)s 8(values)m 9(are)m 9(also)m 8(described;)m 10(if)m 9 r 97 c 9(cost)m 9(for)m 8 r 97 c 9(certain)m 9 r 84 c (OS)s 8(is)m 9(not)m 9(included,)m 9(its)m 9(cost)m 9(defaults)m 9(to)m 9(that)m 9(speci\014ed)m 0 868 p (for)s 10 r 84 c (OS)s 10(0.)m 0 872 p 27496776 14866678 5854576 32956661 33351352 47823339 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/t5_lsa.fig %%Creator: f2ps %%CreationDate: Wed Apr 10 12:54:05 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 89 501 507 727 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 484 219 moveto 499 219 lineto 499 279 lineto 484 279 lineto stroke % Polyline newpath 479 99 moveto 479 299 lineto stroke % Polyline newpath 159 99 moveto 159 299 lineto stroke % Polyline newpath 159 279 moveto 479 279 lineto stroke % Polyline newpath 399 99 moveto 399 119 lineto 479 119 lineto stroke % Polyline newpath 159 259 moveto 479 259 lineto stroke % Polyline newpath 459 139 moveto 479 139 lineto stroke % Polyline newpath 159 119 moveto 184 119 lineto stroke % Polyline newpath 159 139 moveto 184 139 lineto stroke % Polyline newpath 159 239 moveto 479 239 lineto stroke % Polyline newpath 164 229 moveto 144 229 lineto stroke % Polyline newpath 229 219 moveto 229 224 lineto stroke % Polyline newpath 219 219 moveto 219 224 lineto stroke % Polyline newpath 209 219 moveto 209 224 lineto stroke % Polyline newpath 199 219 moveto 199 224 lineto stroke % Polyline newpath 189 219 moveto 189 224 lineto stroke % Polyline newpath 179 219 moveto 179 224 lineto stroke % Polyline newpath 169 219 moveto 169 239 lineto stroke % Polyline newpath 239 219 moveto 239 239 lineto stroke % Polyline newpath 159 99 moveto 479 99 lineto stroke % Polyline newpath 159 219 moveto 479 219 lineto stroke % Polyline newpath 459 179 moveto 479 179 lineto stroke % Polyline newpath 459 159 moveto 479 159 lineto stroke % Polyline newpath 159 179 moveto 184 179 lineto stroke % Polyline newpath 159 159 moveto 184 159 lineto stroke % Polyline newpath 159 199 moveto 479 199 lineto stroke % Polyline newpath 399 89 moveto 399 99 lineto stroke % Polyline newpath 319 89 moveto 319 99 lineto stroke % Polyline newpath 239 89 moveto 239 99 lineto stroke /Courier findfont 12.222222 scalefont setfont 436 114 moveto 1 -1 scale (5) show 1 -1 scale 249 254 moveto 1 -1 scale (Forwarding address) show 1 -1 scale 249 274 moveto 1 -1 scale (External Route Tag) show 1 -1 scale 264 214 moveto 1 -1 scale (Network Mask) show 1 -1 scale 315 317 moveto 1 -1 scale (.) show 1 -1 scale 315 306 moveto 1 -1 scale (.) show 1 -1 scale 315 296 moveto 1 -1 scale (.) show 1 -1 scale 99 234 moveto 1 -1 scale (bit E) show 1 -1 scale 319 234 moveto 1 -1 scale (metric) show 1 -1 scale 524 269 moveto 1 -1 scale (TOS) show 1 -1 scale 194 234 moveto 1 -1 scale (TOS) show 1 -1 scale 504 254 moveto 1 -1 scale (for each) show 1 -1 scale 504 239 moveto 1 -1 scale (Repeated) show 1 -1 scale 249 154 moveto 1 -1 scale (Link State header) show 1 -1 scale 469 84 moveto 1 -1 scale (32) show 1 -1 scale 394 84 moveto 1 -1 scale (24) show 1 -1 scale 309 84 moveto 1 -1 scale (16) show 1 -1 scale 234 84 moveto 1 -1 scale (8) show 1 -1 scale 159 84 moveto 1 -1 scale (0) show 1 -1 scale showpage $F2psEnd endTexFig t-bol.300 @sf 0 1916 p (Network)s 10(Mask)m t-rom.300 @sf 21(The)m 8(IP)m 8(network)m 8(mask)m 7(for)m 8(the)m 8(advertised)m 8(destination.)m 13(For)m 8(example,)m 8(when)m 8(advertising)m 8 r 97 c 7(class)m 8 r 65 c 8(network)m 136 1966 p (the)s 11(mask)m c-med.300 @sf 10(0xff000000)m t-rom.300 @sf 11(would)m 10(be)m 11(used.)m 0 2067 p (For)s 10(each)m 10(speci\014ed)m 10(type)m 11(of)m 10(service,)m 10(the)m 10(following)m 10(\014elds)m 10(are)m 11(de\014ned.)m 13(The)m 10(number)m 11(of)m 10 r 84 c (OS)s 9(routes)m 10(included)m 10(can)m 11(be)m 10(calcu-)m 0 2117 p (lated)s 11(from)m 11(the)m 12(link)m 11(state)m 11(advertisement')m -1 r 115 c 10(length)m 11(\014eld.)m 17 r 86 c -4(alues)m 10(for)m 12 r 84 c (OS)s 10 r 48 c 11(must)m 11(be)m 12(speci\014ed;)m 11(they)m 12(are)m 11(listed)m 11(\014rst.)m 16(Other)m 0 2167 p (values)s 10(must)m 11(be)m 10(listed)m 11(in)m 10(order)m 11(of)m 10(increasing)m 11 r 84 c (OS)s 10(encoding.)m 14(For)m 10(example,)m 11(the)m 10(cost)m 11(for)m 10 r 84 c (OS)s 10(16)m 10(must)m 11(always)m 10(follow)m 11(the)m 0 2217 p (cost)s 10(for)m 11 r 84 c (OS)s 9 r 56 c 11(when)m 10(both)m 11(are)m 10(speci\014ed.)m t-bol.300 @sf 0 2318 p (bit)s 10 r 69 c t-rom.300 @sf 50(The)m 12(type)m 12(of)m 13(external)m 12(metric.)m 19(If)m 13(bit)m 12 r 69 c 12(is)m 12(set,)m 13(the)m 12(metric)m 12(speci\014ed)m 13(is)m 12 r 97 c 12 r 84 c -2(ype)m 11 r 50 c 13(external)m 12(metric.)m 19(This)m 13(means)m 12(the)m 136 2368 p (metric)s 12(is)m 12(considered)m 11(lar)m (ger)s 11(than)m 12(any)m 11(link)m 12(state)m 12(path.)m 17(If)m 12(bit)m 12 r 69 c 11(is)m 12(zero,)m 12(the)m 11(speci\014ed)m 12(metric)m 12(is)m 11 r 97 c 12 r 84 c -2(ype)m 11 r 49 c 11(external)m 136 2418 p (metric.)s 14(This)m 11(means)m 10(that)m 11(is)m 10(is)m 10(comparable)m 11(directly)m 10(\(without)m 11(translation\))m 10(to)m 10(the)m 11(link)m 10(state)m 11(metric.)m t-bol.300 @sf 0 2499 p (Forwarding)s 10(addr)m (ess)s t-rom.300 @sf 20(Data)m 14(traf)m (\014c)s 13(for)m 14(the)m 13(advertised)m 14(destination)m 14(will)m 14(be)m 13(forwarded)m 14(to)m 14(this)m 13(address.)m 24(If)m 14(the)m 14(Forward-)m 136 2549 p (ing)s 13(address)m 12(is)m 12(set)m 12(to)m 12(0.0.0.0,)m 13(data)m 12(traf)m (\014c)s 11(will)m 12(be)m 12(forwarded)m 12(instead)m 13(to)m 12(the)m 12(advertisement')m -1 r 115 c 11(originator)m 12(\(i.e.,)m 12(the)m 136 2599 p (responsible)s 11(AS)m 10(boundary)m 11(router\).)m 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(107])m @eop 106 @bop0 106 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (A.4.4)s 42(Summary)m 10(link)m 10(advertisements)m t-rom.300 @sf 0 283 p (Summary)s 11(link)m 10(advertisements)m 11(are)m 11(the)m 10 r 84 c -2(ype)m 10 r 51 c 11(and)m 10 r 52 c 11(link)m 11(state)m 10(advertisements.)m 15(These)m 10(advertisements)m 11(are)m 11(originated)m 10(by)m 0 333 p (area)s 10(border)m 10(routers.)m 14 r 65 c 10(separate)m 10(summary)m 10(link)m 10(advertisement)m 10(is)m 10(made)m 10(for)m 10(each)m 10(destination)m 10(\(known)m 10(to)m 10(the)m 10(router\))m 10(which)m 0 382 p (belongs)s 12(to)m 13(the)m 12(AS,)m 13(yet)m 12(is)m 13(outside)m 12(the)m 13(area.)m 20(For)m 12(details)m 13(concerning)m 12(the)m 13(construction)m 12(of)m 13(summary)m 12(link)m 13(advertisements,)m 0 432 p (see)s 10(Section)m 11(12.4.3.)m 0 492 p 84 c -2(ype)m 9 r 51 c 10(link)m 10(state)m 10(advertisements)m 10(are)m 11(used)m 10(when)m 10(the)m 10(destination)m 10(is)m 10(an)m 10(IP)m 10(network.)m 14(In)m 10(this)m 10(case)m 10(the)m 10(advertisement')m -1 r 115 c 9(Link)m 0 542 p (State)s 13(ID)m 13(\014eld)m 13(is)m 13(an)m 13(IP)m 13(network)m 13(number)m -1 r 46 c 20(When)m 14(the)m 13(destination)m 13(is)m 13(an)m 13(AS)m 13(boundary)m 13(router)m -1 r 44 c 13 r 97 c 13 r 84 c -2(ype)m 12 r 52 c 13(advertisement)m 13(is)m 0 592 p (used,)s 10(and)m 9(the)m 10(Link)m 9(State)m 10(ID)m 9(\014eld)m 9(is)m 10(the)m 9(AS)m 10(boundary)m 9(router)m 2 r 39 c -1 r 115 c 8(OSPF)m 10(Router)m 9(ID.)m 9(\(T)m -1 r 111 c 8(see)m 10(why)m 9(it)m 9(is)m 10(necessary)m 9(to)m 10(advertise)m 0 641 p (the)s 11(location)m 12(of)m 11(each)m 12(ASBR,)m 11(consult)m 12(Section)m 11(16.4.\))m 18(Other)m 11(than)m 12(the)m 11(dif)m (ference)s 11(in)m 11(the)m 12(Link)m 11(State)m 12(ID)m 11(\014eld,)m 12(the)m 12(format)m 11(of)m 0 691 p 84 c -2(ype)m 9 r 51 c 11(and)m 10 r 52 c 11(link)m 10(state)m 11(advertisements)m 10(is)m 10(identical.)m 0 751 p (For)s 13(stub)m 12(areas,)m 13(type)m 13 r 51 c 12(summary)m 13(link)m 12(advertisements)m 13(can)m 12(also)m 13(be)m 12(used)m 13(to)m 12(describe)m 13 r 97 c 12(\(per)m (-area\))s 12(default)m 13(route.)m 20(Default)m 0 801 p (summary)s 9(routes)m 10(are)m 9(used)m 9(in)m 9(stub)m 10(areas)m 9(instead)m 9(of)m 10(\015ooding)m 9 r 97 c 9(complete)m 9(set)m 10(of)m 9(external)m 9(routes.)m 14(When)m 9(describing)m 9 r 97 c 10(default)m 0 851 p (summary)s 12(route,)m 13(the)m 12(advertisement')m -2 r 115 c 11(Link)m 12(State)m 13(ID)m 12(is)m 12(always)m 12(set)m 12(to)m 12(DefaultDestination)m 12 r 40 c c-med.300 @sf (0.0.0.0)s t-rom.300 @sf 41 c 12(and)m 12(the)m 12(Network)m 0 900 p (Mask)s 10(is)m 11(set)m 10(to)m c-med.300 @sf 11(0.0.0.0)m t-rom.300 @sf 46 c 0 960 p (Separate)s 9(costs)m 9(may)m 9(be)m 8(advertised)m 9(for)m 9(each)m 9(IP)m 9 r 84 c -2(ype)m 8(of)m 9(Service.)m 13(The)m 9(encoding)m 9(of)m 9 r 84 c (OS)s 8(in)m 9(OSPF)m 8(link)m 9(state)m 9(advertisements)m 0 1010 p (is)s 12(described)m 11(in)m 12(Section)m 11(12.3.)m 17(Note)m 12(that)m 11(the)m 12(cost)m 11(for)m 12 r 84 c (OS)s 11 r 48 c 11(must)m 12(be)m 11(included,)m 12(and)m 11(is)m 12(always)m 11(listed)m 12(\014rst.)m 17(If)m 12(the)m t-bol.300 @sf 11 r 84 c -3(-bit)m t-rom.300 @sf 11(is)m 0 1060 p (reset)s 10(in)m 10(the)m 10(advertisement')m -2 r 115 c t-bol.300 @sf 9(Option)m 10(\014eld)m t-rom.300 @sf 44 c 10(only)m 10 r 97 c 10(route)m 9(for)m 10 r 84 c (OS)s 9 r 48 c 10(is)m 10(described)m 10(by)m 10(the)m 10(advertisement.)m 13(Otherwise,)m 10(routes)m 0 1110 p (for)s 9(the)m 9(other)m 9 r 84 c (OS)s 8(values)m 9(are)m 9(also)m 8(described;)m 10(if)m 9 r 97 c 9(cost)m 9(for)m 8 r 97 c 9(certain)m 9 r 84 c (OS)s 8(is)m 9(not)m 9(included,)m 9(its)m 9(cost)m 9(defaults)m 9(to)m 9(that)m 9(speci\014ed)m 0 1159 p (for)s 10 r 84 c (OS)s 10(0.)m 0 1164 p 27496776 12301189 5854576 35522150 33351352 47823339 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/t3_lsa.fig %%Creator: f2ps %%CreationDate: Wed Apr 10 12:54:03 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 89 540 507 727 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 399 99 moveto 399 119 lineto 479 119 lineto stroke % Polyline newpath 159 239 moveto 479 239 lineto stroke % Polyline newpath 479 99 moveto 479 279 lineto stroke % Polyline newpath 159 99 moveto 159 279 lineto stroke % Polyline newpath 459 139 moveto 479 139 lineto stroke % Polyline newpath 159 119 moveto 184 119 lineto stroke % Polyline newpath 159 139 moveto 184 139 lineto stroke % Polyline newpath 239 219 moveto 239 239 lineto stroke % Polyline newpath 484 219 moveto 499 219 lineto 499 239 lineto 484 239 lineto stroke % Polyline newpath 159 99 moveto 479 99 lineto stroke % Polyline newpath 159 219 moveto 479 219 lineto stroke % Polyline newpath 459 179 moveto 479 179 lineto stroke % Polyline newpath 459 159 moveto 479 159 lineto stroke % Polyline newpath 159 179 moveto 184 179 lineto stroke % Polyline newpath 159 159 moveto 184 159 lineto stroke % Polyline newpath 159 199 moveto 479 199 lineto stroke % Polyline newpath 399 89 moveto 399 99 lineto stroke % Polyline newpath 319 89 moveto 319 99 lineto stroke % Polyline newpath 239 89 moveto 239 99 lineto stroke /Courier findfont 12.222222 scalefont setfont 414 114 moveto 1 -1 scale (3 or 4) show 1 -1 scale 259 214 moveto 1 -1 scale (Network Mask) show 1 -1 scale 329 234 moveto 1 -1 scale (metric) show 1 -1 scale 519 249 moveto 1 -1 scale (TOS) show 1 -1 scale 189 234 moveto 1 -1 scale (TOS) show 1 -1 scale 504 234 moveto 1 -1 scale (for each) show 1 -1 scale 504 219 moveto 1 -1 scale (Repeated) show 1 -1 scale 314 274 moveto 1 -1 scale (.) show 1 -1 scale 314 264 moveto 1 -1 scale (.) show 1 -1 scale 314 254 moveto 1 -1 scale (.) show 1 -1 scale 249 154 moveto 1 -1 scale (Link State header) show 1 -1 scale 469 84 moveto 1 -1 scale (32) show 1 -1 scale 394 84 moveto 1 -1 scale (24) show 1 -1 scale 309 84 moveto 1 -1 scale (16) show 1 -1 scale 234 84 moveto 1 -1 scale (8) show 1 -1 scale 159 84 moveto 1 -1 scale (0) show 1 -1 scale showpage $F2psEnd endTexFig t-bol.300 @sf 0 2026 p (Network)s 10(Mask)m t-rom.300 @sf 21(For)m 11 r 84 c -2(ype)m 9 r 51 c 11(link)m 10(state)m 11(advertisements,)m 10(this)m 10(indicates)m 11(the)m 10(destination')m -1 r 115 c 10(IP)m 10(network)m 10(mask.)m 14(For)m 11(example,)m 136 2076 p (when)s 11(advertising)m 11(the)m 11(location)m 11(of)m 11 r 97 c 11(class)m 11 r 65 c 11(network)m 11(the)m 11(value)m c-med.300 @sf 11(0xff000000)m t-rom.300 @sf 11(would)m 11(be)m 11(used.)m 15(This)m 11(\014eld)m 11(is)m 11(not)m 136 2126 p (meaningful)s 11(and)m 10(must)m 11(be)m 10(zero)m 11(for)m 10 r 84 c -2(ype)m 9 r 52 c 11(link)m 10(state)m 11(advertisements.)m 0 2209 p (For)s 10(each)m 10(speci\014ed)m 10(type)m 11(of)m 10(service,)m 10(the)m 10(following)m 10(\014elds)m 10(are)m 11(de\014ned.)m 13(The)m 10(number)m 11(of)m 10 r 84 c (OS)s 9(routes)m 10(included)m 10(can)m 11(be)m 10(calcu-)m 0 2258 p (lated)s 11(from)m 11(the)m 12(link)m 11(state)m 11(advertisement')m -1 r 115 c 10(length)m 11(\014eld.)m 17 r 86 c -4(alues)m 10(for)m 12 r 84 c (OS)s 10 r 48 c 11(must)m 11(be)m 12(speci\014ed;)m 11(they)m 12(are)m 11(listed)m 11(\014rst.)m 16(Other)m 0 2308 p (values)s 10(must)m 11(be)m 10(listed)m 11(in)m 10(order)m 11(of)m 10(increasing)m 11 r 84 c (OS)s 10(encoding.)m 14(For)m 10(example,)m 11(the)m 10(cost)m 11(for)m 10 r 84 c (OS)s 10(16)m 10(must)m 11(always)m 10(follow)m 11(the)m 0 2358 p (cost)s 10(for)m 11 r 84 c (OS)s 9 r 56 c 11(when)m 10(both)m 11(are)m 10(speci\014ed.)m t-bol.300 @sf 0 2441 p 84 c (OS)s t-rom.300 @sf 53(The)m 9 r 84 c -2(ype)m 7(of)m 9(Service)m 9(that)m 8(the)m 9(following)m 9(cost)m 8(concerns.)m 14(The)m 8(encoding)m 9(of)m 9 r 84 c (OS)s 8(in)m 8(OSPF)m 9(link)m 9(state)m 8(advertisements)m 136 2491 p (is)s 11(described)m 10(in)m 11(Section)m 10(12.3.)m t-bol.300 @sf 0 2566 p (metric)s t-rom.300 @sf 21(The)m 10(cost)m 11(of)m 10(this)m 10(route.)m 14(Expressed)m 11(in)m 10(the)m 11(same)m 10(units)m 10(as)m 11(the)m 10(interface)m 11(costs)m 10(in)m 10(the)m 11(router)m 10(links)m 11(advertisements.)m 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(106])m @eop 105 @bop0 105 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (A.4.3)s 42(Network)m 10(links)m 10(advertisements)m t-rom.300 @sf 0 291 p (Network)s 12(links)m 12(advertisements)m 12(are)m 12(the)m 12 r 84 c -1(ype)m 11 r 50 c 12(link)m 12(state)m 12(advertisements.)m 19 r 65 c 12(network)m 12(links)m 12(advertisement)m 12(is)m 12(originated)m 0 341 p (for)s 9(each)m 8(transit)m 9(network)m 9(in)m 8(the)m 9(area.)m 13 r 65 c 9(transit)m 8(network)m 9(is)m 9 r 97 c 8(multi-access)m 9(network)m 9(that)m 8(has)m 9(more)m 8(than)m 9(one)m 9(attached)m 8(router)m -1 r 46 c 0 390 p (The)s 12(network)m 12(links)m 12(advertisement)m 12(is)m 12(originated)m 12(by)m 13(the)m 12(network')m -2 r 115 c 11(Designated)m 13(Router)m -2 r 46 c 18(The)m 12(advertisement)m 12(describes)m 12(all)m 0 440 p (routers)s 11(attached)m 12(to)m 11(the)m 12(network,)m 11(including)m 12(the)m 11(Designated)m 12(Router)m 11(itself.)m 17(The)m 11(advertisement')m -1 r 115 c 11(Link)m 11(State)m 11(ID)m 12(\014eld)m 11(lists)m 0 490 p (the)s 10(IP)m 11(interface)m 10(address)m 11(of)m 10(the)m 10(Designated)m 11(Router)m -1 r 46 c 0 558 p (The)s 10(distance)m 11(from)m 10(the)m 10(network)m 11(to)m 10(all)m 10(attached)m 11(routers)m 10(is)m 10(zero,)m 11(for)m 10(all)m 11(types)m 10(of)m 10(service.)m 14(This)m 10(is)m 11(why)m 10(the)m 11 r 84 c (OS)s 9(and)m 10(metric)m 0 608 p (\014elds)s 13(need)m 13(not)m 13(be)m 13(speci\014ed)m 13(in)m 13(the)m 12(network)m 13(links)m 13(advertisement.)m 22(For)m 13(details)m 13(concerning)m 13(the)m 12(construction)m 13(of)m 13(network)m 0 657 p (links)s 10(advertisements,)m 11(see)m 10(Section)m 11(12.4.2.)m 0 667 p 27759903 12301189 5854576 35522150 33614479 47823339 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/t2_lsa.fig %%Creator: f2ps %%CreationDate: Wed Apr 10 12:54:02 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 89 540 511 727 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 399 99 moveto 399 119 lineto 479 119 lineto stroke % Polyline newpath 459 139 moveto 479 139 lineto stroke % Polyline newpath 159 119 moveto 184 119 lineto stroke % Polyline newpath 159 139 moveto 184 139 lineto stroke % Polyline newpath 159 99 moveto 159 279 lineto stroke % Polyline newpath 479 99 moveto 479 279 lineto stroke % Polyline newpath 159 239 moveto 479 239 lineto stroke % Polyline newpath 484 219 moveto 499 219 lineto 499 239 lineto 484 239 lineto stroke % Polyline newpath 159 99 moveto 479 99 lineto stroke % Polyline newpath 159 219 moveto 479 219 lineto stroke % Polyline newpath 459 179 moveto 479 179 lineto stroke % Polyline newpath 459 159 moveto 479 159 lineto stroke % Polyline newpath 159 179 moveto 184 179 lineto stroke % Polyline newpath 159 159 moveto 184 159 lineto stroke % Polyline newpath 159 199 moveto 479 199 lineto stroke % Polyline newpath 399 89 moveto 399 99 lineto stroke % Polyline newpath 319 89 moveto 319 99 lineto stroke % Polyline newpath 239 89 moveto 239 99 lineto stroke /Courier findfont 12.222222 scalefont setfont 314 269 moveto 1 -1 scale (.) show 1 -1 scale 314 259 moveto 1 -1 scale (.) show 1 -1 scale 314 249 moveto 1 -1 scale (.) show 1 -1 scale 269 214 moveto 1 -1 scale (Network Mask) show 1 -1 scale 514 264 moveto 1 -1 scale (router) show 1 -1 scale 509 249 moveto 1 -1 scale (attached) show 1 -1 scale 509 234 moveto 1 -1 scale (for each) show 1 -1 scale 509 219 moveto 1 -1 scale (Repeated) show 1 -1 scale 259 234 moveto 1 -1 scale (Attached Router) show 1 -1 scale 434 114 moveto 1 -1 scale (2) show 1 -1 scale 249 154 moveto 1 -1 scale (Link State header) show 1 -1 scale 469 84 moveto 1 -1 scale (32) show 1 -1 scale 394 84 moveto 1 -1 scale (24) show 1 -1 scale 309 84 moveto 1 -1 scale (16) show 1 -1 scale 234 84 moveto 1 -1 scale (8) show 1 -1 scale 159 84 moveto 1 -1 scale (0) show 1 -1 scale showpage $F2psEnd endTexFig t-bol.300 @sf 0 1556 p (Network)s 10(Mask)m t-rom.300 @sf 54(The)m 16(IP)m 16(address)m 16(mask)m 16(for)m 16(the)m 16(network.)m 31(For)m 16(example,)m 17 r 97 c 16(class)m 17 r 65 c 16(network)m 16(would)m 16(have)m 16(the)m 16(mask)m c-med.300 @sf 318 1606 p (0xff000000)s t-rom.300 @sf 46 c t-bol.300 @sf 0 1689 p (Attached)s 10(Router)m t-rom.300 @sf 21(The)m 10(Router)m 10(IDs)m 9(of)m 10(each)m 10(of)m 10(the)m 9(routers)m 10(attached)m 10(to)m 10(the)m 9(network.)m 14(Actually)m -2 r 44 c 9(only)m 10(those)m 10(routers)m 9(that)m 10(are)m 318 1738 p (fully)s 9(adjacent)m 9(to)m 9(the)m 8(Designated)m 9(Router)m 9(are)m 9(listed.)m 13(The)m 9(Designated)m 9(Router)m 9(includes)m 8(itself)m 9(in)m 9(this)m 9(list.)m 318 1788 p (The)s 11(number)m 10(of)m 10(routers)m 11(included)m 10(can)m 11(be)m 10(deduced)m 10(from)m 11(the)m 10(link)m 11(state)m 10(advertisement')m -1 r 115 c 9(length)m 11(\014eld.)m 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(105])m @eop 104 @bop0 104 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 173 195 p (stub)s 11(networks)m 10(whose)m 11(network)m 10(mask)m 11(is)m c-med.300 @sf 10(0xffffffff)m t-rom.300 @sf 46 c 615 244 p 893 2 ru 615 294 p 2 50 ru t-ita.300 @sf 640 279 p 84 c -2(ype)m 742 294 p 2 50 ru 768 279 p (Description)s 1507 294 p 2 50 ru 615 295 p 893 2 ru 615 345 p 2 50 ru t-rom.300 @sf 669 330 p 49 c 742 345 p 2 50 ru 768 330 p (Point-to-point)s 10(connection)m 11(to)m 10(another)m 11(router)m 1507 345 p 2 50 ru 615 395 p 2 50 ru 669 380 p 50 c 742 395 p 2 50 ru 768 380 p (Connection)s 10(to)m 11 r 97 c 10(transit)m 11(network)m 1507 395 p 2 50 ru 615 445 p 2 50 ru 669 430 p 51 c 742 445 p 2 50 ru 768 430 p (Connection)s 10(to)m 11 r 97 c 10(stub)m 11(network)m 1507 445 p 2 50 ru 615 495 p 2 50 ru 669 480 p 52 c 742 495 p 2 50 ru 768 480 p 86 c -2(irtual)m 10(link)m 1507 495 p 2 50 ru 615 496 p 893 2 ru t-bol.300 @sf 0 587 p (Link)s 10(ID)m t-rom.300 @sf 31(Identi\014es)m 11(the)m 10(object)m 10(that)m 10(this)m 10(router)m 10(link)m 10(connects)m 10(to.)m 14 r 86 c -3(alue)m 9(depends)m 10(on)m 10(the)m 10(link')m -1 r 115 c 9(type.)m 14(When)m 10(connecting)m 10(to)m 173 637 p (an)s 10(object)m 9(that)m 9(also)m 9(originates)m 10 r 97 c 9(link)m 9(state)m 10(advertisement)m 9(\(i.e.,)m 9(another)m 10(router)m 9(or)m 9 r 97 c 9(transit)m 10(network\))m 9(the)m 9(Link)m 9(ID)m 173 687 p (is)s 10(equal)m 10(to)m 9(the)m 10(other)m 10(advertisement')m -1 r 115 c 8(Link)m 10(State)m 10(ID.)m 9(This)m 10(provides)m 10(the)m 9(key)m 10(for)m 10(looking)m 9(up)m 10(said)m 10(advertisement)m 173 737 p (in)s 11(the)m 10(link)m 11(state)m 10(database.)m 14(See)m 10(Section)m 11(12.2)m 10(for)m 11(more)m 10(details.)m 703 785 p 717 2 ru 702 835 p 2 50 ru t-ita.300 @sf 728 820 p 84 c -2(ype)m 830 835 p 2 50 ru 856 820 p (Link)s 10(ID)m 1419 835 p 2 50 ru 703 836 p 717 2 ru 702 886 p 2 50 ru t-rom.300 @sf 757 871 p 49 c 830 886 p 2 50 ru 856 871 p (Neighboring)s 10(router)m 2 r 39 c -1 r 115 c 9(ID)m 1419 886 p 2 50 ru 702 936 p 2 50 ru 757 921 p 50 c 830 936 p 2 50 ru 856 921 p (IP)s 10(address)m 11(of)m 10(Designated)m 11(Router)m 1419 936 p 2 50 ru 702 986 p 2 50 ru 757 971 p 51 c 830 986 p 2 50 ru 856 971 p (IP)s 10(network/subnet)m 11(number)m 1419 986 p 2 50 ru 702 1035 p 2 50 ru 757 1020 p 52 c 830 1035 p 2 50 ru 856 1020 p (Neighboring)s 10(router)m 2 r 39 c -1 r 115 c 9(ID)m 1419 1035 p 2 50 ru 703 1037 p 717 2 ru t-bol.300 @sf 0 1128 p (Link)s 10(Data)m t-rom.300 @sf 21(Contents)m 11(again)m 11(depend)m 10(on)m 11(the)m 11(link')m -1 r 115 c 9 r 84 c -1(ype)m 9(\014eld.)m 15(For)m 11(connections)m 11(to)m 11(stub)m 10(network,)m 11(it)m 11(speci\014es)m 11(the)m 10(network)m 173 1178 p (mask.)s 18(For)m 12(the)m 12(other)m 12(link)m 12(types)m 11(it)m 12(speci\014es)m 12(the)m 12(router)m 1 r 39 c -1 r 115 c 11(associated)m 12(IP)m 11(interface)m 12(address.)m 18(This)m 12(latter)m 12(piece)m 11(of)m 173 1228 p (information)s 13(is)m 13(needed)m 13(during)m 13(the)m 13(routing)m 13(table)m 13(build)m 13(process,)m 14(when)m 13(calculating)m 13(the)m 13(IP)m 13(address)m 13(of)m 13(the)m 13(next)m 173 1278 p (hop.)s 14(See)m 11(Section)m 10(16.1.1)m 11(for)m 10(more)m 10(details.)m t-bol.300 @sf 0 1361 p (#metrics)s t-rom.300 @sf 21(The)m 12(number)m 11(of)m 12(dif)m (ferent)s 11 r 84 c (OS)s 11(metrics)m 12(given)m 12(for)m 12(this)m 11(link,)m 13(not)m 11(counting)m 12(the)m 12(required)m 12(metric)m 11(for)m 12 r 84 c (OS)s 11(0.)m 18(For)m 173 1410 p (example,)s 11(if)m 10(no)m 11(additional)m 10 r 84 c (OS)s 10(metrics)m 10(are)m 11(given,)m 10(this)m 10(\014eld)m 11(should)m 10(be)m 11(set)m 10(to)m 11(0.)m t-bol.300 @sf 0 1493 p 84 c (OS)s 10 r 48 c 10(metric)m t-rom.300 @sf 21(The)m 10(cost)m 11(of)m 10(using)m 11(this)m 10(router)m 10(link)m 11(for)m 10 r 84 c (OS)s 10(0.)m 0 1603 p (For)s 11(each)m 11(link,)m 12(separate)m 11(metrics)m 11(may)m 11(be)m 11(speci\014ed)m 11(for)m 12(each)m 11 r 84 c -2(ype)m 10(of)m 11(Service)m 11(\(T)m (OS\).)s 11(The)m 11(metric)m 11(for)m 11 r 84 c (OS)s 11 r 48 c 11(must)m 11(always)m 0 1652 p (be)s 9(included,)m 10(and)m 9(was)m 10(discussed)m 9(above.)m 14(Metrics)m 9(for)m 10(non-zero)m 9 r 84 c (OS)s 9(are)m 9(described)m 10(below)m -2 r 46 c 12(The)m 10(encoding)m 9(of)m 10 r 84 c (OS)s 8(in)m 10(OSPF)m 0 1702 p (link)s 9(state)m 9(advertisements)m 9(is)m 9(described)m 8(in)m 9(Section)m 9(12.3.)m 14(Note)m 8(that)m 9(the)m 9(cost)m 9(for)m 9(non-zero)m 9 r 84 c (OS)s 8(values)m 9(that)m 9(are)m 9(not)m 9(speci\014ed)m 0 1752 p (defaults)s 11(to)m 12(the)m 11 r 84 c (OS)s 11 r 48 c 11(cost.)m 17(Metrics)m 11(must)m 11(be)m 12(listed)m 11(in)m 11(order)m 12(of)m 11(increasing)m 11 r 84 c (OS)s 11(encoding.)m 17(For)m 11(example,)m 11(the)m 12(metric)m 11(for)m 0 1802 p 84 c (OS)s 10(16)m 10(must)m 10(always)m 11(follow)m 10(the)m 11(metric)m 10(for)m 11 r 84 c (OS)s 9 r 56 c 11(when)m 10(both)m 10(are)m 11(speci\014ed.)m t-bol.300 @sf 0 1911 p 84 c (OS)s t-rom.300 @sf 90(IP)m 14(type)m 15(of)m 14(service)m 14(that)m 14(this)m 14(metric)m 15(refers)m 14(to.)m 25(The)m 14(encoding)m 15(of)m 14 r 84 c (OS)s 13(in)m 14(OSPF)m 15(link)m 14(state)m 14(advertisements)m 14(is)m 173 1961 p (described)s 11(in)m 10(Section)m 11(12.3.)m t-bol.300 @sf 0 2044 p (metric)s t-rom.300 @sf 58(The)m 10(cost)m 11(of)m 10(using)m 10(this)m 11(outbound)m 10(router)m 11(link,)m 10(for)m 11(traf)m (\014c)s 9(of)m 11(the)m 10(speci\014ed)m 10 r 84 c (OS.)s 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(104])m @eop 103 @bop0 103 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (A.4.2)s 42(Router)m 10(links)m 10(advertisements)m t-rom.300 @sf 0 291 p (Router)s 11(links)m 12(advertisements)m 11(are)m 12(the)m 11 r 84 c -2(ype)m 11 r 49 c 11(link)m 12(state)m 11(advertisements.)m 17(Each)m 11(router)m 12(in)m 11(an)m 12(area)m 11(originates)m 12 r 97 c 11(router)m 11(links)m 0 341 p (advertisement.)s 25(The)m 14(advertisement)m 14(describes)m 14(the)m 14(state)m 14(and)m 15(cost)m 14(of)m 14(the)m 14(router)m 1 r 39 c -1 r 115 c 13(links)m 14(\(or)m 14(interfaces\))m 14(to)m 15(the)m 14(area.)m 25(All)m 0 390 p (of)s 12(the)m 13(router)m 1 r 39 c -1 r 115 c 12(links)m 12(to)m 12(the)m 13(area)m 12(must)m 13(be)m 12(described)m 13(in)m 12 r 97 c 13(single)m 12(router)m 12(links)m 13(advertisement.)m 20(For)m 12(details)m 13(concerning)m 12(the)m 0 440 p (construction)s 10(of)m 11(router)m 10(links)m 11(advertisements,)m 10(see)m 10(Section)m 11(12.4.1.)m 0 508 p (In)s 13(router)m 13(links)m 12(advertisements,)m 14(the)m 12(Link)m 13(State)m 13(ID)m 13(\014eld)m 12(is)m 13(set)m 13(to)m 13(the)m 12(router)m 2 r 39 c -1 r 115 c 11(OSPF)m 13(Router)m 13(ID.)m 13(The)m t-bol.300 @sf 12 r 84 c -3(-bit)m t-rom.300 @sf 12(is)m 13(set)m 13(in)m 12(the)m 0 558 p (advertisement')s -1 r 115 c t-bol.300 @sf 12(Option)m t-rom.300 @sf 14(\014eld)m 14(if)m 14(and)m 13(only)m 14(if)m 14(the)m 13(router)m 14(is)m 14(able)m 14(to)m 13(calculate)m 14 r 97 c 14(separate)m 13(set)m 14(of)m 14(routes)m 13(for)m 14(each)m 14(IP)m 14 r 84 c (OS.)s 0 608 p (Router)s 10(links)m 11(advertisements)m 10(are)m 11(\015ooded)m 10(throughout)m 10 r 97 c 11(single)m 10(area)m 11(only)m -2 r 46 c 0 621 p 29141319 18221547 4341596 29601792 33482915 47823339 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/t1_lsa.fig %%Creator: f2ps %%CreationDate: Wed Apr 10 12:54:01 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 66 450 509 727 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 399 99 moveto 399 119 lineto 479 119 lineto stroke % Polyline newpath 129 169 moveto 234 169 lineto 234 209 lineto stroke % Polyline newpath 129 189 moveto 224 189 lineto 224 209 lineto stroke % Polyline newpath 459 139 moveto 479 139 lineto stroke % Polyline newpath 159 119 moveto 184 119 lineto stroke % Polyline newpath 159 139 moveto 184 139 lineto stroke % Polyline newpath 149 279 moveto 129 279 lineto 129 339 lineto 149 339 lineto stroke % Polyline newpath 489 219 moveto 509 219 lineto 509 339 lineto 489 339 lineto stroke % Polyline newpath 159 319 moveto 479 319 lineto stroke % Polyline newpath 159 339 moveto 479 339 lineto stroke % Polyline newpath 319 319 moveto 319 339 lineto stroke % Polyline newpath 239 319 moveto 239 339 lineto stroke % Polyline newpath 479 319 moveto 479 379 lineto stroke % Polyline newpath 159 319 moveto 159 379 lineto stroke [1 3.200000] 0 setdash % Polyline newpath 479 299 moveto 479 319 lineto stroke [] 0 setdash [1 3.200000] 0 setdash % Polyline newpath 159 299 moveto 159 319 lineto stroke [] 0 setdash % Polyline newpath 159 279 moveto 479 279 lineto stroke % Polyline newpath 159 259 moveto 479 259 lineto stroke % Polyline newpath 209 199 moveto 209 204 lineto stroke % Polyline newpath 199 199 moveto 199 204 lineto stroke % Polyline newpath 189 199 moveto 189 204 lineto stroke % Polyline newpath 179 199 moveto 179 204 lineto stroke % Polyline newpath 169 199 moveto 169 204 lineto stroke % Polyline newpath 229 199 moveto 229 219 lineto stroke % Polyline newpath 219 199 moveto 219 219 lineto stroke % Polyline newpath 319 199 moveto 319 219 lineto stroke % Polyline newpath 239 199 moveto 239 219 lineto stroke % Polyline newpath 159 239 moveto 479 239 lineto stroke % Polyline newpath 159 99 moveto 159 299 lineto stroke % Polyline newpath 479 99 moveto 479 299 lineto stroke % Polyline newpath 159 99 moveto 479 99 lineto stroke % Polyline newpath 319 279 moveto 319 299 lineto stroke % Polyline newpath 239 279 moveto 239 299 lineto stroke % Polyline newpath 159 299 moveto 479 299 lineto stroke % Polyline newpath 319 259 moveto 319 279 lineto stroke % Polyline newpath 239 259 moveto 239 279 lineto stroke % Polyline newpath 159 219 moveto 479 219 lineto stroke % Polyline newpath 459 179 moveto 479 179 lineto stroke % Polyline newpath 459 159 moveto 479 159 lineto stroke % Polyline newpath 159 179 moveto 184 179 lineto stroke % Polyline newpath 159 159 moveto 184 159 lineto stroke % Polyline newpath 159 199 moveto 479 199 lineto stroke % Polyline newpath 399 89 moveto 399 99 lineto stroke % Polyline newpath 319 89 moveto 319 99 lineto stroke % Polyline newpath 239 89 moveto 239 99 lineto stroke /Courier findfont 12.222222 scalefont setfont 189 214 moveto 1 -1 scale (0) show 1 -1 scale 314 369 moveto 1 -1 scale (.) show 1 -1 scale 314 359 moveto 1 -1 scale (.) show 1 -1 scale 314 349 moveto 1 -1 scale (.) show 1 -1 scale 519 284 moveto 1 -1 scale (times) show 1 -1 scale 514 269 moveto 1 -1 scale (# links) show 1 -1 scale 304 314 moveto 1 -1 scale (...) show 1 -1 scale 79 314 moveto 1 -1 scale (times) show 1 -1 scale 74 299 moveto 1 -1 scale (# TOS) show 1 -1 scale 374 334 moveto 1 -1 scale (metric) show 1 -1 scale 274 334 moveto 1 -1 scale (0) show 1 -1 scale 184 334 moveto 1 -1 scale (TOS) show 1 -1 scale 80 193 moveto 1 -1 scale (Bit E) show 1 -1 scale 80 176 moveto 1 -1 scale (Bit B) show 1 -1 scale 269 214 moveto 1 -1 scale (0) show 1 -1 scale 369 214 moveto 1 -1 scale (# links) show 1 -1 scale 374 294 moveto 1 -1 scale (metric) show 1 -1 scale 274 294 moveto 1 -1 scale (0) show 1 -1 scale 184 294 moveto 1 -1 scale (TOS) show 1 -1 scale 349 274 moveto 1 -1 scale (TOS 0 metric) show 1 -1 scale 259 274 moveto 1 -1 scale (# TOS) show 1 -1 scale 184 274 moveto 1 -1 scale (Type) show 1 -1 scale 279 254 moveto 1 -1 scale (Link Data) show 1 -1 scale 279 234 moveto 1 -1 scale (Link ID) show 1 -1 scale 249 154 moveto 1 -1 scale (Link State header) show 1 -1 scale 434 114 moveto 1 -1 scale (1) show 1 -1 scale 469 84 moveto 1 -1 scale (32) show 1 -1 scale 394 84 moveto 1 -1 scale (24) show 1 -1 scale 309 84 moveto 1 -1 scale (16) show 1 -1 scale 234 84 moveto 1 -1 scale (8) show 1 -1 scale 159 84 moveto 1 -1 scale (0) show 1 -1 scale showpage $F2psEnd endTexFig t-bol.300 @sf 0 1884 p (bit)s 10 r 69 c t-rom.300 @sf 87(When)m 10(set,)m 11(the)m 10(router)m 11(is)m 10(an)m 11(AS)m 10(boundary)m 10(router)m 11(\(E)m 10(is)m 11(for)m 10(external\))m t-bol.300 @sf 0 1967 p (bit)s 10 r 66 c t-rom.300 @sf 87(When)m 10(set,)m 11(the)m 10(router)m 11(is)m 10(an)m 11(area)m 10(border)m 10(router)m 11(\(B)m 10(is)m 11(for)m 10(border\))m t-bol.300 @sf 0 2050 p 35 c 10(links)m t-rom.300 @sf 57(The)m 9(number)m 10(of)m 9(router)m 10(links)m 9(described)m 10(by)m 9(this)m 9(advertisement.)m 14(This)m 9(must)m 10(be)m 9(the)m 10(total)m 9(collection)m 10(of)m 9(router)m 9(links)m 173 2100 p (to)s 11(the)m 10(area.)m 0 2209 p (The)s 12(following)m 12(\014elds)m 12(are)m 11(used)m 12(to)m 12(describe)m 12(each)m 12(router)m 12(link.)m 18(Each)m 12(router)m 11(link)m 12(is)m 12(typed)m 12(\(see)m 12(the)m 12(below)m 12 r 84 c -2(ype)m 10(\014eld\).)m 19(The)m 0 2259 p (type)s 10(\014eld)m 9(indicates)m 10(the)m 9(kind)m 10(of)m 10(link)m 9(being)m 10(described.)m 14(It)m 9(may)m 10(be)m 9 r 97 c 10(link)m 10(to)m 9 r 97 c 10(transit)m 9(network,)m 10(to)m 10(another)m 9(router)m 10(or)m 10(to)m 9 r 97 c 10(stub)m 0 2309 p (network.)s 16(The)m 11(values)m 12(of)m 11(all)m 11(the)m 11(other)m 11(\014elds)m 11(describing)m 12 r 97 c 11(router)m 11(link)m 11(depend)m 11(on)m 12(the)m 11(link')m -2 r 115 c 11(type.)m 16(For)m 11(example,)m 11(each)m 12(link)m 0 2359 p (has)s 11(an)m 12(associated)m 11(32-bit)m 11(data)m 12(\014eld.)m 16(For)m 11(links)m 12(to)m 11(stub)m 11(networks)m 12(this)m 11(\014eld)m 11(speci\014es)m 12(the)m 11(network')m -1 r 115 c 10(IP)m 11(address)m 12(mask.)m 16(For)m 0 2408 p (the)s 10(other)m 11(link)m 10(types)m 11(the)m 10(Link)m 10(Data)m 11(speci\014es)m 10(the)m 11(router)m 1 r 39 c -1 r 115 c 9(associated)m 11(IP)m 10(interface)m 11(address.)m t-bol.300 @sf 0 2518 p 84 c -2(ype)m t-rom.300 @sf 85 r 65 c 11(quick)m 11(description)m 10(of)m 11(the)m 11(router)m 11(link.)m 14(One)m 11(of)m 11(the)m 10(following.)m 15(Note)m 11(that)m 11(host)m 10(routes)m 11(are)m 11(classi\014ed)m 11(as)m 10(links)m 11(to)m 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(103])m @eop 102 @bop0 102 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (A.4.1)s 42(The)m 10(Link)m 10(State)m 11(Advertisement)m 10(header)m t-rom.300 @sf 0 291 p (All)s 16(link)m 16(state)m 15(advertisements)m 16(begin)m 16(with)m 16 r 97 c 15(common)m 16(20)m 16(byte)m 16(header)m -2 r 46 c 29(This)m 16(header)m 16(contains)m 15(enough)m 16(information)m 16(to)m 0 341 p (uniquely)s 11(identify)m 12(the)m 11(advertisement)m 11(\(LS)m 12(type,)m 11(Link)m 12(State)m 11(ID,)m 12(and)m 11(Advertising)m 11(Router\).)m 17(Multiple)m 11(instances)m 12(of)m 11(the)m 11(link)m 0 390 p (state)s 10(advertisement)m 9(may)m 10(exist)m 9(in)m 10(the)m 9(routing)m 10(domain)m 9(at)m 10(the)m 9(same)m 10(time.)m 13(It)m 10(is)m 10(then)m 9(necessary)m 10(to)m 9(determine)m 10(which)m 9(instance)m 0 440 p (is)s 10(more)m 11(recent.)m 14(This)m 10(is)m 10(accomplished)m 11(by)m 10(examining)m 10(the)m 11(LS)m 10(age,)m 10(LS)m 11(sequence)m 10(number)m 11(and)m 10(LS)m 10(checksum)m 11(\014elds)m 10(that)m 10(are)m 0 490 p (also)s 10(contained)m 11(in)m 10(the)m 11(link)m 10(state)m 10(advertisement)m 11(header)m -1 r 46 c 0 495 p 26444268 7564902 2236579 40258437 28680847 47823339 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/lshdr.fig %%Creator: f2ps %%CreationDate: Wed Apr 10 12:53:59 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 34 612 436 727 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 399 99 moveto 399 119 lineto stroke % Polyline newpath 479 99 moveto 479 199 lineto stroke % Polyline newpath 159 99 moveto 159 199 lineto stroke % Polyline newpath 319 179 moveto 319 199 lineto stroke % Polyline newpath 319 99 moveto 319 119 lineto stroke % Polyline newpath 159 199 moveto 479 199 lineto stroke % Polyline newpath 159 179 moveto 479 179 lineto stroke % Polyline newpath 159 159 moveto 479 159 lineto stroke % Polyline newpath 159 139 moveto 479 139 lineto stroke % Polyline newpath 159 119 moveto 479 119 lineto stroke % Polyline newpath 399 89 moveto 399 99 lineto stroke % Polyline newpath 319 89 moveto 319 99 lineto stroke % Polyline newpath 239 89 moveto 239 99 lineto stroke % Polyline newpath 159 99 moveto 479 99 lineto stroke /Courier findfont 12.222222 scalefont setfont 329 114 moveto 1 -1 scale (Options) show 1 -1 scale 374 194 moveto 1 -1 scale (length) show 1 -1 scale 194 194 moveto 1 -1 scale (LS checksum) show 1 -1 scale 249 174 moveto 1 -1 scale (LS sequence number) show 1 -1 scale 249 154 moveto 1 -1 scale (Advertising Router) show 1 -1 scale 264 134 moveto 1 -1 scale (Link State ID) show 1 -1 scale 414 113 moveto 1 -1 scale (LS type) show 1 -1 scale 209 114 moveto 1 -1 scale (LS age) show 1 -1 scale 469 84 moveto 1 -1 scale (32) show 1 -1 scale 394 84 moveto 1 -1 scale (24) show 1 -1 scale 309 84 moveto 1 -1 scale (16) show 1 -1 scale 234 84 moveto 1 -1 scale (8) show 1 -1 scale 159 84 moveto 1 -1 scale (0) show 1 -1 scale showpage $F2psEnd endTexFig t-bol.300 @sf 0 1083 p (LS)s 10(age)m t-rom.300 @sf 37(The)m 11(time)m 10(in)m 11(seconds)m 10(since)m 10(the)m 11(link)m 10(state)m 11(advertisement)m 10(was)m 11(originated.)m t-bol.300 @sf 0 1166 p (Options)s t-rom.300 @sf 21(The)m 11(optional)m 11(capabilities)m 12(supported)m 11(by)m 12(the)m 11(described)m 11(portion)m 12(of)m 11(the)m 11(routing)m 12(domain.)m 16(OSPF')m -1 r 115 c 10(optional)m 12(capa-)m 159 1216 p (bilities)s 10(are)m 10(documented)m 11(in)m 10(Section)m 11(A.2.)m t-bol.300 @sf 0 1299 p (LS)s 10(type)m t-rom.300 @sf 21(The)m 11(type)m 11(of)m 11(the)m 10(link)m 11(state)m 11(advertisement.)m 15(Each)m 11(link)m 11(state)m 11(type)m 10(has)m 11 r 97 c 11(separate)m 11(advertisement)m 11(format.)m 15(The)m 10(link)m 159 1349 p (state)s 10(types)m 10(are)m 11(as)m 10(follows)m 11(\(see)m 10(Section)m 10(12.1.3)m 11(for)m 10(further)m 11(explanation\):)m 709 1405 p 692 2 ru 708 1455 p 2 50 ru t-ita.300 @sf 733 1440 p (LS)s 11 r 84 c -2(ype)m 890 1455 p 2 50 ru 916 1440 p (Description)s 1399 1455 p 2 50 ru 709 1457 p 692 2 ru 708 1506 p 2 50 ru t-rom.300 @sf 789 1491 p 49 c 890 1506 p 2 50 ru 916 1491 p (Router)s 10(links)m 1399 1506 p 2 50 ru 708 1556 p 2 50 ru 789 1541 p 50 c 890 1556 p 2 50 ru 916 1541 p (Network)s 10(links)m 1399 1556 p 2 50 ru 708 1606 p 2 50 ru 789 1591 p 51 c 890 1606 p 2 50 ru 916 1591 p (Summary)s 10(link)m 10(\(IP)m 11(network\))m 1399 1606 p 2 50 ru 708 1656 p 2 50 ru 789 1641 p 52 c 890 1656 p 2 50 ru 916 1641 p (Summary)s 10(link)m 10(\(ASBR\))m 1399 1656 p 2 50 ru 708 1706 p 2 50 ru 789 1691 p 53 c 890 1706 p 2 50 ru 916 1691 p (AS)s 10(external)m 10(link)m 1399 1706 p 2 50 ru 709 1707 p 692 2 ru t-bol.300 @sf 0 1798 p (Link)s 10(State)m 11(ID)m t-rom.300 @sf 21(This)m 12(\014eld)m 13(identi\014es)m 13(the)m 13(portion)m 12(of)m 13(the)m 13(internet)m 12(environment)m 13(that)m 13(is)m 13(being)m 12(described)m 13(by)m 13(the)m 13(advertise-)m 159 1848 p (ment.)s 26(The)m 15(contents)m 15(of)m 14(this)m 15(\014eld)m 15(depend)m 14(on)m 15(the)m 15(advertisement')m -1 r 115 c 13(LS)m 15(type.)m 27(For)m 14(example,)m 16(in)m 15(network)m 15(links)m 159 1898 p (advertisements)s 10(the)m 10(Link)m 10(State)m 10(ID)m 11(is)m 10(set)m 10(to)m 10(the)m 10(IP)m 11(interface)m 10(address)m 10(of)m 10(the)m 11(network')m -2 r 115 c 10(Designated)m 10(Router)m 10(\(from)m 159 1948 p (which)s 10(the)m 10(network')m -1 r 115 c 9(IP)m 11(address)m 10(can)m 11(be)m 10(derived\).)m 14(The)m 10(Link)m 11(State)m 10(ID)m 11(is)m 10(further)m 11(discussed)m 10(in)m 10(Section)m 11(12.1.4.)m t-bol.300 @sf 0 2031 p (Advertising)s 10(Router)m t-rom.300 @sf 21(The)m 9(Router)m 8(ID)m 9(of)m 8(the)m 8(router)m 9(that)m 8(originated)m 9(the)m 8(link)m 9(state)m 8(advertisement.)m 13(For)m 9(example,)m 9(in)m 8(network)m 159 2081 p (links)s 10(advertisements)m 10(this)m 11(\014eld)m 10(is)m 11(set)m 10(to)m 10(the)m 11(Router)m 10(ID)m 11(of)m 10(the)m 10(network')m -1 r 115 c 10(Designated)m 10(Router)m -1 r 46 c t-bol.300 @sf 0 2164 p (LS)s 10(sequence)m 11(number)m t-rom.300 @sf 21(Detects)m 11(old)m 11(or)m 12(duplicate)m 11(link)m 11(state)m 12(advertisements.)m 16(Successive)m 12(instances)m 11(of)m 11 r 97 c 12(link)m 11(state)m 11(adver-)m 159 2214 p (tisement)s 10(are)m 10(given)m 11(successive)m 10(LS)m 11(sequence)m 10(numbers.)m 14(See)m 10(Section)m 11(12.1.6)m 10(for)m 11(more)m 10(details.)m t-bol.300 @sf 0 2297 p (LS)s 10(checksum)m t-rom.300 @sf 21(The)m 9(Fletcher)m 9(checksum)m 9(of)m 9(the)m 9(complete)m 9(contents)m 8(of)m 9(the)m 9(link)m 9(state)m 9(advertisement.)m 13(See)m 9(Section)m 9(12.1.7)m 9(for)m 159 2346 p (more)s 10(details.)m t-bol.300 @sf 0 2429 p (length)s t-rom.300 @sf 47(The)m 11(length)m 10(in)m 11(bytes)m 10(of)m 10(the)m 11(link)m 10(state)m 11(advertisement.)m 14(This)m 10(includes)m 10(the)m 11(20)m 10(byte)m 11(link)m 10(state)m 11(header)m -2 r 46 c 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(102])m @eop 101 @bop0 101 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (A.4)s 50(Link)m 12(state)m 13(advertisement)m 12(formats)m t-rom.300 @sf 0 291 p (There)s 9(are)m 10(\014ve)m 9(distinct)m 10(types)m 9(of)m 10(link)m 9(state)m 9(advertisements.)m 14(Each)m 9(link)m 10(state)m 9(advertisement)m 10(begins)m 9(with)m 10 r 97 c 9(standard)m 9(20-byte)m 0 341 p (link)s 11(state)m 11(header)m -2 r 46 c 14(This)m 11(header)m 11(is)m 10(explained)m 11(in)m 11(Section)m 11(A.4.1.)m 14(Succeeding)m 11(sections)m 11(then)m 11(diagram)m 10(the)m 11(separate)m 11(link)m 11(state)m 0 390 p (advertisement)s 10(types.)m 0 458 p (Each)s 13(link)m 13(state)m 13(advertisement)m 12(describes)m 13 r 97 c 13(piece)m 13(of)m 13(the)m 13(OSPF)m 13(routing)m 12(domain.)m 22(Every)m 12(router)m 13(originates)m 13 r 97 c 13(router)m 13(links)m 0 508 p (advertisement.)s 15(In)m 11(addition,)m 11(whenever)m 11(the)m 11(router)m 11(is)m 11(elected)m 11(Designated)m 11(Router)m -1 r 44 c 10(it)m 11(originates)m 11 r 97 c 11(network)m 11(links)m 11(advertise-)m 0 558 p (ment.)s 14(Other)m 9(types)m 9(of)m 9(link)m 10(state)m 9(advertisements)m 9(may)m 10(also)m 9(be)m 9(originated)m 10(\(see)m 9(Section)m 9(12.4\).)m 14(All)m 9(link)m 9(state)m 10(advertisements)m 0 608 p (are)s 13(then)m 13(\015ooded)m 14(throughout)m 13(the)m 13(OSPF)m 13(routing)m 13(domain.)m 23(The)m 13(\015ooding)m 13(algorithm)m 13(is)m 13(reliable,)m 14(ensuring)m 14(that)m 13(all)m 13(routers)m 0 657 p (have)s 11(the)m 12(same)m 11(collection)m 12(of)m 11(link)m 11(state)m 12(advertisements.)m 16(\(See)m 12(Section)m 11(13)m 12(for)m 11(more)m 11(information)m 12(concerning)m 11(the)m 12(\015ooding)m 0 707 p (algorithm\).)s 14(This)m 10(collection)m 11(of)m 10(advertisements)m 11(is)m 10(called)m 10(the)m 11(link)m 10(state)m 11(\(or)m 10(topological\))m 10(database.)m 0 775 p (From)s 11(the)m 11(link)m 11(state)m 11(database,)m 11(each)m 11(router)m 11(constructs)m 11 r 97 c 11(shortest)m 11(path)m 10(tree)m 11(with)m 11(itself)m 11(as)m 11(root.)m 16(This)m 11(yields)m 11 r 97 c 10(routing)m 11(table)m 0 825 p (\(see)s 10(Section)m 11 r 49 c -1(1\).)m 13(For)m 11(the)m 10(details)m 10(of)m 11(the)m 10(routing)m 11(table)m 10(build)m 11(process,)m 10(see)m 10(Section)m 11(16.)m 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(101])m @eop 100 @bop0 100 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (A.3.6)s 42(The)m 10(Link)m 10(State)m 11(Acknowledgment)m 10(packet)m t-rom.300 @sf 0 291 p (Link)s 15(State)m 15(Acknowledgment)m 15(Packets)m 15(are)m 15(OSPF)m 15(packet)m 15(type)m 15(5.)m 28 r 84 c -2 r 111 c 14(make)m 15(the)m 15(\015ooding)m 15(of)m 15(link)m 15(state)m 15(advertisements)m 0 341 p (reliable,)s 17(\015ooded)m 15(advertisements)m 15(are)m 16(explicitly)m 15(acknowledged.)m 29(This)m 15(acknowledgment)m 16(is)m 15(accomplished)m 16(through)m 15(the)m 0 390 p (sending)s 7(and)m 7(receiving)m 7(of)m 7(Link)m 7(State)m 7(Acknowledgment)m 7(packets.)m 13(Multiple)m 7(link)m 7(state)m 7(advertisements)m 7(can)m 7(be)m 7(acknowledged)m 0 440 p (in)s 10 r 97 c 11(single)m 10(packet.)m 0 508 p (Depending)s 9(on)m 8(the)m 9(state)m 9(of)m 9(the)m 8(sending)m 9(interface)m 9(and)m 9(the)m 8(source)m 9(of)m 9(the)m 9(advertisements)m 8(being)m 9(acknowledged,)m 9 r 97 c 9(Link)m 9(State)m 0 558 p (Acknowledgment)s 10(packet)m 11(is)m 10(sent)m 11(either)m 10(to)m 11(the)m 10(multicast)m 11(address)m 10(AllSPFRouters,)m 11(to)m 10(the)m 11(multicast)m 10(address)m 11(AllDRouters,)m 0 608 p (or)s 12(as)m 11 r 97 c 12(unicast.)m 18(The)m 11(sending)m 12(of)m 12(Link)m 12(State)m 11(Acknowledgement)m 12(packets)m 12(is)m 11(documented)m 12(in)m 12(Section)m 11(13.5.)m 18(The)m 12(reception)m 0 657 p (of)s 10(Link)m 11(State)m 10(Acknowledgement)m 11(packets)m 10(is)m 10(documented)m 11(in)m 10(Section)m 11(13.7.)m 0 725 p (The)s 10(format)m 9(of)m 10(this)m 10(packet)m 9(is)m 10(similar)m 10(to)m 10(that)m 9(of)m 10(the)m 10(Data)m 9(Description)m 10(packet.)m 14(The)m 9(body)m 10(of)m 10(both)m 9(packets)m 10(is)m 10(simply)m 9 r 97 c 10(list)m 10(of)m 0 775 p (link)s 10(state)m 11(advertisement)m 10(headers.)m 0 780 p 27562558 14340423 5854576 33154007 33417134 47494430 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/lsack.fig %%Creator: f2ps %%CreationDate: Wed Apr 10 12:53:58 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 89 504 508 722 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 159 259 moveto 179 259 lineto stroke % Polyline newpath 159 239 moveto 179 239 lineto stroke % Polyline newpath 159 219 moveto 179 219 lineto stroke % Polyline newpath 159 199 moveto 179 199 lineto stroke % Polyline newpath 239 114 moveto 319 114 lineto stroke % Polyline newpath 479 99 moveto 479 319 lineto stroke % Polyline newpath 160 100 moveto 159 317 lineto stroke % Polyline newpath 488 179 moveto 498 179 lineto 498 279 lineto 488 279 lineto stroke % Polyline newpath 159 179 moveto 479 179 lineto stroke % Polyline newpath 399 99 moveto 399 114 lineto stroke % Polyline newpath 319 99 moveto 319 114 lineto stroke % Polyline newpath 239 99 moveto 239 114 lineto stroke % Polyline newpath 159 279 moveto 479 279 lineto stroke % Polyline newpath 159 114 moveto 179 114 lineto stroke % Polyline newpath 159 124 moveto 179 124 lineto stroke % Polyline newpath 159 139 moveto 179 139 lineto stroke % Polyline newpath 159 149 moveto 179 149 lineto stroke % Polyline newpath 159 164 moveto 179 164 lineto stroke % Polyline newpath 159 99 moveto 479 99 lineto stroke /Courier findfont 12.222222 scalefont setfont 294 254 moveto 1 -1 scale (Header) show 1 -1 scale 264 234 moveto 1 -1 scale (Advertisement) show 1 -1 scale 274 214 moveto 1 -1 scale (Link state) show 1 -1 scale 275 110 moveto 1 -1 scale (5) show 1 -1 scale 314 309 moveto 1 -1 scale (.) show 1 -1 scale 314 289 moveto 1 -1 scale (.) show 1 -1 scale 314 299 moveto 1 -1 scale (.) show 1 -1 scale 510 245 moveto 1 -1 scale (LS adv.) show 1 -1 scale 504 229 moveto 1 -1 scale (for each) show 1 -1 scale 505 213 moveto 1 -1 scale (Repeated) show 1 -1 scale 469 89 moveto 1 -1 scale (32) show 1 -1 scale 394 89 moveto 1 -1 scale (24) show 1 -1 scale 314 89 moveto 1 -1 scale (16) show 1 -1 scale 239 89 moveto 1 -1 scale (8) show 1 -1 scale 159 89 moveto 1 -1 scale (0) show 1 -1 scale 249 149 moveto 1 -1 scale (OSPF packet header) show 1 -1 scale showpage $F2psEnd endTexFig 0 1756 p (Each)s 10(acknowledged)m 10(link)m 10(state)m 10(advertisement)m 10(is)m 10(described)m 10(by)m 10(its)m 10(link)m 10(state)m 10(header)m -1 r 46 c 12(The)m 10(link)m 10(state)m 10(header)m 10(is)m 10(documented)m 0 1805 p (in)s 12(Section)m 12(A.4.1.)m 19(It)m 12(contains)m 12(all)m 13(the)m 12(information)m 12(required)m 12(to)m 12(uniquely)m 12(identify)m 12(both)m 12(the)m 13(advertisement)m 12(and)m 12(the)m 12(adver-)m 0 1855 p (tisement')s -1 r 115 c 9(current)m 11(instance.)m 0 2723 p ([J.)s 10(Moy])m 1625([Page)m 11(100])m @eop 99 @bop0 99 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (A.3.5)s 42(The)m 10(Link)m 10(State)m 11(Update)m 10(packet)m t-rom.300 @sf 0 291 p (Link)s 9(State)m 8(Update)m 9(packets)m 9(are)m 8(OSPF)m 9(packet)m 9(type)m 8(4.)m 13(These)m 9(packets)m 9(implement)m 8(the)m 9(\015ooding)m 9(of)m 8(link)m 9(state)m 9(advertisements.)m 0 341 p (Each)s 9(Link)m 9(State)m 9(Update)m 9(packet)m 8(carries)m 9 r 97 c 9(collection)m 9(of)m 9(link)m 9(state)m 9(advertisements)m 9(one)m 9(hop)m 8(further)m 9(from)m 9(its)m 9(origin.)m 14(Several)m 0 390 p (link)s 10(state)m 11(advertisements)m 10(may)m 11(be)m 10(included)m 10(in)m 11 r 97 c 10(single)m 11(packet.)m 0 458 p (Link)s 9(State)m 9(Update)m 9(packets)m 10(are)m 9(multicast)m 9(on)m 9(those)m 9(physical)m 9(networks)m 9(that)m 9(support)m 10(multicast/broadcast.)m 13(In)m 9(order)m 9(to)m 10(make)m 0 508 p (the)s 14(\015ooding)m 13(procedure)m 14(reliable,)m 15(\015ooded)m 13(advertisements)m 14(are)m 14(acknowledged)m 14(in)m 13(Link)m 14(State)m 14(Acknowledgment)m 14(packets.)m 0 558 p (If)s 12(retransmission)m 12(of)m 13(certain)m 12(advertisements)m 12(is)m 12(necessary)m -1 r 44 c 11(the)m 13(retransmitted)m 12(advertisements)m 12(are)m 12(always)m 13(carried)m 12(by)m 12(uni-)m 0 608 p (cast)s 13(Link)m 13(State)m 12(Update)m 13(packets.)m 21(For)m 13(more)m 13(information)m 13(on)m 13(the)m 13(reliable)m 12(\015ooding)m 13(of)m 13(link)m 13(state)m 13(advertisements,)m 13(consult)m 0 657 p (Section)s 10(13.)m 0 662 p 29799138 17892639 1381416 29338664 31180554 47231303 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/lsupd.fig %%Creator: f2ps %%CreationDate: Wed Apr 10 12:53:55 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 21 446 474 718 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 64 104 moveto 384 104 lineto stroke % Polyline newpath 64 169 moveto 84 169 lineto stroke % Polyline newpath 64 154 moveto 84 154 lineto stroke % Polyline newpath 64 144 moveto 84 144 lineto stroke % Polyline newpath 64 129 moveto 84 129 lineto stroke % Polyline newpath 64 119 moveto 84 119 lineto stroke % Polyline newpath 64 204 moveto 384 204 lineto stroke % Polyline newpath 144 104 moveto 144 119 lineto stroke % Polyline newpath 224 104 moveto 224 119 lineto stroke % Polyline newpath 304 104 moveto 304 119 lineto stroke % Polyline newpath 64 184 moveto 384 184 lineto stroke % Polyline newpath 65 344 moveto 385 344 lineto stroke % Polyline newpath 144 119 moveto 224 119 lineto stroke % Polyline newpath 64 104 moveto 64 383 lineto stroke % Polyline newpath 384 105 moveto 384 384 lineto stroke % Polyline newpath 389 204 moveto 404 204 lineto 404 344 lineto 389 344 lineto stroke /Courier findfont 12.222222 scalefont setfont 449 294 moveto 1 -1 scale (times) show 1 -1 scale 409 274 moveto 1 -1 scale (# advertisements) show 1 -1 scale 154 154 moveto 1 -1 scale (OSPF packet header) show 1 -1 scale 64 94 moveto 1 -1 scale (0) show 1 -1 scale 144 94 moveto 1 -1 scale (8) show 1 -1 scale 219 94 moveto 1 -1 scale (16) show 1 -1 scale 299 94 moveto 1 -1 scale (24) show 1 -1 scale 374 94 moveto 1 -1 scale (32) show 1 -1 scale 434 254 moveto 1 -1 scale (Repeated) show 1 -1 scale 164 199 moveto 1 -1 scale (# advertisements) show 1 -1 scale 134 269 moveto 1 -1 scale (Link state advertisement) show 1 -1 scale 222 374 moveto 1 -1 scale (.) show 1 -1 scale 222 365 moveto 1 -1 scale (.) show 1 -1 scale 222 354 moveto 1 -1 scale (.) show 1 -1 scale 179 114 moveto 1 -1 scale (4) show 1 -1 scale showpage $F2psEnd endTexFig t-bol.300 @sf 0 1905 p 35 c 10(advertisements)m t-rom.300 @sf 21(The)m 11(number)m 10(of)m 10(link)m 11(state)m 10(advertisements)m 11(included)m 10(in)m 11(this)m 10(update.)m 0 2014 p (The)s 8(body)m 8(of)m 7(the)m 8(Link)m 8(State)m 8(Update)m 7(packet)m 8(consists)m 8(of)m 8 r 97 c 7(list)m 8(of)m 8(link)m 8(state)m 7(advertisements.)m 13(Each)m 8(advertisement)m 8(begins)m 8(with)m 0 2064 p 97 c 11(common)m 11(20)m 10(byte)m 11(header)m 44 c 10(the)m 10(link)m 11(state)m 11(advertisement)m 11(header)m -1 r 46 c 14(This)m 11(header)m 10(is)m 11(described)m 11(in)m 11(Section)m 11(A.4.1.)m 15(Otherwise,)m 0 2113 p (the)s 9(format)m 8(of)m 9(each)m 8(of)m 9(the)m 9(\014ve)m 8(types)m 9(of)m 8(link)m 9(state)m 9(advertisements)m 8(is)m 9(dif)m (ferent.)s 12(Their)m 9(formats)m 9(are)m 8(described)m 9(in)m 8(Section)m 9(A.4.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(99])m @eop 98 @bop0 98 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (A.3.4)s 42(The)m 10(Link)m 10(State)m 11(Request)m 10(packet)m t-rom.300 @sf 0 291 p (Link)s 7(State)m 7(Request)m 8(packets)m 7(are)m 7(OSPF)m 7(packet)m 7(type)m 7(3.)m 13(After)m 7(exchanging)m 8(Database)m 7(Description)m 7(packets)m 7(with)m 7 r 97 c 8(neighboring)m 0 341 p (router)s -1 r 44 c 9 r 97 c 10(router)m 9(may)m 10(\014nd)m 9(that)m 10(parts)m 9(of)m 10(its)m 9(topological)m 10(database)m 9(are)m 10(out)m 9(of)m 10(date.)m 13(The)m 10(Link)m 9(State)m 10(Request)m 9(packet)m 10(is)m 9(used)m 10(to)m 0 390 p (request)s 10(the)m 11(pieces)m 10(of)m 10(the)m 11(neighbor)m 1 r 39 c -1 r 115 c 9(database)m 11(that)m 10(are)m 10(more)m 11(up)m 10(to)m 10(date.)m 14(Multiple)m 11(Link)m 10(State)m 10(Request)m 11(packets)m 10(may)m 10(need)m 0 440 p (to)s 10(be)m 11(used.)m 14(The)m 10(sending)m 11(of)m 10(Link)m 10(State)m 11(Request)m 10(packets)m 11(is)m 10(the)m 10(last)m 11(step)m 10(in)m 11(bringing)m 10(up)m 11(an)m 10(adjacency)m -2 r 46 c 0 508 p 65 c 10(router)m 10(that)m 9(sends)m 10 r 97 c 10(Link)m 10(State)m 9(Request)m 10(packet)m 10(has)m 10(in)m 9(mind)m 10(the)m 10(precise)m 10(instance)m 9(of)m 10(the)m 10(database)m 10(pieces)m 9(it)m 10(is)m 10(requesting)m 0 558 p (\(de\014ned)s 10(by)m 11(LS)m 10(sequence)m 11(number)m -1 r 44 c 9(LS)m 11(checksum,)m 10(and)m 11(LS)m 10(age\).)m 14(It)m 10(may)m 11(receive)m 10(even)m 11(more)m 10(recent)m 10(instances)m 11(in)m 10(response.)m 0 625 p (The)s 8(sending)m 8(of)m 8(Link)m 9(State)m 8(Request)m 8(packets)m 8(is)m 8(documented)m 8(in)m 8(Section)m 9(10.9.)m 13(The)m 8(reception)m 8(of)m 8(Link)m 8(State)m 8(Request)m 9(packets)m 0 675 p (is)s 10(documented)m 11(in)m 10(Section)m 11(10.7.)m 0 680 p 27694121 11972280 5788794 35522150 33482915 47494430 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/lsreq.fig %%Creator: f2ps %%CreationDate: Fri Jun 8 17:29:07 1990 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 88 540 509 722 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 239 114 moveto 319 114 lineto stroke % Polyline newpath 479 99 moveto 479 279 lineto stroke % Polyline newpath 159 99 moveto 159 279 lineto stroke % Polyline newpath 484 179 moveto 499 179 lineto 499 239 lineto 489 239 lineto stroke % Polyline newpath 159 179 moveto 479 179 lineto stroke % Polyline newpath 399 99 moveto 399 114 lineto stroke % Polyline newpath 319 99 moveto 319 114 lineto stroke % Polyline newpath 239 99 moveto 239 114 lineto stroke % Polyline newpath 159 239 moveto 479 239 lineto stroke % Polyline newpath 159 199 moveto 479 199 lineto stroke % Polyline newpath 159 114 moveto 179 114 lineto stroke % Polyline newpath 159 124 moveto 179 124 lineto stroke % Polyline newpath 159 139 moveto 179 139 lineto stroke % Polyline newpath 159 149 moveto 179 149 lineto stroke % Polyline newpath 159 164 moveto 179 164 lineto stroke % Polyline newpath 159 219 moveto 479 219 lineto stroke % Polyline newpath 159 99 moveto 479 99 lineto stroke /Courier findfont 12.222222 scalefont setfont 274 109 moveto 1 -1 scale (3) show 1 -1 scale 314 269 moveto 1 -1 scale (.) show 1 -1 scale 314 249 moveto 1 -1 scale (.) show 1 -1 scale 314 259 moveto 1 -1 scale (.) show 1 -1 scale 514 224 moveto 1 -1 scale (LS adv.) show 1 -1 scale 504 209 moveto 1 -1 scale (for each) show 1 -1 scale 504 194 moveto 1 -1 scale (Repeated) show 1 -1 scale 469 89 moveto 1 -1 scale (32) show 1 -1 scale 394 89 moveto 1 -1 scale (24) show 1 -1 scale 314 89 moveto 1 -1 scale (16) show 1 -1 scale 239 89 moveto 1 -1 scale (8) show 1 -1 scale 159 89 moveto 1 -1 scale (0) show 1 -1 scale 254 234 moveto 1 -1 scale (Advertising Router) show 1 -1 scale 269 214 moveto 1 -1 scale (Link State ID) show 1 -1 scale 289 194 moveto 1 -1 scale (LS type) show 1 -1 scale 249 149 moveto 1 -1 scale (OSPF packet header) show 1 -1 scale showpage $F2psEnd endTexFig 0 1506 p (Each)s 11(advertisement)m 10(requested)m 11(is)m 11(speci\014ed)m 10(by)m 11(its)m 11(LS)m 10(type,)m 11(Link)m 11(State)m 10(ID,)m 11(and)m 11(Advertising)m 10(Router)m -1 r 46 c 14(This)m 10(uniquely)m 11(iden-)m 0 1556 p (ti\014es)s 13(the)m 12(advertisement,)m 13(but)m 13(not)m 12(its)m 13(instance.)m 20(Link)m 13(State)m 13(Request)m 12(packets)m 13(are)m 12(understood)m 13(to)m 13(be)m 12(requests)m 13(for)m 12(the)m 13(most)m 0 1606 p (recent)s 10(instance)m 11(\(whatever)m 10(that)m 11(might)m 10(be\).)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(98])m @eop 97 @bop0 97 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (A.3.3)s 42(The)m 10(Database)m 10(Description)m 11(packet)m t-rom.300 @sf 0 282 p (Database)s 15(Description)m 14(packets)m 15(are)m 14(OSPF)m 15(packet)m 15(type)m 14(2.)m 27(These)m 14(packets)m 15(are)m 15(exchanged)m 14(when)m 15(an)m 14(adjacency)m 15(is)m 15(being)m 0 332 p (initialized.)s 26(They)m 14(describe)m 15(the)m 14(contents)m 15(of)m 14(the)m 14(topological)m 15(database.)m 26(Multiple)m 14(packets)m 14(may)m 15(be)m 14(used)m 15(to)m 14(describe)m 15(the)m 0 382 p (database.)s 15(For)m 11(this)m 11(purpose)m 11 r 97 c 11(poll-response)m 11(procedure)m 11(is)m 11(used.)m 16(One)m 10(of)m 11(the)m 11(routers)m 11(is)m 11(designated)m 11(to)m 11(be)m 11(master)m -1 r 44 c 10(the)m 11(other)m 0 432 p 97 c 14(slave.)m 24(The)m 14(master)m 14(sends)m 13(Database)m 14(Description)m 14(packets)m 14(\(polls\))m 14(which)m 14(are)m 13(acknowledged)m 14(by)m 14(Database)m 14(Description)m 0 482 p (packets)s 10(sent)m 11(by)m 10(the)m 11(slave)m 10(\(responses\).)m 14(The)m 10(responses)m 11(are)m 10(linked)m 11(to)m 10(the)m 10(polls)m 11(via)m 10(the)m 11(packets')m 10(sequence)m 11(numbers.)m 0 541 p (The)s 9(format)m 9(of)m 9(the)m 9(Database)m 9(Description)m 9(packet)m 10(is)m 9(very)m 9(similar)m 9(to)m 9(both)m 9(the)m 9(Link)m 9(State)m 9(Request)m 9(and)m 9(Link)m 9(State)m 10(Acknowl-)m 0 591 p (edgment)s 10(packets.)m 13(The)m 10(main)m 10(part)m 10(of)m 9(all)m 10(three)m 10(is)m 10 r 97 c 9(list)m 10(of)m 10(items,)m 10(each)m 9(item)m 10(describing)m 10 r 97 c 10(piece)m 9(of)m 10(the)m 10(topological)m 9(database.)m 0 640 p (The)s 11(sending)m 11(of)m 12(Database)m 11(Description)m 11(Packets)m 11(is)m 11(documented)m 11(in)m 12(Section)m 11(10.8.)m 16(The)m 11(reception)m 11(of)m 11(Database)m 12(Description)m 0 690 p (packets)s 10(is)m 11(documented)m 10(in)m 11(Section)m 10(10.6.)m 0 703 p 27496776 16708567 5854576 30785863 33351352 47494430 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/ddpkt.fig %%Creator: f2ps %%CreationDate: Wed Apr 10 12:53:52 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 89 468 507 722 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 159 299 moveto 179 299 lineto stroke % Polyline newpath 159 279 moveto 179 279 lineto stroke % Polyline newpath 159 259 moveto 179 259 lineto stroke % Polyline newpath 159 239 moveto 179 239 lineto stroke % Polyline newpath 239 114 moveto 319 114 lineto stroke % Polyline newpath 479 99 moveto 479 359 lineto stroke % Polyline newpath 159 99 moveto 159 359 lineto stroke % Polyline newpath 489 219 moveto 499 219 lineto 499 319 lineto 489 319 lineto stroke % Polyline newpath 454 189 moveto 474 159 lineto 489 159 lineto stroke % Polyline newpath 464 189 moveto 474 174 lineto 489 174 lineto stroke % Polyline newpath 474 189 moveto 489 189 lineto stroke % Polyline newpath 159 179 moveto 479 179 lineto stroke % Polyline newpath 469 179 moveto 469 199 lineto stroke % Polyline newpath 449 179 moveto 449 199 lineto stroke % Polyline newpath 459 179 moveto 459 199 lineto stroke % Polyline newpath 429 179 moveto 429 189 lineto stroke % Polyline newpath 409 179 moveto 409 189 lineto stroke % Polyline newpath 419 179 moveto 419 189 lineto stroke % Polyline newpath 439 179 moveto 439 189 lineto stroke % Polyline newpath 399 99 moveto 399 114 lineto stroke % Polyline newpath 319 99 moveto 319 114 lineto stroke % Polyline newpath 239 99 moveto 239 114 lineto stroke % Polyline newpath 159 319 moveto 479 319 lineto stroke % Polyline newpath 399 179 moveto 399 199 lineto stroke % Polyline newpath 319 179 moveto 319 199 lineto stroke % Polyline newpath 239 179 moveto 239 199 lineto stroke % Polyline newpath 159 199 moveto 479 199 lineto stroke % Polyline newpath 159 114 moveto 179 114 lineto stroke % Polyline newpath 159 124 moveto 179 124 lineto stroke % Polyline newpath 159 139 moveto 179 139 lineto stroke % Polyline newpath 159 149 moveto 179 149 lineto stroke % Polyline newpath 159 164 moveto 179 164 lineto stroke % Polyline newpath 159 219 moveto 479 219 lineto stroke % Polyline newpath 159 99 moveto 479 99 lineto stroke /Courier findfont 12.222222 scalefont setfont 297 289 moveto 1 -1 scale (Header) show 1 -1 scale 268 269 moveto 1 -1 scale (Advertisement) show 1 -1 scale 280 251 moveto 1 -1 scale (Link State) show 1 -1 scale 332 194 moveto 1 -1 scale (Options) show 1 -1 scale 274 109 moveto 1 -1 scale (2) show 1 -1 scale 249 214 moveto 1 -1 scale (DD sequence number) show 1 -1 scale 314 349 moveto 1 -1 scale (.) show 1 -1 scale 314 339 moveto 1 -1 scale (.) show 1 -1 scale 314 329 moveto 1 -1 scale (.) show 1 -1 scale 509 284 moveto 1 -1 scale (LS adv.) show 1 -1 scale 494 194 moveto 1 -1 scale (MS bit) show 1 -1 scale 494 179 moveto 1 -1 scale (M bit) show 1 -1 scale 494 164 moveto 1 -1 scale (I bit) show 1 -1 scale 419 194 moveto 1 -1 scale (0) show 1 -1 scale 274 194 moveto 1 -1 scale (0) show 1 -1 scale 199 194 moveto 1 -1 scale (0) show 1 -1 scale 504 269 moveto 1 -1 scale (for each) show 1 -1 scale 504 254 moveto 1 -1 scale (Repeated) show 1 -1 scale 469 89 moveto 1 -1 scale (32) show 1 -1 scale 394 89 moveto 1 -1 scale (24) show 1 -1 scale 314 89 moveto 1 -1 scale (16) show 1 -1 scale 239 89 moveto 1 -1 scale (8) show 1 -1 scale 159 89 moveto 1 -1 scale (0) show 1 -1 scale 249 149 moveto 1 -1 scale (OSPF packet header) show 1 -1 scale showpage $F2psEnd endTexFig t-bol.300 @sf 0 1843 p 48 c t-rom.300 @sf 125(These)m 10(\014elds)m 11(are)m 10(reserved.)m 14(They)m 10(must)m 11(be)m 10(0.)m t-bol.300 @sf 0 1918 p (Options)s t-rom.300 @sf 21(The)m 10(optional)m 11(capabilities)m 10(supported)m 10(by)m 11(the)m 10(router)m 44 c 9(as)m 10(documented)m 11(in)m 10(Section)m 11(A.2.)m t-bol.300 @sf 0 1993 p (I-bit)s t-rom.300 @sf 67(The)m 10(Init)m 11(bit.)m 14(When)m 10(set)m 11(to)m 10(1,)m 10(this)m 11(packet)m 10(is)m 11(the)m 10(\014rst)m 11(in)m 10(the)m 10(sequence)m 11(of)m 10(database)m 11(descriptions.)m t-bol.300 @sf 0 2068 p (M-bit)s t-rom.300 @sf 44(The)m 10(More)m 11(bit.)m 14(When)m 10(set)m 10(to)m 11(1,)m 10(it)m 11(indicates)m 10(that)m 11(more)m 10(database)m 10(descriptions)m 11(are)m 10(to)m 11(follow)m -2 r 46 c t-bol.300 @sf 0 2143 p (MS-bit)s t-rom.300 @sf 21(The)m 12(Master/Slave)m 12(bit.)m 18(When)m 12(set)m 12(to)m 12(1,)m 12(it)m 12(indicates)m 12(that)m 12(the)m 12(router)m 12(is)m 11(the)m 12(master)m 12(during)m 12(the)m 12(database)m 12(exchange)m 146 2193 p (process.)s 14(Otherwise,)m 10(the)m 10(router)m 11(is)m 10(the)m 11(slave.)m t-bol.300 @sf 0 2268 p (DD)s 10(sequence)m 11(number)m t-rom.300 @sf 21(Used)m 11(to)m 12(sequence)m 11(the)m 12(collection)m 11(of)m 12(database)m 11(description)m 12(packets.)m 17(The)m 11(initial)m 12(value)m 11(\(indicated)m 146 2318 p (by)s 9(the)m 9(Init)m 9(bit)m 9(being)m 9(set\))m 10(should)m 9(be)m 9(unique.)m 13(The)m 10(sequence)m 9(number)m 9(then)m 9(increments)m 9(until)m 9(the)m 9(complete)m 10(database)m 146 2368 p (description)s 10(has)m 11(been)m 10(sent.)m 0 2449 p (The)s 12(rest)m 12(of)m 12(the)m 11(packet)m 12(consists)m 12(of)m 12 r 97 c 12(\(possibly)m 12(partial\))m 12(list)m 11(of)m 12(the)m 12(topological)m 12(database')m -1 r 115 c 11(pieces.)m 18(Each)m 12(link)m 11(state)m 12(adver-)m 0 2498 p (tisement)s 12(in)m 13(the)m 12(database)m 13(is)m 12(described)m 13(by)m 12(its)m 13(link)m 12(state)m 13(header)m -2 r 46 c 19(The)m 13(link)m 12(state)m 13(header)m 12(is)m 13(documented)m 12(in)m 12(Section)m 13(A.4.1.)m 0 2548 p (It)s 13(contains)m 14(all)m 13(the)m 13(information)m 14(required)m 13(to)m 13(uniquely)m 14(identify)m 13(both)m 13(the)m 14(advertisement)m 13(and)m 14(the)m 13(advertisement')m -1 r 115 c 12(current)m 0 2598 p (instance.)s 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(97])m @eop 96 @bop0 96 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (A.3.2)s 42(The)m 10(Hello)m 10(packet)m t-rom.300 @sf 0 286 p (Hello)s 12(packets)m 12(are)m 12(OSPF)m 12(packet)m 11(type)m 12(1.)m 19(These)m 11(packets)m 12(are)m 12(sent)m 12(periodically)m 12(on)m 12(all)m 12(interfaces)m 12(\(including)m 12(virtual)m 11(links\))m 0 336 p (in)s 10(order)m 9(to)m 10(establish)m 10(and)m 9(maintain)m 10(neighbor)m 10(relationships.)m 13(In)m 10(addition,)m 10(Hellos)m 9(are)m 10(multicast)m 10(on)m 9(those)m 10(physical)m 10(networks)m 0 386 p (having)s 10 r 97 c 11(multicast)m 10(or)m 11(broadcast)m 10(capability)m -2 r 44 c 10(enabling)m 10(dynamic)m 11(discovery)m 10(of)m 10(neighboring)m 11(routers.)m 0 449 p (All)s 8(routers)m 7(connected)m 8(to)m 8 r 97 c 7(common)m 8(network)m 8(must)m 7(agree)m 8(on)m 8(certain)m 7(parameters)m 8(\(network)m 8(mask,)m 8(hello)m 8(and)m 7(dead)m 8(intervals\).)m 0 499 p (These)s 11(parameters)m 10(are)m 11(included)m 11(in)m 10(Hello)m 11(packets,)m 11(so)m 11(that)m 10(dif)m (ferences)s 10(can)m 11(inhibit)m 11(the)m 10(forming)m 11(of)m 11(neighbor)m 10(relationships.)m 0 549 p 65 c 11(detailed)m 10(explanation)m 11(of)m 10(the)m 11(receive)m 10(processing)m 11(for)m 10(Hello)m 11(packets)m 10(is)m 11(presented)m 10(in)m 11(Section)m 11(10.5.)m 14(The)m 10(sending)m 11(of)m 10(Hello)m 0 599 p (packets)s 10(is)m 11(covered)m 10(in)m 11(Section)m 10(9.5.)m 0 612 p 27694121 14998241 5854576 32496189 33548697 47494430 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/hello.fig %%Creator: f2ps %%CreationDate: Wed Apr 10 12:53:51 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 89 494 510 722 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 161 299 moveto 476 299 lineto stroke % Polyline newpath 239 114 moveto 319 114 lineto stroke % Polyline newpath 484 279 moveto 499 279 lineto 499 299 lineto 484 299 lineto stroke % Polyline newpath 479 99 moveto 479 319 lineto stroke % Polyline newpath 159 99 moveto 159 324 lineto stroke % Polyline newpath 159 279 moveto 474 279 lineto stroke % Polyline newpath 399 199 moveto 399 219 lineto stroke % Polyline newpath 319 199 moveto 319 219 lineto stroke % Polyline newpath 159 239 moveto 479 239 lineto stroke % Polyline newpath 159 219 moveto 479 219 lineto stroke % Polyline newpath 159 259 moveto 479 259 lineto stroke % Polyline newpath 159 179 moveto 479 179 lineto stroke % Polyline newpath 399 99 moveto 399 114 lineto stroke % Polyline newpath 319 99 moveto 319 114 lineto stroke % Polyline newpath 239 99 moveto 239 114 lineto stroke % Polyline newpath 159 199 moveto 479 199 lineto stroke % Polyline newpath 159 114 moveto 179 114 lineto stroke % Polyline newpath 159 124 moveto 179 124 lineto stroke % Polyline newpath 159 139 moveto 179 139 lineto stroke % Polyline newpath 159 149 moveto 179 149 lineto stroke % Polyline newpath 159 164 moveto 179 164 lineto stroke % Polyline newpath 159 99 moveto 479 99 lineto stroke /Courier findfont 12.222222 scalefont setfont 329 214 moveto 1 -1 scale (Options) show 1 -1 scale 274 109 moveto 1 -1 scale (1) show 1 -1 scale 507 314 moveto 1 -1 scale (neighbor) show 1 -1 scale 287 293 moveto 1 -1 scale (Neighbor) show 1 -1 scale 238 272 moveto 1 -1 scale (Backup Designated Router) show 1 -1 scale 259 252 moveto 1 -1 scale (Designated Router) show 1 -1 scale 409 214 moveto 1 -1 scale (Rtr Pri) show 1 -1 scale 210 214 moveto 1 -1 scale (HelloInt) show 1 -1 scale 290 233 moveto 1 -1 scale (DeadInt) show 1 -1 scale 274 194 moveto 1 -1 scale (Network mask) show 1 -1 scale 314 314 moveto 1 -1 scale (.) show 1 -1 scale 315 325 moveto 1 -1 scale (.) show 1 -1 scale 314 305 moveto 1 -1 scale (.) show 1 -1 scale 504 299 moveto 1 -1 scale (for each) show 1 -1 scale 504 284 moveto 1 -1 scale (Repeated) show 1 -1 scale 469 89 moveto 1 -1 scale (32) show 1 -1 scale 394 89 moveto 1 -1 scale (24) show 1 -1 scale 314 89 moveto 1 -1 scale (16) show 1 -1 scale 239 89 moveto 1 -1 scale (8) show 1 -1 scale 159 89 moveto 1 -1 scale (0) show 1 -1 scale 249 149 moveto 1 -1 scale (OSPF packet header) show 1 -1 scale showpage $F2psEnd endTexFig t-bol.300 @sf 0 1657 p (Network)s 10(mask)m t-rom.300 @sf 21(The)m 9(network)m 10(mask)m 9(associated)m 9(with)m 10(this)m 9(interface.)m 13(For)m 10(example,)m 9(if)m 9(the)m 10(interface)m 9(is)m 9(to)m 10 r 97 c 9(class)m 9 r 66 c 9(network)m 228 1706 p (whose)s 10(third)m 11(byte)m 10(is)m 11(used)m 10(for)m 10(subnetting,)m 11(the)m 10(network)m 11(mask)m 10(is)m c-med.300 @sf 10(0xffffff00)m t-rom.300 @sf 46 c t-bol.300 @sf 0 1785 p (Options)s t-rom.300 @sf 87(The)m 10(optional)m 10(capabilities)m 11(supported)m 10(by)m 11(the)m 10(router)m -1 r 44 c 10(as)m 10(documented)m 11(in)m 10(Section)m 11(A.2.)m t-bol.300 @sf 0 1864 p (HelloInt)s t-rom.300 @sf 80(The)m 10(number)m 11(of)m 10(seconds)m 10(between)m 11(this)m 10(router)m 2 r 39 c -2 r 115 c 10(Hello)m 10(packets.)m t-bol.300 @sf 0 1943 p (Rtr)s 10(Pri)m t-rom.300 @sf 100(This)m 12(router)m 1 r 39 c -1 r 115 c 11(Router)m 12(Priority)m -2 r 46 c 17(Used)m 12(in)m 11(\(Backup\))m 12(Designated)m 12(Router)m 12(election.)m 18(If)m 12(set)m 11(to)m 12(0,)m 12(the)m 12(router)m 12(will)m 228 1993 p (be)s 10(ineligible)m 11(to)m 10(become)m 11(\(Backup\))m 10(Designated)m 10(Router)m -1 r 46 c t-bol.300 @sf 0 2072 p (Deadint)s t-rom.300 @sf 87(The)m 10(number)m 11(of)m 10(seconds)m 10(before)m 11(declaring)m 10 r 97 c 11(silent)m 10(router)m 10(down.)m t-bol.300 @sf 0 2151 p (Designated)s 10(Router)m t-rom.300 @sf 21(The)m 10(identity)m 9(of)m 9(the)m 10(Designated)m 9(Router)m 10(for)m 9(this)m 10(network,)m 9(in)m 10(the)m 9(view)m 10(of)m 9(the)m 9(advertising)m 10(router)m -1 r 46 c 12(The)m 228 2201 p (Designated)s 13(Router)m 12(is)m 13(identi\014ed)m 13(here)m 13(by)m 13(its)m 12(IP)m 13(interface)m 13(address)m 13(on)m 13(the)m 12(network.)m 21(Set)m 13(to)m 13 r 48 c 13(if)m 13(there)m 12(is)m 13(no)m 228 2251 p (Designated)s 10(Router)m -1 r 46 c t-bol.300 @sf 0 2330 p (Backup)s 10(Designated)m 11(Router)m t-rom.300 @sf 21(The)m 8(identity)m 9(of)m 9(the)m 9(Backup)m 8(Designated)m 9(Router)m 9(for)m 9(this)m 9(network,)m 9(in)m 9(the)m 8(view)m 9(of)m 9(the)m 9(adver-)m 228 2380 p (tising)s 9(router)m -2 r 46 c 13(The)m 8(Backup)m 9(Designated)m 9(Router)m 8(is)m 9(identi\014ed)m 9(here)m 8(by)m 9(its)m 9(IP)m 8(interface)m 9(address)m 9(on)m 9(the)m 8(network.)m 228 2429 p (Set)s 10(to)m 11 r 48 c 10(if)m 11(there)m 10(is)m 10(no)m 11(backup)m 10(Designated)m 11(Router)m -2 r 46 c t-bol.300 @sf 0 2508 p (Neighbor)s t-rom.300 @sf 61(The)m 11(Router)m 11(IDs)m 10(of)m 11(each)m 11(router)m 10(from)m 11(whom)m 11(valid)m 11(Hello)m 10(packets)m 11(have)m 11(been)m 10(seen)m 11(recently)m 11(on)m 11(the)m 10(network.)m 228 2558 p (Recently)s 10(means)m 11(in)m 10(the)m 11(last)m 10(DeadInt)m 10(seconds.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(96])m @eop 95 @bop0 95 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (A.3.1)s 42(The)m 10(OSPF)m 10(packet)m 11(header)m t-rom.300 @sf 0 291 p (Every)s 15(OSPF)m 16(packet)m 15(starts)m 16(with)m 15 r 97 c 15(common)m 16(24)m 15(byte)m 16(header)m -2 r 46 c 28(This)m 16(header)m 15(contains)m 16(all)m 15(the)m 15(necessary)m 16(information)m 15(to)m 0 341 p (determine)s 8(whether)m 9(the)m 8(packet)m 9(should)m 8(be)m 9(accepted)m 8(for)m 9(further)m 8(processing.)m 13(This)m 9(determination)m 8(is)m 9(described)m 8(in)m 9(Section)m 8(8.2)m 0 390 p (of)s 10(the)m 11(speci\014cation.)m 0 404 p 26575831 8748974 2105016 39074365 28680847 47823339 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/phdr.fig %%Creator: f2ps %%CreationDate: Fri Jun 8 17:29:05 1990 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 32 594 436 727 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 479 199 moveto 399 199 lineto stroke % Polyline newpath 159 199 moveto 239 199 lineto stroke % Polyline newpath 319 159 moveto 319 179 lineto stroke % Polyline newpath 319 99 moveto 319 119 lineto stroke % Polyline newpath 239 99 moveto 239 119 lineto stroke % Polyline newpath 479 99 moveto 479 219 lineto stroke % Polyline newpath 159 99 moveto 159 219 lineto stroke % Polyline newpath 159 219 moveto 479 219 lineto stroke % Polyline newpath 159 179 moveto 479 179 lineto stroke % Polyline newpath 159 159 moveto 479 159 lineto stroke % Polyline newpath 159 139 moveto 479 139 lineto stroke % Polyline newpath 159 119 moveto 479 119 lineto stroke % Polyline newpath 399 89 moveto 399 99 lineto stroke % Polyline newpath 319 89 moveto 319 99 lineto stroke % Polyline newpath 239 89 moveto 239 99 lineto stroke % Polyline newpath 159 99 moveto 479 99 lineto stroke /Courier findfont 12.222222 scalefont setfont 259 204 moveto 1 -1 scale (Authentication) show 1 -1 scale 369 174 moveto 1 -1 scale (Autype) show 1 -1 scale 204 174 moveto 1 -1 scale (Checksum) show 1 -1 scale 289 154 moveto 1 -1 scale (Area ID) show 1 -1 scale 279 134 moveto 1 -1 scale (Router ID) show 1 -1 scale 339 114 moveto 1 -1 scale (Packet length) show 1 -1 scale 259 114 moveto 1 -1 scale (Type) show 1 -1 scale 164 114 moveto 1 -1 scale (Version #) show 1 -1 scale 469 84 moveto 1 -1 scale (32) show 1 -1 scale 389 84 moveto 1 -1 scale (24) show 1 -1 scale 309 84 moveto 1 -1 scale (16) show 1 -1 scale 234 84 moveto 1 -1 scale (8) show 1 -1 scale 159 84 moveto 1 -1 scale (0) show 1 -1 scale showpage $F2psEnd endTexFig t-bol.300 @sf 0 1067 p 86 c -3(ersion)m 10 r 35 c t-rom.300 @sf 96(The)m 10(OSPF)m 11(version)m 10(number)m -1 r 46 c 13(This)m 10(speci\014cation)m 11(documents)m 10(version)m 10 r 50 c 11(of)m 10(the)m 11(protocol.)m t-bol.300 @sf 0 1150 p 84 c -2(ype)m t-rom.300 @sf 174(The)m 14(OSPF)m 14(packet)m 14(types)m 14(are)m 14(as)m 14(follows.)m 25(The)m 14(format)m 14(of)m 14(each)m 14(of)m 14(these)m 14(packet)m 14(types)m 14(is)m 14(described)m 14(in)m 14 r 97 c 263 1200 p (succeeding)s 10(section.)m 778 1215 p 657 2 ru 777 1264 p 2 50 ru t-ita.300 @sf 803 1249 p 84 c -2(ype)m 905 1264 p 2 50 ru 931 1249 p (Description)s 1434 1264 p 2 50 ru 778 1266 p 657 2 ru 777 1316 p 2 50 ru t-rom.300 @sf 831 1301 p 49 c 905 1316 p 2 50 ru 931 1301 p (Hello)s 1434 1316 p 2 50 ru 777 1366 p 2 50 ru 831 1351 p 50 c 905 1366 p 2 50 ru 931 1351 p (Database)s 10(Description)m 1434 1366 p 2 50 ru 777 1416 p 2 50 ru 831 1401 p 51 c 905 1416 p 2 50 ru 931 1401 p (Link)s 10(State)m 10(Request)m 1434 1416 p 2 50 ru 777 1465 p 2 50 ru 831 1450 p 52 c 905 1465 p 2 50 ru 931 1450 p (Link)s 10(State)m 10(Update)m 1434 1465 p 2 50 ru 777 1515 p 2 50 ru 831 1500 p 53 c 905 1515 p 2 50 ru 931 1500 p (Link)s 10(State)m 10(Acknowledgment)m 1434 1515 p 2 50 ru 778 1517 p 657 2 ru t-bol.300 @sf 0 1591 p (Packet)s 10(length)m t-rom.300 @sf 21(The)m 11(length)m 10(of)m 10(the)m 11(protocol)m 10(packet)m 11(in)m 10(bytes.)m 14(This)m 10(length)m 11(includes)m 10(the)m 11(standard)m 10(OSPF)m 10(header)m -1 r 46 c t-bol.300 @sf 0 1674 p (Router)s 10(ID)m t-rom.300 @sf 81(The)m 9(Router)m 10(ID)m 9(of)m 9(the)m 9(packet')m -2 r 115 c 9(source.)m 13(In)m 9(OSPF)m -2 r 44 c 8(the)m 9(source)m 9(and)m 9(destination)m 9(of)m 9 r 97 c 9(routing)m 9(protocol)m 9(packet)m 263 1724 p (are)s 10(the)m 10(two)m 11(ends)m 10(of)m 11(an)m 10(\(potential\))m 11(adjacency)m -2 r 46 c t-bol.300 @sf 0 1807 p (Ar)s (ea)s 10(ID)m t-rom.300 @sf 118 r 65 c 10(32)m 9(bit)m 9(number)m 10(identifying)m 9(the)m 10(area)m 9(that)m 9(this)m 10(packet)m 9(belongs)m 9(to.)m 14(All)m 9(OSPF)m 10(packets)m 9(are)m 9(associated)m 10(with)m 263 1857 p 97 c 10(single)m 9(area.)m 14(Most)m 10(travel)m 10 r 97 c 10(single)m 10(hop)m 10(only)m -2 r 46 c 13(Packets)m 9(travelling)m 10(over)m 10 r 97 c 10(virtual)m 10(link)m 10(are)m 10(labelled)m 10(with)m 10(the)m 263 1907 p (backbone)s 10(area)m 10(ID)m 11(of)m 10(0.)m t-bol.300 @sf 0 1990 p (Checksum)s t-rom.300 @sf 75(The)m 8(standard)m 8(IP)m 8(checksum)m 8(of)m 7(the)m 8(entire)m 8(contents)m 8(of)m 8(the)m 8(packet,)m 8(excluding)m 8(the)m 8(64-bit)m 7(authentication)m 8(\014eld.)m 263 2039 p (This)s 12(checksum)m 12(is)m 12(calculated)m 12(as)m 12(the)m 13(16-bit)m 12(one')m -2 r 115 c 12(complement)m 12(of)m 12(the)m 12(one')m -1 r 115 c 11(complement)m 12(sum)m 12(of)m 12(all)m 13(the)m 263 2089 p (16-bit)s 11(words)m 11(in)m 11(the)m 11(packet,)m 11(excepting)m 12(the)m 11(authentication)m 11(\014eld.)m 16(If)m 11(the)m 11(packet')m -1 r 115 c 10(length)m 11(is)m 11(not)m 11(an)m 11(integral)m 263 2139 p (number)s 10(of)m 10(16-bit)m 11(words,)m 10(the)m 11(packet)m 10(is)m 11(padded)m 10(with)m 10 r 97 c 11(byte)m 10(of)m 11(zero)m 10(before)m 10(checksumming.)m t-bol.300 @sf 0 2222 p (AuT)s -2(ype)m t-rom.300 @sf 121(Identi\014es)m 8(the)m 9(authentication)m 8(scheme)m 8(to)m 9(be)m 8(used)m 8(for)m 9(the)m 8(packet.)m 13(Authentication)m 9(is)m 8(discussed)m 8(in)m 9(Appendix)m 263 2272 p 69 c 10(of)m 10(the)m 11(speci\014cation.)m 14(Consult)m 10(Appendix)m 11 r 69 c 10(for)m 10 r 97 c 11(list)m 10(of)m 11(the)m 10(currently)m 11(de\014ned)m 10(authentication)m 10(types.)m t-bol.300 @sf 0 2355 p (Authentication)s t-rom.300 @sf 21 r 65 c 10(64-bit)m 11(\014eld)m 10(for)m 10(use)m 11(by)m 10(the)m 11(authentication)m 10(scheme.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(95])m @eop 94 @bop0 94 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (A.3)s 50(OSPF)m 12(Packet)m 13(Formats)m t-rom.300 @sf 0 291 p (There)s 11(are)m 11(\014ve)m 11(distinct)m 11(OSPF)m 11(packet)m 11(types.)m 15(All)m 11(OSPF)m 11(packet)m 11(types)m 11(begin)m 11(with)m 10 r 97 c 11(standard)m 11(24)m 11(byte)m 11(header)m -1 r 46 c 14(This)m 11(header)m 0 341 p (is)s 11(described)m 10(\014rst.)m 15(Each)m 10(packet)m 11(type)m 10(is)m 11(then)m 10(described)m 11(in)m 11 r 97 c 10(succeeding)m 11(section.)m 14(In)m 11(these)m 10(sections)m 11(each)m 10(packet')m -1 r 115 c 10(division)m 0 390 p (into)s 10(\014elds)m 11(is)m 10(displayed,)m 11(and)m 10(then)m 10(the)m 11(\014eld)m 10(de\014nitions)m 11(are)m 10(enumerated.)m 0 458 p (All)s 10(OSPF)m 11(packet)m 10(types)m 11(\(other)m 10(than)m 10(the)m 11(OSPF)m 10(Hello)m 11(packets\))m 10(deal)m 11(with)m 10(lists)m 10(of)m 11(link)m 10(state)m 11(advertisements.)m 13(For)m 11(example,)m 0 508 p (Link)s 11(State)m 11(Update)m 12(packets)m 11(implement)m 11(the)m 11(\015ooding)m 11(of)m 12(advertisements)m 11(throughout)m 11(the)m 11(OSPF)m 11(routing)m 12(domain.)m 16(Because)m 0 558 p (of)s 9(this,)m 10(OSPF)m 10(protocol)m 9(packets)m 10(cannot)m 9(be)m 9(parsed)m 10(unless)m 9(the)m 10(format)m 9(of)m 10(link)m 9(state)m 10(advertisements)m 9(is)m 10(also)m 9(understood.)m 14(The)m 0 608 p (format)s 10(of)m 11(Link)m 10(state)m 11(advertisements)m 10(is)m 10(described)m 11(in)m 10(Section)m 11(A.4.)m 0 675 p (The)s 14(receive)m 15(processing)m 14(of)m 15(OSPF)m 14(packets)m 15(is)m 14(detailed)m 15(in)m 14(Section)m 15(8.2.)m 26(The)m 14(sending)m 15(of)m 14(OSPF)m 15(packets)m 14(is)m 14(explained)m 15(in)m 0 725 p (Section)s 10(8.1.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(94])m @eop 93 @bop0 93 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (A.2)s 50(The)m 12(options)m 13(\014eld)m t-rom.300 @sf 0 291 p (The)s 12(OSPF)m 12(options)m 11(\014eld)m 12(is)m 12(present)m 12(in)m 12(OSPF)m 12(Hello)m 11(packets,)m 13(Database)m 11(Description)m 12(packets)m 12(and)m 12(all)m 12(link)m 12(state)m 11(advertise-)m 0 341 p (ments.)s 17(The)m 11(options)m 11(\014eld)m 11(enables)m 12(OSPF)m 11(routers)m 11(to)m 12(support)m 11(\(or)m 11(not)m 12(support\))m 11(optional)m 11(capabilities,)m 12(and)m 11(to)m 11(communicate)m 0 390 p (their)s 12(capability)m 13(level)m 12(to)m 12(other)m 13(OSPF)m 12(routers.)m 20(Through)m 12(this)m 12(mechanism)m 13(routers)m 12(of)m 12(dif)m (fering)s 12(capabilities)m 12(can)m 12(be)m 13(mixed)m 0 440 p (within)s 10(an)m 11(OSPF)m 10(routing)m 11(domain.)m 0 508 p (When)s 12(used)m 12(in)m 12(Hello)m 11(packets,)m 13(the)m 12(options)m 11(\014eld)m 12(allows)m 12 r 97 c 12(router)m 12(to)m 12(reject)m 12 r 97 c 11(neighbor)m 12(because)m 12(of)m 12 r 97 c 12(capability)m 12(mismatch.)m 0 558 p (Alternatively)s -2 r 44 c 13(when)m 14(capabilities)m 13(are)m 13(exchanged)m 13(in)m 14(Database)m 13(Description)m 13(packets)m 13 r 97 c 14(router)m 13(can)m 13(choose)m 14(not)m 13(to)m 13(forward)m 0 608 p (certain)s 9(LSA)m 9(types)m 8(to)m 9 r 97 c 9(neighbor)m 9(because)m 9(of)m 9(its)m 8(reduced)m 9(functionality)m -2 r 46 c 13(Lastly)m -2 r 44 c 8(listing)m 9(capabilities)m 9(in)m 9(LSAs)m 8(allows)m 9(routers)m 0 657 p (to)s 10(route)m 11(traf)m (\014c)s 9(around)m 11(reduced)m 10(functionality)m 11(routers,)m 10(by)m 11(excluding)m 10(them)m 10(from)m 11(parts)m 10(of)m 11(the)m 10(routing)m 10(table)m 11(calculation.)m 0 725 p 84 c -2(wo)m 8(capabilities)m 9(are)m 9(currently)m 9(de\014ned.)m 14(For)m 9(each)m 9(capability)m -2 r 44 c 8(the)m 9(ef)m (fect)s 9(of)m 9(the)m 9(capability')m -2 r 115 c 9(appearance)m 9(\(or)m 9(lack)m 9(of)m 9(appear-)m 0 775 p (ance\))s 12(in)m 11(Hello)m 12(packets,)m 12(Database)m 12(Description)m 11(packets)m 12(and)m 12(link)m 11(state)m 12(advertisements)m 12(is)m 11(speci\014ed)m 12(below)m -2 r 46 c 17(For)m 11(example,)m 0 825 p (the)s 9(external)m 10(routing)m 9(capability)m 9(\(below)m 9(called)m 10(the)m 9(E-bit\))m 9(has)m 10(meaning)m 9(only)m 9(in)m 9(OSPF)m 10(Hello)m 9(Packets.)m 13(Routers)m 10(should)m 9(reset)m 0 874 p (\(i.e.)s 13(clear\))m 10(the)m 9(unassigned)m 9(part)m 9(of)m 10(the)m 9(capability)m 9(\014eld)m 9(when)m 10(sending)m 9(Hello)m 9(packets)m 9(or)m 9(Database)m 10(Description)m 9(packets)m 9(and)m 0 924 p (when)s 10(originating)m 11(link)m 10(state)m 11(advertisements.)m 0 992 p (Additional)s 14(capabilities)m 15(may)m 14(be)m 15(assigned)m 14(in)m 15(the)m 14(future.)m 26(Routers)m 14(encountering)m 15(unrecognized)m 14(capabilities)m 15(in)m 14(received)m 0 1042 p (Hello)s 10(Packets,)m 10(Database)m 11(Description)m 10(packets)m 10(or)m 10(link)m 10(state)m 11(advertisements)m 10(should)m 10(ignore)m 10(the)m 10(capability)m 10(and)m 11(process)m 10(the)m 0 1092 p (packet/advertisement)s 10(normally)m -1 r 46 c 0 1105 p 24997069 6051922 2236579 37890293 27233648 43942215 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/options.fig %%Creator: f2ps %%CreationDate: Wed Apr 10 12:53:49 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 34 576 414 668 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 419 159 moveto 419 199 lineto stroke % Polyline newpath 379 159 moveto 379 199 lineto stroke % Polyline newpath 339 159 moveto 339 199 lineto stroke % Polyline newpath 299 159 moveto 299 199 lineto stroke % Polyline newpath 259 159 moveto 259 199 lineto stroke % Polyline newpath 219 159 moveto 219 199 lineto stroke % Polyline newpath 179 159 moveto 179 199 lineto stroke % Polyline newpath 139 159 moveto 459 159 lineto 459 199 lineto 139 199 lineto 139 159 lineto stroke /Courier findfont 12.222222 scalefont setfont 154 184 moveto 1 -1 scale (*) show 1 -1 scale 194 184 moveto 1 -1 scale (*) show 1 -1 scale 234 184 moveto 1 -1 scale (*) show 1 -1 scale 274 184 moveto 1 -1 scale (*) show 1 -1 scale 314 184 moveto 1 -1 scale (*) show 1 -1 scale 354 184 moveto 1 -1 scale (*) show 1 -1 scale 394 184 moveto 1 -1 scale (E) show 1 -1 scale 439 184 moveto 1 -1 scale (T) show 1 -1 scale 234 234 moveto 1 -1 scale (The options field) show 1 -1 scale showpage $F2psEnd endTexFig t-bol.300 @sf 0 1597 p 84 c -3(-bit)m t-rom.300 @sf 24(This)m 9(describes)m 9(the)m 9(router)m 2 r 39 c -1 r 115 c 8 r 84 c (OS)s 8(capability)m -1 r 46 c 12(If)m 9(the)m 10 r 84 c -3(-bit)m 8(is)m 9(reset,)m 10(then)m 9(the)m 9(router)m 9(supports)m 10(only)m 9 r 97 c 9(single)m 9 r 84 c (OS)s 9(\(T)m (OS)s 111 1647 p (0\).)s 16(Such)m 11 r 97 c 11(router)m 11(is)m 11(also)m 11(said)m 11(to)m 11(be)m 11(incapable)m 12(of)m 11 r 84 c (OS-routing.)s 15(The)m 11(absence)m 11(of)m 11(the)m 11 r 84 c -3(-bit)m 10(in)m 11 r 97 c 11(router)m 11(links)m 11(adver-)m 111 1697 p (tisement)s 9(causes)m 10(the)m 9(router)m 9(to)m 9(be)m 10(skipped)m 9(when)m 9(building)m 9 r 97 c 10(non-zero)m 9 r 84 c (OS)s 9(shortest-path)m 9(tree)m 9(\(see)m 9(Section)m 10(16.9\).)m 13(In)m 111 1747 p (other)s 9(words,)m 9(routers)m 10(incapable)m 9(of)m 9 r 84 c (OS)s 8(routing)m 9(will)m 9(be)m 9(avoided)m 9(as)m 9(much)m 9(as)m 9(possible)m 10(when)m 9(forwarding)m 9(data)m 9(traf)m (\014c)s 111 1797 p (requesting)s 12 r 97 c 12(non-zero)m 12 r 84 c (OS.)s 12(The)m 12(absence)m 12(of)m 12(the)m 12 r 84 c -3(-bit)m 11(in)m 12 r 97 c 13(summary)m 12(link)m 12(advertisement)m 12(or)m 12(an)m 12(AS)m 12(external)m 12(link)m 111 1846 p (advertisement)s 13(indicates)m 13(that)m 13(the)m 12(advertisement)m 13(is)m 13(describing)m 13 r 97 c 13 r 84 c (OS)s 12 r 48 c 13(route)m 13(only)m 13(\(and)m 12(not)m 13(routes)m 13(for)m 13(non-zero)m 111 1896 p 84 c (OS\).)s t-bol.300 @sf 0 1979 p (E-bit)s t-rom.300 @sf 21(AS)m 14(external)m 15(link)m 14(advertisements)m 15(are)m 15(not)m 14(\015ooded)m 15(into/through)m 14(OSPF)m 15(stub)m 14(areas)m 15(\(see)m 15(Section)m 14(3.6\).)m 27(The)m 14(E-bit)m 111 2029 p (ensures)s 14(that)m 15(all)m 14(members)m 14(of)m 15 r 97 c 14(stub)m 14(area)m 14(agree)m 15(on)m 14(that)m 14(area')m -1 r 115 c 13(con\014guration.)m 26(The)m 14(E-bit)m 15(is)m 14(meaningful)m 14(only)m 14(in)m 111 2079 p (OSPF)s 9(Hello)m 9(packets.)m 14(When)m 9(the)m 9(E-bit)m 10(is)m 9(reset)m 9(in)m 9(the)m 9(Hello)m 10(packet)m 9(sent)m 9(out)m 9 r 97 c 10(particular)m 9(interface,)m 9(it)m 9(means)m 10(that)m 9(the)m 111 2129 p (router)s 11(will)m 11(neither)m 10(send)m 11(nor)m 11(receive)m 11(AS)m 10(external)m 11(link)m 11(state)m 11(advertisements)m 10(on)m 11(that)m 11(interface)m 11(\(in)m 11(other)m 10(words,)m 11(the)m 111 2178 p (interface)s 11(connects)m 11(to)m 11 r 97 c 11(stub)m 11(area\).)m 15 r 84 c -2(wo)m 10(routers)m 11(will)m 11(not)m 11(become)m 10(neighbors)m 11(unless)m 11(they)m 11(agree)m 11(on)m 11(the)m 11(state)m 11(of)m 11(the)m 111 2228 p (E-bit.)s 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(93])m @eop 92 @bop0 1 /cmsy10.300 @newfont cmsy10.300 @sf [<07E01FF83FFC7FFE7FFEFFFFFFFFFFFFFFFFFFFFFFFF7FFE7FFE3FFC1FF807E0> 16 16 -2 -2 20.755] 15 @dc 92 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p 65 c 58(OSPF)m 15(data)m 14(formats)m t-rom.300 @sf 0 306 p (This)s 9(appendix)m 8(describes)m 9(the)m 9(format)m 8(of)m 9(OSPF)m 9(protocol)m 8(packets)m 9(and)m 9(OSPF)m 8(link)m 9(state)m 9(advertisements.)m 13(The)m 9(OSPF)m 8(protocol)m 0 356 p (runs)s 11(directly)m 10(over)m 11(the)m 11(IP)m 10(network)m 11(layer)m -1 r 46 c 13(Before)m 11(any)m 11(data)m 10(formats)m 11(are)m 10(described,)m 11(the)m 11(details)m 11(of)m 10(the)m 11(OSPF)m 10(encapsulation)m 0 405 p (are)s 10(explained.)m 0 473 p (Next)s 11(the)m 12(OSPF)m 11(options)m 12(\014eld)m 11(is)m 11(described.)m 17(This)m 12(\014eld)m 11(describes)m 11(various)m 12(capabilities)m 11(that)m 12(may)m 11(or)m 11(may)m 12(not)m 11(be)m 12(supported)m 0 523 p (by)s 12(pieces)m 11(of)m 12(the)m 11(OSPF)m 12(routing)m 12(domain.)m 17(It)m 12(is)m 11(contained)m 12(both)m 12(in)m 11(OSPF)m 12(protocol)m 12(packets)m 11(and)m 12(in)m 11(OSPF)m 12(link)m 12(state)m 11(adver-)m 0 573 p (tisements.)s 0 640 p (OSPF)s 13(packet)m 13(formats)m 13(are)m 13(detailed)m 13(in)m 12(Section)m 13(A.3.)m 22 r 65 c 13(description)m 13(of)m 13(OSPF)m 12(link)m 13(state)m 13(advertisements)m 13(appears)m 13(in)m 13(Sec-)m 0 690 p (tion)s 10(A.4.)m t-bol.360 @sf 0 827 p (A.1)s 50(Encapsulation)m 12(of)m 13(OSPF)m 12(packets)m t-rom.300 @sf 0 922 p (OSPF)s 11(runs)m 11(directly)m 11(over)m 11(the)m 11(Internet)m 11(Protocol')m -1 r 115 c 10(network)m 11(layer)m -2 r 46 c 15(OSPF)m 11(packets)m 11(are)m 11(therefore)m 11(encapsulated)m 11(solely)m 11(by)m 11(IP)m 0 972 p (and)s 10(local)m 11(network)m 10(headers.)m 0 1040 p (OSPF)s 14(does)m 13(not)m 14(de\014ne)m 14 r 97 c 14(way)m 13(to)m 14(fragment)m 14(its)m 13(protocol)m 14(packets,)m 15(and)m 13(depends)m 14(on)m 14(IP)m 13(fragmentation)m 14(when)m 14(transmitting)m 0 1090 p (packets)s 8(lar)m (ger)s 7(than)m 8(the)m 8(network)m 8(MTU.)m 8(The)m 8(OSPF)m 8(packet)m 8(types)m 8(that)m 8(are)m 8(likely)m 8(to)m 8(be)m 8(lar)m (ge)s 8(\(Database)m 8(Description)m 8(Packets,)m 0 1140 p (Link)s 14(State)m 13(Request,)m 15(Link)m 14(State)m 13(Update,)m 15(and)m 14(Link)m 13(State)m 14(Acknowledgment)m 14(packets\))m 13(can)m 14(usually)m 14(be)m 14(split)m 13(into)m 14(several)m 0 1189 p (separate)s 13(protocol)m 13(packets,)m 13(without)m 13(loss)m 13(of)m 12(functionality)m -1 r 46 c 20(This)m 12(is)m 13(recommended;)m 14(IP)m 13(fragmentation)m 13(should)m 13(be)m 12(avoided)m 0 1239 p (whenever)s 9(possible.)m 13(Using)m 9(this)m 8(reasoning,)m 9(an)m 9(attempt)m 9(should)m 8(be)m 9(made)m 9(to)m 9(limit)m 8(the)m 9(sizes)m 9(of)m 8(packets)m 9(sent)m 9(over)m 8(virtual)m 9(links)m 0 1289 p (to)s 10(576)m 11(bytes.)m 14(However)m -1 r 44 c 9(if)m 11(necessary)m -2 r 44 c 10(the)m 10(length)m 10(of)m 11(OSPF)m 10(packets)m 11(can)m 10(be)m 11(up)m 10(to)m 10(65,535)m 11(bytes)m 10(\(including)m 11(the)m 10(IP)m 10(header\).)m 0 1357 p (The)s 10(other)m 11(important)m 10(features)m 11(of)m 10(OSPF')m -1 r 115 c 9(IP)m 11(encapsulation)m 10(are:)m cmsy10.300 @sf 62 1466 p 15 c t-ita.300 @sf 21(Use)m 11(of)m 12(IP)m 11(multicast)m t-rom.300 @sf 46 c 17(Some)m 11(OSPF)m 12(messages)m 11(are)m 11(multicast,)m 12(when)m 11(sent)m 12(over)m 11(multi-access)m 11(networks.)m 17 r 84 c -2(wo)m 11(distinct)m 104 1516 p (IP)s 10(multicast)m 9(addresses)m 10(are)m 10(used.)m 14(Packets)m 9(destined)m 10(to)m 10(these)m 10(multicast)m 9(addresses)m 10(should)m 10(never)m 10(be)m 10(forwarded.)m 13(Such)m 104 1566 p (packets)s 10(are)m 9(meant)m 10(to)m 10(travel)m 10 r 97 c 9(single)m 10(hop)m 10(only)m -2 r 46 c 13 r 84 c -2 r 111 c 9(ensure)m 9(that)m 10(these)m 10(packets)m 10(will)m 10(not)m 9(travel)m 10(multiple)m 10(hops,)m 10(their)m 9(IP)m 104 1615 p (TTL)s 10(must)m 11(be)m 10(set)m 10(to)m 11(1.)m t-bol.300 @sf 104 1698 p (AllSPFRouters)s t-rom.300 @sf 21(This)m 8(multicast)m 8(address)m 8(has)m 8(been)m 8(assigned)m 8(the)m 8(value)m 8(224.0.0.5.)m 13(All)m 9(routers)m 8(running)m 8(OSPF)m 8(should)m 195 1748 p (be)s 10(prepared)m 9(to)m 10(receive)m 9(packets)m 10(sent)m 10(to)m 9(this)m 10(address.)m 13(Hello)m 10(packets)m 9(are)m 10(always)m 10(sent)m 9(to)m 10(this)m 9(destination.)m 14(Also,)m 195 1798 p (certain)s 11(protocol)m 10(packets)m 10(are)m 11(sent)m 10(to)m 11(this)m 10(address)m 10(during)m 11(the)m 10(\015ooding)m 11(procedure.)m t-bol.300 @sf 104 1864 p (AllDRouters)s t-rom.300 @sf 21(This)m 12(multicast)m 13(address)m 12(has)m 13(been)m 12(assigned)m 13(the)m 12(value)m 13(224.0.0.6.)m 20(Both)m 13(the)m 12(Designated)m 13(Router)m 12(and)m 195 1914 p (Backup)s 12(Designated)m 11(Router)m 12(must)m 12(be)m 11(prepared)m 12(to)m 11(receive)m 12(packets)m 12(destined)m 11(to)m 12(this)m 11(address.)m 18(Certain)m 12(packets)m 195 1964 p (are)s 11(sent)m 10(to)m 10(this)m 11(address)m 10(during)m 11(the)m 10(\015ooding)m 10(procedure.)m cmsy10.300 @sf 62 2047 p 15 c t-ita.300 @sf 21(OSPF)m 13(is)m 14(IP)m 13(pr)m (otocol)s 12(number)m 13(89)m t-rom.300 @sf 46 c 23(This)m 13(number)m 14(has)m 13(been)m 13(registered)m 14(with)m 13(the)m 13(Network)m 14(Information)m 13(Center)m -1 r 46 c 21(IP)m 104 2097 p (protocol)s 10(number)m 11(assignments)m 10(are)m 10(documented)m 11(in)m 10([RFC)m 11(1060].)m cmsy10.300 @sf 62 2180 p 15 c t-ita.300 @sf 21(Routing)m 12(pr)m -1(otocol)m 11(packets)m 12(ar)m 101 c 10(sent)m 12(with)m 12(IP)m 12 r 84 c (OS)s 11(of)m 12 r 48 c t-rom.300 @sf 46 c 18(The)m 12(OSPF)m 12(protocol)m 12(supports)m 12 r 84 c (OS-based)s 11(routing.)m 18(Routes)m 104 2230 p (to)s 9(any)m 10(particular)m 9(destination)m 10(may)m 9(vary)m 10(based)m 9(on)m 10 r 84 c (OS.)s 8(However)m 44 c 8(all)m 10(OSPF)m 9(routing)m 10(protocol)m 9(packets)m 10(are)m 9(sent)m 10(with)m 104 2280 p (the)s 10(DTR)m 11(bits)m 10(in)m 10(the)m 11(IP)m 10(header)m 2 r 39 c -1 r 115 c 9 r 84 c (OS)s 10(\014eld)m 10(\(see)m 10([RFC)m 11(791]\))m 10(set)m 11(to)m 10(0.)m cmsy10.300 @sf 62 2363 p 15 c t-ita.300 @sf 21(Routing)m 8(pr)m -1(otocol)m 7(packets)m 8(ar)m -1 r 101 c 7(sent)m 8(with)m 8(IP)m 8(pr)m -1(ecedence)m 7(set)m 8(to)m 7(Internetwork)m 8(Contr)m (ol)s t-rom.300 @sf 46 c 12(OSPF)m 7(protocol)m 8(packets)m 8(should)m 104 2412 p (be)s 11(given)m 11(precedence)m 10(over)m 11(regular)m 11(IP)m 11(data)m 11(traf)m (\014c,)s 10(in)m 11(both)m 11(sending)m 11(and)m 11(receiving.)m 15(Setting)m 11(the)m 11(IP)m 11(precedence)m 11(\014eld)m 104 2462 p (in)s 10(the)m 11(IP)m 10(header)m 10(to)m 11(Internetwork)m 10(Control)m 11([RFC)m 10(791])m 11(may)m 10(help)m 10(implement)m 11(this)m 10(objective.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(92])m @eop 91 @bop0 91 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p (Refer)s (ences)s t-rom.300 @sf 0 304 p ([BBN])s 116(McQuillan,)m 7(J.M.,)m 8(Richer)m -1 r 44 c 7(I.)m 7(and)m 7(Rosen,)m 8(E.C.)m t-ita.300 @sf 7(ARP)m -5(ANET)m 6(Routing)m 7(Algorithm)m 7(Impr)m (ovements.)s t-rom.300 @sf 6(BBN)m 7 r 84 c -2(echnical)m 229 354 p (Report)s 10(3803,)m 11(April)m 10(1978.)m 0 437 p ([DEC])s 118(Digital)m 9(Equipment)m 10(Corporation.)m t-ita.300 @sf 9(Information)m 10(pr)m -1(ocessing)m 8(systems)m 10 r 123 c 9(Data)m 10(communications)m 9 r 123 c 10(Intermediate)m 229 487 p (System)s 10(to)m 11(Intermediate)m 10(System)m 11(Intra-Domain)m 10(Routing)m 11(Pr)m -1(otocol.)m t-rom.300 @sf 9(October)m 11(1987.)m 0 570 p ([McQuillan])s 21(McQuillan,)m 8(J.)m 8(et.al.)m t-ita.300 @sf 8(The)m 8(New)m 7(Routing)m 8(Algorithm)m 8(for)m 8(the)m 8(Arpanet.)m t-rom.300 @sf 7(IEEE)m 8 r 84 c (ransactions)s 7(on)m 7(Communications,)m 229 620 p (May)s 10(1980.)m 0 703 p ([Perlman])s 62(Perlman,)m 11(Radia.)m t-ita.300 @sf 10(Fault-T)m -3(olerant)m 10(Br)m -1(oadcast)m 10(of)m 10(Routing)m 11(Information.)m t-rom.300 @sf 10(Computer)m 10(Networks,)m 11(Dec.)m 10(1983.)m 0 786 p ([RFC)s 10(791])m 50(Postel,)m 10(Jon.)m t-ita.300 @sf 11(Internet)m 10(Pr)m (otocol.)s t-rom.300 @sf 9(September)m 11(1981)m 0 869 p ([RFC)s 10(944])m 50(ANSI)m 10(X3S3.3)m 10(86-60.)m t-ita.300 @sf 10(Final)m 11 r 84 c -3(ext)m 9(of)m 10(DIS)m 10(8473,)m 10(Pr)m (otocol)s 9(for)m 10(Pr)m (oviding)s 9(the)m 10(Connectionless-mode)m 10(Network)m 229 919 p (Service.)s t-rom.300 @sf 10(March)m 11(1986.)m 0 1002 p ([RFC)s 10(1060])m 29(Reynolds,)m 11(J.)m 10(and)m 10(Postel,)m 11(J.)m t-ita.300 @sf 10(Assigned)m 11(Numbers.)m t-rom.300 @sf 10(March)m 11(1990.)m 0 1085 p ([RFC)s 10 r 49 c 49 c -2(12])m 31(Deering,)m 11(S.E.)m t-ita.300 @sf 10(Host)m 10(extensions)m 11(for)m 10(IP)m 11(multicasting.)m t-rom.300 @sf 10(May)m 11(1988.)m 0 1168 p ([RFC)s 10 r 49 c (131])s 29(Moy)m -1 r 44 c 9(J.)m t-ita.300 @sf 10(The)m 11(OSPF)m 10(Speci\014cation.)m t-rom.300 @sf 11(October)m 10(1989.)m 0 1251 p ([RS-85-153])s 21(Leiner)m -1 r 44 c 10(Dr)m -2 r 46 c 10(Barry)m 10(M.,)m 10(et.al.)m t-ita.300 @sf 11(The)m 10(DARP)m -4 r 65 c 9(Internet)m 11(Pr)m -1(otocol)m 10(Suite.)m t-rom.300 @sf 10(DDN)m 10(Protocol)m 11(Handbook,)m 10(April)m 11(1985.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(91])m @eop 90 @bop0 90 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (Calculating)s 10(the)m 11(shortest-path)m 10(tr)m (ee)s 10(\(Section)m 10(16.1\).)m t-rom.300 @sf 21(Routers)m 8(that)m 8(do)m 9(not)m 8(support)m 8 r 84 c (OS-based)s 7(routing)m 8(should)m 8(be)m 9(omitted)m 104 245 p (from)s 9(the)m 9(shortest-path)m 9(tree)m 9(calculation.)m 14(These)m 9(routers)m 9(are)m 9(identi\014ed)m 9(as)m 9(those)m 9(having)m 10(the)m t-bol.300 @sf 9 r 84 c -3(-bit)m t-rom.300 @sf 8(reset)m 9(in)m 9(their)m 9(router)m 104 295 p (links)s 12(advertisements.)m 18(Such)m 12(routers)m 11(should)m 12(never)m 12(be)m 12(added)m 12(to)m 12(the)m 12(Dijktra)m 11(algorithm')m -1 r 115 c 11(candidate)m 12(list,)m 12(nor)m 12(should)m 104 345 p (their)s 10(router)m 11(links)m 10(advertisements)m 10(be)m 11(examined)m 10(when)m 11(adding)m 10(the)m 11(stub)m 10(networks)m 10(to)m 11(the)m 10(tree.)m t-bol.300 @sf 0 428 p (Calculating)s 10(the)m 11(inter)m -1(-ar)m (ea)s 9 r 114 c (outes)s 10(\(Section)m 10(16.2\).)m t-rom.300 @sf 21(Inter)m (-area)s 11(paths)m 12(are)m 12(the)m 12(concatenation)m 12(of)m 12 r 97 c 12(path)m 12(to)m 12(an)m 12(area)m 12(border)m 104 477 p (router)s 11(with)m 10 r 97 c 11(summary)m 11(link.)m 15(When)m 10(calculating)m 11 r 84 c (OS)s 10 r 88 c 11(routes,)m 11(both)m 11(path)m 10(components)m 11(must)m 11(also)m 11(specify)m 10 r 84 c (OS)s 10(X.)m 104 527 p (In)s 12(other)m 13(words,)m 13(only)m 12 r 84 c (OS)s 12 r 88 c 12(paths)m 13(to)m 12(the)m 13(area)m 12(border)m 13(router)m 12(are)m 13(examined,)m 12(and)m 13(the)m 12(area)m 13(border)m 12(router)m 13(must)m 12(be)m 104 577 p (advertising)s 9 r 97 c 10 r 84 c (OS)s 8 r 88 c 10(route)m 9(to)m 10(the)m 9(destination.)m 14(Note)m 10(that)m 9(this)m 9(means)m 10(that)m 9(summary)m 10(link)m 9(advertisements)m 10(having)m 9(the)m t-bol.300 @sf 104 627 p 84 c -3(-bit)m t-rom.300 @sf 9(reset)m 11(in)m 10(their)m t-bol.300 @sf 11(Options)m t-rom.300 @sf 10(\014eld)m 10(are)m 11(not)m 10(considered.)m t-bol.300 @sf 0 710 p (Resolving)s 10(virtual)m 11(next)m 10(hops)m 11(\(Section)m 10(16.3\).)m t-rom.300 @sf 21(This)m 12(calculation)m 11(again)m 12(considers)m 12(the)m 12(concatenation)m 12(of)m 11 r 97 c 12(path)m 12(to)m 12(an)m 12(area)m 104 760 p (border)s 12(router)m 12(with)m 13 r 97 c 12(summary)m 12(link.)m 20(As)m 12(with)m 13(inter)m (-area)s 11(routes,)m 13(only)m 12 r 84 c (OS)s 12 r 88 c 12(paths)m 12(to)m 13(the)m 12(area)m 12(border)m 13(router)m 12(are)m 104 809 p (examined,)s 10(and)m 11(the)m 10(area)m 10(border)m 11(router)m 10(must)m 11(be)m 10(advertising)m 11 r 97 c 10 r 84 c (OS)s 10 r 88 c 10(route)m 10(to)m 11(the)m 10(destination.)m t-bol.300 @sf 0 892 p (Calculating)s 10(AS)m 11(external)m 10 r 114 c (outes)s 10(\(Section)m 10(16.4\).)m t-rom.300 @sf 21(This)m 9(calculation)m 9(considers)m 9(the)m 9(concatenation)m 9(of)m 8 r 97 c 9(path)m 9(to)m 9 r 97 c t-bol.300 @sf 9(forward-)m 104 942 p (ing)s 10(addr)m (ess)s t-rom.300 @sf 9(with)m 10(an)m 9(AS)m 10(external)m 10(link.)m 14(Only)m 10 r 84 c (OS)s 9 r 88 c 10(paths)m 10(to)m 9(the)m t-bol.300 @sf 10(forwarding)m 10(addr)m (ess)s t-rom.300 @sf 9(are)m 10(examined,)m 10(and)m 10(the)m 10(AS)m 104 992 p (boundary)s 12(router)m 13(must)m 13(be)m 12(advertising)m 13 r 97 c 12 r 84 c (OS)s 12 r 88 c 13(route)m 13(to)m 12(the)m 13(destination.)m 20(Note)m 13(that)m 12(this)m 13(means)m 13(that)m 12(AS)m 13(external)m 104 1042 p (link)s 10(advertisements)m 11(having)m 10(the)m t-bol.300 @sf 10 r 84 c -2(-bit)m t-rom.300 @sf 9(reset)m 10(in)m 11(their)m t-bol.300 @sf 10(Options)m t-rom.300 @sf 11(\014eld)m 10(are)m 11(not)m 10(considered.)m 104 1108 p (In)s 11(addition,)m 12(the)m 11(advertising)m 11(AS)m 11(boundary)m 12(router)m 11(must)m 11(also)m 12(be)m 11(reachable)m 11(for)m 12(its)m 11(advertisements)m 11(to)m 11(be)m 12(considered)m 104 1158 p (\(see)s 10(Section)m 11(16.4\).)m 14(However)m -1 r 44 c 9(if)m 11(the)m 10(advertising)m 11(router)m 10(and)m 11(the)m t-bol.300 @sf 10(forwarding)m 11(addr)m (ess)s t-rom.300 @sf 9(are)m 11(not)m 10(one)m 11(in)m 10(the)m 10(same,)m 11(the)m 104 1208 p (advertising)s 10(router)m 11(need)m 10(only)m 10(be)m 11(reachable)m 10(via)m 11 r 84 c (OS)s 9(0.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(90])m @eop 89 @bop0 89 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m cmsy10.300 @sf 62 195 p 15 c t-rom.300 @sf 21(The)m 9(cost)m 9(or)m 9(path)m 8(type)m 9(of)m 9 r 97 c 9(routing)m 9(table)m 9(entry)m 8(has)m 9(changed.)m 14(If)m 9(the)m 8(destination)m 9(described)m 9(by)m 9(this)m 9(entry)m 9(is)m 8 r 97 c 9(Network)m 104 245 p (or)s 9(AS)m 9(boundary)m 10(router)m -1 r 44 c 8(and)m 10(this)m 9(is)m 9(not)m 10(simply)m 9 r 97 c 9(change)m 9(of)m 10(AS)m 9(external)m 9(routes,)m 10(new)m 9(summary)m 9(link)m 10(advertisements)m 104 295 p (may)s 7(have)m 8(to)m 8(be)m 7(generated)m 8(\(potentially)m 8(one)m 7(for)m 8(each)m 8(attached)m 7(area,)m 9(including)m 7(the)m 8(backbone\).)m 13(See)m 8(Section)m 7(12.4.3)m 8(for)m 104 345 p (more)s 11(information.)m 14(If)m 11 r 97 c 11(previously)m 11(advertised)m 10(entry)m 11(has)m 11(been)m 11(deleted,)m 10(or)m 11(is)m 11(no)m 11(longer)m 10(advertisable)m 11(to)m 11 r 97 c 11(particular)m 104 394 p (area,)s 12(the)m 12(advertisement)m 12(must)m 12(be)m 12(\015ushed)m 12(from)m 12(the)m 12(routing)m 12(domain)m 12(by)m 12(setting)m 12(its)m 12(age)m 12(to)m 12(MaxAge)m 12(and)m 12(re\015ooding)m 104 444 p (\(see)s 10(Section)m 11(14.1\).)m cmsy10.300 @sf 62 521 p 15 c t-rom.300 @sf 21 r 65 c 12(routing)m 12(table)m 12(entry)m 12(associated)m 12(with)m 12 r 97 c 12(con\014gured)m 12(virtual)m 12(link)m 12(has)m 12(changed.)m 19(The)m 12(destination)m 12(of)m 12(such)m 12 r 97 c 12(routing)m 104 571 p (table)s 10(entry)m 11(is)m 10(an)m 10(area)m 11(border)m 10(router)m -1 r 46 c 13(The)m 10(change)m 11(indicates)m 10 r 97 c 11(modi\014cation)m 10(to)m 10(the)m 11(virtual)m 10(link')m -1 r 115 c 9(cost)m 11(or)m 10(viability)m -2 r 46 c 104 635 p (If)s 11(the)m 11(entry)m 12(indicates)m 11(that)m 11(the)m 11(area)m 12(border)m 11(router)m 11(is)m 11(newly)m 12(reachable)m 11(\(via)m 11 r 84 c (OS)s 11(0\),)m 11(the)m 11(corresponding)m 11(virtual)m 12(link)m 104 684 p (is)s 11(now)m 11(operational.)m 17(An)m t-bol.300 @sf 12(Interface)m 11(Up)m t-rom.300 @sf 11(event)m 12(should)m 11(be)m 11(generated)m 12(for)m 11(the)m 11(virtual)m 12(link,)m 11(which)m 12(will)m 11(cause)m 11 r 97 c 12(virtual)m 104 734 p (adjacency)s 14(to)m 14(begin)m 14(to)m 13(form)m 14(\(see)m 14(Section)m 14(10.3\).)m 25(At)m 13(this)m 14(time)m 14(the)m 14(virtual)m 14(interface')m -1 r 115 c 13(IP)m 14(address)m 14(and)m 13(the)m 14(virtual)m 104 784 p (neighbor)s 1 r 39 c -1 r 115 c 9(IP)m 11(address)m 10(are)m 11(also)m 10(calculated.)m 104 848 p (If)s 14(the)m 15(entry)m 15(indicates)m 15(that)m 14(the)m 15(area)m 15(border)m 14(router)m 15(is)m 15(no)m 15(longer)m 14(reachable)m 15(\(via)m 15 r 84 c (OS)s 14(0\),)m 15(the)m 15(virtual)m 15(link)m 15(and)m 14(its)m 104 897 p (associated)s 12(adjacency)m 13(should)m 13(be)m 12(destroyed.)m 21(This)m 12(means)m 13(an)m t-bol.300 @sf 13(Interface)m 12(Down)m t-rom.300 @sf 13(event)m 13(should)m 12(be)m 13(generated)m 12(for)m 13(the)m 104 947 p (associated)s 10(virtual)m 11(link.)m 104 1011 p (If)s 10(the)m 11(cost)m 11(of)m 10(the)m 11(entry)m 11(has)m 10(changed,)m 11(and)m 11(there)m 10(is)m 11 r 97 c 10(fully)m 11(established)m 11(virtual)m 10(adjacency)m -1 r 44 c 9 r 97 c 11(new)m 11(router)m 10(links)m 11(adver-)m 104 1060 p (tisement)s 10(for)m 11(the)m 10(backbone)m 10(must)m 11(be)m 10(originated.)m 14(This)m 11(in)m 10(turn)m 10(may)m 11(cause)m 10(further)m 11(routing)m 10(table)m 10(changes.)m t-bol.360 @sf 0 1188 p (16.8)s 50(Equal-cost)m 12(multipath)m t-rom.300 @sf 0 1278 p (The)s 11(OSPF)m 11(protocol)m 11(maintains)m 11(multiple)m 11(equal-cost)m 11(routes)m 11(to)m 10(all)m 11(destinations.)m 16(This)m 11(can)m 11(be)m 11(seen)m 11(in)m 10(the)m 11(steps)m 11(used)m 11(above)m 0 1327 p (to)s 10(calculate)m 11(the)m 10(routing)m 11(table,)m 10(and)m 10(in)m 11(the)m 10(de\014nition)m 11(of)m 10(the)m 11(routing)m 10(table)m 10(structure.)m 0 1389 p (Each)s 9(one)m 9(of)m 9(the)m 9(multiple)m 9(routes)m 9(will)m 9(be)m 9(of)m 9(the)m 9(same)m 9(type)m 9(\(intra-area,)m 9(inter)m (-area,)s 9(type)m 9 r 49 c 9(external)m 9(or)m 9(type)m 9 r 50 c 9(external\),)m 9(cost,)m 0 1439 p (and)s 10(will)m 11(have)m 10(the)m 11(same)m 10(associated)m 10(area.)m 14(However)m 44 c 9(each)m 11(route)m 10(speci\014es)m 10 r 97 c 11(separate)m 10(next)m 11(hop)m 10(and)m 10(advertising)m 11(router)m -1 r 46 c 0 1500 p (There)s 12(is)m 11(no)m 12(requirement)m 12(that)m 12 r 97 c 11(router)m 12(running)m 12(OSPF)m 12(keep)m 11(track)m 12(of)m 12(all)m 12(possible)m 11(equal-cost)m 12(routes)m 12(to)m 12 r 97 c 11(destination.)m 18(An)m 0 1550 p (implementation)s 11(may)m 11(choose)m 11(to)m 11(keep)m 11(only)m 11 r 97 c 11(\014xed)m 11(number)m 11(of)m 11(routes)m 11(to)m 11(any)m 11(given)m 11(destination.)m 16(This)m 11(does)m 11(not)m 11(af)m (fect)s 10(any)m 0 1600 p (of)s 10(the)m 11(algorithms)m 10(presented)m 11(in)m 10(this)m 10(speci\014cation.)m t-bol.360 @sf 0 1727 p (16.9)s 50(Building)m 12(the)m 13(non-zer)m (o-T)s -1(OS)m 12(portion)m 12(of)m 13(the)m 12 r 114 c (outing)s 12(table)m t-rom.300 @sf 0 1817 p (The)s 11(OSPF)m 12(protocol)m 11(can)m 11(calculate)m 12 r 97 c 11(dif)m (ferent)s 11(set)m 11(of)m 11(routes)m 12(for)m 11(each)m 12(IP)m 11 r 84 c (OS)s 11(\(see)m 11(Section)m 11(2.4\).)m 17(Support)m 11(for)m 12 r 84 c (OS-based)s 0 1866 p (routing)s 13(is)m 12(optional.)m 21 r 84 c (OS-capable)s 12(and)m 13(non-T)m (OS-capable)s 12(routers)m 12(can)m 13(be)m 13(mixed)m 12(in)m 13(an)m 13(OSPF)m 12(routing)m 13(domain.)m 21(Routers)m 0 1916 p (not)s 10(supporting)m 10 r 84 c (OS)s 9(calculate)m 11(only)m 10(the)m 10 r 84 c (OS)s 9 r 48 c 10(route)m 10(to)m 10(each)m 10(destination.)m 14(These)m 10(routes)m 10(are)m 10(then)m 10(used)m 11(to)m 10(forward)m 10(all)m 10(data)m 0 1966 p (traf)s (\014c,)s 10(regardless)m 11(of)m 10(the)m 11 r 84 c (OS)s 10(indications)m 11(in)m 10(the)m 11(data)m 11(packet')m -2 r 115 c 10(IP)m 11(header)m -1 r 46 c 13 r 65 c 11(router)m 11(that)m 10(does)m 11(not)m 11(support)m 10 r 84 c (OS)s 10(indicates)m 0 2016 p (this)s 10(fact)m 11(to)m 10(the)m 11(other)m 10(OSPF)m 10(routers)m 11(by)m 10(clearing)m 11(the)m t-bol.300 @sf 10 r 84 c -3(-bit)m t-rom.300 @sf 10(in)m 10(the)m t-bol.300 @sf 11(Options)m t-rom.300 @sf 10(\014eld)m 10(of)m 11(its)m 10(router)m 11(links)m 10(advertisement.)m 0 2077 p (The)s 13(above)m 12(sections)m 13(detailing)m 13(the)m 12(routing)m 13(table)m 13(calculations)m 12(handle)m 13(the)m 13 r 84 c (OS)s 11 r 48 c 13(case)m 13(only)m -2 r 46 c 20(In)m 12(general,)m 13(for)m 13(routers)m 13(sup-)m 0 2127 p (porting)s 10 r 84 c (OS-based)s 10(routing,)m 10(each)m 11(piece)m 10(of)m 10(the)m 10(routing)m 11(table)m 10(calculation)m 10(must)m 11(be)m 10(rerun)m 10(separately)m 11(for)m 10(the)m 10(non-zero)m 11 r 84 c (OS)s 0 2177 p (values.)s 25(When)m 14(calculating)m 14(routes)m 14(for)m 14 r 84 c (OS)s 13(X,)m 14(only)m 15 r 84 c (OS)s 13 r 88 c 14(metrics)m 14(can)m 14(be)m 14(used.)m 25(Any)m 14(link)m 14(state)m 14(advertisement)m 14(may)m 0 2227 p (specify)s 10 r 97 c 10(separate)m 10(cost)m 10(for)m 10(each)m 10 r 84 c (OS)s 9(\(a)m 10(cost)m 10(for)m 10 r 84 c (OS)s 9 r 48 c 10(must)m 10(always)m 10(be)m 9(speci\014ed\).)m 14(The)m 10(encoding)m 10(of)m 10 r 84 c (OS)s 9(in)m 10(OSPF)m 10(link)m 0 2277 p (state)s 10(advertisements)m 11(is)m 10(described)m 11(in)m 10(Section)m 10(12.3.)m 0 2338 p (An)s 12(advertisement)m 13(can)m 12(specify)m 12(that)m 12(it)m 13(is)m 12(restricted)m 12(to)m 13 r 84 c (OS)s 11 r 48 c 12(\(i.e.,)m 13(non-zero)m 12 r 84 c (OS)s 12(is)m 12(not)m 12(handled\))m 13(by)m 12(clearing)m 12(the)m t-bol.300 @sf 13 r 84 c -3(-bit)m t-rom.300 @sf 0 2388 p (in)s 10(the)m 11(link)m 10(state)m 10(advertisement')m -1 r 115 c t-bol.300 @sf 9(Option)m t-rom.300 @sf 11(\014eld.)m 14(Such)m 10(advertisements)m 10(are)m 11(not)m 10(used)m 10(when)m 11(calculating)m 10(routes)m 10(for)m 11(non-zero)m 0 2438 p 84 c (OS.)s 15(For)m 11(this)m 12(reason,)m 11(it)m 11(is)m 11(possible)m 11(that)m 11 r 97 c 12(destination)m 11(is)m 11(unreachable)m 11(for)m 11(some)m 11(non-zero)m 11 r 84 c (OS.)s 16(In)m 11(this)m 11(case,)m 11(the)m 11 r 84 c (OS)s 11 r 48 c 0 2487 p (path)s 10(is)m 11(used)m 10(when)m 11(forwarding)m 10(packets)m 10(\(see)m 11(Section)m 10 r 49 c (1.1\).)s 0 2549 p (The)s 14(following)m 14(lists)m 14(the)m 13(modi\014cations)m 14(needed)m 14(when)m 14(running)m 14(the)m 14(routing)m 14(table)m 14(calculation)m 13(for)m 14 r 97 c 14(non-zero)m 14 r 84 c (OS)s 13(value)m 0 2599 p (\(called)s 10 r 84 c (OS)s 10(X\).)m 10(In)m 11(general,)m 10(routers)m 11(and)m 10(advertisements)m 11(that)m 10(do)m 10(not)m 11(support)m 10 r 84 c (OS)s 10(are)m 10(omitted)m 11(from)m 10(the)m 11(calculation.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(89])m @eop 88 @bop0 88 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 52 195 p (4.)s 21(Next,)m 10(look)m 11(up)m 11(the)m 11(routing)m 11(table)m 11(entry)m 10(for)m 11(the)m 11(destination)m 11(N.)m 11(If)m 10(no)m 11(entry)m 11(exists)m 11(for)m 11(N,)m 10(install)m 11(the)m 11(AS)m 11(external)m 11(path)m 104 245 p (to)s 13(N,)m 12(with)m 13(next)m 13(hop)m 13(equal)m 13(to)m 12(the)m 13(list)m 13(of)m 13(next)m 13(hops)m 12(to)m 13(the)m t-bol.300 @sf 13(forwarding)m 13(addr)m (ess)s t-rom.300 @sf 44 c 13(and)m 12(advertising)m 13(router)m 13(equal)m 13(to)m 104 295 p (ASBR.)s 10(If)m 11(the)m 11(external)m 11(metric)m 10(type)m 11(is)m 11(1,)m 10(then)m 11(the)m 11(path-type)m 11(is)m 10(set)m 11(to)m 11(type)m 10 r 49 c 11(external)m 11(and)m 10(the)m 11(cost)m 11(is)m 11(equal)m 10(to)m 11(X+Y)m -4 r 46 c 104 345 p (If)s 10(the)m 9(external)m 10(metric)m 10(type)m 10(is)m 10(2,)m 10(the)m 10(the)m 10(path-type)m 9(is)m 10(set)m 10(to)m 10(type)m 10 r 50 c 10(external,)m 10(the)m 9(link)m 10(state)m 10(component)m 10(of)m 10(the)m 10(route')m -2 r 115 c 104 394 p (cost)s 10(is)m 11(X,)m 10(and)m 10(the)m 11 r 84 c -2(ype)m 9 r 50 c 11(cost)m 10(is)m 11 r 89 c -5 r 46 c 52 477 p (5.)s 21(Else,)m 10(if)m 10(the)m 10(paths)m 10(present)m 10(in)m 10(the)m 10(table)m 10(are)m 10(not)m 10(type)m 10 r 49 c 10(or)m 10(type)m 10 r 50 c 11(external)m 10(paths,)m 10(do)m 10(nothing)m 10(\(AS)m 10(external)m 10(paths)m 10(have)m 104 527 p (the)s 10(lowest)m 11(priority\).)m 52 610 p (6.)s 21(Otherwise,)m 9(compare)m 10(the)m 10(cost)m 10(of)m 9(this)m 10(new)m 10(AS)m 10(external)m 9(path)m 10(to)m 10(the)m 10(ones)m 9(present)m 10(in)m 10(the)m 10(table.)m 13 r 84 c -2(ype)m 9 r 49 c 10(external)m 10(paths)m 104 660 p (are)s 10(always)m 10(shorter)m 11(than)m 10 r 84 c -2(ype)m 9 r 50 c 11(external)m 10(paths.)m 14 r 84 c -2(ype)m 9 r 49 c 11(external)m 10(paths)m 10(are)m 11(compared)m 10(by)m 10(looking)m 11(at)m 10(the)m 10(sum)m 11(of)m 10(the)m 104 710 p (distance)s 8(to)m 8(the)m t-bol.300 @sf 7(forwarding)m 8(addr)m (ess)s t-rom.300 @sf 7(and)m 8(the)m 8(advertised)m 8 r 84 c -2(ype)m 7 r 49 c 8(metric)m 8(\(X+Y\).)m 8 r 84 c -2(ype)m 7 r 50 c 8(external)m 8(paths)m 7(are)m 8(compared)m 104 760 p (by)s 10(looking)m 11(at)m 10(the)m 10(advertised)m 11 r 84 c -2(ype)m 9 r 50 c 11(metrics,)m 10(and)m 11(then)m 10(if)m 10(necessary)m -1 r 44 c 9(the)m 11(distance)m 10(to)m 10(the)m t-bol.300 @sf 11(forwarding)m 10(addr)m (esses)s t-rom.300 @sf 46 c 104 826 p (If)s 9(the)m 9(new)m 9(path)m 9(is)m 10(shorter)m -1 r 44 c 8(it)m 10(replaces)m 9(the)m 9(present)m 9(paths)m 9(in)m 9(the)m 10(routing)m 9(table)m 9(entry)m -2 r 46 c 13(If)m 9(the)m 9(new)m 9(path)m 9(is)m 10(the)m 9(same)m 9(cost,)m 104 876 p (it)s 10(is)m 11(added)m 10(to)m 10(the)m 11(routing)m 10(table)m 11(entry')m -2 r 115 c 10(list)m 10(of)m 11(paths.)m t-bol.360 @sf 0 1013 p (16.5)s 50(Incr)m (emental)s 12(updates)m 12 r 124 c 13(summary)m 12(links)m t-rom.300 @sf 0 1108 p (When)s 9 r 97 c 9(new)m 8(summary)m 9(link)m 9(advertisement)m 9(is)m 9(received,)m 9(it)m 9(is)m 9(not)m 8(necessary)m 9(to)m 9(recalculate)m 9(the)m 9(entire)m 9(routing)m 8(table.)m 14(Call)m 9(the)m 0 1158 p (destination)s 9(described)m 10(by)m 9(the)m 10(summary)m 9(link)m 10(advertisement)m 9(N,)m 10(and)m 9(let)m 10 r 65 c 9(be)m 9(the)m 10(area)m 9(to)m 10(which)m 9(the)m 10(advertisement)m 9(belongs.)m 0 1226 p (Look)s 10(up)m 10(the)m 10(routing)m 10(table)m 10(entry)m 10(for)m 10(N.)m 10(If)m 10(the)m 10(next)m 10(hop)m 10(to)m 10 r 78 c 10(is)m 10 r 97 c 10(virtual)m 10(link)m 10(through)m 10(Area)m 10 r 65 c 10(\(this)m 10(means)m 10(that)m 10(the)m 10(entry')m -1 r 115 c 0 1276 p (associated)s 11(area)m 10(is)m 11(the)m 11(backbone,)m 11(and)m 10(the)m 11(listed)m 11(next)m 10(hop)m 11(does)m 11(not)m 11(belong)m 10(to)m 11(the)m 11(backbone,)m 10(but)m 11(instead)m 11(belongs)m 11(to)m 10(Area)m 0 1325 p (A\),)s 9(the)m 9(real)m 10(next)m 9(hop)m 9(must)m 9(again)m 10(be)m 9(resolved.)m 13(This)m 10(means)m 9(running)m 9(the)m 9(algorithm)m 10(in)m 9(Section)m 9(16.3)m 9(for)m 10(destination)m 9 r 78 c 9(only)m -2 r 46 c 0 1393 p (Else,)s 11(if)m 12(there)m 11(is)m 11(an)m 12(intra-area)m 11(route)m 11(to)m 11(destination)m 12 r 78 c 11(nothing)m 11(need)m 11(be)m 12(done)m 11(\(intra-area)m 11(routes)m 11(always)m 12(take)m 11(precedence\).)m 0 1443 p (Otherwise,)s 11(if)m 11(Area)m 11 r 65 c 11(is)m 11(the)m 11(router)m 2 r 39 c -2 r 115 c 10(sole)m 11(attached)m 11(area,)m 11(or)m 11(Area)m 11 r 65 c 11(is)m 11(the)m 11(backbone,)m 12(the)m 11(procedure)m 11(in)m 11(Section)m 11(16.2)m 11(will)m 0 1493 p (have)s 11(to)m 11(be)m 10(performed,)m 11(but)m 11(only)m 11(for)m 11(those)m 11(summary)m 11(link)m 10(advertisements)m 11(whose)m 11(destination)m 11(is)m 11(N.)m 10(Before)m 11(this)m 11(procedure)m 0 1542 p (is)s 12(performed,)m 12(the)m 12(present)m 12(routing)m 13(table)m 12(entry)m 12(for)m 12 r 78 c 12(should)m 12(be)m 12(invalidated)m 12(\(but)m 12(kept)m 12(for)m 12(comparison)m 12(purposes\).)m 18(If)m 12(this)m 0 1592 p (procedure)s 8(leads)m 8(to)m 8 r 97 c 8(virtual)m 8(next)m 9(hop,)m 8(the)m 8(algorithm)m 8(in)m 8(Section)m 8(16.3)m 8(will)m 9(again)m 8(have)m 8(to)m 8(be)m 8(performed)m 8(in)m 8(order)m 8(to)m 8(calculate)m 0 1642 p (the)s 10(real)m 11(next)m 10(hop.)m 0 1710 p (If)s 11(N')m -1 r 115 c 9(routing)m 11(table)m 11(entry)m 11(changes,)m 11(and)m 11 r 78 c 10(is)m 11(an)m 11(AS)m 11(boundary)m 11(router)m -1 r 44 c 10(the)m 11(AS)m 11(external)m 10(links)m 11(will)m 11(have)m 11(to)m 11(be)m 10(reexamined)m 0 1760 p (\(Section)s 10(16.4\).)m t-bol.360 @sf 0 1896 p (16.6)s 50(Incr)m (emental)s 12(updates)m 12 r 124 c 13(AS)m 12(external)m 13(links)m t-rom.300 @sf 0 1992 p (When)s 10 r 97 c 10(new)m 10(AS)m 9(external)m 10(link)m 10(advertisement)m 10(is)m 10(received,)m 10(it)m 10(is)m 9(not)m 10(necessary)m 10(to)m 10(recalculate)m 10(the)m 10(entire)m 10(routing)m 9(table.)m 14(Call)m 0 2042 p (the)s 11(destination)m 11(described)m 11(by)m 11(the)m 11(AS)m 11(external)m 11(link)m 11(advertisement)m 11(N.)m 11(If)m 11(there)m 11(is)m 11(already)m 11(an)m 11(intra-area)m 11(or)m 11(inter)m (-area)s 10(route)m 0 2092 p (to)s 10(the)m 11(destination,)m 10(no)m 11(recalculation)m 10(is)m 10(necessary)m 11(\(these)m 10(routes)m 11(take)m 10(precedence\).)m 0 2159 p (Otherwise,)s 9(the)m 9(procedure)m 8(in)m 9(Section)m 8(16.4)m 9(will)m 8(have)m 9(to)m 9(be)m 8(performed,)m 9(but)m 9(only)m 8(for)m 9(those)m 8(AS)m 9(external)m 9(link)m 8(advertisements)m 0 2209 p (whose)s 9(destination)m 8(is)m 9(N.)m 9(Before)m 9(this)m 8(procedure)m 9(is)m 9(performed,)m 9(the)m 9(present)m 8(routing)m 9(table)m 9(entry)m 9(for)m 8 r 78 c 9(should)m 9(be)m 9(invalidated.)m t-bol.360 @sf 0 2346 p (16.7)s 50(Events)m 12(generated)m 13(as)m 12 r 97 c 13 r 114 c (esult)s 12(of)m 12 r 114 c (outing)s 12(table)m 12(changes)m t-rom.300 @sf 0 2441 p (Changes)s 8(to)m 7(routing)m 8(table)m 7(entries)m 8(sometimes)m 8(cause)m 7(the)m 8(OSPF)m 7(area)m 8(border)m 7(routers)m 8(to)m 8(take)m 7(additional)m 8(actions.)m 13(These)m 7(routers)m 0 2491 p (need)s 10(to)m 11(act)m 10(on)m 11(the)m 10(following)m 10(routing)m 11(table)m 10(changes:)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(88])m @eop 87 @bop0 /Times-Roman /t-rom.210 ReEncodeForTeX /t-rom.210 /t-rom.210 29.166583 TeXPSmakefont def /Times-Roman /t-rom.180 ReEncodeForTeX /t-rom.180 /t-rom.180 24.999965 TeXPSmakefont def /Times-Roman /t-rom.240 ReEncodeForTeX /t-rom.240 /t-rom.240 33.333265 TeXPSmakefont def /Times-Bold /t-bol.240 ReEncodeForTeX /t-bol.240 /t-bol.240 33.333265 TeXPSmakefont def 87 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 52 195 p (3.)s 21(If)m 11(next)m 12(hop)m 11(NH)m 12(is)m 11(null)m 12(or)m 11(X+Y)m 12(is)m 12(smaller)m 11(is)m 12(smaller)m 11(than)m 12(D,)m 11(set)m 12 r 68 c 11(to)m 12(X+Y)m 12(and)m 11(set)m 12(the)m 11(next)m 12(hop)m 11(NH)m 12(to)m 12(the)m 11(next)m 104 245 p (hop)s 10(speci\014ed)m 11(in)m 10(router)m 10(BR')m -1 r 115 c 10(routing)m 10(table)m 10(entry)m -1 r 46 c 0 327 p (At)s 13(this)m 13(point,)m 13(the)m 13(real)m 13(next)m 13(hop)m 13(NH)m 13(should)m 13(be)m 12(set,)m 14(and)m 13(the)m 13(distance)m 13 r 68 c 12(calculated)m 13(should)m 13(be)m 13(less)m 13(than)m 13(or)m 13(equal)m 13(to)m 12(the)m 0 377 p (cost)s 13(originally)m 14(speci\014ed)m 13(in)m 13(destination)m 13(N')m -1 r 115 c 12(routing)m 14(table)m 13(entry)m -2 r 46 c 22(This)m 13(same)m 13(calculation)m 13(should)m 14(be)m 13(done)m 13(for)m 13(all)m 14(of)m 13(N')m -1 r 115 c 0 427 p (virtual)s 10(next)m 10(hops,)m 10(and)m 10(then)m 10(N')m -2 r 115 c 9(new)m 10(cost)m 10(set)m 10(to)m 10(the)m 10(minimum)m 10(calculated)m 10(distance,)m 10(with)m 10(the)m 10(its)m 10(new)m 10(set)m 10(of)m 10(next)m 9(hops)m 10(that)m 0 477 p (combination)s 10(of)m 11(non-virtual)m 10(and)m 11(recalculated)m 10(next)m 10(hops)m 11(that)m 10(correspond)m 11(to)m 10(this)m 11(\(possibly)m 10(same)m 10(as)m 11(original\))m 10(distance.)m 0 538 p (The)s 9(resolving)m 8(of)m 9(virtual)m 8(next)m 9(hops)m 8(may)m 9(produce)m 9(unexpected)m 8(results.)m 13(After)m 9(the)m 9(virtual)m 8(next)m 9(hops)m 8(are)m 9(resolved,)m 9(traf)m (\014c)s 8(that)m 0 588 p (was)s 11(originally)m 11(scheduled)m 10(to)m 11(go)m 11(over)m 11(the)m 11(virtual)m 11(link)m 10(may)m 11(instead)m 11(take)m 11 r 97 c 11(dif)m (ferent)s 10(path)m 11(through)m 10(the)m 11(virtual)m 11(link')m -1 r 115 c 10(transit)m 0 637 p (area.)s 17(In)m 11(other)m 11(words,)m 12(virtual)m 11(links)m 12(allow)m 11(transit)m 11(traf)m (\014c)s 11(to)m 11(be)m 11(forwarded)m 12(through)m 11(an)m 11(area,)m 12(but)m 11(do)m 12(not)m 11(dictate)m 11(the)m 12(precise)m 0 687 p (path)s 10(that)m 11(the)m 10(traf)m (\014c)s 10(will)m 10(take.)m 0 748 p (As)s 12(an)m 12(example,)m 12(consider)m 12(the)m 12(Autonomous)m 12(System)m 12(pictured)m 12(in)m 12(Figure)m 12(17.)m 18(There)m 12(is)m 12 r 97 c 12(single)m 12(non-backbone)m 12(area)m 12(\(Area)m 0 798 p (1\))s 11(that)m 11(physically)m 11(divides)m 11(the)m 12(backbone)m 11(into)m 11(two)m 11(separate)m 11(pieces.)m 16 r 84 c -2 r 111 c 10(maintain)m 11(connectivity)m 11(of)m 12(the)m 11(backbone,)m 11 r 97 c 11(virtual)m 0 848 p (link)s 13(has)m 12(been)m 13(con\014gured)m 13(between)m 13(routers)m 12 r 82 c -1(T1)m 12(and)m 12 r 82 c -1(T4.)m 20(On)m 12(the)m 13(right)m 13(side)m 12(of)m 13(the)m 13(\014gure,)m 13(network)m 13(N1)m 13(belongs)m 12(to)m 13(the)m 0 898 p (backbone.)s 23(The)m 14(dotted)m 13(lines)m 14(indicate)m 13(that)m 14(there)m 13(is)m 13 r 97 c 14(much)m 13(shorter)m 14(intra-area)m 13(backbone)m 14(path)m 13(between)m 14(router)m 13 r 82 c -1(T5)m 12(and)m 0 948 p (network)s 11(N1)m 12(\(cost)m 11(20\))m 12(than)m 11(there)m 12(is)m 11(between)m 12(router)m 11 r 82 c -1(T4)m 10(and)m 11(network)m 12(N1)m 11(\(cost)m 12(100\).)m 17(Both)m 11(router)m 12 r 82 c -2(T4)m 11(and)m 11(router)m 11 r 82 c -1(T5)m 0 997 p (will)s 10(inject)m 11(summary)m 10(link)m 11(advertisements)m 10(for)m 10(network)m 11(N1)m 10(into)m 11(Area)m 10(1.)m 0 1059 p (After)s 13(the)m 12(shortest-path)m 13(tree)m 12(has)m 13(been)m 12(calculated)m 13(for)m 12(the)m 13(backbone,)m 13(router)m 12 r 82 c -1(T1)m 12(\(one)m 12(end)m 13(of)m 12(the)m 13(virtual)m 12(link\))m 13(will)m 12(have)m 0 1108 p (selected)s 11(router)m 11 r 82 c -1(T4)m 10(as)m 11(the)m 11(virtual)m 11(next)m 11(hop)m 11(for)m 11(all)m 11(data)m 11(traf)m (\014c)s 11(destined)m 11(for)m 11(network)m 11(N1.)m 16(However)m -1 r 44 c 10(since)m 11(router)m 11 r 82 c -1(T5)m 10(is)m 0 1158 p (so)s 9(much)m 9(closer)m 10(to)m 9(network)m 9(N1,)m 9(all)m 10(routers)m 9(internal)m 9(to)m 9(Area)m 9 r 49 c 10(\(e.g.,)m 9(routers)m 9 r 82 c -1(T2)m 8(and)m 9 r 82 c -1(T3\))m 8(will)m 9(forward)m 9(their)m 10(network)m 9(N1)m 0 1208 p (traf)s (\014c)s 10(towards)m 11(router)m 11 r 82 c -2(T5,)m 10(instead)m 11(of)m 11 r 82 c -2(T4.)m 14(And)m 11(indeed,)m 11(after)m 11(resolving)m 11(the)m 10(virtual)m 11(next)m 11(hop)m 11(by)m 11(the)m 11(above)m 10(calculation,)m 0 1258 p (router)s 10 r 82 c -2(T1)m 9(will)m 10(also)m 10(forward)m 9(network)m 10(N1)m 10(traf)m (\014c)s 9(towards)m 10 r 82 c -2(T5.)m 13(So,)m 10(in)m 10(this)m 9(example)m 10(the)m 10(virtual)m 10(link)m 9(enables)m 10(network)m 10(N1)m 0 1308 p (traf)s (\014c)s 10(to)m 11(be)m 12(forwarded)m 11(through)m 11(the)m 11(transit)m 11(Area)m 11(1,)m 11(but)m 11(the)m 11(actual)m 12(path)m 11(the)m 11(data)m 11(traf)m (\014c)s 10(takes)m 11(does)m 11(not)m 11(follow)m 12(the)m 11(virtual)m 0 1357 p (link.)s t-bol.360 @sf 0 1485 p (16.4)s 50(Calculating)m 12(AS)m 13(external)m 12 r 114 c (outes)s t-rom.300 @sf 0 1574 p (AS)s 11(external)m 10(routes)m 11(are)m 10(calculated)m 11(by)m 10(examining)m 11(AS)m 10(external)m 11(link)m 10(advertisements.)m 15(Each)m 10(of)m 11(the)m 10(AS)m 11(external)m 10(link)m 11(adver-)m 0 1624 p (tisements)s 12(is)m 11(considered)m 12(in)m 12(turn.)m 18(Most)m 12(AS)m 11(external)m 12(advertisements)m 12(describe)m 12(routes)m 11(to)m 12(speci\014c)m 12(IP)m 12(destinations.)m 17(An)m 12(AS)m 0 1674 p (external)s 12(advertisement)m 12(can)m 12(also)m 11(describe)m 12 r 97 c 12(default)m 12(route)m 12(for)m 12(the)m 11(Autonomous)m 12(System)m 12(\(destination)m cmr10.300 @sf 12 r 61 c t-rom.300 @sf 12(DefaultDestina-)m 0 1723 p (tion\).)s 14(For)m 10(each)m 11(AS)m 10(external)m 11(link)m 10(advertisement:)m 52 1811 p (1.)s 21(If)m 10(the)m 10(cost)m 11(speci\014ed)m 10(by)m 11(the)m 10(advertisement)m 10(is)m 11(LSIn\014nity)m -2 r 44 c 10(then)m 10(examine)m 10(the)m 11(next)m 10(advertisement.)m 52 1888 p (2.)s 21(If)m 10(the)m 10(advertisement)m 11(was)m 10(originated)m 11(by)m 10(the)m 10(calculating)m 11(router)m 10(itself,)m 11(examine)m 10(the)m 11(next)m 10(advertisement.)m 52 1965 p (3.)s 21(Call)m 7(the)m 8(destination)m 8(described)m 7(by)m 8(the)m 8(advertisement)m 8(N.)m 7(Look)m 8(up)m 8(the)m 8(routing)m 7(table)m 8(entry)m 8(for)m 8(the)m 7(AS)m 8(boundary)m 8(router)m 104 2015 p (\(ASBR\))s 12(that)m 12(originated)m 11(the)m 12(advertisement.)m 19(If)m 11(no)m 12(entry)m 12(exists)m 12(for)m 12(router)m 12(ASBR)m 12(\(i.e.,)m 12(ASBR)m 12(is)m 12(unreachable\),)m 12(do)m 104 2064 p (nothing)s 10(with)m 11(this)m 10(advertisement)m 10(and)m 11(consider)m 10(the)m 11(next)m 10(in)m 11(the)m 10(list.)m 104 2128 p (Else,)s 9(this)m 9(advertisement)m 9(describes)m 9(an)m 9(AS)m 10(external)m 9(path)m 9(to)m 9(destination)m 9(N.)m 9(Examine)m 9(the)m t-bol.300 @sf 9(forwarding)m 9(addr)m (ess)s t-rom.300 @sf 9(spec-)m 104 2178 p (i\014ed)s 13(in)m 13(the)m 14(external)m 13(advertisement.)m 23(This)m 13(indicates)m 13(the)m 14(IP)m 13(address)m 13(to)m 14(which)m 13(packets)m 13(for)m 14(the)m 13(destination)m 13(should)m 104 2228 p (be)s 12(forwarded.)m 21(If)m t-bol.300 @sf 13(forwarding)m 12(addr)m (ess)s t-rom.300 @sf 12(is)m 13(set)m 12(to)m c-med.300 @sf 13(0.0.0.0)m t-rom.300 @sf 44 c 13(packets)m 13(should)m 12(be)m 13(sent)m 13(to)m 12(the)m 13(ASBR)m 13(itself.)m 20(Other-)m 104 2277 p (wise,)s 11(look)m 12(up)m 11(the)m t-bol.300 @sf 12(forwarding)m 11(addr)m (ess)s t-rom.300 @sf 10(in)m 12(the)m 11(routing)m 12(table.)m t-rom.210 @sf 1092 2262 p (24)s t-rom.300 @sf 1140 2277 p (An)s 11(intra-area)m 12(or)m 11(inter)m (-area)s 11(path)m 11(must)m 12(exist)m 11(to)m 11(the)m 104 2327 p (forwarding)s 10(address.)m 14(If)m 10(no)m 11(such)m 10(path)m 11(exists,)m 10(do)m 11(nothing)m 10(with)m 10(the)m 11(advertisement)m 10(and)m 11(consider)m 10(the)m 10(next)m 11(in)m 10(the)m 11(list.)m 104 2391 p (Call)s 10(the)m 11(routing)m 11(table)m 10(distance)m 11(to)m 10(the)m t-bol.300 @sf 11(forwarding)m 11(addr)m (ess)s t-rom.300 @sf 9 r 88 c 11(\(when)m 11(the)m 10(forwarding)m 11(address)m 10(is)m 11(set)m 11(to)m c-med.300 @sf 10(0.0.0.0)m t-rom.300 @sf 44 c 104 2440 p (this)s 12(is)m 11(the)m 12(distance)m 12(to)m 12(the)m 11(ASBR)m 12(itself\),)m 12(and)m 12(the)m 12(cost)m 11(speci\014ed)m 12(in)m 12(the)m 12(advertisement)m 12 r 89 c -5 r 46 c 11 r 88 c 12(is)m 11(in)m 12(terms)m 12(of)m 12(the)m 11(link)m 104 2490 p (state)s 10(metric,)m 11(and)m 10 r 89 c 10(is)m 11 r 97 c 10 r 84 c -2(ype)m 10 r 49 c 10(or)m 11 r 50 c 10(external)m 10(metric.)m 0 2520 p 780 2 ru t-rom.180 @sf 33 2547 p (24)s t-rom.240 @sf 60 2559 p (When)s 8(the)m t-bol.240 @sf 9(forwarding)m 8(addr)m (ess)s t-rom.240 @sf 8(is)m 8(non-zero,)m 8(it)m 9(should)m 8(point)m 8(to)m 9 r 97 c 8(router)m 8(belonging)m 9(to)m 8(another)m 8(Autonomous)m 9(System.)m 11(See)m 8(Section)m 9(12.4.4)m 8(for)m 8(more)m 0 2599 p (details.)s t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(87])m @eop 86 @bop0 86 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 19702948 2105016 24405032 33417134 44731596 startTexFig %!PS-Adobe-1.0 %%Title: figure17.fig %%Creator: f2ps %%CreationDate: Mon Nov 12 03:50:39 1990 %%For: jmoy@winston (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 32 371 508 680 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth newpath 497.000 373.955 10.045 -174.545 -5.455 arcn stroke newpath 497.500 175.591 9.604 171.564 8.436 arc stroke [1 3.200000] 0 setdash % Polyline newpath 143 270 moveto 89 270 lineto stroke [] 0 setdash % Polyline newpath 508 177 moveto 508 372 lineto stroke % Polyline newpath 487 177 moveto 487 372 lineto stroke [1 3.200000] 0 setdash % Polyline newpath 400 338 moveto 485 338 lineto stroke [] 0 setdash [1 3.200000] 0 setdash % Polyline newpath 397 200 moveto 482 200 lineto stroke [] 0 setdash % Polyline newpath 264 198 moveto 358 198 lineto stroke % Polyline newpath 267 338 moveto 359 338 lineto stroke % Polyline newpath 180 287 moveto 228 337 lineto stroke % Polyline newpath 181 254 moveto 225 199 lineto stroke [4.000000] 0 setdash % Polyline newpath 152 153 moveto 394 153 lineto 394 407 lineto 152 407 lineto closepath stroke [] 0 setdash % Polyline newpath 143 254 moveto 181 254 lineto 181 287 lineto 143 287 lineto closepath stroke % Polyline newpath 226 183 moveto 264 183 lineto 264 216 lineto 226 216 lineto closepath stroke % Polyline newpath 229 322 moveto 267 322 lineto 267 355 lineto 229 355 lineto closepath stroke % Polyline newpath 359 183 moveto 397 183 lineto 397 216 lineto 359 216 lineto closepath stroke % Polyline newpath 361 322 moveto 399 322 lineto 399 355 lineto 361 355 lineto closepath stroke newpath 188.241 265.054 moveto 181.000 269.000 lineto 185.532 262.111 lineto stroke [1 3.200000] 0 setdash % Interpolated spline newpath 181 269 moveto 206.589 245.451 218.339 235.951 228 231 curveto 246.561 221.488 292.198 211.336 312 208 curveto 319.691 206.704 330.941 205.954 357 205 curveto stroke [] 0 setdash newpath 348.932 203.294 moveto 357.000 205.000 lineto 349.079 207.291 lineto stroke /Courier findfont 12.222222 scalefont setfont 466 274 moveto 1 -1 scale (N1) show 1 -1 scale 447 258 moveto 1 -1 scale (Network) show 1 -1 scale 125 263 moveto 1 -1 scale (1) show 1 -1 scale 213 171 moveto 1 -1 scale (\(transit\)) show 1 -1 scale 237 241 moveto 1 -1 scale (Virtual link) show 1 -1 scale 135 464 moveto 1 -1 scale (Figure 17: Resolving virtual next hops) show 1 -1 scale 408 193 moveto 1 -1 scale (100) show 1 -1 scale 410 331 moveto 1 -1 scale (20) show 1 -1 scale 347 353 moveto 1 -1 scale (1) show 1 -1 scale 272 353 moveto 1 -1 scale (1) show 1 -1 scale 220 316 moveto 1 -1 scale (1) show 1 -1 scale 346 192 moveto 1 -1 scale (1) show 1 -1 scale 271 192 moveto 1 -1 scale (1) show 1 -1 scale 212 198 moveto 1 -1 scale (1) show 1 -1 scale 173 246 moveto 1 -1 scale (1) show 1 -1 scale 161 172 moveto 1 -1 scale (Area 1) show 1 -1 scale 150 273 moveto 1 -1 scale (RT1) show 1 -1 scale 236 204 moveto 1 -1 scale (RT2) show 1 -1 scale 238 344 moveto 1 -1 scale (RT3) show 1 -1 scale 366 205 moveto 1 -1 scale (RT4) show 1 -1 scale 368 342 moveto 1 -1 scale (RT5) show 1 -1 scale showpage $F2psEnd endTexFig 0 1613 p (In)s 13(this)m 14(section,)m 14(each)m 14(virtual)m 13(next)m 14(hop)m 13(is)m 14(replaced)m 13(by)m 14 r 97 c 13(real)m 13(next)m 14(hop.)m 23(In)m 13(the)m 14(process)m 13 r 97 c 14(new)m 13(routing)m 14(table)m 13(distance)m 14(is)m 0 1663 p (calculated)s 11(that)m 11(may)m 11(be)m 11(smaller)m 11(than)m 11(the)m 11(previously)m 11(calculated)m 11(distance.)m 16(In)m 11(this)m 11(case,)m 11(the)m 11(list)m 12(of)m 11(next)m 11(hops)m 11(is)m 11(pruned)m 11(so)m 0 1713 p (that)s 11(only)m 11(those)m 12(giving)m 11(rise)m 11(to)m 11(the)m 11(new)m 12(shortest)m 11(distance)m 11(are)m 11(included,)m 12(and)m 11(the)m 11(routing)m 11(table)m 11(entry')m -1 r 115 c 10(distance)m 11(is)m 12(updated)m 0 1763 p (accordingly)s -2 r 46 c 0 1839 p (This)s 11(resolution)m 10(of)m 11(virtual)m 10(next)m 11(hops)m 11(is)m 10(done)m 11(only)m 10(for)m 11(Destination)m 10(types)m 11(Network)m 11(or)m 10(AS)m 11(Boundary)m 10(router)m -1 r 46 c 13(Suppose)m 11(that)m 0 1889 p (one)s 10(of)m 10 r 97 c 10(routing)m 10(table)m 10(entry')m -2 r 115 c 9(next)m 10(hops)m 10(is)m 10 r 97 c 10(virtual)m 10(link.)m 14(This)m 9(is)m 10(determined)m 10(by)m 10(the)m 10(following)m 10(combination:)m 14(the)m 10(routing)m 0 1939 p (table)s 13(entry')m -1 r 115 c 12(path)m 13(type)m 13(is)m 14(either)m 13(intra-area)m 13(or)m 13(inter)m (-area,)s 13(the)m 13(area)m 14(associated)m 13(with)m 13(the)m 13(routing)m 13(table)m 13(entry)m 14(must)m 13(be)m 13(the)m 0 1989 p (backbone,)s 10(yet)m 11(the)m 10(next)m 11(hop)m 10(belongs)m 10(to)m 11 r 97 c 10(dif)m (ferent)s 10(area)m 10(\(the)m 11(virtual)m 10(link')m -1 r 115 c 9(transit)m 11(area\).)m 0 2057 p (Let)s 12 r 78 c 12(be)m 12(the)m 12(above)m 12(entry')m -1 r 115 c 10(destination,)m 13(and)m 12 r 65 c 12(the)m 12(virtual)m 12(link')m -2 r 115 c 11(transit)m 12(area.)m 19(The)m 12(real)m 12(next)m 12(hop)m 12(\(and)m 12(new)m 12(distance\))m 12(is)m 0 2106 p (calculated)s 9(as)m 9(follows.)m 13(Let)m 9 r 68 c 9(be)m 9 r 97 c 9(distance)m 9(counter)m 44 c 8(and)m 9(set)m 9(the)m 9(real)m 9(next)m 9(hop)m 9(NH)m 9(to)m 9(null.)m 13(Then,)m 9(look)m 9(up)m 9(all)m 9(the)m 9(summary)m 0 2156 p (link)s 10(advertisements)m 11(for)m 10 r 78 c 11(in)m 10(area)m 10 r 65 c -3 r 39 c -2 r 115 c 9(database,)m 10(performing)m 11(the)m 10(following)m 11(steps)m 10(for)m 10(each)m 11(advertisement:)m t-rom.210 @sf 1716 2141 p (23)s t-rom.300 @sf 52 2257 p (1.)s 21(Call)m 11(the)m 11(border)m 11(router)m 12(that)m 11(originated)m 11(the)m 12(advertisement)m 11(BR.)m 17(If)m 11(there)m 11(is)m 12(no)m 11(routing)m 11(table)m 12(entry)m 11(for)m 11(BR)m 12(having)m 11 r 65 c 104 2307 p (as)s 10(associated)m 11(area)m 10(\(i.e.,)m 10(BR)m 11(is)m 10(unreachable)m 11(through)m 10(Area)m 11(A\),)m 10(examine)m 10(the)m 11(next)m 10(advertisement.)m 52 2390 p (2.)s 21(Else,)m 7(let)m 8 r 88 c 7(be)m 7(the)m 8(distance)m 7(to)m 7(BR)m 8(via)m 7(Area)m 7(A.)m 8(If)m 7(the)m 7(cost)m 8(advertised)m 7(by)m 7(BR)m 8(\(call)m 7(it)m 7(Y\))m 8(to)m 7(the)m 7(destination)m 8(is)m 7(LSIn\014nity)m -2 r 44 c 104 2440 p (examine)s 10(the)m 11(next)m 10(summary)m 11(link)m 10(advertisement.)m 14(Else,)m 11(the)m 10(cost)m 11(to)m 10(destination)m 11 r 78 c 10(through)m 11(area)m 10(border)m 11(router)m 10(BR)m 11(is)m 104 2490 p (X+Y)s -5 r 46 c 0 2517 p 780 2 ru t-rom.180 @sf 33 2544 p (23)s t-rom.240 @sf 60 2556 p (Note)s 8(the)m 9(similarity)m 8(between)m 8(this)m 9(procedure)m 8(and)m 8(the)m 9(calculation)m 8(of)m 8(inter)m (-area)s 8(routes)m 8(by)m 9 r 97 c 8(router)m 8(internal)m 9(to)m 8(Area)m 8(A.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(86])m @eop 85 @bop0 85 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (In)s 8(the)m 8(second)m 8(case,)m 8(the)m 8(destination)m 8(is)m 8 r 97 c 8(router)m 44 c 7(and)m 8(its)m 8(parent)m 8(vertex)m 8(is)m 8 r 97 c 8(network.)m 13(The)m 8(list)m 8(of)m 8(next)m 8(hops)m 8(is)m 8(then)m 8(determined)m 0 245 p (by)s 12(examining)m 11(the)m 12(destination')m -1 r 115 c 10(router)m 12(links)m 11(advertisement.)m 18(For)m 12(each)m 11(link)m 12(in)m 12(the)m 11(advertisement)m 12(that)m 11(points)m 12(back)m 12(to)m 11(the)m 0 295 p (parent)s 11(network,)m 11(the)m 11(link')m -1 r 115 c 10(Link)m 11(Data)m 11(\014eld)m 11(provides)m 11(the)m 11(IP)m 11(address)m 11(of)m 11 r 97 c 11(next)m 11(hop)m 12(router)m -2 r 46 c 15(The)m 11(outgoing)m 11(interface)m 11(to)m 11(use)m 0 345 p (can)s 10(then)m 11(be)m 10(derived)m 11(from)m 10(the)m 10(next)m 11(hop)m 10(IP)m 11(address)m 10(\(or)m 11(it)m 10(can)m 10(be)m 11(inherited)m 10(from)m 11(the)m 10(parent)m 10(network\).)m t-bol.360 @sf 0 478 p (16.2)s 50(Calculating)m 12(the)m 13(inter)m -1(-ar)m -1(ea)m 12 r 114 c (outes)s t-rom.300 @sf 0 572 p (The)s 9(inter)m (-area)s 7(routes)m 9(are)m 9(calculated)m 8(by)m 9(examining)m 8(summary)m 9(link)m 9(advertisements.)m 13(If)m 8(the)m 9(router)m 9(has)m 8(active)m 9(attachments)m 8(to)m 0 622 p (multiple)s 10(areas,)m 11(only)m 10(backbone)m 10(summary)m 11(link)m 10(advertisements)m 10(are)m 11(examined.)m 14(Routers)m 10(attached)m 10(to)m 11 r 97 c 10(single)m 10(area)m 11(examine)m 0 671 p (that)s 11(area')m -1 r 115 c 10(summary)m 12(links.)m 16(In)m 12(either)m 11(case,)m 12(the)m 11(summary)m 12(links)m 11(examined)m 11(below)m 12(are)m 11(all)m 11(part)m 12(of)m 11 r 97 c 11(single)m 12(area')m -2 r 115 c 11(link)m 11(state)m 0 721 p (database)s 10(\(call)m 11(it)m 10(Area)m 11(A\).)m 0 787 p (Summary)s 8(link)m 9(advertisements)m 8(are)m 9(originated)m 8(by)m 9(the)m 8(area)m 9(border)m 8(routers.)m 13(Each)m 9(summary)m 8(link)m 9(advertisement)m 8(in)m 8(Area)m 9 r 65 c 8(is)m 0 837 p (considered)s 8(in)m 8(turn.)m 13(Remember)m 9(that)m 8(the)m 8(destination)m 8(described)m 8(by)m 8 r 97 c 9(summary)m 8(link)m 8(advertisement)m 8(is)m 8(either)m 8 r 97 c 8(network)m 9(\(type)m 0 886 p 51 c 10(summary)m 11(link)m 10(advertisements\))m 11(or)m 10(an)m 11(AS)m 10(boundary)m 11(router)m 10(\(type)m 11 r 52 c 10(summary)m 11(link)m 10(advertisements\).)m 14(For)m 11(each)m 10(summary)m 0 936 p (link)s 10(advertisement:)m 52 1038 p (1.)s 21(If)m 10(the)m 10(cost)m 11(speci\014ed)m 10(by)m 11(the)m 10(advertisement)m 10(is)m 11(LSIn\014nity)m -2 r 44 c 10(then)m 10(examine)m 10(the)m 11(next)m 10(advertisement.)m 52 1119 p (2.)s 21(If)m 10(the)m 10(advertisement)m 11(was)m 10(originated)m 11(by)m 10(the)m 10(calculating)m 11(router)m 10(itself,)m 11(examine)m 10(the)m 11(next)m 10(advertisement.)m 52 1200 p (3.)s 21(If)m 13(the)m 14(collection)m 13(of)m 14(destinations)m 13(described)m 14(by)m 13(the)m 14(summary)m 13(link)m 14(falls)m 13(into)m 14(one)m 13(of)m 14(the)m 13(router)m 2 r 39 c -1 r 115 c 12(con\014gured)m t-bol.300 @sf 14(ar)m (ea)s 104 1250 p (addr)s (ess)s 10(ranges)m t-rom.300 @sf 11(\(see)m 11(Section)m 11(3.5\))m 12(and)m 11(the)m 11(particular)m t-bol.300 @sf 11(ar)m (ea)s 10(addr)m (ess)s 11(range)m t-rom.300 @sf 11(is)m 11(active,)m 11(the)m 11(summary)m 11(link)m 11(should)m 11(be)m 104 1300 p (ignored.)s 13(Active)m 10(means)m 10(that)m 10(there)m 9(are)m 10(one)m 10(or)m 10(more)m 9(reachable)m 10(\(by)m 10(intra-area)m 10(paths\))m 9(networks)m 10(contained)m 10(in)m 10(the)m 9(area)m 104 1350 p (range.)s 13(In)m 10(this)m 9(case,)m 9(all)m 10(addresses)m 9(in)m 9(the)m 10(area)m 9(range)m 9(are)m 9(assumed)m 10(to)m 9(be)m 9(either)m 10(reachable)m 9(via)m 9(intra-area)m 10(paths,)m 9(or)m 9(else)m 104 1400 p (to)s 10(be)m 11(unreachable)m 10(by)m 10(any)m 11(other)m 10(means.)m 52 1481 p (4.)s 21(Else,)m 12(call)m 13(the)m 12(destination)m 13(described)m 12(by)m 13(the)m 12(advertisement)m 12(N,)m 13(and)m 12(the)m 13(area)m 12(border)m 13(originating)m 12(the)m 12(advertisement)m 104 1530 p (BR.)s 13(Look)m 9(up)m 10(the)m 9(routing)m 9(table)m 9(entry)m 9(for)m 9(BR)m 9(having)m 10 r 65 c 9(as)m 9(its)m 9(associated)m 9(area.)m 14(If)m 9(no)m 9(such)m 9(entry)m 9(exists)m 9(for)m 10(router)m 9(BR)m 104 1580 p (\(i.e.,)s 12(BR)m 12(is)m 12(unreachable)m 11(in)m 12(Area)m 12(A\),)m 12(do)m 11(nothing)m 12(with)m 12(this)m 12(advertisement)m 12(and)m 11(consider)m 12(the)m 12(next)m 12(in)m 12(the)m 11(list.)m 18(Else,)m 104 1630 p (this)s 11(advertisement)m 12(describes)m 11(an)m 12(inter)m (-area)s 11(path)m 11(to)m 12(destination)m 11(N,)m 12(whose)m 11(cost)m 12(is)m 11(the)m 12(distance)m 11(to)m 12(BR)m 11(plus)m 12(the)m 11(cost)m 104 1680 p (speci\014ed)s 10(in)m 11(the)m 10(advertisement.)m 14(Call)m 10(the)m 11(cost)m 10(of)m 11(this)m 10(inter)m (-area)s 10(path)m 10(IAC.)m 52 1761 p (5.)s 21(Next,)m 12(look)m 12(up)m 12(the)m 13(routing)m 12(table)m 12(entry)m 12(for)m 12(the)m 12(destination)m 12(N.)m 13(\(The)m 12(entry')m -2 r 115 c 12(Destination)m 12(type)m 12(is)m 12(either)m 12(Network)m 12(or)m 104 1811 p (AS)s 12(boundary)m 11(router)m -1(.\))m 17(If)m 12(no)m 12(entry)m 12(exists)m 12(for)m 11 r 78 c 12(or)m 12(if)m 12(the)m 12(entry')m -2 r 115 c 11(path)m 12(type)m 12(is)m 12(\\AS)m 12(external",)m 12(install)m 12(the)m 11(inter)m (-area)s 104 1861 p (path)s 9(to)m 10(N,)m 9(with)m 10(associated)m 9(area)m 10(A,)m 10(cost)m 9(IAC,)m 10(next)m 9(hop)m 10(equal)m 9(to)m 10(the)m 9(list)m 10(of)m 9(next)m 10(hops)m 9(to)m 10(router)m 10(BR,)m 9(and)m 10(advertising)m 104 1910 p (router)s 10(equal)m 11(to)m 10(BR.)m 52 1991 p (6.)s 21(Else,)m 9(if)m 9(the)m 9(paths)m 10(present)m 9(in)m 9(the)m 9(table)m 9(are)m 10(intra-area)m 9(paths,)m 9(do)m 9(nothing)m 10(with)m 9(the)m 9(advertisement)m 9(\(intra-area)m 9(paths)m 10(are)m 104 2041 p (always)s 10(preferred\).)m 52 2122 p (7.)s 21(Else,)m 14(the)m 14(paths)m 14(present)m 14(in)m 13(the)m 14(routing)m 14(table)m 14(are)m 14(also)m 13(inter)m (-area)s 13(paths.)m 24(Install)m 14(the)m 14(new)m 14(path)m 14(through)m 13(BR)m 14(if)m 14(it)m 14(is)m 104 2172 p (cheaper)s -1 r 44 c 11(overriding)m 11(the)m 11(paths)m 11(in)m 11(the)m 12(routing)m 11(table.)m 16(Otherwise,)m 12(if)m 11(the)m 11(new)m 11(path)m 12(is)m 11(the)m 11(same)m 11(cost,)m 12(add)m 11(it)m 11(to)m 12(the)m 11(list)m 104 2222 p (of)s 10(paths)m 11(that)m 10(appear)m 10(in)m 11(the)m 10(routing)m 11(table)m 10(entry)m -2 r 46 c t-bol.360 @sf 0 2356 p (16.3)s 50(Resolving)m 12(virtual)m 13(next)m 12(hops)m t-rom.300 @sf 0 2449 p (This)s 9(step)m 10(is)m 9(only)m 9(necessary)m 10(in)m 9(area-border)m 9(routers)m 10(having)m 9(con\014gured)m 9(virtual)m 10(links.)m 13(In)m 10(these)m 9(routers,)m 10(some)m 9(of)m 9(the)m 10(routing)m 0 2499 p (table)s 13(entries)m 13(may)m 13(have)m 14(virtual)m 13(next)m 13(hops.)m 22(That)m 13(is,)m 14(one)m 13(or)m 13(more)m 13(of)m 14(the)m 13(next)m 13(hops)m 13(installed)m 13(in)m 13(Sections)m 14(16.1)m 13(and)m 13(16.2)m 0 2549 p (may)s 10(be)m 10(over)m 10 r 97 c 10(virtual)m 10(link.)m 14(However)m 44 c 9(when)m 10(forwarding)m 10(data)m 10(traf)m (\014c)s 9(to)m 10 r 97 c 10(destination,)m 11(the)m 10(next)m 10(hops)m 10(must)m 10(always)m 10(be)m 10(on)m 10 r 97 c 0 2599 p (directly)s 10(attached)m 11(network.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(85])m @eop 84 @bop0 84 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 52 195 p (1.)s 21(If)m 10(the)m 11(cost)m 11(of)m 11(the)m 11(stub)m 11(network)m 10(link)m 11(is)m 11(LSIn\014nity)m -2 r 44 c 10(the)m 11(link)m 11(should)m 11(not)m 11(be)m 10(used)m 11(for)m 11(data)m 11(traf)m (\014c.)s 14(In)m 11(this)m 11(case,)m 11(go)m 11(on)m 104 245 p (to)s 10(examine)m 11(the)m 10(next)m 10(stub)m 11(network)m 10(link)m 11(in)m 10(the)m 11(advertisement.)m 52 328 p (2.)s 21(Otherwise,)m 12(Calculate)m 11(the)m 12(distance)m 12 r 68 c 11(of)m 12(stub)m 12(network)m 11(from)m 12(the)m 12(root.)m 17 r 68 c 12(is)m 12(equal)m 11(to)m 12(the)m 12(distance)m 11(from)m 12(the)m 12(root)m 12(to)m 104 378 p (the)s 11(router)m 11(vertex)m 11(\(calculated)m 12(in)m 11(stage)m 11(1\),)m 12(plus)m 11(the)m 11(stub)m 11(network)m 11(link')m -1 r 115 c 10(advertised)m 12(cost.)m 16(Compare)m 11(this)m 11(distance)m 11(to)m 104 428 p (the)s 11(current)m 12(best)m 11(cost)m 11(to)m 12(the)m 11(stub)m 11(network.)m 17(This)m 12(is)m 11(done)m 11(by)m 12(looking)m 11(up)m 12(the)m 11(network')m -1 r 115 c 10(current)m 12(routing)m 11(table)m 11(entry)m -1 r 46 c 104 477 p (If)s 10(the)m 11(calculated)m 10(distance)m 10 r 68 c 11(is)m 10(lar)m (ger)s -1 r 44 c 9(go)m 11(on)m 10(to)m 11(examine)m 10(the)m 10(next)m 11(stub)m 10(network)m 11(link)m 10(in)m 10(the)m 11(advertisement.)m 52 560 p (3.)s 21(If)m 12(this)m 13(step)m 13(is)m 12(reached,)m 13(the)m 13(stub)m 13(network')m -2 r 115 c 12(routing)m 13(table)m 12(entry)m 13(must)m 13(be)m 12(updated.)m 21(Calculate)m 13(the)m 12(set)m 13(of)m 13(next)m 12(hops)m 104 610 p (that)s 13(would)m 12(result)m 13(from)m 13(using)m 12(the)m 13(stub)m 13(network)m 13(link.)m 21(This)m 12(calculation)m 13(is)m 13(shown)m 12(in)m 13(Section)m 13(16.1.1;)m 14(input)m 13(to)m 12(this)m 104 660 p (calculation)s 9(is)m 9(the)m 10(destination)m 9(\(the)m 9(stub)m 10(network\))m 9(and)m 9(the)m 10(parent)m 9(vertex)m 9(\(the)m 9(router)m 10(vertex\).)m 13(If)m 10(the)m 9(distance)m 9 r 68 c 10(is)m 9(the)m 104 710 p (same)s 12(as)m 12(the)m 12(current)m 13(routing)m 12(table)m 12(cost,)m 13(simply)m 12(add)m 12(this)m 12(set)m 13(of)m 12(next)m 12(hops)m 12(to)m 13(the)m 12(routing)m 12(table)m 12(entry')m -1 r 115 c 11(list)m 12(of)m 13(next)m 104 760 p (hops.)s 15(In)m 12(this)m 11(case,)m 11(the)m 11(routing)m 11(table)m 11(already)m 11(has)m 11 r 97 c t-bol.300 @sf 11(Link)m 11(State)m 11(origin)m t-rom.300 @sf 46 c 16(If)m 11(this)m t-bol.300 @sf 11(Link)m 11(State)m 11(origin)m t-rom.300 @sf 11(is)m 11 r 97 c 11(router)m 11(links)m 104 809 p (advertisement)s 9(whose)m 9(Link)m 9(State)m 8(ID)m 9(is)m 9(smaller)m 9(than)m 9(V')m -1 r 115 c 8(Router)m 9(ID,)m 8(reset)m 9(the)m t-bol.300 @sf 9(Link)m 9(State)m 9(origin)m t-rom.300 @sf 9(to)m 9(V')m -1 r 115 c 8(router)m 8(links)m 104 859 p (advertisement.)s 104 926 p (Otherwise)s 7 r 68 c 8(is)m 8(smaller)m 8(than)m 7(the)m 8(routing)m 8(table)m 7(cost.)m 13(Overwrite)m 8(the)m 8(current)m 7(routing)m 8(table)m 8(entry)m 8(by)m 7(setting)m 8(the)m 8(routing)m 104 975 p (table)s 12(entry')m -1 r 115 c 11(cost)m 12(to)m 12(D,)m 12(and)m 13(by)m 12(setting)m 12(the)m 12(entry')m -1 r 115 c 11(list)m 12(of)m 12(next)m 13(hops)m 12(to)m 12(the)m 12(newly)m 12(calculated)m 13(set.)m 19(Set)m 12(the)m 12(routing)m 104 1025 p (table)s 10(entry')m -2 r 115 c t-bol.300 @sf 9(Link)m 10(State)m 10(origin)m t-rom.300 @sf 10(to)m 10(V')m -1 r 115 c 9(router)m 10(links)m 10(advertisement.)m 14(Then)m 10(go)m 10(on)m 10(to)m 9(examine)m 10(the)m 10(next)m 10(stub)m 10(network)m 104 1075 p (link.)s 0 1184 p (For)s 10(all)m 11(routing)m 10(table)m 10(entries)m 10(added/modi\014ed)m 11(in)m 10(the)m 10(second)m 10(stage,)m 11(the)m 10(associated)m 10(area)m 10(will)m 11(be)m 10(set)m 10(to)m 10(Area)m 11 r 65 c 10(and)m 10(the)m 10(path)m 0 1234 p (type)s 11(will)m 12(be)m 11(set)m 12(to)m 11(intra-area.)m 17(When)m 11(the)m 11(list)m 12(of)m 11(reachable)m 12(router)m 11(links)m 11(is)m 12(exhausted,)m 11(the)m 12(second)m 11(stage)m 11(is)m 12(completed.)m 17(At)m 0 1284 p (this)s 10(time,)m 11(all)m 10(intra-area)m 11(routes)m 10(associated)m 10(with)m 11(Area)m 10 r 65 c 11(have)m 10(been)m 11(determined.)m 0 1352 p (The)s 8(speci\014cation)m 8(does)m 8(not)m 8(require)m 8(that)m 8(the)m 8(above)m 8(two)m 8(stage)m 9(method)m 8(be)m 8(used)m 8(to)m 8(calculate)m 8(the)m 8(shortest)m 8(path)m 8(tree.)m 13(However)m -1 r 44 c 0 1401 p (if)s 14(another)m 14(algorithm)m 14(is)m 14(used,)m 15(an)m 14(identical)m 14(tree)m 14(must)m 14(be)m 15(produced.)m 24(For)m 14(this)m 15(reason,)m 14(it)m 15(is)m 14(important)m 14(to)m 14(note)m 14(that)m 14(links)m 0 1451 p (between)s 10(transit)m 10(vertices)m 11(must)m 10(be)m 10(bidirectional)m 10(in)m 10(ordered)m 10(to)m 11(be)m 10(included)m 10(in)m 10(the)m 10(above)m 10(tree.)m 14(It)m 10(should)m 10(also)m 11(be)m 10(mentioned)m 0 1501 p (that)s 10(algorithms)m 11(exist)m 10(for)m 11(incrementally)m 10(updating)m 10(the)m 11(shortest-path)m 10(tree)m 11(\(see)m 10([BBN]\).)m t-bol.300 @sf 0 1629 p (16.1.1)s 42(The)m 10(next)m 10(hop)m 11(calculation)m t-rom.300 @sf 0 1725 p (This)s 11(section)m 11(explains)m 11(how)m 11(to)m 11(calculate)m 11(the)m 10(current)m 11(set)m 11(of)m 11(next)m 11(hops)m 11(to)m 11(use)m 11(for)m 11 r 97 c 11(destination.)m 15(Each)m 11(next)m 11(hop)m 11(consists)m 11(of)m 0 1775 p (the)s 12(outgoing)m 11(interface)m 12(to)m 11(use)m 12(in)m 11(forwarding)m 12(packets)m 11(to)m 12(the)m 11(destination)m 12(together)m 11(with)m 12(the)m 11(next)m 12(hop)m 11(router)m 12(\(if)m 11(any\).)m 18(The)m 0 1825 p (next)s 13(hop)m 12(calculation)m 13(is)m 13(invoked)m 13(each)m 12(time)m 13 r 97 c 13(shorter)m 13(path)m 12(to)m 13(the)m 13(destination)m 13(is)m 12(discovered.)m 21(This)m 13(can)m 13(happen)m 12(in)m 13(either)m 0 1875 p (stage)s 11(of)m 11(the)m 12(shortest-path)m 11(tree)m 11(calculation)m 11(\(see)m 12(Section)m 11(16.1\).)m 16(In)m 11(stage)m 12 r 49 c 11(of)m 11(the)m 11(shortest-path)m 12(tree)m 11(calculation)m 11 r 97 c 11(shorter)m 0 1924 p (path)s 12(is)m 12(found)m 12(as)m 12(the)m 11(destination)m 12(is)m 12(added)m 12(to)m 12(the)m 12(candidate)m 12(list,)m 12(or)m 12(when)m 12(the)m 12(destination')m -2 r 115 c 11(entry)m 12(on)m 12(the)m 12(candidate)m 12(list)m 12(is)m 0 1974 p (modi\014ed)s 10(\(Step)m 11(2e)m 10(of)m 10(Stage)m 11(1\).)m 13(In)m 11(stage)m 10 r 50 c 10 r 97 c 11(shorter)m 10(path)m 10(is)m 10(discovered)m 11(each)m 10(time)m 10(the)m 11(destination')m -2 r 115 c 10(routing)m 10(table)m 10(entry)m 11(is)m 0 2024 p (modi\014ed)s 10(\(Step)m 11 r 51 c 10(of)m 11(Stage)m 10(2\).)m 0 2092 p (The)s 7(set)m 7(of)m 7(next)m 7(hops)m 7(to)m 7(use)m 7(for)m 7(the)m 7(destination)m 7(may)m 6(be)m 7(recalculated)m 7(several)m 7(times)m 7(during)m 7(the)m 7(shortest-path)m 7(tree)m 7(calculation,)m 0 2141 p (as)s 9(shorter)m 10(and)m 9(shorter)m 9(paths)m 10(are)m 9(discovered.)m 14(In)m 9(the)m 9(end,)m 10(the)m 9(destination')m -1 r 115 c 8(routing)m 10(table)m 9(entry)m 9(will)m 10(always)m 9(re\015ect)m 9(the)m 10(next)m 0 2191 p (hops)s 10(resulting)m 11(from)m 10(the)m 11(absolute)m 10(shortest)m 10(path\(s\).)m 0 2259 p (Input)s 9(to)m 10(the)m 9(next)m 9(hop)m 10(calculation)m 9(is)m 9(a\))m 10(the)m 9(destination)m 9(and)m 9(b\))m 10(its)m 9(parent)m 9(in)m 10(the)m 9(current)m 9(shortest)m 10(path)m 9(between)m 9(the)m 10(root)m 9(\(the)m 0 2309 p (calculating)s 9(router\))m 10(and)m 9(the)m 10(destination.)m 13(The)m 10(parent)m 9(is)m 9(always)m 10 r 97 c 9(transit)m 10(vertex)m 9(\(i.e.,)m 10(always)m 9 r 97 c 9(router)m 10(or)m 9 r 97 c 10(transit)m 9(network\).)m 0 2376 p (If)s 8(there)m 8(is)m 8(at)m 7(least)m 8(one)m 8(intervening)m 8(router)m 8(in)m 8(the)m 7(current)m 8(shortest)m 8(path)m 8(between)m 8(the)m 8(destination)m 8(and)m 7(the)m 8(root,)m 9(the)m 8(destination)m 0 2426 p (simply)s 10(inherits)m 10(the)m 9(set)m 10(of)m 10(next)m 10(hops)m 10(from)m 10(the)m 9(parent.)m 14(Otherwise,)m 10(there)m 10(are)m 10(two)m 10(cases.)m 13(In)m 10(the)m 10(\014rst)m 10(case,)m 10(the)m 9(parent)m 10(vertex)m 0 2476 p (is)s 14(the)m 14(root)m 14(\(the)m 14(calculating)m 14(router)m 14(itself\).)m 25(This)m 14(means)m 14(that)m 14(the)m 14(destination)m 15(is)m 14(either)m 14 r 97 c 14(directly)m 14(connected)m 14(network)m 14(or)m 0 2526 p (directly)s 10(connected)m 9(router)m -1 r 46 c 13(The)m 9(next)m 10(hop)m 10(in)m 9(this)m 10(case)m 10(is)m 9(simply)m 10(the)m 10(OSPF)m 9(interface)m 10(connecting)m 10(to)m 9(the)m 10(network/router;)m 10(no)m 0 2576 p (next)s 10(hop)m 11(router)m 10(is)m 11(required.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(84])m @eop 83 @bop0 83 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m cmsy10.300 @sf 231 195 p 15 c t-rom.300 @sf 21(Equal)m 12(to)m 12(the)m 12(value)m 12(that)m 12(appears)m 12(for)m 12(vertex)m 13 r 87 c 12(on)m 12(the)m 12(the)m 12(candidate)m 12(list,)m 12(calculate)m 12(the)m 12(set)m 13(of)m 12(next)m 12(hops)m 273 245 p (that)s 8(result)m 8(from)m 9(using)m 8(the)m 9(advertised)m 8(link.)m 13(Input)m 9(to)m 8(this)m 8(calculation)m 9(is)m 8(the)m 9(destination)m 8(\(W\),)m 8(and)m 9(its)m 8(parent)m 273 295 p (\(V\).)s 13(This)m 13(calculation)m 13(is)m 13(shown)m 13(in)m 13(Section)m 13(16.1.1.)m 21(This)m 13(set)m 13(of)m 13(hops)m 13(should)m 13(be)m 13(added)m 13(to)m 13(the)m 13(next)m 13(hop)m 273 345 p (values)s 10(that)m 11(appear)m 10(for)m 10 r 87 c 11(on)m 10(the)m 11(candidate)m 10(list.)m cmsy10.300 @sf 231 401 p 15 c t-rom.300 @sf 21(Less)m 10(than)m 10(the)m 10(value)m 10(that)m 10(appears)m 10(for)m 10(vertex)m 10 r 87 c 9(on)m 10(the)m 10(the)m 10(candidate)m 10(list,)m 10(or)m 10(if)m 10 r 87 c 10(does)m 10(not)m 10(yet)m 10(appear)m 10(on)m 273 451 p (the)s 12(candidate)m 12(list,)m 13(then)m 12(set)m 12(the)m 12(entry)m 12(for)m 12 r 87 c 13(on)m 12(the)m 12(candidate)m 12(list)m 12(to)m 12(indicate)m 12 r 97 c 13(distance)m 12(of)m 12 r 68 c 12(from)m 12(the)m 273 501 p (root.)s 13(Also)m 9(calculate)m 9(the)m 9(list)m 9(of)m 9(next)m 9(hops)m 9(that)m 9(result)m 9(from)m 9(using)m 9(the)m 8(advertised)m 9(link,)m 10(setting)m 9(the)m 9(next)m 9(hop)m 273 550 p (values)s 12(for)m 13 r 87 c 12(accordingly)m -2 r 46 c 19(The)m 12(next)m 13(hop)m 12(calculation)m 13(is)m 12(described)m 12(in)m 13(Section)m 12(16.1.1;)m 14(it)m 12(takes)m 12(as)m 13(input)m 273 600 p (the)s 10(destination)m 11(\(W\))m 10(and)m 10(its)m 11(parent)m 10(\(V\).)m 52 678 p (3.)s 21(If)m 9(at)m 9(this)m 10(step)m 9(the)m 10(candidate)m 9(list)m 9(is)m 10(empty)m -2 r 44 c 9(the)m 9(shortest-path)m 10(tree)m 9(\(of)m 9(transit)m 10(vertices\))m 9(has)m 10(been)m 9(completely)m 9(built)m 10(and)m 104 728 p (this)s 8(stage)m 9(of)m 9(the)m 8(algorithm)m 9(terminates.)m 13(Otherwise,)m 9(choose)m 9(the)m 9(vertex)m 8(belonging)m 9(to)m 9(the)m 8(candidate)m 9(list)m 8(that)m 9(is)m 9(closest)m 104 778 p (to)s 10(the)m 11(root,)m 10(and)m 10(add)m 11(it)m 10(to)m 11(the)m 10(shortest-path)m 11(tree)m 10(\(removing)m 10(it)m 11(from)m 10(the)m 11(candidate)m 10(list)m 10(in)m 11(the)m 10(process\).)m 52 857 p (4.)s 21(Possibly)m 13(modify)m 13(the)m 13(routing)m 13(table.)m 21(For)m 13(those)m 13(routing)m 13(table)m 13(entries)m 13(modi\014ed,)m 14(the)m 13(associated)m 13(area)m 13(will)m 13(be)m 13(set)m 13(to)m 104 907 p (Area)s 12(A,)m 12(the)m 12(path)m 12(type)m 12(will)m 12(be)m 12(set)m 12(to)m 12(intra-area,)m 13(and)m 12(the)m 12(cost)m 12(will)m 12(be)m 12(set)m 12(to)m 12(the)m 12(newly)m 13(discovered)m 12(shortest)m 12(path')m -2 r 115 c 104 957 p (calculated)s 10(distance.)m 104 1021 p (If)s 10(the)m 10(newly)m 10(added)m 10(vertex)m 10(is)m 9(an)m 10(area)m 10(border)m 10(router)m 44 c 9 r 97 c 10(routing)m 10(table)m 10(entry)m 9(is)m 10(added)m 10(whose)m 10(destination)m 10(type)m 10(is)m 10(\\area)m 104 1071 p (border)s 11(router)m 2(".)m 16(The)m t-bol.300 @sf 12(Options)m t-rom.300 @sf 11(\014eld)m 11(found)m 11(in)m 12(the)m 11(associated)m 11(router)m 12(links)m 11(advertisement)m 11(is)m 12(copied)m 11(into)m 11(the)m 12(routing)m 104 1121 p (table)s 10(entry')m -1 r 115 c t-bol.300 @sf 9(Optional)m 11(capabilities)m t-rom.300 @sf 10(\014eld.)m 104 1186 p (If)s 9(the)m 9(newly)m 9(added)m 9(vertex)m 10(is)m 9(an)m 9(AS)m 9(boundary)m 9(router)m 44 c 8(the)m 9(routing)m 9(table)m 10(entry)m 9(of)m 9(type)m 9(\\AS)m 9(boundary)m 9(router)m 2 r 34 c 9(for)m 9(the)m 104 1236 p (destination)s 12(is)m 12(located.)m 20(Since)m 12(routers)m 12(can)m 12(belong)m 13(to)m 12(more)m 12(than)m 12(one)m 12(area,)m 13(it)m 12(is)m 13(possible)m 12(that)m 12(several)m 12(sets)m 13(of)m 12(intra-)m 104 1285 p (area)s 11(paths)m 11(exist)m 11(to)m 11(the)m 11(AS)m 11(boundary)m 11(router)m -1 r 44 c 10(each)m 11(set)m 11(using)m 11 r 97 c 11(dif)m (ferent)s 10(area.)m 16(However)m -1 r 44 c 10(the)m 11(AS)m 11(boundary)m 11(router)m 1 r 39 c -1 r 115 c 104 1335 p (routing)s 10(table)m 11(entry)m 10(must)m 11(indicate)m 10 r 97 c 11(set)m 10(of)m 11(paths)m 10(which)m 11(utilize)m 10 r 97 c 11(single)m 10(area.)m 14(The)m 11(area)m 10(leading)m 11(to)m 10(the)m 11(routing)m 10(table)m 104 1385 p (entry)s 11(is)m 10(selected)m 11(as)m 11(follows:)m 14 r 65 c 11(set)m 11(of)m 11(intra-area)m 11(paths)m 10(having)m 11(no)m 11(virtual)m 11(next)m 10(hops)m 11(is)m 11(always)m 11(preferred)m 11(over)m 10 r 97 c 11(set)m 104 1435 p (of)s 9(intra-area)m 10(paths)m 10(in)m 9(which)m 10(some)m 10(virtual)m 9(next)m 10(hops)m 9(appear)m t-rom.210 @sf 1065 1420 p (22)s t-rom.300 @sf 1096 1435 p 59 c 10(all)m 10(other)m 10(things)m 9(being)m 10(equal)m 10(the)m 9(set)m 10(of)m 9(paths)m 10(having)m 104 1485 p (the)s 10(lower)m 11(cost)m 11(is)m 10(preferred.)m 15(Note)m 10(that)m 11(whenever)m 11(an)m 10(AS)m 11(boundary)m 10(router)m 2 r 39 c -1 r 115 c 9(routing)m 11(table)m 11(entry)m 10(is)m 11(added/modi\014ed,)m 104 1534 p (the)s t-bol.300 @sf 10(Options)m t-rom.300 @sf 10(found)m 10(in)m 10(the)m 10(associated)m 10(router)m 10(links)m 10(advertisement)m 10(is)m 10(copied)m 11(into)m 10(the)m 10(routing)m 10(table)m 10(entry')m -1 r 115 c t-bol.300 @sf 9(Optional)m 104 1584 p (capabilities)s t-rom.300 @sf 10(\014eld.)m 104 1649 p (If)s 13(the)m 13(newly)m 12(added)m 13(vertex)m 13(is)m 13 r 97 c 13(transit)m 13(network,)m 13(the)m 13(routing)m 13(table)m 13(entry)m 13(for)m 13(the)m 13(network)m 13(is)m 13(located.)m 21(The)m 13(entry')m -2 r 115 c 104 1699 p (destination)s 14(ID)m 14(is)m 15(the)m 14(IP)m 14(network)m 15(number)m -1 r 44 c 14(which)m 14(can)m 15(be)m 14(obtained)m 14(by)m 15(masking)m 14(the)m t-bol.300 @sf 14 r 86 c -3(ertex)m 14(ID)m t-rom.300 @sf 14(\(Link)m 14(State)m 15(ID\))m 104 1748 p (with)s 9(its)m 10(associated)m 10(subnet)m 9(mask)m 10(\(found)m 9(in)m 10(the)m 10(associated)m 9(network)m 10(links)m 10(advertisement\).)m 13(If)m 10(the)m 9(routing)m 10(table)m 10(entry)m 104 1798 p (already)s 10(exists)m 11(\(i.e.,)m 11(there)m 10(is)m 11(already)m 10(an)m 11(intra-area)m 10(route)m 11(to)m 11(the)m 10(destination)m 11(installed)m 10(in)m 11(the)m 10(routing)m 11(table\),)m 11(multiple)m 104 1848 p (vertices)s 12(have)m 12(mapped)m 12(to)m 12(the)m 13(same)m 12(IP)m 12(network.)m 19(For)m 12(example,)m 13(this)m 12(can)m 12(occur)m 12(when)m 12 r 97 c 13(new)m 12(Designated)m 12(Router)m 12(is)m 104 1898 p (being)s 13(established.)m 22(In)m 13(this)m 13(case,)m 14(the)m 13(current)m 13(routing)m 13(table)m 13(entry)m 13(should)m 13(be)m 13(overwritten)m 13(if)m 13(and)m 13(only)m 13(if)m 13(the)m 13(newly)m 104 1948 p (found)s 11(path)m 12(is)m 11(just)m 12(as)m 11(short)m 12(and)m 11(the)m 12(current)m 12(routing)m 11(table)m 12(entry')m -2 r 115 c t-bol.300 @sf 11(Link)m 11(State)m 12(Origin)m t-rom.300 @sf 11(has)m 12 r 97 c 11(smaller)m 12(Link)m 12(State)m 11(ID)m 104 1998 p (than)s 10(the)m 11(newly)m 10(added)m 10(vertex')m t-bol.300 @sf 11(link)m 10(state)m 11(advertisement)m t-rom.300 @sf 46 c 104 2062 p (If)s 9(there)m 10(is)m 10(no)m 10(routing)m 9(table)m 10(entry)m 10(for)m 10(the)m 9(network)m 10(\(the)m 10(usual)m 9(case\),)m 10 r 97 c 10(routing)m 10(table)m 9(entry)m 10(for)m 10(the)m 10(IP)m 9(network)m 10(should)m 104 2112 p (be)s 15(added.)m 27(The)m 15(routing)m 15(table)m 15(entry')m -1 r 115 c t-bol.300 @sf 14(Link)m 15(State)m 15(origin)m t-rom.300 @sf 15(should)m 15(be)m 15(set)m 15(to)m 15(the)m 15(newly)m 15(added)m 15(vertex')m t-bol.300 @sf 15(link)m 15(state)m 104 2162 p (advertisement)s t-rom.300 @sf 46 c 52 2241 p (5.)s 21(Iterate)m 10(the)m 10(algorithm)m 11(by)m 10(returning)m 11(to)m 10(Step)m 10(2.)m 0 2338 p (The)s 13(stub)m 13(networks)m 14(are)m 13(added)m 13(to)m 13(the)m 14(tree)m 13(in)m 13(the)m 13(procedure')m -1 r 115 c 12(second)m 14(stage.)m 22(In)m 13(this)m 13(stage,)m 14(all)m 14(router)m 13(vertices)m 13(are)m 13(again)m 0 2388 p (examined.)s 13(Those)m 7(that)m 7(have)m 7(been)m 7(determined)m 7(to)m 7(be)m 7(unreachable)m 7(in)m 7(the)m 7(above)m 7(\014rst)m 7(phase)m 7(are)m 7(discarded.)m 13(For)m 7(each)m 7(reachable)m 0 2438 p (router)s 8(vertex)m 9(\(call)m 8(it)m 9(V\),)m 8(the)m 9(associated)m 8(router)m 9(links)m 8(advertisement)m 9(is)m 8(found)m 9(in)m 8(the)m 9(link)m 8(state)m 8(database.)m 14(Each)m 8(stub)m 9(network)m 0 2488 p (link)s 10(appearing)m 11(in)m 10(the)m 11(advertisement)m 10(is)m 10(then)m 11(examined,)m 10(and)m 11(the)m 10(following)m 11(steps)m 10(are)m 10(executed:)m 0 2520 p 780 2 ru t-rom.180 @sf 33 2547 p (22)s t-rom.240 @sf 60 2559 p (As)s 9 r 97 c 9(result)m 8(of)m 9(this)m 9(clause,)m 9(when)m 9 r 97 c 9(virtual)m 9(link)m 8(exists)m 9(between)m 9(the)m 9(calculating)m 9(router)m 9(and)m 8(an)m 9(AS)m 9(boundary)m 9(router)m -1 r 44 c 8(the)m 9(intra-area)m 9(path)m 9(through)m 9(the)m 0 2599 p (virtual)s 8(link')m -1 r 115 c 8(transit)m 8(area)m 8(is)m 9(always)m 8(preferred)m 8(over)m 9(the)m 8(virtual)m 8(link)m 9(itself.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(83])m @eop 82 @bop0 1 /cmmi8.300 @newfont cmmi8.300 @sf [<0000300000F00003C0000700001E0000780001E0000780000E00003C0000F00000F000003C0000 0E000007800001E000007800001E000007000003C00000F0000030> 24 22 -3 3 27.443] 60 @dc 82 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p 86 c -3(ertex)m 10(\(node\))m 10(ID)m t-rom.300 @sf 21 r 65 c 12(32-bit)m 12(number)m 12(uniquely)m 12(identifying)m 12(the)m 12(vertex.)m 19(For)m 12(router)m 12(vertices)m 12(this)m 12(is)m 12(the)m 13(OSPF)m 12(Router)m 12(ID.)m 104 245 p (For)s 10(network)m 11(vertices,)m 10(this)m 10(is)m 11(the)m 10(IP)m 11(address)m 10(of)m 11(the)m 10(network')m -1 r 115 c 9(Designated)m 10(Router)m -1 r 46 c t-bol.300 @sf 0 328 p 65 c 10(link)m 11(state)m 10(advertisement)m t-rom.300 @sf 21(Each)m 13(transit)m 13(vertex)m 12(has)m 13(an)m 13(associated)m 13(link)m 12(state)m 13(advertisement.)m 21(For)m 13(router)m 13(vertices,)m 13(this)m 104 378 p (is)s 13 r 97 c 13(router)m 13(links)m 13(advertisement.)m 21(For)m 13(transit)m 13(networks,)m 14(this)m 13(is)m 13 r 97 c 13(network)m 13(links)m 13(advertisement)m 13(\(which)m 13(is)m 13(actually)m 104 428 p (originated)s 10(by)m 10(the)m 10(network')m -1 r 115 c 9(Designated)m 10(Router\).)m 14(In)m 10(any)m 10(case,)m 10(the)m 11(advertisement')m -2 r 115 c 9(Link)m 11(State)m 10(ID)m 10(is)m 10(always)m 10(equal)m 104 477 p (to)s 10(the)m 11(above)m 10 r 86 c -4(ertex)m 10(ID.)m t-bol.300 @sf 0 560 p (List)s 10(of)m 11(next)m 10(hops)m t-rom.300 @sf 21(The)m 8(list)m 8(of)m 8(next)m 8(hops)m 8(for)m 9(the)m 8(current)m 8(shortest)m 8(paths)m 8(from)m 8(the)m 8(root)m 8(to)m 8(this)m 8(vertex.)m 13(There)m 8(can)m 9(be)m 8(multiple)m 104 610 p (shortest)s 11(paths)m 11(due)m 11(to)m 11(the)m 11(equal-cost)m 12(multipath)m 11(capability)m -2 r 46 c 15(Each)m 11(next)m 11(hop)m 12(indicates)m 11(the)m 11(outgoing)m 11(router)m 11(interface)m 104 660 p (to)s 12(use)m 11(when)m 12(forwarding)m 12(traf)m (\014c)s 11(to)m 11(the)m 12(destination.)m 18(On)m 12(multi-access)m 12(networks,)m 12(the)m 11(next)m 12(hop)m 12(also)m 12(includes)m 11(the)m 12(IP)m 104 710 p (address)s 10(of)m 11(the)m 10(next)m 10(router)m 11(\(if)m 10(any\))m 11(in)m 10(the)m 11(path)m 10(towards)m 10(the)m 11(destination.)m t-bol.300 @sf 0 793 p (Distance)s 10(fr)m (om)s 10 r 114 c (oot)s t-rom.300 @sf 20(The)m 11(link)m 11(state)m 11(cost)m 11(of)m 11(the)m 11(current)m 11(shortest)m 11(path\(s\))m 11(from)m 11(the)m 11(root)m 11(to)m 11(the)m 11(vertex.)m 16(The)m 11(link)m 11(state)m 11(cost)m 104 843 p (of)s 12 r 97 c 12(path)m 13(is)m 12(calculated)m 12(as)m 13(the)m 12(sum)m 12(of)m 13(the)m 12(costs)m 12(of)m 12(the)m 13(path')m -2 r 115 c 12(constituent)m 12(links)m 12(\(as)m 13(advertised)m 12(in)m 12(router)m 13(links)m 12(and)m 104 892 p (network)s 10(links)m 11(advertisements\).)m 13(One)m 11(path)m 10(is)m 11(said)m 10(to)m 11(be)m 10(\\shorter)m 2 r 34 c 10(than)m 10(another)m 11(if)m 10(it)m 11(has)m 10 r 97 c 10(smaller)m 11(link)m 10(state)m 11(cost.)m 0 1002 p (The)s 9(\014rst)m 10(stage)m 9(of)m 9(the)m 10(procedure)m 9(can)m 9(now)m 10(be)m 9(summarized)m 9(as)m 10(follows.)m 13(At)m 9(each)m 10(iteration)m 9(of)m 9(the)m 10(algorithm,)m 9(there)m 10(is)m 9 r 97 c 9(list)m 10(of)m 0 1051 p (candidate)s 9(vertices.)m 14(The)m 9(shortest)m 9(paths)m 9(from)m 10(the)m 9(root)m 9(to)m 10(these)m 9(vertices)m 9(have)m 9(not)m 10(\(necessarily\))m 9(been)m 9(found.)m 14(The)m 9(candidate)m 0 1101 p (vertex)s 8(closest)m 8(to)m 9(the)m 8(root)m 8(is)m 8(added)m 9(to)m 8(the)m 8(shortest-path)m 8(tree,)m 9(removed)m 8(from)m 9(the)m 8(candidate)m 8(list,)m 9(and)m 8(its)m 8(adjacent)m 8(vertices)m 9(are)m 0 1151 p (examined)s 12(for)m 11(possible)m 12(addition)m 12(to/modi\014cation)m 11(of)m 12(the)m 11(candidate)m 12(list.)m 18(The)m 11(algorithm)m 12(then)m 11(iterates)m 12(again.)m 18(It)m 11(terminates)m 0 1201 p (when)s 10(the)m 11(candidate)m 10(list)m 11(becomes)m 10(empty)m -2 r 46 c 0 1269 p (The)s 10(following)m 10(steps)m 11(describe)m 10(the)m 10(\014rst)m 10(stage)m 10(in)m 10(detail.)m 14(Remember)m 10(that)m 11(we)m 10(are)m 10(computing)m 10(the)m 10(shortest)m 10(path)m 11(tree)m 10(for)m 10(Area)m 0 1318 p (A.)s 10(All)m 11(references)m 10(to)m 11(link)m 10(state)m 10(database)m 11(lookup)m 10(below)m 11(are)m 10(from)m 11(Area)m 10 r 65 c -4 r 39 c -2 r 115 c 9(database.)m 52 1428 p (1.)s 21(Initialize)m 11(the)m 11(algorithm')m -1 r 115 c 10(data)m 11(structures.)m 17(Clear)m 11(the)m 12(list)m 11(of)m 11(candidate)m 11(vertices.)m 17(Initialize)m 11(the)m 11(shortest-path)m 12(tree)m 11(to)m 104 1477 p (only)s 10(the)m 11(root)m 10(\(which)m 10(is)m 11(the)m 10(router)m 11(doing)m 10(the)m 11(calculation\).)m 52 1560 p (2.)s 21(Call)m 12(the)m 12(vertex)m 12(just)m 12(added)m 12(to)m 12(the)m 12(tree)m 13(vertex)m 12 r 86 c -5 r 46 c 11(Examine)m 13(the)m 12(link)m 12(state)m 12(advertisement)m 12(associated)m 12(with)m 12(vertex)m 13 r 86 c -5 r 46 c 104 1610 p (This)s 9(is)m 9 r 97 c 8(lookup)m 9(in)m 9(the)m 9(area)m 9(link)m 9(state)m 9(database)m 9(based)m 9(on)m 9(the)m t-bol.300 @sf 8 r 86 c -2(ertex)m 8(ID)m t-rom.300 @sf 46 c 8(Each)m 9(link)m 9(described)m 9(by)m 9(the)m 9(advertisement)m 104 1660 p (gives)s 10(the)m 11(cost)m 10(to)m 10(an)m 11(adjacent)m 10(vertex.)m 14(For)m 11(each)m 10(described)m 10(link,)m 11(\(say)m 10(it)m 11(joins)m 10(vertex)m 10 r 86 c 11(to)m 10(vertex)m 11(W\):)m 128 1743 p (\(a\))s 21(If)m 10(this)m 11(is)m 10 r 97 c 10(link)m 11(to)m 10 r 97 c 10(stub)m 11(network,)m 10(examine)m 11(the)m 10(next)m 10(link)m 11(in)m 10(V')m -1 r 115 c 9(advertisement.)m 14(Links)m 10(to)m 11(stub)m 10(networks)m 11(will)m 195 1793 p (be)s 11(considered)m 10(in)m 10(the)m 11(second)m 10(stage)m 11(of)m 10(the)m 10(shortest)m 11(path)m 10(calculation.)m 126 1859 p (\(b\))s 21(Otherwise,)m 8 r 87 c 8(is)m 8 r 97 c 8(transit)m 7(vertex)m 8(\(router)m 8(or)m 8(transit)m 8(network\).)m 13(Look)m 8(up)m 8(the)m 8(vertex)m 7(W')m -1 r 115 c 7(link)m 8(state)m 8(advertisement)m 195 1909 p (\(router)s 9(links)m 8(or)m 9(network)m 9(links\))m 8(in)m 9(Area)m 9 r 65 c -4 r 39 c -2 r 115 c 7(link)m 9(state)m 9(database.)m 13(If)m 9(the)m 8(advertisement)m 9(does)m 9(not)m 8(exist,)m 9(or)m 9(its)m 9(age)m 195 1959 p (is)s 9(equal)m 9(to)m 9(MaxAge,)m 9(or)m 8(it)m 9(does)m 9(not)m 9(have)m 9 r 97 c 8(link)m 9(back)m 9(to)m 9(vertex)m 9 r 86 c -5 r 44 c 8(examine)m 9(the)m 9(next)m 9(link)m 8(in)m 9(V')m -1 r 115 c 8(advertisement.)m 195 2009 p (Both)s 11(ends)m 10(of)m 10 r 97 c 11(link)m 10(must)m 11(advertise)m 10(the)m 10(link)m 11(before)m 10(it)m 11(will)m 10(be)m 11(used)m 10(for)m 10(data)m 11(traf)m (\014c.)s t-rom.210 @sf 1536 1994 p (21)s t-rom.300 @sf 128 2075 p (\(c\))s 21(If)m 10(vertex)m 11 r 87 c 10(is)m 11(already)m 10(on)m 10(the)m 11(shortest-path)m 10(tree,)m 11(examine)m 10(the)m 10(next)m 11(link)m 10(in)m 11(the)m 10(advertisement.)m 126 2142 p (\(d\))s 21(If)m 10(the)m 10(cost)m 11(of)m 10(the)m 10(link)m 11(\(from)m 10 r 86 c 10(to)m 11(W\))m 10(is)m 10(LSIn\014nity)m -2 r 44 c 10(the)m 10(link)m 10(should)m 11(not)m 10(be)m 10(used)m 11(for)m 10(data)m 10(traf)m (\014c.)s 14(In)m 10(this)m 10(case,)m 195 2191 p (examine)s 11(the)m 10(next)m 10(link)m 11(in)m 10(the)m 11(advertisement.)m 128 2258 p (\(e\))s 21(Calculate)m 13(the)m 13(link)m 13(state)m 13(cost)m 13 r 68 c 13(of)m 13(the)m 14(resulting)m 13(path)m 13(from)m 13(the)m 13(root)m 13(to)m 13(vertex)m 13 r 87 c -3 r 46 c 12 r 68 c 13(is)m 14(equal)m 13(to)m 13(the)m 13(sum)m 13(of)m 195 2308 p (the)s 12(link)m 12(state)m 11(cost)m 12(of)m 12(the)m 11(\(already)m 12(calculated\))m 12(shortest)m 12(path)m 11(to)m 12(vertex)m 12 r 86 c 12(and)m 11(the)m 12(advertised)m 12(cost)m 11(of)m 12(the)m 12(link)m 195 2357 p (between)s 11(vertices)m 10 r 86 c 10(and)m 11 r 87 c -3 r 46 c 9(If)m 11 r 68 c 10(is:)m cmsy10.300 @sf 231 2424 p 15 c t-rom.300 @sf 21(Greater)m 11(than)m 11(the)m 11(value)m 11(that)m 11(already)m 11(appears)m 10(for)m 11(vertex)m 11 r 87 c 11(on)m 11(the)m 11(candidate)m 11(list,)m 11(then)m 11(examine)m 11(the)m 11(next)m 273 2474 p (link.)s 0 2501 p 780 2 ru t-rom.180 @sf 33 2528 p (21)s t-rom.240 @sf 60 2540 p (This)s 10(means)m 11(that)m 10(before)m 10(data)m 10(traf)m (\014c)s 10(will)m 10(\015ow)m 10(between)m 11 r 97 c 10(pair)m 10(of)m 10(neighboring)m 11(routers,)m 10(their)m 11(link)m 10(state)m 10(databases)m 10(must)m 11(be)m 10(synchronized.)m 17(Before)m 0 2580 p (synchronization)s 8(\(neighbor)m 9(state)m cmmi8.300 @sf 8 r 60 c t-rom.240 @sf 8(Full\),)m 9 r 97 c 8(router)m 8(will)m 9(not)m 8(include)m 8(the)m 9(connection)m 8(to)m 8(its)m 9(neighbor)m 8(in)m 8(its)m 9(link)m 8(state)m 8(advertisements.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(82])m @eop 81 @bop0 81 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (performed)s 9(by)m 9(the)m 9(lookup)m 9(function)m 9(discussed)m 9(in)m 10(Section)m 9(12.2.)m 13(The)m 9(lookup)m 9(process)m 9(may)m 9(return)m 9 r 97 c 9(link)m 10(state)m 9(advertisement)m 0 245 p (whose)s 11(LS)m 11(age)m 11(is)m 12(equal)m 11(to)m 11(MaxAge.)m 16(Such)m 11(an)m 11(advertisement)m 11(should)m 12(not)m 11(be)m 11(used)m 11(in)m 11(the)m 11(routing)m 11(table)m 12(calculation,)m 11(and)m 11(is)m 0 295 p (treated)s 10(just)m 11(as)m 10(if)m 11(the)m 10(lookup)m 10(process)m 11(had)m 10(failed.)m 0 359 p (The)s 9(OSPF)m 10(routing)m 9(table')m -1 r 115 c 8(or)m (ganization)s 9(is)m 9(explained)m 9(in)m 9(Section)m 10 r 49 c -1(1.)m 13 r 84 c -2(wo)m 8(examples)m 9(of)m 10(the)m 9(routing)m 9(table)m 10(build)m 9(process)m 9(are)m 0 409 p (presented)s 10(in)m 11(Sections)m 10 r 49 c (1.2)s 9(and)m 11 r 49 c -1(1.3.)m 13(This)m 10(process)m 11(can)m 10(be)m 11(broken)m 10(into)m 10(the)m 11(following)m 10(steps:)m 52 506 p (1.)s t-ita.300 @sf 21(The)m 11(pr)m -1(esent)m 11 r 114 c -1(outing)m 11(table)m 11(is)m 11(invalidated.)m t-rom.300 @sf 17(The)m 11(routing)m 12(table)m 11(is)m 11(built)m 12(again)m 11(from)m 11(scratch.)m 17(The)m 12(old)m 11(routing)m 11(table)m 12(is)m 104 555 p (saved)s 10(so)m 11(that)m 10(changes)m 10(in)m 11(routing)m 10(table)m 11(entries)m 10(can)m 11(be)m 10(identi\014ed.)m 52 635 p (2.)s t-ita.300 @sf 21(The)m 13(intra-ar)m (ea)s 12 r 114 c -1(outes)m 13(ar)m -1 r 101 c 13(calculated)m 14(by)m 13(building)m 14(the)m 13(shortest)m 14(path)m 13(tr)m (ee)s 12(for)m 14(each)m 13(attached)m 14(ar)m -1(ea.)m t-rom.300 @sf 22(In)m 14(particular)m -1 r 44 c 104 685 p (all)s 12(routing)m 11(table)m 12(entries)m 12(whose)m 12(Destination)m 12(type)m 11(is)m 12(\\area)m 12(border)m 12(router)m 1 r 34 c 12(are)m 12(calculated)m 12(in)m 12(this)m 11(step.)m 19(This)m 11(step)m 12(is)m 104 735 p (described)s 9(in)m 8(two)m 9(parts.)m 13(At)m 9(\014rst)m 9(the)m 9(tree)m 9(is)m 8(constructed)m 9(by)m 9(only)m 9(considering)m 8(those)m 9(links)m 9(between)m 9(routers)m 8(and)m 9(transit)m 104 784 p (networks.)s 14(Then)m 10(the)m 10(stub)m 11(networks)m 10(are)m 11(incorporated)m 10(into)m 11(the)m 10(tree.)m 52 864 p (3.)s t-ita.300 @sf 21(The)m 15(inter)m (-ar)s -2(ea)m 14 r 114 c (outes)s 14(ar)m -1 r 101 c 15(calculated,)m 16(thr)m -1(ough)m 15(examination)m 15(of)m 15(summary)m 15(link)m 15(advertisements.)m t-rom.300 @sf 28(If)m 15(the)m 15(router)m 16(is)m 104 914 p (attached)s 14(to)m 14(multiple)m 14(areas)m 14(\(i.e.,)m 16(it)m 14(is)m 14(an)m 14(area)m 14(border)m 14(router\),)m 15(only)m 15(backbone)m 14(summary)m 14(link)m 14(advertisements)m 14(are)m 104 964 p (examined.)s 52 1043 p (4.)s t-ita.300 @sf 21(For)m 13(those)m 13 r 114 c -1(outing)m 12(entries)m 13(whose)m 13(next)m 13(hop)m 13(is)m 13(over)m 13 r 97 c 13(virtual)m 13(link,)m 14 r 97 c 13 r 114 c -1(eal)m 12(\(physical\))m 13(next)m 14(hop)m 13(is)m 13(calculated.)m t-rom.300 @sf 21(The)m 104 1093 p (real)s 11(next)m 11(hop)m 11(will)m 12(be)m 11(on)m 11(one)m 11(of)m 12(the)m 11(router)m 1 r 39 c -1 r 115 c 10(directly)m 12(attached)m 11(networks.)m 16(This)m 11(step)m 12(only)m 11(concerns)m 11(routers)m 11(having)m 104 1143 p (con\014gured)s 10(virtual)m 11(links.)m 52 1222 p (5.)s t-ita.300 @sf 21(Routes)m 13(to)m 13(external)m 14(destinations)m 13(ar)m 101 c 12(calculated,)m 14(thr)m (ough)s 12(examination)m 14(of)m 13(AS)m 14(external)m 13(link)m 14(advertisements.)m t-rom.300 @sf 23(The)m 104 1272 p (location)s 10(of)m 9(the)m 10(AS)m 10(boundary)m 10(routers)m 10(\(which)m 10(originate)m 9(the)m 10(AS)m 10(external)m 10(link)m 10(advertisements\))m 10(has)m 9(been)m 10(determined)m 104 1322 p (in)s 10(steps)m 11(2-4.)m 0 1419 p (Steps)s 13(2-5)m 13(are)m 13(explained)m 13(in)m 13(further)m 13(detail)m 13(below)m -1 r 46 c 21(The)m 13(explanations)m 13(describe)m 13(the)m 13(calculations)m 13(for)m 13 r 84 c (OS)s 12 r 48 c 13(only)m -1 r 46 c 21(It)m 13(may)m 0 1469 p (also)s 13(be)m 13(necessary)m 13(to)m 13(perform)m 13(each)m 13(step)m 13(\(separately\))m 12(for)m 13(each)m 13(of)m 13(the)m 13(non-zero)m 13 r 84 c (OS)s 12(values.)m t-rom.210 @sf 1531 1454 p (19)s t-rom.300 @sf 1584 1469 p (For)s 13(more)m 13(information)m 0 1519 p (concerning)s 10(the)m 11(building)m 10(of)m 11(non-zero)m 10 r 84 c (OS)s 10(routes)m 10(see)m 11(Section)m 10(16.9.)m 0 1583 p (Changes)s 13(made)m 13(to)m 14(routing)m 13(table)m 13(entries)m 13(as)m 14 r 97 c 13(result)m 13(of)m 13(these)m 13(calculations)m 14(can)m 13(cause)m 13(the)m 13(OSPF)m 14(protocol)m 13(to)m 13(take)m 13(further)m 0 1632 p (actions.)s 16(For)m 11(example,)m 11 r 97 c 11(change)m 11(to)m 11(an)m 11(intra-area)m 11(route)m 11(will)m 11(cause)m 11(an)m 11(area)m 11(border)m 11(router)m 11(to)m 11(originate)m 11(new)m 11(summary)m 11(link)m 0 1682 p (advertisements)s 12(\(see)m 12(Section)m 12(12.4\).)m 19(See)m 12(Section)m 13(16.7)m 12(for)m 12 r 97 c 12(complete)m 12(list)m 12(of)m 12(the)m 12(OSPF)m 13(protocol)m 12(actions)m 12(resulting)m 12(from)m 0 1732 p (routing)s 10(table)m 11(table)m 10(changes.)m t-bol.360 @sf 0 1863 p (16.1)s 50(Calculating)m 12(the)m 13(shortest-path)m 12(tr)m (ee)s 12(for)m 13(an)m 12(ar)m (ea)s t-rom.300 @sf 0 1955 p (This)s 9(calculation)m 8(yields)m 9(the)m 9(set)m 8(of)m 9(intra-area)m 8(routes)m 9(associated)m 9(with)m 8(an)m 9(area)m 9(\(called)m 8(hereafter)m 9(Area)m 9(A\).)m 8 r 65 c 9(router)m 9(calculates)m 0 2005 p (the)s 11(shortest-path)m 11(tree)m 11(using)m 10(itself)m 11(as)m 11(the)m 11(root.)m t-rom.210 @sf 757 1990 p (20)s t-rom.300 @sf 803 2005 p (The)s 11(formation)m 11(of)m 11(the)m 11(shortest)m 11(path)m 11(tree)m 10(is)m 11(done)m 11(here)m 11(in)m 11(two)m 11(stages.)m 15(In)m 0 2055 p (the)s 11(\014rst)m 11(stage,)m 11(only)m 11(links)m 11(between)m 11(routers)m 11(and)m 11(transit)m 12(networks)m 11(are)m 11(considered.)m 15(Using)m 11(the)m 11(Dijkstra)m 11(algorithm,)m 12 r 97 c 11(tree)m 11(is)m 0 2105 p (formed)s 10(from)m 11(this)m 10(subset)m 10(of)m 10(the)m 11(link)m 10(state)m 10(database.)m 14(In)m 10(the)m 10(second)m 11(stage,)m 10(leaves)m 10(are)m 10(added)m 11(to)m 10(the)m 10(tree)m 10(by)m 11(considering)m 10(the)m 0 2155 p (links)s 10(to)m 11(stub)m 10(networks.)m 0 2219 p (The)s 12(procedure)m 11(will)m 12(be)m 12(explained)m 11(using)m 12(the)m 11(graph)m 12(terminology)m 12(that)m 11(was)m 12(introduced)m 12(in)m 11(Section)m 12(2.)m 17(The)m 12(area')m -1 r 115 c 10(link)m 12(state)m 0 2269 p (database)s 10(is)m 11(represented)m 10(as)m 11 r 97 c 10(directed)m 11(graph.)m 14(The)m 10(graph')m -1 r 115 c 10(vertices)m 10(are)m 11(routers,)m 10(transit)m 11(networks)m 10(and)m 11(stub)m 10(networks.)m 14(The)m 0 2318 p (\014rst)s 10(stage)m 10(of)m 10(the)m 10(procedure)m 10(concerns)m 10(only)m 10(the)m 10(transit)m 10(vertices)m 9(\(routers)m 10(and)m 10(transit)m 10(networks\))m 10(and)m 10(their)m 10(connecting)m 10(links.)m 0 2368 p (Throughout)s 10(the)m 11(shortest)m 10(path)m 11(calculation,)m 10(the)m 10(following)m 11(data)m 10(is)m 11(also)m 10(associated)m 11(with)m 10(each)m 10(transit)m 11(vertex:)m 0 2400 p 780 2 ru t-rom.180 @sf 33 2428 p (19)s t-rom.240 @sf 60 2440 p (It)s 11(may)m 11(be)m 11(the)m 10(case)m 11(that)m 11(paths)m 11(to)m 11(certain)m 11(destinations)m 10(do)m 11(not)m 11(vary)m 11(based)m 11(on)m 11 r 84 c (OS.)s 18(For)m 10(these)m 11(destinations,)m 12(the)m 11(routing)m 10(calculation)m 11(need)m 11(not)m 11(be)m 0 2479 p (repeated)s 8(for)m 9(each)m 8 r 84 c (OS)s 8(value.)m 11(In)m 8(addition,)m 9(there)m 8(need)m 9(only)m 8(be)m 8 r 97 c 9(single)m 8(routing)m 8(table)m 9(entry)m 8(for)m 9(these)m 8(destinations)m 8(\(instead)m 9(of)m 8 r 97 c 8(separate)m 9(entry)m 8(for)m 9(each)m 0 2519 p 84 c (OS)s 8(value\).)m t-rom.180 @sf 33 2547 p (20)s t-rom.240 @sf 60 2559 p (Strictly)s 8(speaking,)m 7(because)m 8(of)m 8(equal-cost)m 7(multipath,)m 8(the)m 8(algorithm)m 8(does)m 7(not)m 8(create)m 8 r 97 c 7(tree.)m 11 r 87 c -2 r 101 c 7(continue)m 8(to)m 7(use)m 8(the)m 8(\\tree")m 7(terminology)m 8(because)m 8(that)m 0 2599 p (is)s 8(what)m 9(occurs)m 8(most)m 8(often)m 9(in)m 8(the)m 8(existing)m 9(literature.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(81])m @eop 80 @bop0 1 /cmr8.300 @newfont cmr8.300 @sf [ 24 10 -2 -3 27.443] 61 @dc 80 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (area)s 10(border)m 11(routers.)m 14(The)m 10(virtual)m 11(link)m 10(must)m 10(be)m 11(con\014gured)m 10(in)m 11(both)m 10(routers.)m 14(The)m 10(con\014guration)m 11(information)m 10(in)m 11(each)m 10(router)m 0 245 p (consists)s 10(of)m 9(the)m 10(other)m 10(virtual)m 9(endpoint)m 10(\(the)m 9(other)m 10(area)m 10(border)m 9(router\),)m 10(and)m 10(the)m 9(non-backbone)m 10(area)m 10(the)m 9(two)m 10(routers)m 9(have)m 10(in)m 0 295 p (common)s 10(\(called)m 11(the)m 10(transit)m 11(area\).)m 14 r 86 c -2(irtual)m 9(links)m 11(cannot)m 10(be)m 11(con\014gured)m 10(through)m 11(stub)m 10(areas)m 10(\(see)m 11(Section)m 10(3.6\).)m 0 362 p (The)s 10(virtual)m 10(link)m 11(is)m 10(treated)m 10(as)m 10(if)m 11(it)m 10(were)m 10(an)m 10(unnumbered)m 10(point-to-point)m 11(network)m 10(\(belonging)m 10(to)m 10(the)m 11(backbone\))m 10(joining)m 10(the)m 0 412 p (two)s 12(area)m 12(border)m 12(routers.)m 19(An)m 12(attempt)m 12(is)m 12(made)m 12(to)m 12(establish)m 12(an)m 12(adjacency)m 12(over)m 12(the)m 12(virtual)m 12(link.)m 19(When)m 12(this)m 12(adjacency)m 12(is)m 0 462 p (established,)s 10(the)m 10(virtual)m 11(link)m 10(will)m 10(be)m 10(included)m 10(in)m 11(backbone)m 10(router)m 10(links)m 10(advertisements,)m 10(and)m 11(OSPF)m 10(packets)m 10(pertaining)m 10(to)m 0 512 p (the)s 10(backbone)m 11(area)m 10(will)m 11(\015ow)m 10(over)m 10(the)m 11(adjacency)m -2 r 46 c 13(Such)m 11(an)m 10(adjacency)m 10(has)m 11(been)m 10(referred)m 11(to)m 10(as)m 10 r 97 c 11(\\virtual)m 10(adjacency".)m 0 580 p (In)s 10(each)m 10(endpoint)m 9(router)m 44 c 9(the)m 9(cost)m 10(and)m 10(viability)m 10(of)m 10(the)m 9(virtual)m 10(link)m 10(is)m 10(discovered)m 10(by)m 9(examining)m 10(the)m 10(routing)m 10(table)m 10(entry)m 9(for)m 0 629 p (the)s 11(other)m 12(endpoint)m 11(router)m -1 r 46 c 16(\(The)m 11(entry')m -1 r 115 c 10(associated)m 11(area)m 12(must)m 11(be)m 12(the)m 11(con\014gured)m 11(transit)m 12(area\).)m 17(Actually)m -2 r 44 c 10(there)m 12(may)m 11(be)m 12 r 97 c 0 679 p (separate)s 12(routing)m 12(table)m 11(entry)m 12(for)m 12(each)m 12 r 84 c -2(ype)m 11(of)m 11(Service.)m 19(These)m 11(are)m 12(called)m 12(the)m 12(virtual)m 12(link')m -2 r 115 c 11(corresponding)m 12(routing)m 12(table)m 0 729 p (entries.)s 17(The)m t-bol.300 @sf 11(Interface)m 11(Up)m t-rom.300 @sf 12(event)m 11(occurs)m 11(for)m 12 r 97 c 11(virtual)m 11(link)m 12(when)m 11(its)m 11(corresponding)m 12 r 84 c (OS)s 10 r 48 c 11(routing)m 12(table)m 11(entry)m 11(becomes)m 0 779 p (reachable.)s 14(Conversely)m -2 r 44 c 9(the)m t-bol.300 @sf 9(Interface)m 10(Down)m t-rom.300 @sf 10(event)m 9(occurs)m 10(when)m 10(its)m 9 r 84 c (OS)s 9 r 48 c 10(routing)m 9(table)m 10(entry)m 10(becomes)m 9(unreachable.)m t-rom.210 @sf 1919 764 p (18)s t-rom.300 @sf 0 829 p (In)s 10(other)m 9(words,)m 10(the)m 10(virtual)m 9(link')m -1 r 115 c 9(viability)m 9(is)m 10(determined)m 9(by)m 10(the)m 10(existence)m 9(of)m 10(an)m 9(intra-area)m 10(path,)m 10(through)m 9(the)m 10(transit)m 10(area,)m 0 878 p (between)s 10(the)m 11(two)m 10(endpoints.)m 14(The)m 11(other)m 10(details)m 10(concerning)m 11(virtual)m 10(links)m 11(are)m 10(as)m 10(follows:)m cmsy10.300 @sf 62 979 p 15 c t-rom.300 @sf 21(AS)m 12(external)m 12(links)m 12(are)m 12(NEVER)m 12(\015ooded)m 12(over)m 12(virtual)m 12(adjacencies.)m 19(This)m 12(would)m 12(be)m 12(duplication)m 12(of)m 12(ef)m (fort,)s 11(since)m 12(the)m 104 1029 p (same)s 11(AS)m 11(external)m 12(links)m 11(are)m 11(already)m 12(\015ooded)m 11(throughout)m 11(the)m 12(virtual)m 11(link')m -1 r 115 c 10(transit)m 12(area.)m 16(For)m 12(this)m 11(same)m 11(reason,)m 12(AS)m 104 1079 p (external)s 9(link)m 9(advertisements)m 9(are)m 9(not)m 9(summarized)m 10(over)m 9(virtual)m 9(adjacencies)m 9(during)m 9(the)m 9(database)m 9(exchange)m 9(process.)m cmsy10.300 @sf 62 1162 p 15 c t-rom.300 @sf 21(The)m 11(cost)m 11(of)m 11 r 97 c 12(virtual)m 11(link)m 11(is)m 11(NOT)m 11(con\014gured.)m 16(It)m 12(is)m 11(de\014ned)m 11(to)m 11(be)m 11(the)m 11(cost)m 12(of)m 11(the)m 11(intra-area)m 11(path)m 11(between)m 11(the)m 11(two)m 104 1212 p (de\014ning)s 10(area)m 10(border)m 10(routers.)m 14(This)m 10(cost)m 10(appears)m 10(in)m 10(the)m 10(virtual)m 10(link')m -1 r 115 c 9(corresponding)m 10(routing)m 10(table)m 10(entry)m -1 r 46 c 12(When)m 10(the)m 104 1262 p (cost)s 10(of)m 11 r 97 c 10(virtual)m 10(link)m 11(changes,)m 10 r 97 c 11(new)m 10(router)m 11(links)m 10(advertisement)m 10(should)m 11(be)m 10(originated)m 11(for)m 10(the)m 10(backbone)m 11(area.)m cmsy10.300 @sf 62 1345 p 15 c t-rom.300 @sf 21(Just)m 8(as)m 8(the)m 8(virtual)m 8(link')m -1 r 115 c 7(cost)m 8(and)m 8(viability)m 8(are)m 8(determined)m 8(by)m 8(the)m 8(routing)m 8(table)m 8(build)m 7(process)m 8(\(through)m 8(construction)m 104 1394 p (of)s 10(the)m 10(routing)m 11(table)m 10(entry)m 10(for)m 11(the)m 10(other)m 10(endpoint\),)m 11(so)m 10(are)m 10(the)m 11(IP)m 10(interface)m 10(address)m 11(for)m 10(the)m 10(virtual)m 11(interface)m 10(and)m 10(the)m 104 1444 p (virtual)s 10(neighbor)m 2 r 39 c -2 r 115 c 10(IP)m 10(address.)m 14(These)m 11(are)m 10(used)m 10(when)m 11(sending)m 10(protocol)m 11(packets)m 10(over)m 10(the)m 11(virtual)m 10(link.)m cmsy10.300 @sf 62 1527 p 15 c t-rom.300 @sf 21(In)m 12(each)m 12(endpoint')m -2 r 115 c 11(router)m 12(links)m 12(advertisement)m 12(for)m 12(the)m 12(backbone,)m 12(the)m 12(virtual)m 11(link)m 12(is)m 12(represented)m 12(as)m 12 r 97 c 12(link)m 12(having)m t-bol.300 @sf 104 1577 p (link)s 11(type)m t-rom.300 @sf 11(4,)m t-bol.300 @sf 11(Link)m 11(ID)m t-rom.300 @sf 11(set)m 11(to)m 11(the)m 11(virtual)m 11(neighbor)m 2 r 39 c -2 r 115 c 11(OSPF)m 11(Router)m 11(ID)m 11(and)m t-bol.300 @sf 11(Link)m 11(Data)m t-rom.300 @sf 11(set)m 11(to)m 11(the)m 11(virtual)m 11(interface')m -1 r 115 c 104 1627 p (IP)s 10(address.)m 14(See)m 10(Section)m 10(12.4.1)m 10(for)m 10(more)m 10(information.)m 14(Also,)m 10(it)m 10(may)m 10(be)m 10(the)m 10(case)m 10(that)m 10(there)m 10(is)m 10 r 97 c 11 r 84 c (OS)s 9 r 48 c 10(path,)m 10(but)m 10(no)m 104 1677 p (non-zero)s 11 r 84 c (OS)s 11(paths)m 11(to)m 11(the)m 12(other)m 11(endpoint)m 11(router)m -1 r 46 c 16(In)m 11(this)m 11(case,)m 12(non-zero)m 11 r 84 c (OS)s 11(costs)m 11(must)m 11(be)m 12(set)m 11(to)m 11(LSIn\014nity)m 12(in)m 104 1726 p (the)s 10(router)m 11(links)m 10(advertisement.)m cmsy10.300 @sf 62 1809 p 15 c t-rom.300 @sf 21(When)m 11(virtual)m 12(links)m 11(are)m 12(con\014gured)m 11(for)m 12(the)m 11(backbone,)m 12(information)m 11(concerning)m 12(backbone)m 11(networks)m 11(should)m 12(not)m 11(be)m 104 1859 p (condensed)s 13(before)m 14(being)m 13(summarized)m 14(for)m 13(the)m 14(transit)m 13(areas.)m 23(In)m 14(other)m 13(words,)m 14(each)m 14(backbone)m 13(network)m 14(should)m 13(be)m 104 1909 p (advertised)s 14(in)m 15 r 97 c 14(separate)m 15(summary)m 14(link)m 15(advertisement,)m 15(regardless)m 15(of)m 14(the)m 15(backbone')m -2 r 115 c 14(con\014gured)m t-bol.300 @sf 14(ar)m (ea)s 14(addr)m (ess)s 104 1959 p (ranges)s t-rom.300 @sf 46 c 14(See)m 10(Section)m 10(12.4.3)m 11(for)m 10(more)m 11(information.)m cmsy10.300 @sf 62 2042 p 15 c t-rom.300 @sf 21(The)m 11(time)m 10(between)m 11(link)m 10(state)m 10(retransmissions,)m 11(RxmtInterval,)m 11(is)m 10(con\014gured)m 11(for)m 10 r 97 c 11(virtual)m 10(link.)m 14(This)m 11(should)m 10(be)m 11(well)m 104 2092 p (over)s 9(the)m 10(expected)m 10(round-trip)m 9(delay)m 10(between)m 10(the)m 9(two)m 10(routers.)m 13(This)m 10(may)m 10(be)m 9(hard)m 10(to)m 10(estimate)m 9(for)m 10 r 97 c 10(virtual)m 9(link.)m 14(It)m 9(is)m 104 2142 p (better)s 10(to)m 11(err)m 10(on)m 10(the)m 11(side)m 10(of)m 11(making)m 10(it)m 11(too)m 10(lar)m (ge.)s t-bol.420 @sf 0 2299 p (16)s 58(Calculation)m 15(Of)m 14(The)m 15(Routing)m 15 r 84 c -5(able)m t-rom.300 @sf 0 2410 p (This)s 10(section)m 9(details)m 10(the)m 9(OSPF)m 10(routing)m 10(table)m 9(calculation.)m 14(Using)m 9(its)m 10(attached)m 10(areas')m 9(link)m 10(state)m 9(databases)m 10(as)m 10(input,)m 9 r 97 c 10(router)m 0 2460 p (runs)s 12(the)m 12(following)m 12(algorithm,)m 13(building)m 12(its)m 12(routing)m 12(table)m 12(step)m 12(by)m 12(step.)m 19(At)m 12(each)m 12(step,)m 12(the)m 12(router)m 12(must)m 12(access)m 12(individual)m 0 2510 p (pieces)s 14(of)m 14(the)m 15(link)m 14(state)m 14(databases)m 14(\(e.g.,)m 15 r 97 c 15(router)m 14(links)m 14(advertisement)m 14(originated)m 14(by)m 15 r 97 c 14(certain)m 14(router\).)m 25(This)m 14(access)m 15(is)m 0 2545 p 780 2 ru t-rom.180 @sf 33 2573 p (18)s t-rom.240 @sf 60 2585 p (Only)s 8(the)m 9 r 84 c (OS)s 7 r 48 c 9(routes)m 8(are)m 8(important)m 9(here.)m 11(This)m 8(is)m 9(because)m 8(all)m 8(routing)m 9(protocol)m 8(packets)m 8(are)m 9(sent)m 8(with)m 8 r 84 c (OS)s cmr8.300 @sf 61 c t-rom.240 @sf 9(0.)m 11(See)m 9(Appendix)m 8(A.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(80])m @eop 79 @bop0 79 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p (14)s 58(Aging)m 15(The)m 14(Link)m 15(State)m 15(Database)m t-rom.300 @sf 0 306 p (Each)s 15(link)m 15(state)m 15(advertisement)m 15(has)m 14(an)m 15(age)m 15(\014eld.)m 28(The)m 14(age)m 15(is)m 15(expressed)m 15(in)m 15(seconds.)m 27(An)m 15(advertisement')m -1 r 115 c 14(age)m 15(\014eld)m 15(is)m 0 356 p (incremented)s 15(while)m 16(it)m 15(is)m 15(contained)m 15(in)m 16 r 97 c 15(router)m 1 r 39 c -1 r 115 c 14(database.)m 29(Also,)m 16(when)m 15(copied)m 16(into)m 15 r 97 c 15(Link)m 16(State)m 15(Update)m 15(Packet)m 15(for)m 0 405 p (\015ooding)s 10(out)m 11 r 97 c 10(particular)m 11(interface,)m 10(the)m 10(advertisement')m -1 r 115 c 10(age)m 10(is)m 10(incremented)m 11(by)m 10(InfT)m (ransDelay)s -3 r 46 c 0 473 p (An)s 8(advertisement')m -2 r 115 c 7(age)m 8(is)m 8(never)m 8(incremented)m 7(past)m 8(the)m 8(value)m 8(MaxAge.)m 13(Advertisements)m 8(having)m 7(age)m 8(MaxAge)m 8(are)m 8(not)m 8(used)m 0 523 p (in)s 12(the)m 12(routing)m 12(table)m 12(calculation.)m 18(As)m 12 r 97 c 12(router)m 12(ages)m 12(its)m 12(link)m 12(state)m 12(database,)m 13(an)m 12(advertisement')m -2 r 115 c 11(age)m 12(may)m 12(reach)m 12(MaxAge.)m t-rom.210 @sf 0 558 p (17)s t-rom.300 @sf 50 573 p (At)s 12(this)m 12(time,)m 12(the)m 12(router)m 12(must)m 12(attempt)m 12(to)m 12(\015ush)m 11(the)m 12(advertisement)m 12(from)m 12(the)m 12(routing)m 12(domain.)m 19(This)m 12(is)m 11(done)m 12(simply)m 12(by)m 0 622 p (re\015ooding)s 10(the)m 11(MaxAge)m 10(advertisement)m 11(just)m 10(as)m 10(if)m 11(it)m 10(was)m 11 r 97 c 10(newly)m 11(originated)m 10(advertisement)m 10(\(see)m 11(Section)m 10(13.3\).)m 0 690 p (When)s 14 r 97 c t-bol.300 @sf 14(Database)m 14(summary)m 13(list)m t-rom.300 @sf 14(for)m 14 r 97 c 14(newly)m 14(adjacent)m 14(neighbor)m 13(is)m 14(formed,)m 15(any)m 14(MaxAge)m 14(advertisements)m 14(present)m 13(in)m 0 740 p (the)s 10(link)m 10(state)m 10(database)m 11(are)m 10(added)m 10(to)m 10(the)m 10(neighbor)m 2 r 39 c -2 r 115 c t-bol.300 @sf 10(Link)m 10(state)m 10 r 114 c (etransmission)s 9(list)m t-rom.300 @sf 10(instead)m 10(of)m 11(the)m 10(neighbor)m 1 r 39 c -1 r 115 c t-bol.300 @sf 9(Database)m 0 790 p (summary)s 10(list)m t-rom.300 @sf 46 c 14(See)m 11(Section)m 10(10.3)m 11(for)m 10(more)m 10(details.)m 0 857 p 65 c 9(MaxAge)m 9(advertisement)m 9(is)m 9(removed)m 8(entirely)m 9(from)m 9(the)m 9(router)m 2 r 39 c -2 r 115 c 8(link)m 9(state)m 9(database)m 9(when)m 9(a\))m 9(it)m 8(is)m 9(no)m 9(longer)m 9(contained)m 9(on)m 0 907 p (any)s 8(neighbor)m t-bol.300 @sf 8(Link)m 8(state)m 8 r 114 c (etransmission)s 7(lists)m t-rom.300 @sf 8(and)m 8(b\))m 8(none)m 8(of)m 7(the)m 8(router)m 2 r 39 c -1 r 115 c 7(neighbors)m 8(are)m 7(in)m 8(states)m t-bol.300 @sf 8(Exchange)m t-rom.300 @sf 8(or)m t-bol.300 @sf 8(Loading)m t-rom.300 @sf 46 c 0 975 p (When,)s 9(in)m 8(the)m 8(process)m 8(of)m 8(aging)m 8(the)m 8(link)m 8(state)m 8(database,)m 9(an)m 8(advertisement')m -1 r 115 c 7(age)m 8(hits)m 8 r 97 c 8(multiple)m 8(of)m 8(CheckAge,)m 9(its)m 8(checksum)m 0 1025 p (should)s 12(be)m 11(veri\014ed.)m 18(If)m 12(the)m 12(checksum)m 11(is)m 12(incorrect,)m 12 r 97 c 12(program)m 12(or)m 11(memory)m 12(error)m 12(has)m 11(been)m 12(detected,)m 12(and)m 12(at)m 12(the)m 11(very)m 12(least)m 0 1075 p (the)s 10(router)m 11(itself)m 10(should)m 11(be)m 10(restarted.)m t-bol.360 @sf 0 1211 p (14.1)s 50(Pr)m (ematur)s -1 r 101 c 12(aging)m 12(of)m 13(advertisements)m t-rom.300 @sf 0 1307 p 65 c 13(link)m 12(state)m 13(advertisement)m 12(can)m 13(be)m 13(\015ushed)m 12(from)m 13(the)m 12(routing)m 13(domain)m 13(by)m 12(setting)m 13(its)m 13(age)m 12(to)m 13(MaxAge)m 12(and)m 13(re\015ooding)m 13(the)m 0 1357 p (advertisement.)s 14(This)m 10(procedure)m 10(follows)m 10(the)m 10(same)m 10(course)m 10(as)m 11(\015ushing)m 10(an)m 10(advertisement)m 10(whose)m 10(age)m 10(has)m 10(naturally)m 10(reached)m 0 1407 p (the)s 11(value)m 11(MaxAge)m 12(\(see)m 11(Section)m 11(14\).)m 16(In)m 12(particular)m -1 r 44 c 10(the)m 12(MaxAge)m 11(advertisement)m 11(is)m 11(removed)m 11(from)m 12(the)m 11(router)m 1 r 39 c -1 r 115 c 10(link)m 11(state)m 0 1456 p (database)s 12(as)m 12(soon)m 12(as)m 12(a\))m 12(it)m 12(is)m 12(no)m 12(longer)m 12(contained)m 12(on)m 12(any)m 12(neighbor)m t-bol.300 @sf 12(Link)m 12(state)m 12 r 114 c (etransmission)s 11(lists)m t-rom.300 @sf 12(and)m 12(b\))m 12(none)m 12(of)m 12(the)m 0 1506 p (router)s 2 r 39 c -2 r 115 c 14(neighbors)m 15(are)m 15(in)m 15(states)m t-bol.300 @sf 15(Exchange)m t-rom.300 @sf 15(or)m t-bol.300 @sf 15(Loading)m t-rom.300 @sf 46 c 27 r 87 c -2 r 101 c 13(call)m 15(the)m 15(setting)m 15(of)m 15(an)m 15(advertisement')m -1 r 115 c 13(age)m 15(to)m 15(MaxAge)m t-bol.300 @sf 0 1556 p (pr)s (ematur)s -1 r 101 c 10(aging)m t-rom.300 @sf 46 c 0 1624 p (Premature)s 12(aging)m 11(is)m 12(used)m 11(when)m 12(it)m 11(is)m 12(time)m 11(for)m 12 r 97 c 11(self-originated)m 12(advertisement')m -2 r 115 c 11(sequence)m 11(number)m 12(\014eld)m 11(to)m 12(wrap.)m 17(At)m 12(this)m 0 1673 p (point,)s 12(the)m 11(current)m 11(advertisement)m 12(instance)m 11(\(having)m 12(LS)m 11(sequence)m 11(number)m 12(of)m c-med.300 @sf 11(0x7fffffff)m t-rom.300 @sf 41 c 12(must)m 11(be)m 11(prematurely)m 12(aged)m 0 1723 p (and)s 11(\015ushed)m 12(from)m 11(the)m 11(routing)m 11(domain)m 12(before)m 11 r 97 c 11(new)m 12(instance)m 11(with)m 11(sequence)m 12(number)m c-med.300 @sf 11(0x80000001)m t-rom.300 @sf 11(can)m 11(be)m 12(originated.)m 0 1773 p (See)s 10(Section)m 11(12.1.6)m 10(for)m 11(more)m 10(information.)m 0 1841 p (Premature)s 12(aging)m 12(can)m 12(also)m 12(be)m 12(used)m 12(when,)m 13(for)m 12(example,)m 12(one)m 12(of)m 12(the)m 12(router)m 2 r 39 c -2 r 115 c 11(previously)m 12(advertised)m 13(external)m 12(routes)m 12(is)m 12(no)m 0 1891 p (longer)s 13(reachable.)m 23(In)m 13(this)m 14(circumstance,)m 14(the)m 13(router)m 13(can)m 14(\015ush)m 13(its)m 13(external)m 14(advertisement)m 13(from)m 13(the)m 14(routing)m 13(domain)m 13(via)m 0 1940 p (premature)s 13(aging.)m 24(This)m 13(procedure)m 14(is)m 13(preferable)m 14(to)m 13(the)m 14(alternative,)m 14(which)m 13(is)m 14(to)m 13(originate)m 14 r 97 c 13(new)m 14(advertisement)m 13(for)m 14(the)m 0 1990 p (destination)s 10(specifying)m 11 r 97 c 10(metric)m 11(of)m 10(LSIn\014nity)m -2 r 46 c 0 2058 p 65 c 11(router)m 10(may)m 11(only)m 10(prematurely)m 11(age)m 10(its)m 11(own)m 10(\(self-originated\))m 11(link)m 10(state)m 11(advertisements.)m 14(These)m 11(are)m 10(the)m 11(link)m 10(state)m 11(adver-)m 0 2108 p (tisements)s 10(having)m 11(the)m 10(router)m 2 r 39 c -2 r 115 c 10(own)m 10(OSPF)m 11(Router)m 10(ID)m 11(in)m 10(the)m t-bol.300 @sf 10(Advertising)m 11(Router)m t-rom.300 @sf 10(\014eld.)m t-bol.420 @sf 0 2266 p (15)s 58 r 86 c -1(irtual)m 14(Links)m t-rom.300 @sf 0 2376 p (The)s 8(single)m 8(backbone)m 8(area)m 9(\(Area)m 8(ID)m 8 r 61 c 8(0\))m 8(cannot)m 8(be)m 8(disconnected,)m 9(or)m 8(some)m 8(areas)m 8(of)m 8(the)m 9(Autonomous)m 8(System)m 8(will)m 8(become)m 0 2426 p (unreachable.)s 13 r 84 c -2 r 111 c 6(establish/maintain)m 7(connectivity)m 7(of)m 7(the)m 8(backbone,)m 7(virtual)m 7(links)m 8(can)m 7(be)m 7(con\014gured)m 7(through)m 7(non-backbone)m 0 2476 p (areas.)s 21 r 86 c -1(irtual)m 11(links)m 13(serve)m 13(to)m 13(connect)m 13(separate)m 12(components)m 13(of)m 13(the)m 13(backbone.)m 21(The)m 13(two)m 12(endpoints)m 13(of)m 13 r 97 c 13(virtual)m 13(link)m 12(are)m 0 2511 p 780 2 ru t-rom.180 @sf 33 2539 p (17)s t-rom.240 @sf 60 2551 p (It)s 9(should)m 10(be)m 9 r 97 c 9(relatively)m 10(rare)m 9(occurrence)m 10(for)m 9(an)m 9(advertisement')m -1 r 115 c 9(age)m 9(to)m 10(reach)m 9(MaxAge.)m 14(Usually)m -1 r 44 c 9(the)m 9(advertisement)m 9(will)m 10(be)m 9(replaced)m 9(by)m 10 r 97 c 9(more)m 0 2590 p (recent)s 8(instance)m 9(before)m 8(it)m 8(ages)m 9(out.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(79])m @eop 78 @bop0 78 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 113 201 p 1725 2 ru 112 251 p 2 50 ru 575 r 2 50 ru 2 50 ru t-ita.300 @sf 1092 236 p (Action)s 10(taken)m 11(in)m 10(state)m 1836 251 p 2 50 ru 688 252 p 1150 2 ru 112 301 p 2 50 ru 277 286 p (Cir)s (cumstances)s 687 301 p 2 50 ru 912 286 p (Backup)s 1262 301 p 2 50 ru 1424 286 p (All)s 10(other)m 10(states)m 1836 301 p 2 50 ru 113 302 p 1725 2 ru 112 509 p 2 207 ru t-rom.300 @sf 138 337 p (Advertisement)s 224(has)m 138 387 p (been)s 8(\015ooded)m 9(back)m 8(out)m 9(receiving)m 138 437 p (interface)s 16(\(see)m 17(Section)m 16(13,)m 19(step)m 138 486 p (5b\).)s 687 509 p 2 207 ru 712 337 p (No)s 11(acknowledgment)m 10(sent.)m 1262 509 p 2 207 ru 1287 337 p (No)s 11(acknowledgment)m 10(sent.)m 1836 509 p 2 207 ru 113 510 p 1725 2 ru 112 710 p 2 200 ru 138 545 p (Advertisement)s 21(is)m 22(more)m 21(recent)m 138 595 p (than)s 10(database)m 10(copy)m -2 r 44 c 9(but)m 10(was)m 10(not)m 138 645 p (\015ooded)s 16(back)m 17(out)m 17(receiving)m 16(in-)m 138 695 p (terface)s 687 710 p 2 200 ru 712 545 p (Delayed)s 18(acknowledgment)m 17(sent)m 712 595 p (if)s 15(advertisement)m 15(received)m 14(from)m 712 645 p (DR,)s 11(otherwise)m 10(do)m 11(nothing.)m 1262 710 p 2 200 ru 1287 545 p (Delayed)s 11(acknowledgment)m 10(sent.)m 1836 710 p 2 200 ru 113 712 p 1725 2 ru 112 920 p 2 209 ru 138 747 p (Advertisement)s 138 796 p (is)s 15 r 97 c 15(duplicate,)m 16(and)m 16(was)m 15(treated)m 138 846 p (as)s 13(an)m 13(implied)m 13(acknowledgment)m 138 896 p (\(see)s 10(Section)m 11(13,)m 10(step)m 10(7a\).)m 687 920 p 2 209 ru 712 747 p (Delayed)s 18(acknowledgment)m 17(sent)m 712 796 p (if)s 15(advertisement)m 15(received)m 14(from)m 712 846 p (DR,)s 11(otherwise)m 10(do)m 11(nothing.)m 1262 920 p 2 209 ru 1287 747 p (No)s 11(acknowledgment)m 10(sent.)m 1836 920 p 2 209 ru 113 922 p 1725 2 ru 112 1080 p 2 159 ru 138 957 p (Advertisement)s 23(is)m 23 r 97 c 24(duplicate,)m 138 1006 p (and)s 17(was)m 17(not)m 16(treated)m 17(as)m 17(an)m 17(im-)m 138 1056 p (plied)s 10(acknowledgment.)m 687 1080 p 2 159 ru 712 957 p (Direct)s 11(acknowledgment)m 10(sent.)m 1262 1080 p 2 159 ru 1287 957 p (Direct)s 11(acknowledgment)m 10(sent.)m 1836 1080 p 2 159 ru 113 1082 p 1725 2 ru 112 1340 p 2 259 ru 138 1117 p (Advertisement')s -2 r 115 c 10(age)m 11(is)m 11(equal)m 11(to)m 138 1167 p (MaxAge,)s 8(and)m 7(there)m 8(is)m 7(no)m 8(current)m 138 1216 p (instance)s 9(of)m 9(the)m 9(advertisement)m 9(in)m 138 1266 p (the)s 9(link)m 10(state)m 10(database)m 9(\(see)m 10(Sec-)m 138 1316 p (tion)s 10(13,)m 11(step)m 10(4\).)m 687 1340 p 2 259 ru 712 1117 p (Direct)s 11(acknowledgment)m 10(sent.)m 1262 1340 p 2 259 ru 1287 1117 p (Direct)s 11(acknowledgment)m 10(sent.)m 1836 1340 p 2 259 ru 113 1342 p 1725 2 ru 571 1479 p 84 c -2(able)m 9(19:)m 14(Sending)m 11(link)m 10(state)m 10(acknowledgements.)m 0 1602 p (Link)s 10(State)m 9(Update)m 10(Packets)m 10(carrying)m 10(retransmissions)m 9(are)m 10(always)m 10(sent)m 10(as)m 9(unicasts)m 10(\(directly)m 10(to)m 10(the)m 9(physical)m 10(address)m 10(of)m 10(the)m 0 1652 p (neighbor\).)s 21(They)m 12(are)m 13(never)m 13(sent)m 13(as)m 12(multicasts.)m 21(Each)m 13(advertisement')m -2 r 115 c 12(LS)m 13(age)m 12(must)m 13(be)m 13(incremented)m 13(by)m 12(InfT)m (ransDelay)s 0 1701 p (\(which)s 14(must)m 15(be)m cmmi10.300 @sf 14 r 62 c t-rom.300 @sf 20(0\))m 15(when)m 14(copied)m 14(into)m 15(the)m 14(outgoing)m 14(packet)m 15(\(until)m 14(the)m 14(LS)m 15(age)m 14(\014eld)m 15(reaches)m 14(its)m 14(maximum)m 15(value)m 14(of)m 0 1751 p (MaxAge\).)s 0 1813 p (If)s 8(the)m 8(adjacent)m 7(router)m 8(goes)m 8(down,)m 8(retransmissions)m 8(may)m 8(occur)m 8(until)m 8(the)m 7(adjacency)m 8(is)m 8(destroyed)m 8(by)m 8(OSPF')m -2 r 115 c 7(Hello)m 8(Protocol.)m 0 1863 p (When)s 10(the)m 11(adjacency)m 10(is)m 11(destroyed,)m 10(the)m t-bol.300 @sf 10(Link)m 11(state)m 10 r 114 c (etransmission)s 10(list)m t-rom.300 @sf 10(is)m 11(cleared.)m t-bol.360 @sf 0 1992 p (13.7)s 50(Receiving)m 12(link)m 13(state)m 12(acknowledgments)m t-rom.300 @sf 0 2082 p (Many)s 9(consistency)m 10(checks)m 9(have)m 9(been)m 10(made)m 9(on)m 9 r 97 c 10(received)m 9(Link)m 9(State)m 10(Acknowledgment)m 9(packet)m 9(before)m 10(it)m 9(is)m 9(handed)m 10(to)m 9(the)m 0 2132 p (\015ooding)s 11(procedure.)m 14(In)m 10(particular)m 44 c 9(it)m 11(has)m 10(been)m 11(associated)m 10(with)m 11 r 97 c 11(particular)m 10(neighbor)m -1 r 46 c 13(If)m 11(this)m 10(neighbor)m 11(is)m 10(in)m 11 r 97 c 10(lesser)m 11(state)m 0 2182 p (than)s t-bol.300 @sf 10(Exchange)m t-rom.300 @sf 44 c 11(the)m 10(packet)m 11(is)m 10(discarded.)m 0 2244 p (Otherwise,)s 10(for)m 11(each)m 10(acknowledgment)m 11(in)m 10(the)m 10(packet,)m 11(the)m 10(following)m 11(steps)m 10(are)m 11(performed:)m cmsy10.300 @sf 62 2334 p 15 c t-rom.300 @sf 21(Does)m 9(the)m 9(advertisement)m 9(acknowledged)m 9(have)m 10(an)m 9(instance)m 9(on)m 9(the)m t-bol.300 @sf 9(Link)m 9(state)m 9 r 114 c (etransmission)s 9(list)m t-rom.300 @sf 9(for)m 9(the)m 9(neighbor?)m 104 2384 p (If)s 10(not,)m 11(examine)m 10(the)m 10(next)m 11(acknowledgment.)m 14(Otherwise:)m cmsy10.300 @sf 62 2462 p 15 c t-rom.300 @sf 21(If)m 12(the)m 11(acknowledgment)m 12(is)m 12(for)m 11(the)m 12(same)m 12(instance)m 12(that)m 11(is)m 12(contained)m 12(on)m 11(the)m 12(list,)m 12(remove)m 12(the)m 11(item)m 12(from)m 12(the)m 12(list)m 11(and)m 104 2512 p (examine)s 10(the)m 11(next)m 10(acknowledgment.)m 14(Otherwise:)m cmsy10.300 @sf 62 2589 p 15 c t-rom.300 @sf 21(Log)m 10(the)m 11(questionable)m 10(acknowledgment,)m 11(and)m 10(examine)m 11(the)m 10(next)m 10(one.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(78])m @eop 77 @bop0 77 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (13.5)s 50(Sending)m 12(Link)m 13(State)m 12(Acknowledgment)m 13(packets)m t-rom.300 @sf 0 289 p (Each)s 14(newly)m 15(received)m 14(link)m 14(state)m 15(advertisement)m 14(must)m 14(be)m 15(acknowledged.)m 25(This)m 15(is)m 14(usually)m 14(done)m 15(by)m 14(sending)m 14(Link)m 15(State)m 0 339 p (Acknowledgment)s 13(packets.)m 22(However)m 44 c 12(acknowledgments)m 13(can)m 14(also)m 13(be)m 13(accomplished)m 13(implicitly)m 13(by)m 13(sending)m 13(Link)m 14(State)m 0 389 p (Update)s 10(packets)m 11(\(see)m 10(step)m 11(7a)m 10(of)m 10(Section)m 11(13\).)m 0 455 p (Many)s 10(acknowledgments)m 11(may)m 10(be)m 10(grouped)m 11(together)m 10(into)m 10 r 97 c 11(single)m 10(Link)m 10(State)m 11(Acknowledgment)m 10(packet.)m 14(Such)m 10 r 97 c 11(packet)m 10(is)m 0 505 p (sent)s 11(back)m 11(out)m 11(the)m 11(interface)m 11(that)m 11(has)m 11(received)m 11(the)m 11(advertisements.)m 16(The)m 11(packet)m 11(can)m 11(be)m 11(sent)m 11(in)m 11(one)m 11(of)m 11(two)m 11(ways:)m 15(delayed)m 0 554 p (and)s 12(sent)m 11(on)m 12(an)m 11(interval)m 12(timer)m -1 r 44 c 11(or)m 11(sent)m 12(directly)m 11(\(as)m 12 r 97 c 12(unicast\))m 11(to)m 12 r 97 c 11(particular)m 12(neighbor)m -2 r 46 c 17(The)m 11(particular)m 12(acknowledgment)m 0 604 p (strategy)s 10(used)m 11(depends)m 10(on)m 11(the)m 10(circumstances)m 10(surrounding)m 11(the)m 10(receipt)m 11(of)m 10(the)m 11(advertisement.)m 0 670 p (Sending)s 11(delayed)m 10(acknowledgments)m 11(accomplishes)m 10(several)m 11(things:)m 14(it)m 11(facilitates)m 10(the)m 11(packaging)m 11(of)m 10(multiple)m 11(acknowledg-)m 0 720 p (ments)s 10(in)m 9 r 97 c 10(single)m 9(packet;)m 10(it)m 10(enables)m 9 r 97 c 10(single)m 9(packet)m 10(to)m 10(indicate)m 9(acknowledgments)m 10(to)m 9(several)m 10(neighbors)m 9(at)m 10(once)m 10(\(through)m 0 770 p (multicasting\);)s 9(and)m 7(it)m 8(randomizes)m 7(the)m 8(acknowledgment)m 7(packets)m 8(sent)m 7(by)m 8(the)m 7(various)m 8(routers)m 7(attached)m 8(to)m 8 r 97 c 7(multi-access)m 8(net-)m 0 820 p (work.)s 14(The)m 11(\014xed)m 10(interval)m 11(between)m 10 r 97 c 11(router)m 1 r 39 c -1 r 115 c 10(delayed)m 10(transmissions)m 11(must)m 10(be)m 11(short)m 10(\(less)m 11(than)m 10(RxmtInterval\))m 11(or)m 10(needless)m 0 869 p (retransmissions)s 10(will)m 11(ensue.)m 0 935 p (Direct)s 12(acknowledgments)m 12(are)m 11(sent)m 12(to)m 12 r 97 c 12(particular)m 12(neighbor)m 11(in)m 12(response)m 12(to)m 12(the)m 11(receipt)m 12(of)m 12(duplicate)m 12(link)m 12(state)m 11(advertise-)m 0 985 p (ments.)s 14(These)m 10(acknowledgments)m 11(are)m 10(sent)m 11(as)m 10(unicasts,)m 10(and)m 11(are)m 10(sent)m 11(immediately)m 10(when)m 10(the)m 11(duplicate)m 10(is)m 11(received.)m 0 1051 p (The)s 11(precise)m 12(procedure)m 11(for)m 11(sending)m 11(Link)m 12(State)m 11(Acknowledgment)m 11(packets)m 12(is)m 11(described)m 11(in)m 11 r 84 c -2(able)m 11(19.)m 16(The)m 12(circumstances)m 0 1101 p (surrounding)s 12(the)m 12(receipt)m 12(of)m 12(the)m 11(advertisement)m 12(are)m 12(listed)m 12(in)m 12(the)m 12(left)m 12(column.)m 18(The)m 12(acknowledgment)m 12(action)m 12(then)m 12(taken)m 11(is)m 0 1151 p (listed)s 11(in)m 11(one)m 11(of)m 11(the)m 10(two)m 11(right)m 11(columns.)m 15(This)m 11(action)m 11(depends)m 11(on)m 11(the)m 11(state)m 11(of)m 11(the)m 11(concerned)m 10(interface;)m 12(interfaces)m 10(in)m 11(state)m t-bol.300 @sf 0 1201 p (Backup)s t-rom.300 @sf 10(behave)m 11(dif)m (ferently)s 9(from)m 11(interfaces)m 10(in)m 11(all)m 10(other)m 11(states.)m 0 1276 p (Delayed)s 12(acknowledgments)m 11(must)m 12(be)m 11(delivered)m 12(to)m 11(all)m 12(adjacent)m 11(routers)m 12(associated)m 11(with)m 12(the)m 11(interface.)m 17(On)m 12(broadcast)m 11(net-)m 0 1325 p (works,)s 8(this)m 7(is)m 7(accomplished)m 8(by)m 7(sending)m 7(the)m 7(delayed)m 7(Link)m 8(State)m 7(Acknowledgment)m 7(packets)m 7(as)m 8(multicasts.)m 12(The)m 8(Destination)m 0 1375 p (IP)s 11(address)m 11(used)m 11(depends)m 11(on)m 11(the)m 11(state)m 11(of)m 11(the)m 11(interface.)m 16(If)m 11(the)m 11(state)m 11(is)m t-bol.300 @sf 11(DR)m t-rom.300 @sf 11(or)m t-bol.300 @sf 11(Backup)m t-rom.300 @sf 44 c 12(the)m 11(destination)m 11(AllSPFRouters)m 11(is)m 0 1425 p (used.)s 16(In)m 11(other)m 11(states,)m 11(the)m 11(destination)m 11(AllDRouters)m 11(is)m 11(used.)m 16(On)m 11(non-broadcast)m 11(networks,)m 11(delayed)m 11(acks)m 11(must)m 11(be)m 11(unicast)m 0 1475 p (separately)s 10(over)m 11(each)m 10(adjacency)m 11(\(neighbor)m 10(whose)m 10(state)m 11(is)m cmmi10.300 @sf 10 r 62 c cmr10.300 @sf 61 c t-bol.300 @sf 11(Exchange)m t-rom.300 @sf (\).)s 0 1541 p (The)s 10(reasoning)m 10(behind)m 10(sending)m 10(the)m 10(above)m 10(packets)m 10(as)m 10(multicasts)m 10(is)m 10(best)m 10(explained)m 10(by)m 10(an)m 10(example.)m 14(Consider)m 10(the)m 10(network)m 0 1591 p (con\014guration)s 12(depicted)m 12(in)m 12(Figure)m 12(15.)m 18(Suppose)m 12 r 82 c -1(T4)m 11(has)m 12(been)m 12(elected)m 12(as)m 12(DR,)m 12(and)m 12 r 82 c -2(T3)m 11(as)m 12(Backup)m 12(for)m 12(the)m 12(network)m 12(N3.)m 0 1641 p (When)s 14(router)m 13 r 82 c -1(T4)m 12(\015oods)m 14 r 97 c 13(new)m 14(advertisement)m 14(to)m 13(network)m 14(N3,)m 14(it)m 14(is)m 13(received)m 14(by)m 14(routers)m 13 r 82 c -1(T1,)m 13 r 82 c -1(T2,)m 13(and)m 14 r 82 c -2(T3.)m 22(These)m 0 1690 p (routers)s 12(will)m 12(not)m 12(\015ood)m 12(the)m 12(advertisement)m 12(back)m 12(onto)m 12(net)m 13(N3,)m 12(but)m 12(they)m 12(still)m 12(must)m 12(ensure)m 12(that)m 12(their)m 12(topological)m 12(databases)m 0 1740 p (remain)s 8(synchronized)m 8(with)m 8(their)m 8(adjacent)m 8(neighbors.)m 13(So)m 8 r 82 c -2(T1,)m 8 r 82 c -2(T2,)m 8(and)m 8 r 82 c -2(T4)m 7(are)m 8(waiting)m 8(to)m 8(see)m 8(an)m 8(acknowledgment)m 8(from)m 0 1790 p 82 c -2(T3.)m 14(Likewise,)m 11 r 82 c -1(T4)m 9(and)m 11 r 82 c -2(T3)m 10(are)m 11(both)m 11(waiting)m 10(to)m 11(see)m 11(acknowledgments)m 10(from)m 11 r 82 c -1(T1)m 9(and)m 11 r 82 c -2(T2.)m 14(This)m 11(is)m 11(best)m 10(achieved)m 11(by)m 0 1840 p (sending)s 10(the)m 11(acknowledgments)m 10(as)m 11(multicasts.)m 0 1906 p (The)s 13(reason)m 13(that)m 13(the)m 13(acknowledgment)m 13(logic)m 13(for)m 13(Backup)m 13(DRs)m 13(is)m 13(slightly)m 14(dif)m (ferent)s 12(is)m 13(because)m 13(they)m 13(perform)m 13(dif)m (ferently)s 0 1956 p (during)s 10(the)m 11(\015ooding)m 10(of)m 11(link)m 10(state)m 10(advertisements)m 11(\(see)m 10(Section)m 11(13.3,)m 10(step)m 11(4\).)m t-bol.360 @sf 0 2090 p (13.6)s 50(Retransmitting)m 12(link)m 13(state)m 12(advertisements)m t-rom.300 @sf 0 2184 p (Advertisements)s 12(\015ooded)m 13(out)m 12(an)m 13(adjacency)m 12(are)m 13(placed)m 12(on)m 13(the)m 12(adjacency')m -1 r 115 c t-bol.300 @sf 11(Link)m 13(state)m 12 r 114 c (etransmission)s 12(list)m t-rom.300 @sf 46 c 20(In)m 12(order)m 13(to)m 0 2234 p (ensure)s 14(that)m 13(\015ooding)m 14(is)m 14(reliable,)m 14(these)m 14(advertisements)m 14(are)m 14(retransmitted)m 13(until)m 14(they)m 14(are)m 13(acknowledged.)m 24(The)m 14(length)m 14(of)m 0 2283 p (time)s 9(between)m 9(retransmissions)m 9(is)m 9 r 97 c 8(con\014gurable)m 9(per)m (-interface)s 8(value,)m 10(RxmtInterval.)m 13(If)m 9(this)m 9(is)m 9(set)m 9(too)m 9(low)m 8(for)m 9(an)m 9(interface,)m 0 2333 p (needless)s 11(retransmissions)m 11(will)m 11(ensue.)m 15(If)m 11(the)m 11(value)m 11(is)m 11(set)m 11(too)m 11(high,)m 11(the)m 11(speed)m 11(of)m 11(the)m 11(\015ooding,)m 11(in)m 11(the)m 11(face)m 11(of)m 11(lost)m 11(packets,)m 0 2383 p (may)s 10(be)m 11(af)m (fected.)s 0 2449 p (Several)s 12(retransmitted)m 11(advertisements)m 12(may)m 12(\014t)m 11(into)m 12 r 97 c 11(single)m 12(Link)m 12(State)m 11(Update)m 12(packet.)m 18(When)m 11(advertisements)m 12(are)m 12(to)m 11(be)m 0 2499 p (retransmitted,)s 12(only)m 11(the)m 11(number)m 11(\014tting)m 12(in)m 11 r 97 c 11(single)m 12(Link)m 11(State)m 11(Update)m 12(packet)m 11(should)m 11(be)m 12(transmitted.)m 16(Another)m 12(packet)m 11(of)m 0 2549 p (retransmissions)s 12(can)m 11(be)m 12(sent)m 11(when)m 12(some)m 11(of)m 12(the)m 12(advertisements)m 11(are)m 12(acknowledged,)m 12(or)m 11(on)m 12(the)m 11(next)m 12(\014ring)m 11(of)m 12(the)m 11(retrans-)m 0 2599 p (mission)s 10(timer)m -1 r 46 c 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(77])m @eop 76 @bop0 76 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m cmsy10.300 @sf 231 195 p 15 c t-rom.300 @sf 21(If)m 13(the)m 13(two)m 13(copies)m 13(are)m 13(the)m 12(same)m 13(instance,)m 14(then)m 13(delete)m 13(the)m 13(advertisement)m 13(from)m 12(the)m t-bol.300 @sf 13(Link)m 13(state)m 13 r 114 c (equest)s 273 245 p (list)s t-rom.300 @sf 44 c 10(and)m 11(try)m 10(the)m 10(next)m 11(neighbor)m -1 r 46 c t-rom.210 @sf 788 230 p (16)s cmsy10.300 @sf 231 303 p 15 c t-rom.300 @sf 21(Else,)m 14(the)m 12(new)m 13(advertisement)m 13(is)m 13(more)m 13(recent.)m 21(Delete)m 13(the)m 13(advertisement)m 13(from)m 13(the)m t-bol.300 @sf 13(Link)m 13(state)m 13 r 114 c (equest)s t-rom.300 @sf 273 353 p (list.)s 128 419 p (\(c\))s 21(If)m 10(the)m 11(new)m 10(advertisement)m 11(was)m 10(received)m 10(from)m 11(this)m 10(neighbor)m 44 c 9(try)m 10(the)m 11(next)m 10(neighbor)m -1 r 46 c 126 486 p (\(d\))s 21(At)m 7(this)m 8(point)m 8(we)m 8(are)m 8(not)m 7(positive)m 8(that)m 8(the)m 8(new)m 8(neighbor)m 7(has)m 8(an)m 8(up-to-date)m 8(instance)m 8(of)m 7(this)m 8(new)m 8(advertisement.)m 195 535 p (Add)s 11(the)m 10(new)m 11(advertisement)m 11(to)m 10(the)m t-bol.300 @sf 11(Link)m 11(state)m 10 r 114 c (etransmission)s 10(list)m t-rom.300 @sf 11(for)m 10(the)m 11(adjacency)m -2 r 46 c 14(This)m 10(ensures)m 11(that)m 11(the)m 195 585 p (\015ooding)s 8(procedure)m 8(is)m 8(reliable;)m 8(the)m 8(advertisement)m 8(will)m 8(be)m 7(retransmitted)m 8(at)m 8(intervals)m 8(until)m 8(an)m 7(acknowledgment)m 195 635 p (is)s 11(seen)m 10(from)m 10(the)m 11(neighbor)m -2 r 46 c 52 718 p (2.)s 21(The)m 7(router)m 8(must)m 7(now)m 8(decide)m 7(whether)m 8(to)m 7(\015ood)m 8(the)m 7(new)m 8(link)m 7(state)m 8(advertisement)m 8(out)m 7(this)m 8(interface.)m 13(If)m 7(in)m 8(the)m 7(previous)m 104 768 p (step,)s 9(the)m 9(link)m 9(state)m 9(advertisement)m 9(was)m 9(NOT)m 9(added)m 9(to)m 9(any)m 9(of)m 9(the)m t-bol.300 @sf 9(Link)m 9(state)m 9 r 114 c (etransmission)s 8(lists)m t-rom.300 @sf 44 c 9(there)m 9(is)m 9(no)m 9(need)m 104 818 p (to)s 10(\015ood)m 11(the)m 10(advertisement)m 10(and)m 11(the)m 10(next)m 11(interface)m 10(should)m 11(be)m 10(examined.)m 52 901 p (3.)s 21(If)m 8(the)m 8(new)m 8(advertisement)m 8(was)m 9(received)m 8(on)m 8(this)m 8(interface,)m 9(and)m 8(it)m 9(was)m 8(received)m 8(from)m 8(either)m 9(the)m 8(Designated)m 8(Router)m 8(or)m 104 951 p (the)s 7(Backup)m 8(Designated)m 7(Router)m -1 r 44 c 7(chances)m 8(are)m 7(all)m 7(the)m 8(neighbors)m 7(have)m 7(received)m 8(the)m 7(advertisement)m 8(already)m -2 r 46 c 12(Therefore,)m 104 1000 p (examine)s 10(the)m 11(next)m 10(interface.)m 52 1083 p (4.)s 21(If)m 10(the)m 11(new)m 11(advertisement)m 11(was)m 10(received)m 11(on)m 11(this)m 11(interface,)m 10(and)m 11(the)m 11(interface)m 11(state)m 10(is)m t-bol.300 @sf 11(Backup)m t-rom.300 @sf 11(\(i.e.,)m 11(the)m 11(router)m 10(itself)m 104 1133 p (is)s 11(the)m 12(Backup)m 12(Designated)m 11(Router\),)m 12(examine)m 12(the)m 11(next)m 12(interface.)m 17(The)m 12(Designated)m 11(Router)m 12(will)m 11(do)m 12(the)m 12(\015ooding)m 11(on)m 104 1183 p (this)s 10(interface.)m 14(If)m 10(the)m 11(Designated)m 10(Router)m 11(fails,)m 10(this)m 11(router)m 10(will)m 10(end)m 11(up)m 10(retransmitting)m 11(the)m 10(updates.)m 52 1266 p (5.)s 21(If)m 12(this)m 13(step)m 13(is)m 13(reached,)m 13(the)m 13(advertisement)m 13(must)m 13(be)m 13(\015ooded)m 13(out)m 12(the)m 13(interface.)m 21(Send)m 13 r 97 c 13(Link)m 13(State)m 13(Update)m 13(packet)m 104 1316 p (\(with)s 12(the)m 13(new)m 13(advertisement)m 12(as)m 13(contents\))m 13(out)m 12(the)m 13(interface.)m 20(The)m 13(advertisement')m -1 r 115 c 11(LS)m 13(age)m 12(must)m 13(be)m 13(incremented)m 104 1366 p (by)s 10(InfT)m (ransDelay)s 9(\(which)m 11(must)m 10(be)m cmmi10.300 @sf 11 r 62 c t-rom.300 @sf 11(0\))m 11(when)m 10(copied)m 11(into)m 10(the)m 11(outgoing)m 10(packet)m 10(\(until)m 11(the)m 10(LS)m 11(age)m 10(\014eld)m 11(reaches)m 10(its)m 104 1415 p (maximum)s 10(value)m 11(of)m 10(MaxAge\).)m 104 1482 p (On)s 12(broadcast)m 13(networks,)m 12(the)m 13(Link)m 12(State)m 13(Update)m 12(packets)m 12(are)m 13(multicast.)m 20(The)m 12(destination)m 12(IP)m 13(address)m 12(speci\014ed)m 13(for)m 104 1532 p (the)s 11(Link)m 12(State)m 11(Update)m 11(Packet)m 12(depends)m 11(on)m 11(the)m 12(state)m 11(of)m 12(the)m 11(interface.)m 17(If)m 11(the)m 11(interface)m 12(state)m 11(is)m t-bol.300 @sf 12(DR)m t-rom.300 @sf 11(or)m t-bol.300 @sf 11(Backup)m t-rom.300 @sf 44 c 12(the)m 104 1582 p (address)s 10(AllSPFRouters)m 11(should)m 10(be)m 10(used.)m 14(Otherwise,)m 11(the)m 10(address)m 11(AllDRouters)m 10(should)m 10(be)m 11(used.)m 104 1648 p (On)s 10(non-broadcast,)m 10(multi-access)m 9(networks,)m 10(separate)m 10(Link)m 10(State)m 10(Update)m 9(packets)m 10(must)m 10(be)m 10(sent,)m 10(as)m 10(unicasts,)m 9(to)m 10(each)m 104 1698 p (adjacent)s 11(neighbor)m 11(\(i.e.,)m 12(those)m 11(in)m 11(state)m t-bol.300 @sf 11(Exchange)m t-rom.300 @sf 11(or)m 12(greater\).)m 16(The)m 11(destination)m 11(IP)m 12(addresses)m 11(for)m 11(these)m 11(packets)m 11(are)m 104 1748 p (the)s 10(neighbors')m 11(IP)m 10(addresses.)m t-bol.360 @sf 0 1884 p (13.4)s 50(Receiving)m 12(self-originated)m 13(link)m 12(state)m t-rom.300 @sf 0 1980 p (It)s 15(is)m 15 r 97 c 14(common)m 15(occurrence)m 15(to)m 15(receive)m 15 r 97 c 15(self-originated)m 14(link)m 15(state)m 15(advertisement)m 15(via)m 15(the)m 14(\015ooding)m 15(procedure.)m 27(If)m 15(the)m 0 2030 p (advertisement)s 13(received)m 13(is)m 12 r 97 c 13(newer)m 13(instance)m 13(than)m 12(the)m 13(last)m 13(instance)m 13(that)m 13(the)m 12(router)m 13(actually)m 13(originated,)m 13(the)m 13(router)m 13(must)m 0 2080 p (take)s 10(special)m 11(action.)m 0 2147 p (The)s 13(reception)m 13(of)m 13(such)m 12(an)m 13(advertisement)m 13(indicates)m 13(that)m 13(there)m 13(are)m 13(link)m 13(state)m 12(advertisements)m 13(in)m 13(the)m 13(routing)m 13(domain)m 13(that)m 0 2197 p (were)s 8(originated)m 9(before)m 8(the)m 9(last)m 8(time)m 9(the)m 8(router)m 9(was)m 8(restarted.)m 13(In)m 9(this)m 8(case,)m 9(the)m 9(router)m 8(must)m 8(advance)m 9(the)m 8(sequence)m 9(number)m 0 2247 p (for)s 10(the)m 11(advertisement)m 10(one)m 11(past)m 10(the)m 10(received)m 11(sequence)m 10(number)m 44 c 9(and)m 10(originate)m 11 r 97 c 10(new)m 11(instance)m 10(of)m 11(the)m 10(advertisement.)m 0 2315 p (Note)s 11(also)m 10(that)m 11(if)m 10(the)m 11(type)m 10(of)m 11(the)m 10(advertisement)m 11(is)m 10(Summary)m 11(link)m 10(or)m 11(AS)m 10(external)m 11(link,)m 10(the)m 11(router)m 10(may)m 11(no)m 10(longer)m 11(have)m 10(an)m 0 2364 p (\(advertisable\))s 12(route)m 12(to)m 11(the)m 12(destination.)m 18(In)m 12(this)m 12(case,)m 12(the)m 12(advertisement)m 12(should)m 11(be)m 12(\015ushed)m 12(from)m 12(the)m 12(routing)m 11(domain)m 12(by)m 0 2414 p (incrementing)s 10(the)m 11(advertisement')m -1 r 115 c 9(LS)m 10(age)m 11(to)m 10(MaxAge)m 11(and)m 10(re\015ooding)m 10(\(see)m 11(Section)m 10(14.1\).)m 0 2450 p 780 2 ru t-rom.180 @sf 33 2478 p (16)s t-rom.240 @sf 60 2489 p (This)s 8(is)m 9(how)m 8(the)m t-bol.240 @sf 9(Link)m 8(state)m 8 r 114 c (equest)s 8(list)m t-rom.240 @sf 9(is)m 8(emptied,)m 8(which)m 9(eventually)m 8(causes)m 9(the)m 8(neighbor)m 8(state)m 9(to)m 8(transition)m 9(to)m t-bol.240 @sf 8(Full)m t-rom.240 @sf 46 c 11(See)m 9(Section)m 8(10.9)m 9(for)m 8(more)m 0 2529 p (details.)s t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(76])m @eop 75 @bop0 75 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (Summary)s 10(link)m t-rom.300 @sf 21(The)m 11(best)m 11(route)m 11(to)m 11(the)m 12(destination)m 11(described)m 11(by)m 11(the)m 11(summary)m 11(link)m 11(advertisement)m 11(must)m 11(be)m 11(re-examined)m 104 245 p (\(see)s 11(Section)m 12(16.5\).)m 17(If)m 11(this)m 12(destination)m 11(is)m 12(an)m 11(AS)m 12(boundary)m 11(router)m 44 c 10(it)m 12(may)m 11(also)m 12(be)m 11(necessary)m 12(to)m 11(re-examine)m 12(all)m 11(the)m 104 295 p (AS)s 10(external)m 11(link)m 10(advertisements.)m t-bol.300 @sf 0 377 p (AS)s 10(external)m 11(link)m t-rom.300 @sf 21(The)m 16(best)m 17(route)m 17(to)m 17(the)m 16(destination)m 17(described)m 17(by)m 17(the)m 16(AS)m 17(external)m 17(link)m 17(advertisement)m 16(must)m 17(be)m 17(re-)m 104 426 p (examined)s 10(\(see)m 11(Section)m 10(16.6\).)m 0 531 p (Also,)s 8(any)m 7(old)m 7(instance)m 7(of)m 7(the)m 7(advertisement)m 7(must)m 6(be)m 7(removed)m 7(from)m 7(the)m 7(database)m 7(when)m 7(the)m 7(new)m 7(advertisement)m 7(is)m 7(installed.)m 0 581 p (This)s 10(old)m 11(instance)m 10(must)m 11(also)m 10(be)m 10(removed)m 11(from)m 10(all)m 11(neighbors')m t-bol.300 @sf 10(Link)m 11(state)m 10 r 114 c (etransmission)s 10(lists)m t-rom.300 @sf 10(\(see)m 10(Section)m 11(10\).)m t-bol.360 @sf 0 716 p (13.3)s 50(Next)m 12(step)m 13(in)m 12(the)m 13(\015ooding)m 12(pr)m (ocedur)s 101 c t-rom.300 @sf 0 810 p (When)s 10 r 97 c 11(new)m 10(\(and)m 10(more)m 11(recent\))m 10(advertisement)m 10(has)m 11(been)m 10(received,)m 11(it)m 10(must)m 10(be)m 11(\015ooded)m 10(out)m 10(some)m 11(set)m 10(of)m 10(the)m 11(router)m 1 r 39 c -1 r 115 c 9(inter-)m 0 860 p (faces.)s 14(This)m 9(section)m 10(describes)m 10(the)m 9(second)m 10(part)m 10(of)m 9(\015ooding)m 10(procedure)m 10(\(the)m 10(\014rst)m 9(part)m 10(being)m 10(the)m 9(processing)m 10(that)m 10(occurred)m 9(in)m 0 910 p (Section)s 8(13\),)m 9(namely)m -2 r 44 c 8(selecting)m 8(the)m 8(outgoing)m 9(interfaces)m 8(and)m 8(adding)m 8(the)m 8(advertisement)m 9(to)m 8(the)m 8(appropriate)m 8(neighbors')m t-bol.300 @sf 9(Link)m 0 960 p (state)s 11 r 114 c (etransmission)s 11(lists)m t-rom.300 @sf 46 c 17(Also)m 11(included)m 12(in)m 11(this)m 12(part)m 11(of)m 12(the)m 11(\015ooding)m 11(procedure)m 12(is)m 11(the)m 12(maintenance)m 11(of)m 12(the)m 11(neighbors')m t-bol.300 @sf 0 1010 p (Link)s 10(state)m 11 r 114 c (equest)s 9(lists)m t-rom.300 @sf 46 c 0 1076 p (This)s 14(section)m 15(is)m 14(equally)m 14(applicable)m 15(to)m 14(the)m 14(\015ooding)m 15(of)m 14(an)m 14(advertisement)m 15(that)m 14(the)m 14(router)m 15(itself)m 14(has)m 14(just)m 15(originated)m 14(\(see)m 0 1126 p (Section)s 8(12.4\).)m 13(For)m 7(these)m 8(advertisements,)m 8(this)m 8(section)m 7(provides)m 8(the)m 8(entirety)m 7(of)m 8(the)m 7(\015ooding)m 8(procedure)m 8(\(i.e.,)m 8(the)m 8(processing)m 0 1176 p (of)s 15(Section)m 14(13)m 15(is)m 14(not)m 15(performed,)m 16(since,)m 15(for)m 15(example,)m 16(the)m 14(advertisement)m 15(has)m 15(not)m 14(been)m 15(received)m 15(from)m 14 r 97 c 15(neighbor)m 14(and)m 0 1226 p (therefore)s 10(does)m 11(not)m 10(need)m 11(to)m 10(be)m 10(acknowledged\).)m 0 1292 p (Depending)s 14(upon)m 14(the)m 14(advertisement')m -1 r 115 c 13(LS)m 14(type,)m 14(the)m 14(advertisement)m 14(can)m 14(be)m 14(\015ooded)m 14(out)m 14(only)m 14(certain)m 14(interfaces.)m 25(These)m 0 1342 p (interfaces,)s 10(de\014ned)m 11(by)m 10(the)m 11(following,)m 10(are)m 10(called)m 11(the)m t-bol.300 @sf 10(eligible)m 11(interfaces)m t-rom.300 @sf 58 c t-bol.300 @sf 0 1447 p (AS)s 10(external)m 11(links)m 10(\(LS)m 11 r 84 c -2(ype)m cmr10.300 @sf 9 r 61 c t-bol.300 @sf 10(5\))m t-rom.300 @sf 21(AS)m 11(external)m 10(links)m 10(are)m 11(\015ooded)m 10(throughout)m 11(the)m 10(entire)m 10(AS,)m 11(with)m 10(the)m 10(exception)m 11(of)m 10(stub)m 104 1497 p (areas)s 11(\(see)m 11(Section)m 11(3.6\).)m 15(The)m t-bol.300 @sf 11(eligible)m 11(interfaces)m t-rom.300 @sf 11(are)m 11(all)m 11(the)m 11(router)m 1 r 39 c -1 r 115 c 10(interfaces,)m 11(excluding)m 11(virtual)m 11(links)m 11(and)m 11(those)m 104 1546 p (interfaces)s 10(attaching)m 11(to)m 10(stub)m 10(areas.)m t-bol.300 @sf 0 1628 p (All)s 10(other)m 11(types)m t-rom.300 @sf 21(All)m 11(other)m 10(types)m 11(are)m 11(speci\014c)m 11(to)m 11 r 97 c 11(single)m 11(area)m 11(\(Area)m 11(A\).)m 11(The)m t-bol.300 @sf 11(eligible)m 10(interfaces)m t-rom.300 @sf 11(are)m 11(all)m 11(those)m 11(interfaces)m 104 1678 p (attaching)s 10(to)m 11(the)m 10(Area)m 10(A.)m 11(If)m 10(Area)m 11 r 65 c 10(is)m 11(the)m 10(backbone,)m 10(this)m 11(includes)m 10(all)m 11(the)m 10(virtual)m 10(links.)m 0 1783 p (Link)s 8(state)m 8(databases)m 8(must)m 9(remain)m 8(synchronized)m 8(over)m 8(all)m 8(adjacencies)m 8(associated)m 9(with)m 8(the)m 8(above)m t-bol.300 @sf 8(eligible)m 8(interfaces)m t-rom.300 @sf 46 c 13(This)m 0 1833 p (is)s 9(accomplished)m 9(by)m 9(executing)m 9(the)m 8(following)m 9(steps)m 9(on)m 9(each)m 9(eligible)m 9(interface.)m 13(It)m 9(should)m 9(be)m 9(noted)m 9(that)m 9(this)m 9(procedure)m 8(may)m 0 1883 p (decide)s 11(not)m 11(to)m 12(\015ood)m 11 r 97 c 11(link)m 11(state)m 12(advertisement)m 11(out)m 11 r 97 c 11(particular)m 11(interface,)m 12(if)m 11(there)m 11(is)m 12 r 97 c 11(high)m 11(probability)m 11(that)m 11(the)m 12(attached)m 0 1933 p (neighbors)s 9(have)m 8(already)m 9(received)m 8(the)m 9(advertisement.)m 13(However)m -1 r 44 c 8(in)m 8(these)m 9(cases)m 8(the)m 9(\015ooding)m 8(procedure)m 9(must)m 8(be)m 9(absolutely)m 0 1982 p (sure)s 9(that)m 10(the)m 9(neighbors)m 9(eventually)m 9(do)m 10(receive)m 9(the)m 9(advertisement,)m 10(so)m 9(the)m 9(advertisement)m 9(is)m 10(still)m 9(added)m 9(to)m 9(each)m 10(adjacency')m -2 r 115 c t-bol.300 @sf 0 2032 p (Link)s 10(state)m 11 r 114 c (etransmission)s 9(list)m t-rom.300 @sf 46 c 14(For)m 11(each)m 10(eligible)m 11(interface:)m 52 2137 p (1.)s 21(Each)m 10(of)m 11(the)m 11(neighbors)m 11(attached)m 11(to)m 11(this)m 11(interface)m 11(are)m 11(examined,)m 11(to)m 11(determine)m 11(whether)m 11(they)m 11(must)m 10(receive)m 11(the)m 11(new)m 104 2187 p (advertisement.)s 14(The)m 10(following)m 10(steps)m 11(are)m 10(executed)m 11(for)m 10(each)m 11(neighbor:)m 128 2269 p (\(a\))s 21(If)m 9(the)m 10(neighbor)m 9(is)m 10(in)m 9 r 97 c 10(lesser)m 9(state)m 10(than)m t-bol.300 @sf 9(Exchange)m t-rom.300 @sf 44 c 10(it)m 10(does)m 9(not)m 10(participate)m 9(in)m 10(\015ooding,)m 9(and)m 10(the)m 9(next)m 10(neighbor)m 195 2319 p (should)s 11(be)m 10(examined.)m 126 2384 p (\(b\))s 21(Else,)m 14(if)m 13(the)m 14(adjacency)m 13(is)m 14(not)m 14(yet)m 13(full)m 14(\(neighbor)m 13(state)m 14(is)m t-bol.300 @sf 13(Exchange)m t-rom.300 @sf 14(or)m t-bol.300 @sf 13(Loading)m t-rom.300 @sf (\),)s 15(examine)m 13(the)m t-bol.300 @sf 14(Link)m 13(state)m 195 2434 p 114 c (equest)s 13(list)m t-rom.300 @sf 13(associated)m 13(with)m 13(this)m 13(adjacency)m -1 r 46 c 21(If)m 13(there)m 13(is)m 13(an)m 14(instance)m 13(of)m 13(the)m 13(new)m 13(advertisement)m 13(on)m 14(the)m 13(list,)m 195 2483 p (it)s 14(indicates)m 13(that)m 14(the)m 14(neighboring)m 13(router)m 14(has)m 14(an)m 13(instance)m 14(of)m 14(the)m 14(advertisement)m 13(already)m -2 r 46 c 23(Compare)m 14(the)m 13(new)m 195 2533 p (advertisement)s 11(to)m 10(the)m 10(neighbor)m 2 r 39 c -1 r 115 c 9(copy:)m cmsy10.300 @sf 231 2599 p 15 c t-rom.300 @sf 21(If)m 10(the)m 11(new)m 10(advertisement)m 11(is)m 10(less)m 10(recent,)m 11(then)m 10(try)m 11(the)m 10(next)m 11(neighbor)m -2 r 46 c 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(75])m @eop 74 @bop0 74 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 128 195 p (\(a\))s 21(If)m 11(the)m 11(advertisement)m 11(is)m 11(listed)m 11(in)m 11(the)m t-bol.300 @sf 11(Link)m 11(state)m 11 r 114 c (etransmission)s 10(list)m t-rom.300 @sf 11(for)m 11(the)m 11(receiving)m 11(adjacency)m -1 r 44 c 10(the)m 11(router)m 195 245 p (itself)s 14(is)m 15(expecting)m 14(an)m 14(acknowledgment)m 14(for)m 14(this)m 15(advertisement.)m 25(The)m 14(router)m 14(should)m 15(treat)m 14(the)m 14(received)m 14(ad-)m 195 295 p (vertisement)s 12(as)m 12(an)m 11(acknowledgment,)m 12(by)m 12(removing)m 12(the)m 12(advertisement)m 11(from)m 12(the)m t-bol.300 @sf 12(Link)m 12(state)m 11 r 114 c (etransmission)s 195 345 p (list)s t-rom.300 @sf 46 c 23(This)m 14(is)m 14(termed)m 13(an)m 14(\\implied)m 13(acknowledgment".)m 24(Its)m 13(occurrence)m 14(should)m 13(be)m 14(noted)m 14(for)m 13(later)m 14(use)m 13(by)m 14(the)m 195 394 p (acknowledgment)s 11(process)m 10(\(Section)m 10(13.5\).)m 126 454 p (\(b\))s 21(Possibly)m 11(acknowledge)m 12(the)m 12(receipt)m 12(of)m 11(the)m 12(advertisement)m 12(by)m 12(sending)m 12 r 97 c 11(Link)m 12(State)m 12(Acknowledgment)m 12(packet)m 195 504 p (back)s 11(out)m 10(the)m 10(receiving)m 11(interface.)m 14(This)m 10(is)m 10(explained)m 11(below)m 10(in)m 11(Section)m 10(13.5.)m 52 580 p (8.)s 21(Else,)m 8(the)m 7(database)m 7(copy)m 8(is)m 7(more)m 8(recent.)m 13(Note)m 7(an)m 7(unusual)m 8(event)m 7(to)m 8(network)m 7(management,)m 8(discard)m 8(the)m 7(advertisement)m 104 630 p (and)s 10(process)m 11(the)m 10(next)m 10(link)m 11(state)m 10(advertisement)m 11(contained)m 10(in)m 11(the)m 10(packet.)m t-bol.360 @sf 0 756 p (13.1)s 50(Determining)m 12(which)m 13(link)m 12(state)m 13(is)m 12(newer)m t-rom.300 @sf 0 844 p (When)s 12 r 97 c 12(router)m 12(encounters)m 13(two)m 12(instances)m 12(of)m 12 r 97 c 12(link)m 12(state)m 12(advertisement,)m 13(it)m 12(must)m 12(determine)m 12(which)m 12(is)m 13(more)m 12(recent.)m 19(This)m 0 894 p (occurred)s 12(above)m 11(when)m 12(comparing)m 11 r 97 c 12(received)m 11(advertisement)m 12(to)m 11(the)m 12(database)m 11(copy)m -1 r 46 c 16(This)m 12(comparison)m 11(must)m 12(also)m 11(be)m 12(done)m 0 944 p (during)s 10(the)m 11(database)m 10(exchange)m 11(procedure)m 10(which)m 10(occurs)m 11(during)m 10(adjacency)m 11(bring-up.)m 0 1004 p 65 c 10(link)m 10(state)m 10(advertisement)m 10(is)m 10(identi\014ed)m 10(by)m 10(its)m 10(LS)m 10(type,)m 11(Link)m 10(State)m 10(ID)m 10(and)m 10(Advertising)m 10(Router)m -2 r 46 c 13(For)m 10(two)m 10(instances)m 10(of)m 10(the)m 0 1054 p (same)s 11(advertisement,)m 11(the)m 11(LS)m 10(sequence)m 11(number)m 44 c 10(LS)m 10(age,)m 11(and)m 11(LS)m 11(checksum)m 11(\014elds)m 11(are)m 11(used)m 10(to)m 11(determine)m 11(which)m 11(instance)m 0 1104 p (is)s 10(more)m 11(recent:)m cmsy10.300 @sf 62 1189 p 15 c t-rom.300 @sf 21(The)m 9(advertisement)m 10(having)m 9(the)m 10(newer)m 9(LS)m 10(sequence)m 9(number)m 10(is)m 9(more)m 10(recent.)m 13(See)m 10(Section)m 9(12.1.6)m 10(for)m 9(an)m 10(explanation)m 104 1239 p (of)s 10(the)m 11(LS)m 10(sequence)m 10(number)m 11(space.)m 14(If)m 10(both)m 11(instances)m 10(have)m 10(the)m 11(same)m 10(LS)m 11(sequence)m 10(number)m -1 r 44 c 10(then:)m cmsy10.300 @sf 62 1315 p 15 c t-rom.300 @sf 21(If)m 16(the)m 15(two)m 16(instances)m 15(have)m 16(dif)m (ferent)s 14(LS)m 16(checksums,)m 17(then)m 15(the)m 16(instance)m 15(having)m 16(the)m 15(lar)m (ger)s 15(LS)m 16(checksum)m 15(\(when)m 104 1365 p (considered)s 10(as)m 11 r 97 c 10(16-bit)m 10(unsigned)m 11(integer\))m 10(is)m 11(considered)m 10(more)m 11(recent.)m cmsy10.300 @sf 62 1441 p 15 c t-rom.300 @sf 21(Else,)m 9(if)m 9(only)m 9(one)m 9(of)m 8(the)m 9(instances)m 9(is)m 9(of)m 9(age)m 8(MaxAge,)m 10(the)m 8(instance)m 9(of)m 9(age)m 9(MaxAge)m 9(is)m 9(considered)m 8(to)m 9(be)m 9(more)m 9(recent.)m cmsy10.300 @sf 62 1517 p 15 c t-rom.300 @sf 21(Else,)m 9(if)m 9(the)m 9(ages)m 8(of)m 9(the)m 9(two)m 9(instances)m 8(dif)m (fer)s 8(by)m 9(more)m 9(than)m 9(MaxAgeDif)m (f,)s 8(the)m 9(instance)m 9(having)m 8(the)m 9(smaller)m 9(\(younger\))m 104 1567 p (age)s 10(is)m 11(considered)m 10(to)m 10(be)m 11(more)m 10(recent.)m cmsy10.300 @sf 62 1643 p 15 c t-rom.300 @sf 21(Else,)m 10(the)m 11(two)m 10(instances)m 11(are)m 10(considered)m 11(to)m 10(be)m 10(identical.)m t-bol.360 @sf 0 1769 p (13.2)s 50(Installing)m 12(link)m 13(state)m 12(advertisements)m 13(in)m 12(the)m 13(database)m t-rom.300 @sf 0 1858 p (Installing)s 14 r 97 c 13(new)m 14(link)m 14(state)m 14(advertisement)m 13(in)m 14(the)m 14(database,)m 14(either)m 14(as)m 14(the)m 14(result)m 13(of)m 14(\015ooding)m 14(or)m 13 r 97 c 14(newly)m 14(self)m 14(originated)m 0 1908 p (advertisement,)s 10(may)m 9(cause)m 10(the)m 9(routing)m 10(table)m 9(structure)m 10(to)m 9(be)m 10(recalculated.)m 13(The)m 10(contents)m 9(of)m 10(the)m 9(new)m 10(advertisement)m 9(should)m 0 1957 p (be)s 11(compared)m 11(to)m 12(the)m 11(old)m 11(instance,)m 11(if)m 12(present.)m 16(If)m 11(there)m 11(is)m 11(no)m 12(dif)m (ference,)s 10(there)m 11(is)m 12(no)m 11(need)m 11(to)m 11(recalculate)m 11(the)m 12(routing)m 11(table.)m 0 2007 p (\(Note)s 11(that)m 12(even)m 11(if)m 12(the)m 11(contents)m 11(are)m 12(the)m 11(same,)m 12(the)m 11(LS)m 12(checksum)m 11(will)m 12(probably)m 11(be)m 11(dif)m (ferent,)s 11(since)m 12(the)m 11(checksum)m 12(covers)m 0 2057 p (the)s 10(LS)m 11(sequence)m 10(number)m -1(.\))m 0 2117 p (If)s 11(the)m 11(contents)m 10(are)m 11(dif)m (ferent,)s 10(the)m 11(following)m 11(pieces)m 11(of)m 11(the)m 11(routing)m 10(table)m 11(must)m 11(be)m 11(recalculated,)m 11(depending)m 11(on)m 10(the)m 11(LS)m 11(type)m 0 2167 p (\014eld:)s t-bol.300 @sf 0 2252 p (Router)s 10(links,)m 11(network)m 10(links)m t-rom.300 @sf 21(The)m 8(entire)m 9(routing)m 8(table)m 8(must)m 8(be)m 9(recalculated,)m 8(starting)m 9(with)m 8(the)m 8(shortest)m 8(path)m 9(calculations)m 104 2302 p (for)s 14(each)m 15(area)m 15(\(not)m 14(just)m 15(the)m 14(area)m 15(whose)m 15(topological)m 14(database)m 15(has)m 14(changed\).)m 27(The)m 14(reason)m 15(that)m 14(the)m 15(shortest)m 15(path)m 104 2352 p (calculation)s 10(cannot)m 10(be)m 10(restricted)m 10(to)m 10(the)m 10(single)m 9(changed)m 10(area)m 10(has)m 10(to)m 10(do)m 10(with)m 10(the)m 10(fact)m 10(that)m 10(AS)m 10(boundary)m 10(routers)m 10(may)m 104 2401 p (belong)s 10(to)m 11(multiple)m 10(areas.)m 14 r 65 c 11(change)m 10(in)m 11(the)m 10(area)m 11(currently)m 10(providing)m 11(the)m 10(best)m 11(route)m 10(may)m 11(force)m 10(the)m 11(router)m 10(to)m 11(use)m 10(an)m 104 2451 p (intra-area)s 10(route)m 11(provided)m 10(by)m 10 r 97 c 11(dif)m (ferent)s 10(area.)m t-rom.210 @sf 856 2436 p (15)s 0 2480 p 780 2 ru t-rom.180 @sf 33 2508 p (15)s t-rom.240 @sf 60 2520 p (By)s 10(keeping)m 11(more)m 10(information)m 11(in)m 10(the)m 10(routing)m 11(table,)m 11(it)m 10(is)m 10(possible)m 11(for)m 10(an)m 10(implementation)m 11(to)m 10(recalculate)m 11(the)m 10(shortest)m 10(path)m 11(tree)m 10(only)m 11(for)m 10 r 97 c 10(single)m 0 2559 p (area.)s 16(In)m 11(fact,)m 10(there)m 10(are)m 10(incremental)m 10(algorithms)m 11(that)m 10(allow)m 10(an)m 10(implementation)m 10(to)m 10(recalculate)m 10(only)m 10 r 97 c 10(portion)m 10(of)m 11(the)m 10(shortest)m 10(path)m 10(tree)m 10([BBN].)m 10(These)m 0 2599 p (algorithms)s 8(are)m 9(beyond)m 8(the)m 8(scope)m 9(of)m 8(this)m 8(speci\014cation.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(74])m @eop 73 @bop0 73 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 52 195 p (2.)s 21(Examine)m 11(the)m 12(link)m 12(state)m 11(advertisement')m -1 r 115 c 11(LS)m 11(type.)m 18(If)m 12(the)m 12(LS)m 11(type)m 12(is)m 12(unknown,)m 12(discard)m 11(the)m 12(advertisement)m 12(and)m 11(get)m 104 245 p (the)s 10(next)m 11(one)m 10(from)m 10(the)m 11(Link)m 10(State)m 11(Update)m 10(Packet.)m 14(This)m 10(speci\014cation)m 11(de\014nes)m 10(LS)m 11 r 84 c -2(ypes)m 9(1-5)m 11(\(see)m 10(Section)m 10(4.3\).)m 52 328 p (3.)s 21(Else)m 8(if)m 9(this)m 9(is)m 9 r 97 c 8(AS)m 9(external)m 9(advertisement)m 9(\(LS)m 9(type)m cmr10.300 @sf 8 r 61 c t-rom.300 @sf 9(5\),)m 9(and)m 9(the)m 9(area)m 9(has)m 8(been)m 9(con\014gured)m 9(as)m 9 r 97 c 9(stub)m 8(area,)m 10(discard)m 104 378 p (the)s 11(advertisement)m 11(and)m 11(get)m 10(the)m 11(next)m 11(one)m 11(from)m 11(the)m 11(Link)m 11(State)m 11(Update)m 11(Packet.)m 15(AS)m 11(external)m 11(advertisements)m 11(are)m 11(not)m 104 428 p (\015ooded)s 10(into/throughout)m 11(stub)m 10(areas)m 10(\(see)m 11(Section)m 10(3.6\).)m 52 511 p (4.)s 21(Else)m 12(if)m 12(the)m 12(advertisement')m -1 r 115 c 11(age)m 12(is)m 13(equal)m 12(to)m 12(MaxAge,)m 13(and)m 12(there)m 12(is)m 12(currently)m 13(no)m 12(instance)m 12(of)m 12(the)m 12(advertisement)m 13(in)m 104 560 p (the)s 10(router)m 2 r 39 c -2 r 115 c 10(link)m 10(state)m 11(database,)m 10(then)m 11(take)m 10(the)m 10(following)m 11(actions:)m 128 643 p (\(a\))s 21(Acknowledge)m 12(the)m 12(receipt)m 13(of)m 12(the)m 12(advertisement)m 13(by)m 12(sending)m 12 r 97 c 12(Link)m 13(State)m 12(Acknowledgment)m 12(packet)m 12(back)m 13(to)m 195 693 p (the)s 11(sending)m 10(neighbor)m 10(\(see)m 11(Section)m 10(13.5\).)m 126 760 p (\(b\))s 21(Pur)m (ge)s 7(all)m 9(outstanding)m 8(requests)m 9(for)m 9(equal)m 8(or)m 9(previous)m 8(instances)m 9(of)m 9(the)m 8(advertisement)m 9(from)m 8(the)m 9(sending)m 8(neigh-)m 195 809 p (bor)s 2 r 39 c -2 r 115 c t-bol.300 @sf 10(Link)m 10(State)m 11(Request)m 10(list)m t-rom.300 @sf 10(\(see)m 11(Section)m 10(10\).)m 128 876 p (\(c\))s 21(If)m 11(the)m 12(sending)m 11(neighbor)m 11(is)m 12(in)m 11(state)m t-bol.300 @sf 11(Exchange)m t-rom.300 @sf 12(or)m 11(in)m 11(state)m t-bol.300 @sf 12(Loading)m t-rom.300 @sf 44 c 11(then)m 12(install)m 11(the)m 12(MaxAge)m 11(advertisement)m 195 926 p (in)s 12(the)m 12(link)m 12(state)m 11(database.)m 18(Otherwise,)m 13(simply)m 11(discard)m 12(the)m 12(advertisement.)m 18(In)m 12(either)m 12(case,)m 12(examine)m 12(the)m 11(next)m 195 975 p (advertisement)s 11(\(if)m 10(any\))m 10(listed)m 11(in)m 10(the)m 11(Link)m 10(State)m 10(Update)m 11(packet.)m 52 1059 p (5.)s 21(Otherwise,)m 8(\014nd)m 8(the)m 9(instance)m 8(of)m 8(this)m 9(advertisement)m 8(that)m 8(is)m 8(currently)m 9(contained)m 8(in)m 8(the)m 8(router)m 2 r 39 c -1 r 115 c 7(link)m 8(state)m 8(database.)m 14(If)m 104 1108 p (there)s 9(is)m 10(no)m 10(database)m 9(copy)m -1 r 44 c 8(or)m 10(the)m 10(received)m 9(advertisement)m 10(is)m 10(more)m 9(recent)m 10(than)m 9(the)m 10(database)m 10(copy)m 9(\(see)m 10(Section)m 10(13.1)m 104 1158 p (below)s 10(for)m 11(the)m 10(determination)m 10(of)m 11(which)m 10(advertisement)m 11(is)m 10(more)m 11(recent\))m 10(the)m 10(following)m 11(steps)m 10(must)m 11(be)m 10(performed:)m 128 1241 p (\(a\))s 21(If)m 9(there)m 10(is)m 9(already)m 10 r 97 c 9(database)m 10(copy)m -2 r 44 c 9(and)m 9(if)m 10(the)m 9(database)m 10(copy)m 10(was)m 9(installed)m 10(less)m 9(than)m 10(MinLSInterval)m 9(seconds)m 195 1291 p (ago,)s 15(discard)m 13(the)m 14(new)m 14(advertisement)m 14(\(without)m 14(acknowledging)m 13(it\))m 14(and)m 14(examine)m 14(the)m 14(next)m 13(advertisement)m 14(\(if)m 195 1341 p (any\))s 11(listed)m 10(in)m 10(the)m 11(Link)m 10(State)m 11(Update)m 10(packet.)m 126 1407 p (\(b\))s 21(Otherwise)m 12(immediately)m 12(\015ood)m 13(the)m 12(new)m 12(advertisement)m 13(out)m 12(some)m 12(subset)m 13(of)m 12(the)m 12(router)m 2 r 39 c -2 r 115 c 12(interfaces)m 12(\(see)m 12(Sec-)m 195 1457 p (tion)s 8(13.3\).)m 13(In)m 8(some)m 7(cases)m 8(\(e.g.,)m 8(the)m 8(state)m 8(of)m 8(the)m 7(receiving)m 8(interface)m 8(is)m t-bol.300 @sf 8(DR)m t-rom.300 @sf 7(and)m 8(the)m 8(advertisement)m 8(was)m 7(received)m 195 1507 p (from)s 8 r 97 c 9(router)m 8(other)m 8(than)m 8(the)m 9(Backup)m 8(DR\))m 8(the)m 9(advertisement)m 8(will)m 8(be)m 8(\015ooded)m 9(back)m 8(out)m 8(the)m 9(receiving)m 8(interface.)m 195 1557 p (This)s 11(occurrence)m 10(should)m 10(be)m 11(noted)m 10(for)m 11(later)m 10(use)m 10(by)m 11(the)m 10(acknowledgment)m 11(process)m 10(\(Section)m 11(13.5\).)m 128 1623 p (\(c\))s 21(Remove)m 10(the)m 11(current)m 10(database)m 11(copy)m 10(from)m 10(all)m 11(neighbors')m t-bol.300 @sf 10(Link)m 11(state)m 10 r 114 c (etransmission)s 10(lists)m t-rom.300 @sf 46 c 126 1689 p (\(d\))s 21(Install)m 12(the)m 13(new)m 12(advertisement)m 13(in)m 12(the)m 13(link)m 12(state)m 13(database)m 13(\(replacing)m 12(the)m 13(current)m 12(database)m 13(copy\).)m 20(This)m 13(may)m 195 1739 p (cause)s 13(the)m 14(routing)m 13(table)m 13(calculation)m 13(to)m 13(be)m 14(scheduled.)m 22(In)m 13(addition,)m 14(timestamp)m 13(the)m 14(new)m 13(advertisement)m 13(with)m 195 1789 p (the)s 13(current)m 13(time)m 13(\(i.e.,)m 14(the)m 13(time)m 13(it)m 13(was)m 13(received\).)m 22(The)m 13(\015ooding)m 13(procedure)m 13(cannot)m 13(overwrite)m 13(the)m 13(newly)m 13(in-)m 195 1839 p (stalled)s 9(advertisement)m 10(until)m 9(MinLSInterval)m 9(seconds)m 9(have)m 9(elapsed.)m 14(The)m 9(advertisement)m 9(installation)m 10(process)m 9(is)m 195 1889 p (discussed)s 11(further)m 10(in)m 10(Section)m 11(13.2.)m 128 1955 p (\(e\))s 21(Possibly)m 12(acknowledge)m 11(the)m 12(receipt)m 12(of)m 12(the)m 12(advertisement)m 11(by)m 12(sending)m 12 r 97 c 12(Link)m 12(State)m 11(Acknowledgment)m 12(packet)m 195 2005 p (back)s 11(out)m 10(the)m 10(receiving)m 11(interface.)m 14(This)m 10(is)m 10(explained)m 11(below)m 10(in)m 11(Section)m 10(13.5.)m 133 2071 p (\(f\))s 20(If)m 14(this)m 13(new)m 14(link)m 13(state)m 13(advertisement)m 14(indicates)m 13(that)m 14(it)m 13(was)m 13(originated)m 14(by)m 13(this)m 14(router)m 13(itself,)m 14(the)m 14(router)m 13(must)m 195 2121 p (advance)s 14(the)m 13(advertisement')m -1 r 115 c 12(link)m 13(state)m 14(sequence)m 13(number)m 44 c 13(and)m 13(issue)m 14 r 97 c 13(new)m 14(instance)m 13(of)m 13(the)m 14(advertisement)m 195 2171 p (\(see)s 11(Section)m 10(13.4\).)m 52 2254 p (6.)s 21(Else,)m 14(if)m 14(there)m 13(is)m 14(an)m 14(instance)m 14(of)m 13(the)m 14(advertisement)m 14(on)m 13(the)m 14(sending)m 14(neighbor)m 1 r 39 c -1 r 115 c t-bol.300 @sf 13(Link)m 14(state)m 13 r 114 c (equest)s 13(list)m t-rom.300 @sf 44 c 15(an)m 13(error)m 104 2304 p (has)s 14(occurred)m 15(in)m 15(the)m 14(Database)m 15(Description)m 15(process.)m 27(In)m 14(this)m 15(case,)m 16(restart)m 14(the)m 15(Database)m 15(Description)m 14(process)m 15(by)m 104 2354 p (generating)s 11(the)m 11(neighbor)m 11(event)m t-bol.300 @sf 12(BadLSReq)m t-rom.300 @sf 11(for)m 11(the)m 11(sending)m 11(neighbor)m 12(and)m 11(stop)m 11(processing)m 11(the)m 12(Link)m 11(State)m 11(Update)m 104 2403 p (packet.)s 52 2486 p (7.)s 21(Else,)m 12(if)m 13(the)m 12(received)m 12(advertisement)m 12(is)m 13(the)m 12(same)m 12(instance)m 12(as)m 13(the)m 12(database)m 12(copy)m 12(\(i.e.,)m 13(neither)m 12(one)m 13(is)m 12(more)m 12(recent\))m 104 2536 p (the)s 10(following)m 11(two)m 10(steps)m 10(should)m 11(be)m 10(performed:)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(73])m @eop 72 @bop0 /Courier /c-med.270 ReEncodeForTeX /c-med.270 /c-med.270 37.499947 TeXPSmakefont def 72 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p 65 c t-bol.300 @sf 10(forwarding)m 9(addr)m (ess)s t-rom.300 @sf 9(can)m 9(also)m 10(be)m 10(speci\014ed)m 9(for)m 10(the)m 9(default)m 10(route.)m 13(For)m 10(example,)m 10(in)m 9(\014gure)m 10(16)m 9 r 82 c -1 r 84 c -4 r 65 c 9(may)m 10(want)m 9(to)m 10(specify)m 0 245 p (that)s 12(all)m 12(externally-destined)m 12(packets)m 12(should)m 12(by)m 12(default)m 12(be)m 12(forwarded)m 12(to)m 12(its)m 12(EGP)m 12(peer)m 12 r 82 c -1(TX.)m 17(The)m 12(resulting)m 12(AS)m 12(external)m 0 295 p (link)s 10(advertisement)m 11(is)m 10(pictured)m 11(below)m -2 r 46 c 13(Note)m 10(that)m 11(the)m 10(Link)m 11(State)m 10(ID)m 10(is)m 11(set)m 10(to)m 11(DefaultDestination.)m c-med.270 @sf 157 400 p 59 c 23(Default)m 22(route,)m 23(originated)m 22(by)m 23(router)m 22(RTA)m 157 445 p 59 c 23(Packets)m 22(forwarded)m 23(through)m 22(RTX)m 157 537 p (LS)s 23(age)m 22 r 61 c 23 r 48 c 405(;always)m 22(true)m 23(on)m 22(origination)m 157 582 p (Options)s 23 r 61 c 22(\(T-bit|E-bit\))m 90(;TOS-capable)m 157 628 p (LS)s 23(type)m 22 r 61 c 23 r 53 c 382(;indicates)m 23(AS)m 22(external)m 23(link)m 157 674 p (Link)s 23(State)m 22(ID)m 23 r 61 c 22(DefaultDestination)m 45 r 59 c 23(default)m 22(route)m 157 719 p (Advertising)s 23(Router)m 22 r 61 c 23(Router)m 22(RTA's)m 23(ID)m 337 765 p (bit)s 23 r 69 c 22 r 61 c 23 r 49 c 247(;Type)m 23 r 50 c 22(metric)m 337 811 p (TOS)s 23 r 61 c 22 r 48 c 337 856 p (metric)s 23 r 61 c 22 r 49 c 337 902 p (Forwarding)s 23(address)m 22 r 61 c 23(RTX's)m 22(IP)m 23(address)m t-rom.300 @sf 0 1011 p (In)s 8(\014gure)m 8(16,)m 9(suppose)m 8(instead)m 8(that)m 9(both)m 8 r 82 c -2 r 84 c -3 r 65 c 7(and)m 8 r 82 c -1(TB)m 7(exchange)m 8(EGP)m 8(information)m 9(with)m 8 r 82 c -2(TX.)m 12(In)m 9(this)m 8(case,)m 8 r 82 c -1 r 84 c -3 r 65 c 7(and)m 8 r 82 c -2(TB)m 0 1061 p (would)s 9(originate)m 9(the)m 9(same)m 9(set)m 10(of)m 9(external)m 9(advertisements.)m 13(These)m 9(advertisements,)m 10(if)m 9(they)m 9(specify)m 9(the)m 9(same)m 9(metric,)m 10(would)m 0 1111 p (be)s 12(functionally)m 13(equivalent)m 12(since)m 12(they)m 13(would)m 12(specify)m 13(the)m 12(same)m 12(destination)m 13(and)m 12(forwarding)m 12(address)m 13(\(R)m -2(TX\).)m 12(This)m 12(leads)m 0 1161 p (to)s 12 r 97 c 11(clear)m 12(duplication)m 12(of)m 11(ef)m (fort.)s 17(If)m 12(only)m 12(one)m 11(of)m 12 r 82 c -2 r 84 c -3 r 65 c 11(or)m 11 r 82 c -1(TB)m 10(originated)m 12(the)m 12(set)m 11(of)m 12(external)m 12(advertisements,)m 12(the)m 11(routing)m 0 1210 p (would)s 12(remain)m 11(the)m 12(same,)m 12(and)m 12(the)m 11(size)m 12(of)m 12(the)m 12(link)m 11(state)m 12(database)m 12(would)m 11(decrease.)m 18(However)m -1 r 44 c 11(it)m 12(must)m 12(be)m 11(unambiguously)m 0 1260 p (de\014ned)s 11(as)m 11(to)m 11(which)m 11(router)m 11(originates)m 11(the)m 11(advertisements)m 11(\(otherwise)m 11(neither)m 11(may)m -1 r 44 c 10(or)m 11(the)m 11(identity)m 11(of)m 11(the)m 11(originator)m 11(may)m 0 1310 p (oscillate\).)s 15(The)m 11(following)m 11(rule)m 11(is)m 11(thereby)m 11(established:)m t-ita.300 @sf 15(if)m 10(two)m 11 r 114 c (outers,)s 10(both)m 11 r 114 c -1(eachable)m 10(fr)m -1(om)m 10(one)m 11(another)m -3 r 44 c 10(originate)m 11(func-)m 0 1360 p (tionally)s 9(equivalent)m 8(AS)m 9(external)m 9(advertisements)m 8(\(i.e.,)m 9(same)m 9(destination,)m 9(cost)m 9(and)m 9(non-zer)m -1 r 111 c 8(forwar)m -1(ding)m 8(addr)m -1(ess\),)m 8(then)m 9(the)m 0 1410 p (advertisement)s 9(originated)m 9(by)m 9(the)m 9 r 114 c (outer)s 8(having)m 9(the)m 9(highest)m 9(OSPF)m 9(Router)m 9(ID)m 10(is)m 9(used)m t-rom.300 @sf 46 c 13(The)m 9(router)m 9(having)m 9(the)m 10(lower)m 9(OSPF)m 0 1460 p (Router)s 10(ID)m 11(can)m 10(then)m 11(\015ush)m 10(its)m 10(advertisement.)m 14(Flushing)m 11 r 97 c 10(link)m 11(state)m 10(advertisement)m 10(is)m 11(discussed)m 10(in)m 11(Section)m 10(14.1.)m t-bol.420 @sf 0 1617 p (13)s 58(The)m 15(Flooding)m 14(Pr)m (ocedur)s -1 r 101 c t-rom.300 @sf 0 1728 p (Link)s 10(State)m 10(Update)m 10(packets)m 10(provide)m 10(the)m 10(mechanism)m 10(for)m 10(\015ooding)m 10(link)m 10(state)m 10(advertisements.)m 14 r 65 c 10(Link)m 10(State)m 10(Update)m 10(packet)m 0 1778 p (may)s 7(contain)m 7(several)m 7(distinct)m 7(advertisements,)m 8(and)m 7(\015oods)m 7(each)m 6(advertisement)m 7(one)m 7(hop)m 7(further)m 7(from)m 7(its)m 7(point)m 7(of)m 7(origination.)m 0 1828 p 84 c -2 r 111 c 12(make)m 13(the)m 13(\015ooding)m 13(procedure)m 13(reliable,)m 13(each)m 13(advertisement)m 13(must)m 13(be)m 13(acknowledged)m 13(separately)m -2 r 46 c 21(Acknowledgments)m 0 1878 p (are)s 13(transmitted)m 13(in)m 14(Link)m 13(State)m 13(Acknowledgment)m 13(packets.)m 22(Many)m 14(separate)m 13(acknowledgments)m 13(can)m 13(be)m 14(grouped)m 13(together)m 0 1927 p (into)s 10 r 97 c 11(single)m 10(packet.)m 0 1995 p (The)s 13(\015ooding)m 14(procedure)m 13(starts)m 13(when)m 14 r 97 c 13(Link)m 13(State)m 14(Update)m 13(packet)m 13(has)m 14(been)m 13(received.)m 22(Many)m 14(consistency)m 13(checks)m 13(have)m 0 2045 p (been)s 11(made)m 12(on)m 11(the)m 11(received)m 11(packet)m 12(before)m 11(being)m 11(handed)m 11(to)m 12(the)m 11(\015ooding)m 11(procedure)m 11(\(see)m 12(Section)m 11(8.2\).)m 16(In)m 11(particular)m 44 c 10(the)m 0 2095 p (Link)s 11(State)m 11(Update)m 10(packet)m 11(has)m 11(been)m 11(associated)m 11(with)m 11 r 97 c 10(particular)m 11(neighbor)m -1 r 44 c 10(and)m 11 r 97 c 11(particular)m 11(area.)m 15(If)m 11(the)m 11(neighbor)m 10(is)m 11(in)m 11 r 97 c 0 2144 p (lesser)s 10(state)m 11(than)m t-bol.300 @sf 10(Exchange)m t-rom.300 @sf 44 c 11(the)m 10(packet)m 10(should)m 11(be)m 10(dropped)m 11(without)m 10(further)m 11(processing.)m 0 2212 p (All)s 10(types)m 10(of)m 11(link)m 10(state)m 10(advertisements,)m 11(other)m 10(than)m 10(AS)m 10(external)m 10(links,)m 11(are)m 10(associated)m 10(with)m 11 r 97 c 10(speci\014c)m 10(area.)m 14(However)m -1 r 44 c 9(link)m 0 2262 p (state)s 13(advertisements)m 13(do)m 13(not)m 13(contain)m 13(an)m 12(area)m 13(\014eld.)m 22 r 65 c 13(link)m 13(state)m 12(advertisement')m -1 r 115 c 12(area)m 13(must)m 13(be)m 13(deduced)m 13(from)m 13(the)m 13(Link)m 0 2312 p (State)s 10(Update)m 11(packet)m 10(header)m -1 r 46 c 0 2379 p (For)s 10(each)m 11(link)m 10(state)m 11(advertisement)m 10(contained)m 10(in)m 11(the)m 10(packet,)m 11(the)m 10(following)m 11(steps)m 10(are)m 10(taken:)m 52 2489 p (1.)s 21 r 86 c -4(alidate)m 9(the)m 10(advertisement')m -1 r 115 c 9(link)m 10(state)m 10(checksum.)m 13(If)m 10(the)m 10(checksum)m 10(turns)m 10(out)m 10(to)m 10(be)m 10(invalid,)m 10(discard)m 10(the)m 10(advertise-)m 104 2538 p (ment)s 10(and)m 11(get)m 10(the)m 10(next)m 11(one)m 10(from)m 11(the)m 10(Link)m 11(State)m 10(Update)m 10(packet.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(72])m @eop 71 @bop0 71 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (12.4.4)s 42(AS)m 10(external)m 10(links)m t-rom.300 @sf 0 291 p (AS)s 9(external)m 9(link)m 8(advertisements)m 9(describe)m 9(routes)m 9(to)m 9(destinations)m 8(external)m 9(to)m 9(the)m 9(Autonomous)m 9(System.)m 13(Most)m 9(AS)m 9(external)m 0 341 p (link)s 13(advertisements)m 13(describe)m 14(routes)m 13(to)m 13(speci\014c)m 13(external)m 14(destinations.)m 22(However)m -1 r 44 c 13 r 97 c 13(default)m 14(route)m 13(for)m 13(the)m 13(Autonomous)m 0 390 p (System)s 9(can)m 9(be)m 9(described)m 9(in)m 9(an)m 9(AS)m 9(external)m 9(advertisement)m 10(by)m 9(setting)m 9(the)m 9(advertisement')m -2 r 115 c t-bol.300 @sf 8(Link)m 9(State)m 10(ID)m t-rom.300 @sf 9(to)m 9(DefaultDes-)m 0 440 p (tination)s 9 r 40 c c-med.300 @sf (0.0.0.0)s t-rom.300 @sf (\).)s 14(AS)m 9(external)m 9(link)m 10(advertisements)m 9(are)m 9(originated)m 10(by)m 9(AS)m 9(boundary)m 10(routers.)m 13(An)m 9(AS)m 10(boundary)m 9(router)m 0 490 p (originates)s 13 r 97 c 12(single)m 13(AS)m 12(external)m 13(link)m 12(advertisement)m 13(for)m 12(each)m 13(external)m 12(route)m 13(that)m 12(it)m 13(has)m 12(learned,)m 13(either)m 13(through)m 12(another)m 0 540 p (routing)s 10(protocol)m 11(\(such)m 10(as)m 11(EGP\),)m 10(or)m 10(through)m 11(con\014guration)m 10(information.)m 0 608 p (In)s 11(general,)m 11(AS)m 11(external)m 11(link)m 11(advertisements)m 10(are)m 11(the)m 11(only)m 11(type)m 11(of)m 11(link)m 11(state)m 11(advertisements)m 11(that)m 10(are)m 11(\015ooded)m 11(throughout)m 0 657 p (the)s 10(entire)m 11(Autonomous)m 10(System;)m 11(all)m 10(other)m 10(types)m 11(of)m 10(link)m 10(state)m 11(advertisements)m 10(are)m 11(speci\014c)m 10(to)m 10 r 97 c 11(single)m 10(area.)m 14(However)m -1 r 44 c 10(AS)m 0 707 p (external)s 11(advertisements)m 11(are)m 11(not)m 11(\015ooded)m 11(into/throughout)m 11(stub)m 11(areas)m 11(\(see)m 12(Section)m 11(3.6\).)m 15(This)m 12(enables)m 11 r 97 c 11(reduction)m 11(in)m 11(link)m 0 757 p (state)s 10(database)m 11(size)m 10(for)m 11(routers)m 10(internal)m 10(to)m 11(stub)m 10(areas.)m 0 825 p (The)s 14(metric)m 14(that)m 14(is)m 13(advertised)m 14(for)m 14(an)m 14(external)m 14(route)m 14(can)m 14(be)m 14(one)m 13(of)m 14(two)m 14(types.)m 25 r 84 c -2(ype)m 12 r 49 c 14(metrics)m 14(are)m 14(comparable)m 14(to)m 14(the)m 0 874 p (link)s 11(state)m 12(metric.)m 17 r 84 c -2(ype)m 11 r 50 c 11(metrics)m 12(are)m 11(assumed)m 12(to)m 11(be)m 12(lar)m (ger)s 10(than)m 12(the)m 11(cost)m 12(of)m 11(any)m 12(intra-AS)m 11(path.)m 17(As)m 12(with)m 11(summary)m 12(link)m 0 924 p (advertisements,)s 16(if)m 14(separate)m 15(paths)m 14(exist)m 15(based)m 14(on)m 15 r 84 c (OS,)s 13(separate)m 15 r 84 c (OS)s 14(costs)m 14(can)m 15(be)m 14(included)m 15(in)m 14(the)m 15(AS)m 14(external)m 14(link)m 0 974 p (advertisement.)s 18(The)m 12(encoding)m 12(of)m 11 r 84 c (OS)s 11(in)m 12(OSPF)m 12(link)m 12(state)m 11(advertisements)m 12(is)m 12(described)m 12(in)m 12(Section)m 11(12.3.)m 18(If)m 12(the)m t-bol.300 @sf 12 r 84 c -3(-bit)m t-rom.300 @sf 11(of)m 0 1024 p (the)s 10(advertisement')m -1 r 115 c t-bol.300 @sf 10(Options)m t-rom.300 @sf 10(\014eld)m 10(is)m 11(clear)m -1 r 44 c 10(no)m 10(non-zero)m 10 r 84 c (OS)s 10(paths)m 10(to)m 11(the)m 10(destination)m 11(exist.)m 0 1092 p (If)s 11 r 97 c 10(router)m 11(advertises)m 11(an)m 10(AS)m 11(external)m 10(link)m 11(advertisement)m 11(for)m 10 r 97 c 11(destination)m 11(which)m 10(then)m 11(becomes)m 10(unreachable,)m 11(the)m 11(router)m 0 1141 p (must)s 14(then)m 14(\015ush)m 14(the)m 14(advertisement)m 14(from)m 14(the)m 15(routing)m 14(domain)m 14(by)m 14(setting)m 14(its)m 14(age)m 14(to)m 14(MaxAge)m 14(and)m 14(re\015ooding)m 14(\(see)m 14(Sec-)m 0 1191 p (tion)s 10(14.1\).)m 0 1259 p (For)s 9(an)m 8(example)m 9(of)m 8(AS)m 9(external)m 9(link)m 8(advertisements,)m 9(consider)m 9(once)m 8(again)m 9(the)m 9(AS)m 8(pictured)m 9(in)m 8(Figure)m 9(6.)m 13(There)m 9(are)m 9(two)m 8(AS)m 0 1309 p (boundary)s 13(routers:)m 18 r 82 c -2(T5)m 12(and)m 13 r 82 c -2(T7.)m 19(Router)m 13 r 82 c -1(T5)m 11(originates)m 13(three)m 12(external)m 13(link)m 13(advertisements,)m 13(for)m 12(networks)m 13(N12-N14.)m 0 1359 p (Router)s 10 r 82 c -1(T7)m 9(originates)m 10(two)m 10(external)m 11(link)m 10(advertisements,)m 10(for)m 10(networks)m 11(N12)m 10(and)m 10(N15.)m 14(Assume)m 10(that)m 10 r 82 c -1(T7)m 9(has)m 10(learned)m 10(its)m 0 1408 p (route)s 9(to)m 8(N12)m 9(via)m 9(EGP)m -4 r 44 c 8(and)m 8(that)m 9(it)m 8(wishes)m 9(to)m 9(advertise)m 8 r 97 c 9 r 84 c -2(ype)m 8 r 50 c 8(metric)m 9(to)m 9(the)m 8(AS.)m 9 r 82 c -2(T7)m 8(would)m 9(then)m 8(originate)m 9(the)m 9(following)m 0 1458 p (advertisement)s 10(for)m 11(N12:)m c-med.270 @sf 157 1563 p 59 c 23(AS)m 22(external)m 23(link)m 22(advertisement)m 23(for)m 22(network)m 23(N12,)m 157 1609 p 59 c 23(originated)m 22(by)m 23(router)m 22(RT7)m 157 1700 p (LS)s 23(age)m 22 r 61 c 23 r 48 c 405(;always)m 22(true)m 23(on)m 22(origination)m 157 1746 p (Options)s 23 r 61 c 22(\(T-bit|E-bit\))m 113(;TOS-capable)m 157 1791 p (LS)s 23(type)m 22 r 61 c 23 r 53 c 382(;indicates)m 23(AS)m 22(external)m 23(link)m 157 1837 p (Link)s 23(State)m 22(ID)m 23 r 61 c 22(N12's)m 23(IP)m 22(network)m 23(number)m 157 1883 p (Advertising)s 23(Router)m 22 r 61 c 23(Router)m 22(RT7's)m 23(ID)m 337 1928 p (bit)s 23 r 69 c 22 r 61 c 23 r 49 c 247(;Type)m 23 r 50 c 22(metric)m 337 1974 p (TOS)s 23 r 61 c 22 r 48 c 337 2020 p (metric)s 23 r 61 c 22 r 50 c 337 2065 p (Forwarding)s 23(address)m 22 r 61 c 23(0.0.0.0)m t-rom.300 @sf 0 2175 p (In)s 9(the)m 9(above)m 9(example,)m 10(the)m t-bol.300 @sf 9(forwarding)m 9(addr)m (ess)s t-rom.300 @sf 8(\014eld)m 10(has)m 9(been)m 9(set)m 9(to)m c-med.300 @sf 9(0.0.0.0)m t-rom.300 @sf 44 c 9(indicating)m 10(that)m 9(packets)m 9(for)m 9(the)m 9(external)m 0 2224 p (destination)s 13(should)m 14(be)m 13(forwarded)m 14(to)m 13(the)m 14(advertising)m 13(OSPF)m 14(router)m 13(\(R)m -1(T7\).)m 22(This)m 14(is)m 13(not)m 13(always)m 14(desirable.)m 23(Consider)m 14(the)m 0 2274 p (example)s 10(pictured)m 10(in)m 11(Figure)m 10(16.)m 14(There)m 10(are)m 10(three)m 10(OSPF)m 10(routers)m 10(\(R)m -1 r 84 c -3(A,)m 9 r 82 c -2(TB)m 9(and)m 11 r 82 c -2(TC\))m 9(connected)m 10(to)m 11 r 97 c 10(common)m 10(network.)m 0 2324 p (Only)s 15(one)m 15(of)m 15(these)m 15(routers,)m 16 r 82 c -2 r 84 c -3(A,)m 14(is)m 15(exchanging)m 15(EGP)m 15(information)m 15(with)m 14(the)m 15(non-OSPF)m 15(router)m 15 r 82 c -1(TX.)m 14 r 82 c -2 r 84 c -3 r 65 c 14(must)m 15(then)m 0 2374 p (originate)s 8(AS)m 7(external)m 8(link)m 7(state)m 8(advertisements)m 8(for)m 7(those)m 8(destinations)m 7(it)m 8(has)m 8(learned)m 7(from)m 8 r 82 c -2(TX.)m 7(By)m 7(using)m 8(the)m 8(AS)m 7(external)m 0 2424 p (advertisement')s -1 r 115 c t-bol.300 @sf 10(forwarding)m 10(addr)m (ess)s t-rom.300 @sf 11(\014eld,)m 11 r 82 c -2 r 84 c -3 r 65 c 10(can)m 11(specify)m 10(that)m 11(packets)m 11(for)m 11(these)m 11(destinations)m 11(be)m 11(forwarded)m 11(directly)m 0 2474 p (to)s 10 r 82 c -1(TX.)m 9 r 87 c (ithout)s 9(this)m 10(feature,)m 11(routers)m 10 r 82 c -1(TB)m 9(and)m 11 r 82 c -2(TC)m 10(would)m 10(take)m 10(an)m 11(extra)m 10(hop)m 11(to)m 10(get)m 10(to)m 11(these)m 10(destinations.)m 0 2541 p (Note)s 9(that)m 9(when)m 8(the)m t-bol.300 @sf 9(forwarding)m 9(addr)m (ess)s t-rom.300 @sf 8(\014eld)m 9(is)m 8(non-zero,)m 9(it)m 9(should)m 9(point)m 9(to)m 8 r 97 c 9(router)m 9(belonging)m 9(to)m 9(another)m 8(Autonomous)m 0 2591 p (System.)s 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(71])m @eop 70 @bop0 70 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (In)s 12(addition,)m 12(if)m 12(area)m 11 r 65 c 12(has)m 12(been)m 12(con\014gured)m 12(as)m 11 r 97 c 12(stub)m 12(area)m 12(and)m 11(the)m 12(router)m 12(is)m 12(an)m 12(area)m 11(border)m 12(router)m -1 r 44 c 12(it)m 11(should)m 12(advertise)m 12 r 97 c 0 245 p (default)s 10(summary)m 11(link)m 10(into)m 11(Area)m 10(A.)m 14(The)m t-bol.300 @sf 10(Link)m 11(State)m 10(ID)m t-rom.300 @sf 11(for)m 10(the)m 10(advertisement)m 11(should)m 10(be)m 11(set)m 10(to)m 11(DefaultDestination,)m 10(and)m 0 295 p (the)s 10(metric)m 11(set)m 10(to)m 11(the)m 10(\(per)m (-area\))s 10(con\014gurable)m 10(parameter)m 10(StubDefaultCost.)m 0 359 p (If)s 9 r 97 c 8(router)m 9(advertises)m 8 r 97 c 9(summary)m 8(advertisement)m 9(for)m 9 r 97 c 8(destination)m 9(which)m 8(then)m 9(becomes)m 8(unreachable,)m 9(the)m 9(router)m 8(must)m 9(then)m 0 408 p (\015ush)s 9(the)m 9(advertisement)m 9(from)m 10(the)m 9(routing)m 9(domain)m 9(by)m 9(setting)m 9(its)m 9(age)m 10(to)m 9(MaxAge)m 9(and)m 9(re\015ooding)m 9(\(see)m 9(Section)m 9(14.1\).)m 14(Also,)m 0 458 p (if)s 12(the)m 12(destination)m 12(is)m 12(still)m 12(reachable,)m 13(yet)m 12(can)m 12(no)m 12(longer)m 12(be)m 12(advertised)m 12(according)m 12(to)m 12(the)m 12(above)m 12(procedure)m 12(\(e.g.,)m 13(it)m 12(is)m 12(now)m 0 508 p (an)s 12(inter)m (-area)s 10(route,)m 12(when)m 12(it)m 11(used)m 12(to)m 12(be)m 11(an)m 12(intra-area)m 11(route)m 12(associated)m 11(with)m 12(some)m 12(non-backbone)m 11(area;)m 12(it)m 12(would)m 12(thus)m 11(no)m 0 558 p (longer)s 10(be)m 11(advertisable)m 10(to)m 11(the)m 10(backbone\),)m 10(the)m 11(advertisement)m 10(should)m 11(also)m 10(be)m 11(\015ushed)m 10(from)m 10(the)m 11(routing)m 10(domain.)m 0 622 p (For)s 9(an)m 9(example)m 9(of)m 9(summary)m 9(link)m 8(advertisements,)m 10(consider)m 9(again)m 9(the)m 8(area)m 9(con\014guration)m 9(in)m 9(Figure)m 9(6.)m 13(Routers)m 9 r 82 c -1(T3,)m 8 r 82 c -1(T4,)m 0 671 p 82 c -2(T7,)m 8 r 82 c -1(T10)m 7(and)m 8 r 82 c -2(T1)m -1 r 49 c 7(are)m 8(all)m 8(area)m 9(border)m 8(routers,)m 8(and)m 9(therefore)m 8(are)m 8(originating)m 8(summary)m 8(links)m 8(advertisements.)m 13(Consider)m 0 721 p (in)s 9(particular)m 10(router)m 9 r 82 c -1(T4.)m 12(Its)m 10(routing)m 9(table)m 10(was)m 9(calculated)m 9(as)m 10(the)m 9(example)m 10(in)m 9(Section)m 10 r 49 c -1(1.3.)m 13 r 82 c -2(T4)m 8(originates)m 10(summary)m 9(link)m 0 771 p (advertisements)s 11(into)m 11(both)m 11(the)m 11(backbone)m 11(and)m 10(Area)m 11(1.)m 16(Into)m 11(the)m 11(backbone,)m 11(router)m 10 r 82 c -1(T4)m 10(originates)m 11(separate)m 11(advertisements)m 0 821 p (for)s 14(each)m 15(of)m 14(the)m 14(networks)m 15(N1-N4.)m 26(Into)m 14(Area)m 14(1,)m 16(router)m 14 r 82 c -1(T4)m 13(originates)m 14(separate)m 15(advertisements)m 14(for)m 14(networks)m 15(N6-N8)m 0 871 p (and)s 11(the)m 11(AS)m 11(boundary)m 11(routers)m 11 r 82 c -1(T5,R)m -3(T7.)m 15(It)m 11(also)m 11(condenses)m 11(host)m 12(routes)m 11(Ia)m 11(and)m 11(Ib)m 11(into)m 11 r 97 c 11(single)m 11(summary)m 11(advertisement.)m 0 921 p (Finally)s -2 r 44 c 10(the)m 11(routes)m 10(to)m 11(networks)m 11(N9,N10,N1)m -1 r 49 c 10(and)m 11(host)m 10(H9)m 11(are)m 11(advertised)m 10(by)m 11 r 97 c 11(single)m 11(summary)m 10(link.)m 15(This)m 11(condensation)m 0 970 p (was)s 10(originally)m 11(performed)m 10(by)m 11(the)m 10(router)m 10 r 82 c -1(T1)m -2(1.)m 0 1034 p (These)s 8(advertisements)m 7(are)m 8(illustrated)m 8(graphically)m 7(in)m 8(Figures)m 8 r 55 c 7(and)m 8(8.)m 13 r 84 c -2(wo)m 7(of)m 7(the)m 8(summary)m 8(link)m 7(advertisements)m 8(originated)m 0 1084 p (by)s 11(router)m 11 r 82 c -1(T4)m 10(follow)m -2 r 46 c 15(The)m 11(actual)m 11(IP)m 11(addresses)m 12(for)m 11(the)m 11(networks)m 11(and)m 11(routers)m 11(in)m 11(question)m 11(have)m 11(been)m 12(assigned)m 11(in)m 11(Figure)m 0 1134 p (15.)s c-med.270 @sf 157 1226 p 59 c 23(summary)m 22(link)m 23(advertisement)m 22(for)m 23(network)m 22(N1,)m 157 1272 p 59 c 23(originated)m 22(by)m 23(router)m 22(RT4)m 23(into)m 22(the)m 23(backbone)m 157 1363 p (LS)s 23(age)m 22 r 61 c 23 r 48 c 405(;always)m 22(true)m 23(on)m 22(origination)m 157 1409 p (Options)s 23 r 61 c 22(\(T-bit|E-bit\))m 113(;TOS-capable)m 157 1454 p (LS)s 23(type)m 22 r 61 c 23 r 51 c 382(;indicates)m 23(summary)m 22(link)m 23(to)m 22(IP)m 23(net)m 157 1500 p (Link)s 23(State)m 22(ID)m 23 r 61 c 22(192.1.2.0)m 68(;N1's)m 22(IP)m 23(network)m 22(number)m 157 1546 p (Advertising)s 23(Router)m 22 r 61 c 23(192.1.1.4)m 157(;RT4's)m 23(ID)m 337 1591 p (TOS)s 23 r 61 c 22 r 48 c 337 1637 p (metric)s 23 r 61 c 22 r 52 c 157 1728 p 59 c 23(summary)m 22(link)m 23(advertisement)m 22(for)m 23(AS)m 22(boundary)m 23(router)m 22(RT7)m 157 1774 p 59 c 23(originated)m 22(by)m 23(router)m 22(RT4)m 23(into)m 22(Area)m 23 r 49 c 157 1865 p (LS)s 23(age)m 22 r 61 c 23 r 48 c 405(;always)m 22(true)m 23(on)m 22(origination)m 157 1911 p (Options)s 23 r 61 c 22(\(T-bit|E-bit\))m 113(;TOS-capable)m 157 1957 p (LS)s 23(type)m 22 r 61 c 23 r 52 c 382(;indicates)m 23(summary)m 22(link)m 23(to)m 22(ASBR)m 157 2002 p (Link)s 23(State)m 22(ID)m 23 r 61 c 22(router)m 23(RT7's)m 22(ID)m 157 2048 p (Advertising)s 23(Router)m 22 r 61 c 23(192.1.1.4)m 157(;RT4's)m 23(ID)m 337 2094 p (TOS)s 23 r 61 c 22 r 48 c 337 2139 p (metric)s 23 r 61 c 22(14)m t-rom.300 @sf 0 2236 p (Summary)s 14(link)m 14(advertisements)m 15(pertain)m 14(to)m 14 r 97 c 14(single)m 14(destination)m 15(\(IP)m 14(network)m 14(or)m 14(AS)m 14(boundary)m 14(router\).)m 26(However)m -1 r 44 c 14(for)m 14 r 97 c 0 2286 p (single)s 13(destination)m 12(there)m 13(may)m 13(be)m 12(separate)m 13(sets)m 13(of)m 12(paths,)m 13(and)m 13(therefore)m 13(separate)m 12(routing)m 13(table)m 13(entries,)m 13(for)m 13(each)m 12 r 84 c -2(ype)m 12(of)m 0 2335 p (Service.)s 22(All)m 13(these)m 13(entries)m 13(must)m 13(be)m 12(considered)m 13(when)m 13(building)m 13(the)m 13(summary)m 13(link)m 13(advertisement)m 13(for)m 13(the)m 13(destination;)m 15 r 97 c 0 2385 p (single)s 11(advertisement)m 10(must)m 11(specify)m 10(the)m 11(separate)m 10(costs)m 11(\(if)m 10(they)m 11(exist\))m 11(for)m 10(each)m 11 r 84 c (OS.)s 9(The)m 11(encoding)m 11(of)m 10 r 84 c (OS)s 10(in)m 11(OSPF)m 10(link)m 0 2435 p (state)s 10(advertisements)m 11(is)m 10(described)m 11(in)m 10(Section)m 10(12.3.)m 0 2499 p (Clearing)s 13(the)m t-bol.300 @sf 14 r 84 c -3(-bit)m t-rom.300 @sf 12(in)m 13(the)m 14(Options)m 13(\014eld)m 13(of)m 13 r 97 c 14(summary)m 13(link)m 13(advertisement)m 13(indicates)m 14(that)m 13(there)m 13(is)m 14 r 97 c 13 r 84 c (OS)s 12 r 48 c 14(path)m 13(to)m 13(the)m 0 2549 p (destination,)s 17(but)m 16(no)m 15(paths)m 16(for)m 15(non-zero)m 16 r 84 c (OS.)s 15(This)m 15(can)m 16(happen)m 16(when)m 15(non-T)m (OS)s 15(capable)m 16(routers)m 15(exist)m 16(in)m 15(the)m 16(routing)m 0 2599 p (domain)s 10(\(see)m 11(Section)m 10(2.4\).)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(70])m @eop 69 @bop0 69 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m c-med.270 @sf 157 195 p (Link)s 23(State)m 22(ID)m 23 r 61 c 22(192.1.1.4)m 135(;IP)m 23(address)m 22(of)m 23(Designated)m 22(Router)m 157 241 p (Advertising)s 23(Router)m 22 r 61 c 23(192.1.1.4)m 22(;RT4's)m 23(Router)m 22(ID)m 157 286 p (Network)s 23(Mask)m 22 r 61 c 23(0xffffff00)m 337 332 p (Attached)s 23(Router)m 22 r 61 c 23(192.1.1.4)m 90(;Router)m 22(ID)m 337 378 p (Attached)s 23(Router)m 22 r 61 c 23(192.1.1.1)m 90(;Router)m 22(ID)m 337 423 p (Attached)s 23(Router)m 22 r 61 c 23(192.1.1.2)m 90(;Router)m 22(ID)m 337 469 p (Attached)s 23(Router)m 22 r 61 c 23(192.1.1.3)m 90(;Router)m 22(ID)m t-bol.300 @sf 0 597 p (12.4.3)s 42(Summary)m 10(links)m t-rom.300 @sf 0 693 p (Each)s 10(summary)m 11(link)m 10(advertisement)m 10(describes)m 10 r 97 c 11(route)m 10(to)m 10 r 97 c 10(single)m 11(destination.)m 13(Summary)m 11(link)m 10(advertisements)m 10(are)m 10(\015ooded)m 0 743 p (throughout)s 12 r 97 c 12(single)m 13(area)m 12(only)m -2 r 46 c 18(The)m 13(destination)m 12(described)m 12(is)m 12(one)m 12(that)m 13(is)m 12(external)m 12(to)m 12(the)m 12(area,)m 13(yet)m 12(still)m 12(belonging)m 13(to)m 12(the)m 0 793 p (Autonomous)s 10(System.)m 0 860 p (The)s 7(DefaultDestination)m 8(can)m 7(also)m 7(be)m 8(speci\014ed)m 7(in)m 7(summary)m 8(link)m 7(advertisements.)m 13(This)m 7(is)m 8(used)m 7(when)m 7(implementing)m 8(OSPF')m -2 r 115 c 0 910 p (stub)s 12(area)m 12(functionality)m 12(\(see)m 11(Section)m 12(3.6\).)m 19(In)m 11 r 97 c 12(stub)m 12(area,)m 12(instead)m 12(of)m 12(importing)m 12(external)m 12(routes)m 12(each)m 11(area)m 12(border)m 12(router)m 0 960 p (originates)s 10 r 97 c 11(\\default)m 10(summary)m 11(link")m 10 r 40 c t-bol.300 @sf (Link)s 10(State)m 11(ID)m cmr10.300 @sf 10 r 61 c t-rom.300 @sf 11(DefaultDestination\))m 10(into)m 11(the)m 10(area.)m 0 1028 p (Summary)s 11(link)m 11(advertisements)m 11(are)m 11(originated)m 11(by)m 11(area)m 11(border)m 11(routers.)m 16(The)m 11(precise)m 11(summary)m 11(routes)m 11(to)m 11(advertise)m 11(into)m 11(an)m 0 1078 p (area)s 12(are)m 13(determined)m 12(by)m 12(examining)m 12(the)m 13(routing)m 12(table)m 12(structure)m 12(\(see)m 13(Section)m 12 r 49 c -1(1\).)m 19(Only)m 12(intra-area)m 12(routes)m 12(are)m 13(advertised)m 0 1127 p (into)s 10(the)m 11(backbone.)m 14(Both)m 10(intra-area)m 11(and)m 10(inter)m (-area)s 10(routes)m 10(are)m 10(advertised)m 11(into)m 10(the)m 11(other)m 10(areas.)m 0 1195 p 84 c -2 r 111 c 9(determine)m 11(which)m 10(routes)m 11(to)m 10(advertise)m 11(into)m 10(an)m 10(attached)m 11(Area)m 10(A,)m 11(each)m 10(routing)m 10(table)m 11(entry)m 10(is)m 11(processed)m 10(as)m 11(follows:)m cmsy10.300 @sf 62 1304 p 15 c t-rom.300 @sf 21(Only)m 12(Destination)m 11(types)m 12(of)m 11(network)m 12(and)m 11(AS)m 12(boundary)m 11(router)m 12(are)m 11(advertised)m 12(in)m 11(summary)m 12(link)m 11(advertisements.)m 18(If)m 104 1354 p (the)s 10(routing)m 11(table)m 10(entry')m -1 r 115 c t-bol.300 @sf 9(Destination)m 11(type)m t-rom.300 @sf 10(is)m 10(area)m 11(border)m 10(router)m 44 c 9(examine)m 10(the)m 11(next)m 10(routing)m 11(table)m 10(entry)m -2 r 46 c cmsy10.300 @sf 62 1437 p 15 c t-rom.300 @sf 21(AS)m 8(external)m 8(routes)m 8(are)m 8(never)m 9(advertised)m 8(in)m 8(summary)m 8(link)m 8(advertisements.)m 13(If)m 8(the)m 8(routing)m 8(table)m 9(entry)m 8(has)m t-bol.300 @sf 8(Path-type)m t-rom.300 @sf 104 1487 p (type)s 10 r 49 c 11(external)m 10(or)m 10(type)m 11 r 50 c 10(external,)m 11(examine)m 10(the)m 11(next)m 10(routing)m 10(table)m 11(entry)m -2 r 46 c cmsy10.300 @sf 62 1570 p 15 c t-rom.300 @sf 21(Else,)m 8(if)m 7(the)m 7(area)m 7(associated)m 8(with)m 7(this)m 7(set)m 7(of)m 7(paths)m 7(is)m 8(the)m 7(Area)m 7 r 65 c 7(itself,)m 8(do)m 7(not)m 7(generate)m 8 r 97 c 7(summary)m 7(link)m 7(advertisement)m 104 1620 p (for)s 10(the)m 11(route.)m t-rom.210 @sf 334 1605 p (14)s cmsy10.300 @sf 62 1703 p 15 c t-rom.300 @sf 21(Else,)m 14(if)m 13(the)m 13(destination)m 13(of)m 14(this)m 13(route)m 13(is)m 13(an)m 13(AS)m 13(boundary)m 14(router)m -1 r 44 c 13(generate)m 13 r 97 c 13 r 84 c -2(ype)m 12 r 52 c 13(link)m 14(state)m 13(advertisement)m 13(for)m 104 1753 p (the)s 11(destination,)m 11(with)m t-bol.300 @sf 11(Link)m 10(State)m 11(ID)m t-rom.300 @sf 11(equal)m 11(to)m 11(the)m 11(AS)m 11(boundary)m 11(router)m 1 r 39 c -1 r 115 c 10(ID)m 11(and)m 11(metric)m 11(equal)m 10(to)m 11(the)m 11(routing)m 11(table)m 104 1802 p (entry')s -2 r 115 c 10(cost.)m 14(These)m 10(advertisements)m 11(should)m 10(not)m 10(be)m 11(generated)m 10(if)m 11(area)m 10 r 65 c 11(has)m 10(been)m 10(con\014gured)m 11(as)m 10 r 97 c 11(stub)m 10(area.)m cmsy10.300 @sf 62 1885 p 15 c t-rom.300 @sf 21(Else,)m 15(the)m 14(Destination)m 15(type)m 14(is)m 14(network.)m 25(If)m 14(this)m 14(is)m 15(an)m 14(inter)m (-area)s 13(route,)m 15(generate)m 14 r 97 c 15 r 84 c -2(ype)m 13 r 51 c 14(advertisement)m 14(for)m 14(the)m 104 1935 p (destination,)s 10(with)m t-bol.300 @sf 11(Link)m 10(State)m 10(ID)m t-rom.300 @sf 11(equal)m 10(to)m 11(the)m 10(network')m -1 r 115 c 9(address)m 11(and)m 10(metric)m 10(equal)m 11(to)m 10(the)m 11(routing)m 10(table)m 11(cost.)m cmsy10.300 @sf 62 2018 p 15 c t-rom.300 @sf 21(The)m 11(one)m 11(remaining)m 11(case)m 11(is)m 11(an)m 11(intra-area)m 10(route)m 11(to)m 11 r 97 c 11(network.)m 16(This)m 10(means)m 11(that)m 11(the)m 11(network)m 11(is)m 11(contained)m 11(in)m 11(one)m 11(of)m 104 2068 p (the)s 8(router)m 1 r 39 c -1 r 115 c 7(directly)m 8(attached)m 8(areas.)m 13(In)m 8(general,)m 8(this)m 8(information)m 8(must)m 8(be)m 8(condensed)m 8(before)m 8(appearing)m 8(in)m 8(summary)m 104 2118 p (link)s 11(advertisements.)m 15(Remember)m 11(that)m 11(an)m 10(area)m 11(has)m 11(been)m 11(de\014ned)m 11(as)m 11 r 97 c 11(list)m 11(of)m 10(address)m 11(ranges,)m 11(each)m 11(range)m 11(consisting)m 104 2168 p (of)s 9(an)m 8([address,mask])m 9(pair)m -1 r 46 c 12 r 65 c 9(single)m 9 r 84 c -2(ype)m 8 r 51 c 9(advertisement)m 8(must)m 9(be)m 9(made)m 9(for)m 9(each)m 9(range,)m 9(with)m 9(Link)m 8(State)m 9(ID)m 9(equal)m 104 2217 p (to)s 10(the)m 11(range')m -2 r 115 c 10(address)m 10(and)m 11(cost)m 10(equal)m 10(to)m 11(the)m 10(smallest)m 11(cost)m 10(of)m 10(any)m 11(of)m 10(the)m 11(component)m 10(networks.)m 104 2284 p (If)s 10(virtual)m 9(links)m 10(are)m 10(being)m 10(used)m 9(to)m 10(provide/increase)m 10(connectivity)m 10(of)m 10(the)m 9(backbone,)m 10(routing)m 10(information)m 10(concerning)m 104 2334 p (the)s 9(backbone)m 8(networks)m 9(should)m 9(not)m 9(be)m 9(condensed)m 9(before)m 9(being)m 9(summarized)m 8(into)m 9(the)m 9(virtual)m 9(links')m 9(transit)m 9(areas.)m 13(In)m 104 2383 p (other)s 9(words,)m 9(the)m 9(backbone)m 9(ranges)m 9(should)m 9(be)m 10(ignored)m 9(when)m 9(originating)m 9(summary)m 9(links)m 9(into)m 9(these)m 9(areas.)m 13(The)m 10(exis-)m 104 2433 p (tence)s 9(of)m 9(virtual)m 9(links)m 10(can)m 9(be)m 9(determined)m 9(during)m 10(the)m 9(shortest)m 9(path)m 9(calculation)m 9(for)m 10(the)m 9(backbone)m 9(\(see)m 9(Section)m 10(16.1\).)m 0 2469 p 780 2 ru t-rom.180 @sf 33 2497 p (14)s t-rom.240 @sf 60 2508 p (This)s 8(clause)m 7(covers)m 8(the)m 8(case:)m 11(Inter)m (-area)s 7(routes)m 8(are)m 7(not)m 8(summarized)m 8(to)m 8(the)m 7(backbone.)m 11(This)m 8(is)m 8(because)m 7(inter)m (-area)s 7(routes)m 8(are)m 8(always)m 8(associated)m 7(with)m 0 2548 p (the)s 8(backbone)m 9(area.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(69])m @eop 68 @bop0 68 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (As)s 11(an)m 11(example,)m 11(suppose)m 10(the)m 11(point-to-point)m 11(link)m 11(between)m 11(routers)m 11 r 82 c -2(T3)m 10(and)m 11 r 82 c -2(T6)m 10(in)m 11(Figure)m 11(15)m 11(is)m 11 r 97 c 10(satellite)m 11(link.)m 15(The)m 11(AS)m 0 245 p (administrator)s 10(may)m 10(want)m 10(to)m 11(encourage)m 10(the)m 10(use)m 10(of)m 10(the)m 10(line)m 11(for)m 10(high)m 10(bandwidth)m 10(traf)m (\014c.)s 13(This)m 10(would)m 10(be)m 11(done)m 10(by)m 10(setting)m 10(the)m 0 295 p (metric)s 10(arti\014cially)m 11(low)m 10(for)m 10(that)m 10 r 84 c (OS.)s 10(Router)m 10 r 82 c -1(T3)m 9(would)m 10(then)m 10(originate)m 11(the)m 10(following)m 10(router)m 10(links)m 11(advertisement)m 10(for)m 10(the)m 0 345 p (backbone)s 10(\(IP)m 11 r 84 c (OS)s 9 r 56 c cmr10.300 @sf 11 r 61 c t-rom.300 @sf 10(high)m 11(bandwidth\):)m c-med.270 @sf 157 447 p 59 c 23(RT3's)m 22(router)m 23(links)m 22(advertisement)m 23(for)m 22(the)m 23(backbone)m 157 538 p (LS)s 23(age)m 22 r 61 c 23 r 48 c 405(;always)m 22(true)m 23(on)m 22(origination)m 157 584 p (Options)s 23 r 61 c 22(\(T-bit|E-bit\))m 113(;TOS-capable)m 157 629 p (LS)s 23(type)m 22 r 61 c 23 r 49 c 382(;indicates)m 23(router)m 22(links)m 157 675 p (Link)s 23(State)m 22(ID)m 23 r 61 c 22(192.1.1.3)m 68(;RT3's)m 22(Router)m 23(ID)m 157 721 p (Advertising)s 23(Router)m 22 r 61 c 23(192.1.1.3)m 157 766 p (bit)s 23 r 69 c 22 r 61 c 23 r 48 c 427(;not)m 23(an)m 22(AS)m 23(boundary)m 22(router)m 157 812 p (bit)s 23 r 66 c 22 r 61 c 23 r 49 c 427(;RT3)m 23(is)m 22(an)m 23(area)m 22(border)m 23(router)m 157 858 p (#links)s 23 r 61 c 22 r 49 c 337 903 p (Link)s 23(ID)m 22 r 61 c 23(18.10.0.6)m 202 r 59 c 23(Neighbor's)m 22(Router)m 23(ID)m 337 949 p (Link)s 23(Data)m 22 r 61 c 23(0.0.0.0)m 202(;Interface)m 23(to)m 22(unnumbered)m 23(SL)m 337 995 p (Type)s 23 r 61 c 22 r 49 c 450(;connects)m 23(to)m 22(router)m 337 1040 p 35 c 23(other)m 22(metrics)m 23 r 61 c 22 r 49 c 337 1086 p (TOS)s 23 r 48 c 22(metric)m 23 r 61 c 22 r 56 c 517 1132 p (TOS)s 23 r 61 c 22 r 56 c 293(;High)m 22(bandwidth)m 517 1177 p (metric)s 23 r 61 c 22 r 49 c 225(;traffic)m 23(preferred)m t-bol.300 @sf 0 1304 p (12.4.2)s 42(Network)m 10(links)m t-rom.300 @sf 0 1399 p 65 c 13(network)m 12(links)m 13(advertisement)m 13(is)m 12(generated)m 13(for)m 13(every)m 12(transit)m 13(multi-access)m 13(network.)m 20(\(A)m 13(transit)m 13(network)m 12(is)m 13 r 97 c 13(network)m 0 1449 p (having)s 12(two)m 12(or)m 12(more)m 12(attached)m 12(routers\).)m 19(The)m 12(network)m 12(links)m 12(advertisement)m 12(describes)m 12(all)m 12(the)m 12(routers)m 12(that)m 12(are)m 12(attached)m 12(to)m 0 1499 p (the)s 10(network.)m 0 1565 p (The)s 10(Designated)m 10(Router)m 10(for)m 10(the)m 10(network)m 10(originates)m 10(the)m 10(advertisement.)m 14(The)m 10(Designated)m 10(Router)m 10(originates)m 10(the)m 10(advertise-)m 0 1615 p (ment)s 10(only)m 9(if)m 10(it)m 9(is)m 10(fully)m 10(adjacent)m 9(to)m 10(at)m 10(least)m 9(one)m 10(other)m 9(router)m 10(on)m 10(the)m 9(network.)m 14(The)m 10(network)m 9(links)m 10(advertisement)m 9(is)m 10(\015ooded)m 0 1665 p (throughout)s 14(the)m 14(area)m 14(that)m 13(contains)m 14(the)m 14(transit)m 14(network,)m 15(and)m 13(no)m 14(further)m -1 r 46 c 23(The)m 14(networks)m 14(links)m 14(advertisement)m 13(lists)m 14(those)m 0 1715 p (routers)s 9(that)m 10(are)m 9(fully)m 10(adjacent)m 9(to)m 10(the)m 9(Designated)m 10(Router;)m 10(each)m 9(fully)m 10(adjacent)m 9(router)m 10(is)m 9(identi\014ed)m 10(by)m 9(its)m 10(OSPF)m 9(Router)m 10(ID.)m 0 1765 p (The)s 10(Designated)m 11(Router)m 10(includes)m 11(itself)m 10(in)m 10(this)m 11(list.)m 0 1832 p (The)s 11(Link)m 10(State)m 11(ID)m 10(for)m 11 r 97 c 11(network)m 10(links)m 11(advertisement)m 10(is)m 11(the)m 10(IP)m 11(interface)m 11(address)m 10(of)m 11(the)m 10(Designated)m 11(Router)m -1 r 46 c 13(This)m 11(value,)m 0 1881 p (masked)s 13(by)m 12(the)m 13(network')m -1 r 115 c 12(address)m 12(mask)m 13(\(which)m 13(is)m 13(also)m 12(contained)m 13(in)m 13(the)m 13(network)m 12(links)m 13(advertisement\))m 13(yields)m 12(the)m 13(net-)m 0 1931 p (work')s -1 r 115 c 9(IP)m 11(address.)m 0 1998 p 65 c 11(router)m 10(that)m 11(has)m 11(formerly)m 10(been)m 11(the)m 11(Designated)m 10(Router)m 11(for)m 11 r 97 c 10(network,)m 11(but)m 11(is)m 10(no)m 11(longer)m -1 r 44 c 10(should)m 11(\015ush)m 10(the)m 11(network)m 11(links)m 0 2048 p (advertisement)s 11(that)m 11(it)m 10(had)m 11(previously)m 11(originated.)m 15(This)m 11(advertisement)m 11(is)m 10(no)m 11(longer)m 11(used)m 11(in)m 11(the)m 10(routing)m 11(table)m 11(calculation.)m 0 2098 p (It)s 10(is)m 11(\015ushed)m 10(by)m 11(prematurely)m 10(incrementing)m 10(the)m 11(advertisement')m -1 r 115 c 9(age)m 10(to)m 11(MaxAge)m 10(and)m 11(re\015ooding)m 10(\(see)m 11(Section)m 10(14.1\).)m 0 2164 p (As)s 13(an)m 13(example)m 14(of)m 13 r 97 c 13(network)m 13(links)m 14(advertisement,)m 14(again)m 13(consider)m 13(the)m 13(area)m 14(con\014guration)m 13(in)m 13(Figure)m 13(6.)m 23(Network)m 13(links)m 0 2214 p (advertisements)s 12(are)m 12(originated)m 11(for)m 12(network)m 12(N3)m 12(in)m 11(Area)m 12(1,)m 12(networks)m 12(N6)m 12(and)m 12(N8)m 11(in)m 12(Area)m 12(2,)m 12(and)m 12(network)m 12(N9)m 11(in)m 12(Area)m 12(3.)m 0 2264 p (Assuming)s 13(that)m 12(router)m 13 r 82 c -2(T4)m 12(has)m 13(been)m 12(selected)m 13(as)m 13(the)m 12(Designated)m 13(Router)m 13(for)m 12(network)m 13(N3,)m 13(the)m 13(following)m 12(network)m 13(links)m 0 2314 p (advertisement)s 10(is)m 11(generated)m 10(by)m 11 r 82 c -2(T4)m 10(on)m 10(behalf)m 10(of)m 11(network)m 10(N3)m 11(\(see)m 10(Figure)m 10(15)m 11(for)m 10(the)m 11(address)m 10(assignments\):)m c-med.270 @sf 157 2416 p 59 c 23(network)m 22(links)m 23(advertisement)m 22(for)m 23(network)m 22(N3)m 157 2507 p (LS)s 23(age)m 22 r 61 c 23 r 48 c 472(;always)m 23(true)m 22(on)m 23(origination)m 157 2553 p (Options)s 23 r 61 c 22(\(T-bit|E-bit\))m 180(;TOS-capable)m 157 2599 p (LS)s 23(type)m 22 r 61 c 23 r 50 c 450(;indicates)m 22(network)m 23(links)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(68])m @eop 67 @bop0 67 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (shown)s 11(below)m -2 r 46 c 13(It)m 11(indicates)m 10(that)m 11 r 82 c -2(T3)m 10(has)m 10(two)m 11(connections)m 10(to)m 11(Area)m 10(1,)m 11(the)m 10(\014rst)m 11 r 97 c 10(link)m 11(to)m 10(the)m 11(transit)m 10(network)m c-med.300 @sf 11(192.1.1.0)m t-rom.300 @sf 0 245 p (and)s 11(the)m 11(second)m 10 r 97 c 11(link)m 11(to)m 11(the)m 10(stub)m 11(network)m c-med.300 @sf 11(192.1.4.0)m t-rom.300 @sf 46 c 15(Note)m 11(that)m 10(the)m 11(transit)m 11(network)m 11(is)m 10(identi\014ed)m 11(by)m 11(the)m 11(IP)m 10(interface)m 0 295 p (of)s 15(its)m 15(Designated)m 15(Router)m 15(\(i.e.,)m 17(the)m 15(Link)m 15(ID)m cmr10.300 @sf 15 r 61 c c-med.300 @sf 15(192.1.1.4)m t-rom.300 @sf 15(which)m 15(is)m 15(the)m 15(Designated)m 16(Router)m 15 r 82 c -2(T4')m -2 r 115 c 14(IP)m 15(interface)m 15(to)m c-med.300 @sf 0 345 p (192.1.1.0)s t-rom.300 @sf (\).)s 23(Note)m 13(also)m 14(that)m 13 r 82 c -1(T3)m 12(has)m 14(indicated)m 13(that)m 14(it)m 13(is)m 14(capable)m 13(of)m 13(calculating)m 14(separate)m 13(routes)m 14(based)m 13(on)m 14(IP)m 13 r 84 c (OS,)s 0 394 p (through)s 10(setting)m 11(the)m t-bol.300 @sf 10 r 84 c -3(-bit)m t-rom.300 @sf 10(in)m 10(the)m 11(Options)m 10(\014eld.)m 14(It)m 10(has)m 11(also)m 10(indicated)m 11(that)m 10(it)m 10(is)m 11(an)m 10(area)m 11(border)m 10(router)m -1 r 46 c c-med.270 @sf 157 499 p 59 c 23(RT3's)m 22(router)m 23(links)m 22(advertisement)m 23(for)m 22(Area)m 23 r 49 c 157 591 p (LS)s 23(age)m 22 r 61 c 23 r 48 c 472(;always)m 23(true)m 22(on)m 23(origination)m 157 636 p (Options)s 23 r 61 c 22(\(T-bit|E-bit\))m 180(;TOS-capable)m 157 682 p (LS)s 23(type)m 22 r 61 c 23 r 49 c 450(;indicates)m 22(router)m 23(links)m 157 728 p (Link)s 23(State)m 22(ID)m 23 r 61 c 22(192.1.1.3)m 135(;RT3's)m 23(Router)m 22(ID)m 157 773 p (Advertising)s 23(Router)m 22 r 61 c 23(192.1.1.3)m 22(;RT3's)m 23(Router)m 22(ID)m 157 819 p (bit)s 23 r 69 c 22 r 61 c 23 r 48 c 495(;not)m 22(an)m 23(AS)m 22(boundary)m 23(router)m 157 865 p (bit)s 23 r 66 c 22 r 61 c 23 r 49 c 495(;RT3)m 22(is)m 23(an)m 22(area)m 23(border)m 22(router)m 157 910 p (#links)s 23 r 61 c 22 r 50 c 337 956 p (Link)s 23(ID)m 22 r 61 c 23(192.1.1.4)m 202(;IP)m 23(address)m 22(of)m 23(Designated)m 22(Router)m 337 1002 p (Link)s 23(Data)m 22 r 61 c 23(192.1.1.3)m 157(;RT3's)m 23(IP)m 22(interface)m 23(to)m 22(net)m 337 1047 p (Type)s 23 r 61 c 22 r 50 c 450(;connects)m 23(to)m 22(transit)m 23(network)m 337 1093 p 35 c 23(other)m 22(metrics)m 23 r 61 c 22 r 48 c 337 1139 p (TOS)s 23 r 48 c 22(metric)m 23 r 61 c 22 r 49 c 337 1230 p (Link)s 23(ID)m 22 r 61 c 23(192.1.4.0)m 202(;IP)m 23(Network)m 22(number)m 337 1276 p (Link)s 23(Data)m 22 r 61 c 23(0xffffff00)m 135(;Network)m 22(mask)m 337 1321 p (Type)s 23 r 61 c 22 r 51 c 450(;connects)m 23(to)m 22(stub)m 23(network)m 337 1367 p 35 c 23(other)m 22(metrics)m 23 r 61 c 22 r 48 c 337 1413 p (TOS)s 23 r 48 c 22(metric)m 23 r 61 c 22 r 50 c t-rom.300 @sf 0 1522 p (Next)s 10 r 82 c -1(T3')m -2 r 115 c 9(router)m 11(links)m 10(advertisement)m 10(for)m 11(the)m 10(backbone)m 11(is)m 10(shown.)m 14(It)m 10(indicates)m 11(that)m 10 r 82 c -1(T3)m 9(has)m 11 r 97 c 10(single)m 11(attachment)m 10(to)m 10(the)m 0 1572 p (backbone.)s 15(This)m 11(attachment)m 11(is)m 10(via)m 11(an)m 11(unnumbered)m 11(point-to-point)m 11(link)m 10(to)m 11(router)m 11 r 82 c -1(T6.)m 14 r 82 c -2(T3)m 10(has)m 11(again)m 10(indicated)m 11(that)m 11(it)m 11(is)m 0 1621 p 84 c (OS-capable,)s 10(and)m 10(that)m 10(it)m 11(is)m 10(an)m 11(area)m 10(border)m 11(router)m -2 r 46 c c-med.270 @sf 157 1726 p 59 c 23(RT3's)m 22(router)m 23(links)m 22(advertisement)m 23(for)m 22(the)m 23(backbone)m 157 1818 p (LS)s 23(age)m 22 r 61 c 23 r 48 c 472(;always)m 23(true)m 22(on)m 23(origination)m 157 1863 p (Options)s 23 r 61 c 22(\(T-bit|E-bit\))m 180(;TOS-capable)m 157 1909 p (LS)s 23(type)m 22 r 61 c 23 r 49 c 450(;indicates)m 22(router)m 23(links)m 157 1955 p (Link)s 23(State)m 22(ID)m 23 r 61 c 22(192.1.1.3)m 135(;RT3's)m 23(router)m 22(ID)m 157 2000 p (Advertising)s 23(Router)m 22 r 61 c 23(192.1.1.3)m 22(;RT3's)m 23(router)m 22(ID)m 157 2046 p (bit)s 23 r 69 c 22 r 61 c 23 r 48 c 495(;not)m 22(an)m 23(AS)m 22(boundary)m 23(router)m 157 2092 p (bit)s 23 r 66 c 22 r 61 c 23 r 49 c 495(;RT3)m 22(is)m 23(an)m 22(area)m 23(border)m 22(router)m 157 2137 p (#links)s 23 r 61 c 22 r 49 c 337 2183 p (Link)s 23(ID)m 22 r 61 c 23(18.10.0.6)m 202(;Neighbor's)m 23(Router)m 22(ID)m 337 2229 p (Link)s 23(Data)m 22 r 61 c 23(0.0.0.0)m 202(;Interface)m 23(to)m 22(unnumbered)m 23(SL)m 337 2274 p (Type)s 23 r 61 c 22 r 49 c 450(;connects)m 23(to)m 22(router)m 337 2320 p 35 c 23(other)m 22(metrics)m 23 r 61 c 22 r 48 c 337 2366 p (TOS)s 23 r 48 c 22(metric)m 23 r 61 c 22 r 56 c t-rom.300 @sf 0 2475 p (Even)s 11(though)m 11(router)m 12 r 82 c -2(T3)m 10(has)m 11(indicated)m 12(that)m 11(it)m 11(is)m 11 r 84 c (OS-capable)s 11(in)m 11(the)m 11(above)m 11(examples,)m 12(only)m 11 r 97 c 11(single)m 11(metric)m 11(\(the)m 11 r 84 c (OS)s 11 r 48 c 0 2525 p (metric\))s 11(has)m 11(been)m 10(speci\014ed)m 11(for)m 11(each)m 11(interface.)m 15(Dif)m (ferent)s 10(metrics)m 11(can)m 10(be)m 11(speci\014ed)m 11(for)m 11(each)m 11 r 84 c (OS.)s 14(The)m 11(encoding)m 11(of)m 10 r 84 c (OS)s 0 2575 p (in)s 10(OSPF)m 11(link)m 10(state)m 11(advertisements)m 10(is)m 10(described)m 11(in)m 10(Section)m 11(12.3.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(67])m @eop 66 @bop0 66 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 307 201 p 1337 2 ru 306 251 p 2 50 ru t-ita.300 @sf 332 236 p (Link)s 10(type)m 510 251 p 2 50 ru 535 236 p (Description)s 942 251 p 2 50 ru 968 236 p (Link)s 11(ID)m 1642 251 p 2 50 ru 307 252 p 1337 2 ru 306 302 p 2 50 ru t-rom.300 @sf 398 287 p 49 c 510 302 p 2 50 ru 535 287 p (Point-to-point)s 11(link)m 942 302 p 2 50 ru 968 287 p (Neighbor)s 11(Router)m 10(ID)m 1642 302 p 2 50 ru 306 352 p 2 50 ru 398 337 p 50 c 510 352 p 2 50 ru 535 337 p (Link)s 11(to)m 10(transit)m 11(network)m 942 352 p 2 50 ru 968 337 p (Interface)s 11(address)m 10(of)m 10(Designated)m 11(Router)m 1642 352 p 2 50 ru 306 402 p 2 50 ru 398 387 p 51 c 510 402 p 2 50 ru 535 387 p (Link)s 11(to)m 10(stub)m 11(network)m 942 402 p 2 50 ru 968 387 p (IP)s 11(network)m 10(number)m 1642 402 p 2 50 ru 306 452 p 2 50 ru 398 437 p 52 c 510 452 p 2 50 ru 535 437 p 86 c -1(irtual)m 9(link)m 942 452 p 2 50 ru 968 437 p (Neighbor)s 11(Router)m 10(ID)m 1642 452 p 2 50 ru 307 453 p 1337 2 ru 465 590 p 84 c -2(able)m 9(18:)m 14(Link)m 11(descriptions)m 10(in)m 11(the)m 10(router)m 10(links)m 11(advertisement.)m cmsy10.300 @sf 62 718 p 15 c t-rom.300 @sf 21(If)m 8(the)m 9(attached)m 8(network)m 8(does)m 8(not)m 9(belong)m 8(to)m 8(Area)m 9(A,)m 8(no)m 8(links)m 8(are)m 9(added)m 8(to)m 8(the)m 9(advertisement,)m 8(and)m 9(the)m 8(next)m 8(interface)m 104 768 p (should)s 10(be)m 11(examined.)m cmsy10.300 @sf 62 848 p 15 c t-rom.300 @sf 21(Else,)m 10(if)m 11(the)m 10(state)m 11(of)m 10(the)m 11(interface)m 10(is)m 10(Down,)m 11(no)m 10(links)m 11(are)m 10(added.)m cmsy10.300 @sf 62 928 p 15 c t-rom.300 @sf 21(Else,)m 10(if)m 11(the)m 10(state)m 11(of)m 10(the)m 11(interface)m 10(is)m t-bol.300 @sf 10(Point-to-Point)m t-rom.300 @sf 44 c 11(then)m 10(add)m 11(links)m 10(according)m 10(to)m 11(the)m 10(following:)m t-bol.300 @sf 154 1007 p 123 c t-rom.300 @sf 20(If)m 14(the)m 14(neighboring)m 14(router)m 14(is)m 13(fully)m 14(adjacent,)m 15(add)m 14 r 97 c 14 r 84 c -2(ype)m 13 r 49 c 13(link)m 14(\(point-to-point\))m 14(if)m 14(this)m 14(is)m 14(an)m 14(interface)m 13(to)m 14 r 97 c 195 1057 p (point-to-point)s 10(network,)m 9(or)m 10(add)m 9 r 97 c 10(type)m 9 r 52 c 10(link)m 9(\(virtual)m 10(link\))m 9(if)m 10(this)m 9(is)m 10 r 97 c 9(virtual)m 10(link.)m 14(The)m 9(Link)m 10(ID)m 9(should)m 10(be)m 9(set)m 195 1107 p (to)s 11(the)m 10(Router)m 10(ID)m 11(of)m 10(the)m 11(neighboring)m 10(router)m -1 r 44 c 10(and)m 10(the)m 11(Link)m 10(Data)m 10(should)m 11(specify)m 10(the)m 11(interface)m 10(IP)m 11(address.)m t-bol.300 @sf 154 1170 p 123 c t-rom.300 @sf 20(If)m 12(this)m 11(is)m 12 r 97 c 11(numbered)m 11(point-to-point)m 12(network)m 11(\(i.e,)m 12(not)m 11 r 97 c 12(virtual)m 11(link)m 12(and)m 11(not)m 12(an)m 11(unnumbered)m 12(point-to-point)m 195 1220 p (network\))s 11(and)m 11(the)m 10(neighboring)m 11(router)m 2 r 39 c -1 r 115 c 9(IP)m 11(address)m 11(is)m 11(known,)m 11(add)m 10 r 97 c 11 r 84 c -2(ype)m 10 r 51 c 11(link)m 11(\(stub)m 10(network\))m 11(whose)m 11(Link)m 195 1270 p (ID)s 11(is)m 12(the)m 11(neighbor)m 1 r 39 c -1 r 115 c 10(IP)m 11(address,)m 12(whose)m 11(Link)m 11(Data)m 11(is)m 12(the)m 11(mask)m c-med.300 @sf 11(0xffffffff)m t-rom.300 @sf 11(indicating)m 12 r 97 c 11(host)m 11(route,)m 11(and)m 195 1320 p (whose)s 11(cost)m 10(is)m 10(the)m 11(interface')m -2 r 115 c 10(con\014gured)m 10(output)m 11(cost.)m cmsy10.300 @sf 62 1400 p 15 c t-rom.300 @sf 21(Else)m 10(if)m 9(the)m 10(state)m 10(of)m 10(the)m 9(interface)m 10(is)m t-bol.300 @sf 10(Loopback)m t-rom.300 @sf 44 c 9(add)m 10 r 97 c 10 r 84 c -2(ype)m 9 r 51 c 9(link)m 10(\(stub)m 10(network\))m 9(as)m 10(long)m 10(as)m 10(this)m 9(is)m 10(not)m 10(an)m 9(interface)m 104 1450 p (to)s 13(an)m 13(unnumbered)m 12(serial)m 13(line.)m 22(The)m 12(Link)m 13(ID)m 13(should)m 13(be)m 13(set)m 13(to)m 13(the)m 13(IP)m 12(interface)m 13(address,)m 14(the)m 13(Link)m 13(Data)m 12(set)m 13(to)m 13(the)m 104 1500 p (mask)s c-med.300 @sf 10(0xffffffff)m t-rom.300 @sf 11(\(indicating)m 10 r 97 c 10(host)m 11(route\),)m 10(and)m 11(the)m 10(cost)m 11(set)m 10(to)m 10(0.)m cmsy10.300 @sf 62 1579 p 15 c t-rom.300 @sf 21(Else)m 11(if)m 12(the)m 11(state)m 11(of)m 11(the)m 12(interface)m 11(is)m t-bol.300 @sf 11 r 87 c -1(aiting)m t-rom.300 @sf 44 c 11(add)m 11 r 97 c 11 r 84 c -2(ype)m 11 r 51 c 11(link)m 11(\(stub)m 11(network\))m 12(whose)m 11(Link)m 11(ID)m 12(is)m 11(the)m 11(IP)m 11(network)m 104 1629 p (number)s 10(of)m 11(the)m 10(attached)m 10(network)m 11(and)m 10(whose)m 11(Link)m 10(Data)m 11(is)m 10(the)m 10(attached)m 11(network')m -2 r 115 c 10(address)m 10(mask.)m cmsy10.300 @sf 62 1709 p 15 c t-rom.300 @sf 21(Else,)m 10(there)m 11(has)m 10(been)m 11 r 97 c 10(Designated)m 10(Router)m 11(selected)m 10(for)m 11(the)m 10(attached)m 10(network.)m 14(If)m 11(the)m 10(router)m 10(is)m 11(fully)m 10(adjacent)m 10(to)m 11(the)m 104 1759 p (Designated)s 7(Router)m 44 c 7(or)m 8(if)m 8(the)m 7(router)m 8(itself)m 8(is)m 7(Designated)m 8(Router)m 8(and)m 8(is)m 7(fully)m 8(adjacent)m 8(to)m 7(at)m 8(least)m 8(one)m 8(other)m 7(router)m 44 c 7(add)m 104 1809 p 97 c 10(single)m 10 r 84 c -2(ype)m 10 r 50 c 10(link)m 10(\(transit)m 10(network\))m 10(whose)m 11(whose)m 10(link)m 10(ID)m 10(is)m 11(the)m 10(IP)m 10(interface)m 10(address)m 11(of)m 10(the)m 10(attached)m 10(network')m -1 r 115 c 104 1859 p (Designated)s 9(Router)m 10(\(which)m 10(may)m 9(be)m 10(the)m 10(router)m 9(itself\))m 10(and)m 10(whose)m 9(Link)m 10(Data)m 10(is)m 10(the)m 9(interface)m 10(IP)m 10(address.)m 13(Otherwise,)m 104 1909 p (add)s 10 r 97 c 11(link)m 10(as)m 10(if)m 11(the)m 10(interface)m 11(state)m 10(were)m t-bol.300 @sf 11 r 87 c -2(aiting)m t-rom.300 @sf 10(\(see)m 10(above\).)m 0 2007 p (Unless)s 12(otherwise)m 12(speci\014ed,)m 12(the)m 12(cost)m 13(of)m 12(each)m 12(link)m 12(generated)m 12(by)m 12(the)m 12(above)m 12(procedure)m 12(is)m 12(equal)m 12(to)m 12(the)m 12(output)m 12(cost)m 12(of)m 12(the)m 0 2057 p (associated)s 10(interface.)m 14(Note)m 11(that)m 10(in)m 11(the)m 10(case)m 10(of)m 11(serial)m 10(lines,)m 11(multiple)m 10(links)m 10(may)m 11(be)m 10(generated)m 11(by)m 10 r 97 c 11(single)m 10(interface.)m 0 2121 p (After)s 15(consideration)m 14(of)m 15(all)m 15(the)m 15(router)m 14(interfaces,)m 16(host)m 15(links)m 15(are)m 14(added)m 15(to)m 15(the)m 15(advertisement)m 14(by)m 15(examining)m 15(the)m 15(list)m 14(of)m 0 2171 p (attached)s 11(hosts.)m 15 r 65 c 11(host)m 10(route)m 11(is)m 11(represented)m 11(as)m 10 r 97 c 11 r 84 c -2(ype)m 10 r 51 c 11(link)m 11(\(stub)m 10(network\))m 11(whose)m 11(link)m 11(ID)m 11(is)m 10(the)m 11(host')m -1 r 115 c 10(IP)m 10(address)m 11(and)m 0 2221 p (whose)s 10(Link)m 11(Data)m 10(is)m 11(the)m 10(mask)m 10(of)m 11(all)m 10(ones)m 11 r 40 c c-med.300 @sf (0xffffffff)s t-rom.300 @sf (\).)s 0 2285 p (As)s 12(an)m 12(example,)m 13(consider)m 12(the)m 12(router)m 13(links)m 12(advertisements)m 12(generated)m 12(by)m 12(router)m 12 r 82 c -1(T3,)m 12(as)m 12(pictured)m 12(in)m 12(Figure)m 12(6.)m 20(The)m 12(area)m 0 2335 p (containing)s 12(router)m 11 r 82 c -1(T3)m 10(\(Area)m 12(1\))m 11(has)m 12(been)m 11(redrawn,)m 12(with)m 11(actual)m 12(network)m 11(addresses,)m 12(in)m 12(Figure)m 11(15.)m 17(Assume)m 12(that)m 11(the)m 12(last)m 0 2385 p (byte)s 14(of)m 13(all)m 14(of)m 14 r 82 c -2(T3')m -2 r 115 c 12(interface)m 14(addresses)m 14(is)m 13(3,)m 15(giving)m 13(it)m 14(the)m 14(interface)m 13(addresses)m 14(192.1.1.3)m 14(and)m 13(192.1.4.3,)m 15(and)m 13(that)m 14(the)m 0 2434 p (other)s 12(routers)m 12(have)m 12(similar)m 11(addressing)m 12(schemes.)m 18(In)m 12(addition,)m 12(assume)m 12(that)m 12(all)m 12(links)m 12(are)m 12(functional,)m 12(and)m 12(that)m 12(Router)m 11(IDs)m 0 2484 p (are)s 10(assigned)m 11(as)m 10(the)m 11(smallest)m 10(IP)m 10(interface)m 11(address.)m 0 2549 p 82 c -2(T3)m 9(originates)m 10(two)m 9(router)m 10(links)m 10(advertisements,)m 9(one)m 10(for)m 10(Area)m 9 r 49 c 10(and)m 9(one)m 10(for)m 10(the)m 9(backbone.)m 14(Assume)m 9(that)m 10(router)m 10 r 82 c -2(T4)m 9(has)m 0 2599 p (been)s 10(selected)m 11(as)m 10(the)m 11(Designated)m 10(router)m 10(for)m 11(network)m c-med.300 @sf 10(192.1.1.0)m t-rom.300 @sf 46 c 14 r 82 c -1(T3')m -3 r 115 c 10(router)m 10(links)m 11(advertisement)m 10(for)m 10(Area)m 11 r 49 c 10(is)m 11(then)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(66])m @eop 65 @bop0 65 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 38600707 5920358 5920358 34338078 50257264 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/figure15.fig %%Creator: f2ps %%CreationDate: Wed Apr 10 12:53:47 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 90 90 522 764 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y translate xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix } def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth newpath 312.000 362.000 10.000 -90.000 90.000 arcn stroke newpath 392.000 362.000 10.000 -90.000 90.000 arc stroke newpath 192.000 212.000 10.000 180.000 0.000 arc stroke newpath 192.000 292.000 10.000 180.000 0.000 arcn stroke newpath 192.000 72.000 10.000 180.000 0.000 arc stroke newpath 192.000 152.000 10.000 180.000 0.000 arcn stroke newpath 334.366 719.153 12.951 162.719 12.699 arcn stroke newpath 334.176 504.735 12.736 -162.947 -21.824 arc stroke newpath 285.000 528.000 moveto 277.000 526.000 lineto 285.000 524.000 lineto stroke [1 3.200000] 0 setdash % Polyline newpath 277 526 moveto 335 526 lineto 335 561 lineto 393 561 lineto stroke [] 0 setdash newpath 385.000 559.000 moveto 393.000 561.000 lineto 385.000 563.000 lineto stroke % Polyline newpath 347 566 moveto 398 566 lineto stroke % Polyline newpath 275 686 moveto 322 686 lineto stroke % Polyline newpath 275 606 moveto 322 606 lineto stroke % Polyline newpath 274 530 moveto 322 530 lineto stroke % Polyline newpath 347 500 moveto 347 722 lineto stroke % Polyline newpath 322 500 moveto 322 722 lineto stroke % Polyline newpath 398 550 moveto 438 550 lineto 438 580 lineto 398 580 lineto closepath stroke % Polyline newpath 235 671 moveto 275 671 lineto 275 701 lineto 235 701 lineto closepath stroke % Polyline newpath 235 591 moveto 275 591 lineto 275 621 lineto 235 621 lineto closepath stroke % Polyline newpath 234 514 moveto 274 514 lineto 274 544 lineto 234 544 lineto closepath stroke /Courier findfont 12.222222 scalefont setfont 199 777 moveto 1 -1 scale (Figure 16: Forwarding address example) show 1 -1 scale 352 556 moveto 1 -1 scale (EGP) show 1 -1 scale 406 572 moveto 1 -1 scale (RTX) show 1 -1 scale 242 693 moveto 1 -1 scale (RTC) show 1 -1 scale 243 612 moveto 1 -1 scale (RTB) show 1 -1 scale 242 534 moveto 1 -1 scale (RTA) show 1 -1 scale % Ellipse newpath 353 183 35 35 0 360 DrawEllipse stroke % Polyline newpath 900 1 moveto 144 737280 lineto stroke newpath 146.008 737271.938 moveto 144.000 737280.000 lineto 142.008 737271.938 lineto stroke % Polyline newpath 392 372 moveto 312 372 lineto stroke % Polyline newpath 392 352 moveto 312 352 lineto stroke % Polyline newpath 182 212 moveto 182 292 lineto stroke % Polyline newpath 202 212 moveto 202 292 lineto stroke % Polyline newpath 182 72 moveto 182 152 lineto stroke % Polyline newpath 202 72 moveto 202 152 lineto stroke % Polyline newpath 242 97 moveto 282 97 lineto 282 127 lineto 242 127 lineto closepath stroke % Polyline newpath 242 237 moveto 282 237 lineto 282 267 lineto 242 267 lineto closepath stroke % Polyline newpath 332 282 moveto 372 282 lineto 372 312 lineto 332 312 lineto closepath stroke % Polyline newpath 442 167 moveto 482 167 lineto 482 197 lineto 442 197 lineto closepath stroke % Polyline newpath 522 282 moveto 562 282 lineto 562 312 lineto 522 312 lineto closepath stroke % Polyline newpath 202 112 moveto 242 112 lineto stroke % Polyline newpath 202 252 moveto 242 252 lineto stroke % Polyline newpath 282 252 moveto 327 207 lineto stroke % Polyline newpath 282 112 moveto 327 157 lineto stroke % Polyline newpath 387 182 moveto 442 182 lineto stroke % Polyline newpath 352 217 moveto 352 282 lineto stroke % Polyline newpath 372 297 moveto 522 297 lineto stroke % Polyline newpath 352 312 moveto 352 352 lineto stroke [4.000000] 0 setdash % Polyline newpath 102 42 moveto 422 42 lineto 422 412 lineto 102 412 lineto closepath stroke [] 0 setdash % Polyline newpath 542 313 moveto 542 331 lineto stroke 291 113 moveto 1 -1 scale (1) show 1 -1 scale 326 188 moveto 1 -1 scale (192.1.1) show 1 -1 scale 324 366 moveto 1 -1 scale (192.1.4) show 1 -1 scale 163 177 moveto 1 -1 scale (192.1.2) show 1 -1 scale 164 319 moveto 1 -1 scale (192.1.3) show 1 -1 scale 337 297 moveto 1 -1 scale (RT3) show 1 -1 scale 448 185 moveto 1 -1 scale (RT4) show 1 -1 scale 247 114 moveto 1 -1 scale (RT1) show 1 -1 scale 249 256 moveto 1 -1 scale (RT2) show 1 -1 scale 528 301 moveto 1 -1 scale (RT6) show 1 -1 scale 376 149 moveto 1 -1 scale (N3) show 1 -1 scale 344 385 moveto 1 -1 scale (N4) show 1 -1 scale 162 114 moveto 1 -1 scale (N1) show 1 -1 scale 162 256 moveto 1 -1 scale (N2) show 1 -1 scale 467 329 moveto 1 -1 scale (18.10.0.6) show 1 -1 scale 286 233 moveto 1 -1 scale (1) show 1 -1 scale 426 178 moveto 1 -1 scale (1) show 1 -1 scale 225 107 moveto 1 -1 scale (3) show 1 -1 scale 228 247 moveto 1 -1 scale (3) show 1 -1 scale 341 275 moveto 1 -1 scale (1) show 1 -1 scale 358 330 moveto 1 -1 scale (2) show 1 -1 scale 381 293 moveto 1 -1 scale (8) show 1 -1 scale 550 329 moveto 1 -1 scale (7) show 1 -1 scale 507 291 moveto 1 -1 scale (6) show 1 -1 scale 181 448 moveto 1 -1 scale (Figure 15: Area 1 with IP addresses shown) show 1 -1 scale showpage $F2psEnd endTexFig 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(65])m @eop 64 @bop0 64 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (The)s 10(next)m 11(three)m 10(events)m 11(concern)m 10(area)m 10(border)m 11(routers)m 10(only)m -1 r 46 c 52 304 p (5.)s t-ita.300 @sf 21(An)m 11(intra-ar)m (ea)s 11 r 114 c -1(oute)m 11(has)m 12(been)m 12(added/deleted/modi\014ed)m t-rom.300 @sf 11(in)m 12(the)m 12(routing)m 12(table.)m 18(This)m 12(may)m 12(cause)m 11 r 97 c 12(new)m 12(instance)m 12(of)m 12 r 97 c 104 354 p (summary)s 9(links)m 9(advertisement)m 10(\(for)m 9(this)m 9(route\))m 10(to)m 9(be)m 9(originated)m 9(in)m 10(each)m 9(attached)m 9(area)m 10(\(this)m 9(includes)m 9(the)m 9(backbone\).)m 52 437 p (6.)s t-ita.300 @sf 21(An)m 12(inter)m (-ar)s -2(ea)m 11 r 114 c (oute)s 11(has)m 12(been)m 12(added/deleted/modi\014ed)m t-rom.300 @sf 12(in)m 12(the)m 12(routing)m 11(table.)m 19(This)m 12(may)m 12(cause)m 12 r 97 c 12(new)m 12(instance)m 12(of)m 12 r 97 c 104 487 p (summary)s 11(links)m 12(advertisement)m 12(\(for)m 11(this)m 12(route\))m 12(to)m 11(be)m 12(originated)m 12(in)m 12(each)m 11(attached)m 12(area)m 12(\(but)m 11(NEVER)m 12(for)m 12(the)m 11(back-)m 104 537 p (bone\).)s 52 620 p (7.)s t-ita.300 @sf 21(The)m 8 r 114 c -1(outer)m 8(becomes)m 8(newly)m 8(attached)m 8(to)m 9(an)m 8(ar)m (ea.)s t-rom.300 @sf 12(The)m 8(router)m 8(must)m 9(then)m 8(originate)m 8(summary)m 9(link)m 8(advertisements)m 8(into)m 104 670 p (the)s 11(newly)m 11(attached)m 11(area)m 11(for)m 11(all)m 11(pertinent)m 11(intra-area)m 12(and)m 11(inter)m (-area)s 10(routes)m 11(in)m 11(its)m 11(routing)m 11(table.)m 16(See)m 11(Section)m 11(12.4.3)m 104 719 p (for)s 10(more)m 11(details.)m 0 829 p (The)s 10(last)m 11(event)m 10(concerns)m 11(AS)m 10(boundary)m 10(routers)m 11(only)m -2 r 46 c 52 938 p (8.)s t-ita.300 @sf 21(An)m 10(external)m 11 r 114 c -1(oute)m 10(gained)m 10(thr)m (ough)s 9(dir)m (ect)s 9(experience)m t-rom.300 @sf 11(with)m 11(an)m 10(external)m 11(routing)m 10(protocol)m 11(\(like)m 10(EGP\))m 11(changes.)m 14(This)m 104 988 p (will)s 10(cause)m 11(the)m 10(AS)m 10(boundary)m 11(router)m 10(to)m 11(originate)m 10 r 97 c 11(new)m 10(instance)m 10(of)m 11(an)m 10(external)m 11(links)m 10(advertisement.)m 0 1097 p (The)s 12(construction)m 12(of)m 12(each)m 12(type)m 12(of)m 12(the)m 12(link)m 12(state)m 12(advertisement)m 11(is)m 12(explained)m 12(below)m -1 r 46 c 17(In)m 12(general,)m 12(these)m 12(sections)m 12(describe)m 0 1147 p (the)s 10(contents)m 10(of)m 10(the)m 10(advertisement)m 10(body)m 10(\(i.e.,)m 10(the)m 10(part)m 10(coming)m 10(after)m 10(the)m 10(20-byte)m 10(advertisement)m 10(header\).)m 13(For)m 10(information)m 0 1196 p (concerning)s 10(the)m 11(building)m 10(of)m 11(the)m 10(link)m 10(state)m 11(advertisement)m 10(header)m 44 c 9(see)m 10(Section)m 11(12.1.)m t-bol.300 @sf 0 1334 p (12.4.1)s 42(Router)m 10(links)m t-rom.300 @sf 0 1429 p 65 c 11(router)m 12(originates)m 11 r 97 c 11(router)m 11(links)m 12(advertisement)m 11(for)m 11(each)m 12(area)m 11(that)m 11(it)m 12(belongs)m 11(to.)m 16(Such)m 12(an)m 11(advertisement)m 11(describes)m 11(the)m 0 1479 p (collected)s 12(states)m 12(of)m 12(the)m 12(router)m 1 r 39 c -1 r 115 c 11(links)m 12(to)m 12(the)m 12(area.)m 18(The)m 12(advertisement)m 12(is)m 12(\015ooded)m 12(throughout)m 12(the)m 12(particular)m 12(area,)m 12(and)m 12(no)m 0 1529 p (further)s -1 r 46 c 0 1597 p (The)s 9(format)m 8(of)m 9 r 97 c 9(router)m 8(links)m 9(advertisement)m 9(is)m 8(shown)m 9(in)m 9(Appendix)m 9 r 65 c 8(\(Section)m 9(A.4.2\).)m 13(The)m 9(\014rst)m 9(20)m 8(bytes)m 9(of)m 9(the)m 8(advertise-)m 0 1647 p (ment)s 10(consist)m 11(of)m 10(the)m 11(generic)m 10(link)m 10(state)m 11(header)m 10(that)m 11(was)m 10(discussed)m 11(in)m 10(Section)m 10(12.1.)m 14(Router)m 11(links)m 10(advertisements)m 11(have)m 10(LS)m 0 1696 p (type)s 9 r 61 c 9(1.)m 13(The)m 9(router)m 9(indicates)m 9(whether)m 8(it)m 9(is)m 9(willing)m 9(to)m 9(calculate)m 9(separate)m 9(routes)m 8(for)m 9(each)m 9(IP)m 9 r 84 c (OS)s 8(by)m 9(setting)m 9(\(or)m 9(resetting\))m 0 1746 p (the)s t-bol.300 @sf 10 r 84 c -2(-bit)m t-rom.300 @sf 9(of)m 10(the)m 11(link)m 10(state)m 11(advertisement')m -2 r 115 c t-bol.300 @sf 10(Options)m t-rom.300 @sf 10(\014eld.)m 0 1814 p 65 c 10(router)m 10(also)m 11(indicates)m 10(whether)m 10(it)m 10(is)m 11(an)m 10(area)m 10(border)m 10(router)m 44 c 9(or)m 10(an)m 11(AS)m 10(boundary)m 10(router)m -1 r 44 c 10(by)m 10(setting)m 10(the)m 10(appropriate)m 11(bits)m 10(in)m 0 1864 p (its)s 12(router)m 11(links)m 12(advertisements.)m 18(This)m 11(enables)m 12(paths)m 12(to)m 11(those)m 12(types)m 12(of)m 11(routers)m 12(to)m 12(be)m 11(saved)m 12(in)m 12(the)m 11(routing)m 12(table,)m 12(for)m 12(later)m 0 1914 p (processing)s 10(of)m 11(summary)m 10(link)m 11(advertisements)m 10(and)m 10(AS)m 11(external)m 10(link)m 11(advertisements.)m 0 1981 p (The)s 11(router)m 10(links)m 11(advertisement)m 11(then)m 11(describes)m 10(the)m 11(router)m 1 r 39 c -1 r 115 c 10(working)m 11(connections)m 10(\(links\))m 11(to)m 11(the)m 10(area.)m 15(Each)m 11(link)m 11(is)m 10(typed)m 0 2031 p (according)s 13(to)m 12(the)m 13(kind)m 13(of)m 13(attached)m 12(network.)m 21(Each)m 13(link)m 13(is)m 12(also)m 13(labelled)m 13(with)m 13(its)m 12(Link)m 13(ID.)m 13(This)m 13(ID)m 12(gives)m 13 r 97 c 13(name)m 12(to)m 13(the)m 0 2081 p (entity)s 10(that)m 11(is)m 10(on)m 11(the)m 10(other)m 10(end)m 11(of)m 10(the)m 11(link.)m 14 r 84 c -2(able)m 9(18)m 11(summarizes)m 10(the)m 10(values)m 11(used)m 10(for)m 11(the)m 10(type)m 10(and)m 11(Link)m 10(ID)m 11(\014elds.)m 0 2158 p (In)s 13(addition,)m 14(the)m 13(Link)m 13(Data)m 13(\014eld)m 13(is)m 13(speci\014ed)m 13(for)m 13(each)m 13(link.)m 21(This)m 13(\014eld)m 13(gives)m 13(32)m 13(bits)m 13(of)m 13(extra)m 13(information)m 13(for)m 13(the)m 13(link.)m 0 2207 p (For)s 11(links)m 11(to)m 11(routers)m 11(and)m 11(transit)m 11(networks,)m 11(this)m 11(\014eld)m 11(speci\014es)m 10(the)m 11(IP)m 11(interface)m 11(address)m 11(of)m 11(the)m 11(associated)m 11(router)m 11(interface)m 0 2257 p (\(this)s 12(is)m 12(needed)m 12(by)m 12(the)m 12(routing)m 12(table)m 12(calculation,)m 12(see)m 12(Section)m 12(16.3\).)m 19(For)m 12(links)m 12(to)m 12(stub)m 12(networks,)m 12(this)m 12(\014eld)m 12(speci\014es)m 12(the)m 0 2307 p (network')s -1 r 115 c 9(IP)m 11(address)m 10(mask.)m 0 2375 p (Finally)s -2 r 44 c 10(the)m 10(cost)m 10(of)m 11(using)m 10(the)m 10(link)m 10(for)m 11(output)m 10(\(possibly)m 10(specifying)m 11 r 97 c 10(dif)m (ferent)s 9(cost)m 11(for)m 10(each)m 10(type)m 11(of)m 10(service\))m 10(is)m 11(speci\014ed.)m 0 2425 p (The)s 10(output)m 11(cost)m 10(of)m 11 r 97 c 10(link)m 10(is)m 11(con\014gurable.)m 14(It)m 10(must)m 11(always)m 10(be)m 10(non-zero.)m 0 2492 p 84 c -2 r 111 c 12(further)m 12(describe)m 13(the)m 13(process)m 12(of)m 13(building)m 12(the)m 13(list)m 13(of)m 12(link)m 13(records,)m 13(suppose)m 13 r 97 c 12(router)m 13(wishes)m 13(to)m 12(build)m 13(router)m 12(links)m 13(ad-)m 0 2542 p (vertisement)s 14(for)m 14(an)m 14(Area)m 13(A.)m 25(The)m 14(router)m 13(examines)m 14(its)m 14(collection)m 14(of)m 14(interface)m 14(data)m 14(structures.)m 24(For)m 14(each)m 14(interface,)m 14(the)m 0 2592 p (following)s 10(steps)m 11(are)m 10(taken:)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(64])m @eop 63 @bop0 63 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (12.4)s 50(Originating)m 12(link)m 13(state)m 12(advertisements)m t-rom.300 @sf 0 287 p 65 c 12(router)m 12(may)m 12(originate)m 12(many)m 11(types)m 12(of)m 12(link)m 12(state)m 12(advertisements.)m 18 r 65 c 12(router)m 12(originates)m 12 r 97 c 12(router)m 12(links)m 12(advertisement)m 11(for)m 0 337 p (each)s 14(area)m 14(to)m 14(which)m 15(it)m 14(belongs.)m 25(If)m 14(the)m 14(router)m 14(is)m 14(also)m 15(the)m 14(Designated)m 14(Router)m 14(for)m 14(any)m 14(of)m 15(its)m 14(attached)m 14(networks,)m 15(it)m 14(will)m 0 387 p (originate)s 10 r 97 c 11(network)m 10(links)m 11(advertisement)m 10(for)m 10(that)m 11(network.)m 0 450 p (Area)s 10(border)m 9(routers)m 10(originate)m 9 r 97 c 10(single)m 9(summary)m 10(links)m 9(advertisement)m 10(for)m 9(each)m 10(known)m 9(inter)m (-area)s 9(destination.)m 13(AS)m 10(bound-)m 0 500 p (ary)s 8(routers)m 8(originate)m 8 r 97 c 8(single)m 8(AS)m 9(external)m 8(links)m 8(advertisement)m 8(for)m 8(each)m 8(known)m 8(AS)m 8(external)m 8(destination.)m 13(Destinations)m 8(are)m 0 550 p (advertised)s 11(one)m 11(at)m 11 r 97 c 11(time)m 11(so)m 11(that)m 11(the)m 11(change)m 10(in)m 11(any)m 11(single)m 11(route)m 11(can)m 11(be)m 11(\015ooded)m 11(without)m 11(re\015ooding)m 11(the)m 11(entire)m 11(collection)m 0 600 p (of)s 10(routes.)m 13(During)m 10(the)m 10(\015ooding)m 10(procedure,)m 10(many)m 9(link)m 10(state)m 10(advertisements)m 10(can)m 9(be)m 10(carried)m 10(by)m 10 r 97 c 9(single)m 10(Link)m 10(State)m 9(Update)m 0 650 p (packet.)s 0 713 p (As)s 13(an)m 12(example,)m 14(consider)m 12(router)m 13 r 82 c -1(T4)m 11(in)m 13(Figure)m 13(6.)m 21(It)m 12(is)m 13(an)m 13(area)m 13(border)m 12(router)m 44 c 12(having)m 13 r 97 c 12(connection)m 13(to)m 13(Area)m 12 r 49 c 13(and)m 13(the)m 0 763 p (backbone.)s 25(Router)m 14 r 82 c -2(T4)m 13(originates)m 14 r 53 c 14(distinct)m 14(link)m 14(state)m 14(advertisements)m 14(into)m 14(the)m 14(backbone)m 14(\(one)m 14(router)m 14(links,)m 15(and)m 14(one)m 0 813 p (summary)s 9(link)m 9(for)m 8(each)m 9(of)m 9(the)m 9(networks)m 8(N1-N4\).)m 14(Router)m 8 r 82 c -1(T4)m 8(will)m 8(also)m 9(originate)m 9 r 56 c 9(distinct)m 8(link)m 9(state)m 9(advertisements)m 9(into)m 0 863 p (Area)s 10 r 49 c 11(\(one)m 10(router)m 10(links)m 10(and)m 11(seven)m 10(summary)m 10(link)m 10(advertisements)m 11(as)m 10(pictured)m 10(in)m 10(Figure)m 11(7\).)m 13(If)m 11 r 82 c -2(T4)m 9(has)m 11(been)m 10(selected)m 10(as)m 0 913 p (Designated)s 10(Router)m 11(for)m 10(network)m 11(N3,)m 10(it)m 10(will)m 11(also)m 10(originate)m 11 r 97 c 10(network)m 11(links)m 10(advertisement)m 10(for)m 11(N3)m 10(into)m 11(Area)m 10(1.)m 0 977 p (In)s 14(this)m 15(same)m 14(\014gure,)m 15(router)m 15 r 82 c -2(T5)m 13(will)m 15(be)m 14(originating)m 14 r 51 c 15(distinct)m 14(AS)m 14(external)m 15(link)m 14(advertisements)m 14(\(one)m 15(for)m 14(each)m 14(of)m 15(the)m 0 1026 p (networks)s 15(N12-N14\).)m 27(These)m 15(will)m 15(be)m 15(\015ooded)m 15(throughout)m 14(the)m 15(entire)m 15(AS,)m 15(assuming)m 15(that)m 15(none)m 15(of)m 15(the)m 14(areas)m 15(have)m 15(been)m 0 1076 p (con\014gured)s 11(as)m 12(stubs.)m 17(However)m -1 r 44 c 11(if)m 12(area)m 11 r 51 c 11(has)m 12(been)m 11(con\014gured)m 12(as)m 11 r 97 c 12(stub)m 11(area,)m 12(the)m 12(external)m 11(advertisements)m 11(for)m 12(networks)m 0 1126 p (N12-N14)s 12(will)m 12(not)m 12(be)m 12(\015ooded)m 12(into)m 12(area)m 12 r 51 c 12(\(see)m 12(Section)m 12(3.6\).)m 19(Instead,)m 13(router)m 12 r 82 c -2(T1)m -1 r 49 c 11(would)m 12(originate)m 12 r 97 c 12(default)m 12(summary)m 0 1176 p (link)s 10(advertisement)m 11(that)m 10(would)m 10(be)m 11(\015ooded)m 10(throughout)m 10(area)m 11 r 51 c 10(\(see)m 11(Section)m 10(12.4.3\).)m 14(This)m 10(instructs)m 10(all)m 11(of)m 10(area)m 10(3')m -1 r 115 c 10(internal)m 0 1226 p (routers)s 10(to)m 11(send)m 10(their)m 11(AS)m 10(external)m 10(traf)m (\014c)s 10(to)m 11 r 82 c -2(T1)m -1(1.)m 0 1289 p (Whenever)s 12 r 97 c 12(new)m 12(instance)m 12(of)m 13 r 97 c 12(link)m 12(state)m 12(advertisement)m 12(is)m 12(originated,)m 13(its)m 12(LS)m 12(sequence)m 12(number)m 12(is)m 12(incremented,)m 13(its)m 12(LS)m 0 1339 p (age)s 10(is)m 9(set)m 10(to)m 10(0,)m 10(its)m 9(LS)m 10(checksum)m 10(is)m 10(calculated,)m 9(and)m 10(the)m 10(advertisement)m 10(is)m 9(added)m 10(to)m 10(the)m 10(link)m 9(state)m 10(database)m 10(and)m 9(\015ooded)m 10(out)m 0 1389 p (the)s 12(appropriate)m 12(interfaces.)m 19(See)m 12(Section)m 12(13.2)m 12(for)m 12(details)m 13(concerning)m 12(the)m 12(installation)m 12(of)m 12(the)m 12(advertisement)m 12(into)m 12(the)m 12(link)m 0 1439 p (state)s 10(database.)m 14(See)m 11(Section)m 10(13.3)m 11(for)m 10(details)m 10(concerning)m 11(the)m 10(\015ooding)m 11(of)m 10(newly)m 10(originated)m 11(advertisements.)m 0 1503 p (The)s 10(eight)m 11(events)m 10(that)m 11(cause)m 10 r 97 c 10(new)m 11(instance)m 10(of)m 11 r 97 c 10(link)m 11(state)m 10(advertisement)m 10(to)m 11(be)m 10(originated)m 11(are:)m 52 1599 p (1.)s t-ita.300 @sf 21(The)m 9(LS)m 9 r 114 c (efr)s -2(esh)m 8(timer)m 10(\014ring)m t-rom.300 @sf 46 c 13(There)m 10(is)m 9 r 97 c 9(LS)m 10(refresh)m 9(timer)m 9(for)m 10(each)m 9(link)m 9(state)m 10(advertisement)m 9(that)m 9(the)m 10(router)m 9(has)m 9(orig-)m 104 1649 p (inated.)s 13(The)m 10(LS)m 10(refresh)m 10(timer)m 10(is)m 10(an)m 10(interval)m 10(timer)m -1 r 44 c 9(with)m 10(length)m 10(LSRefreshT)m -1(imer)m -2 r 46 c 13(The)m 9(LS)m 10(refresh)m 10(timer)m 10(guarantees)m 104 1699 p (periodic)s 13(originations)m 14(regardless)m 13(of)m 14(any)m 13(other)m 13(events)m 14(that)m 13(cause)m 14(new)m 13(instances.)m 23(This)m 14(periodic)m 13(updating)m 13(of)m 14(link)m 104 1749 p (state)s 11(advertisements)m 12(adds)m 11(robustness)m 11(to)m 12(the)m 11(link)m 11(state)m 12(algorithm.)m 17(Link)m 11(state)m 11(advertisements)m 12(that)m 11(solely)m 11(describe)m 104 1798 p (unreachable)s 12(destinations)m 13(should)m 13(not)m 12(be)m 13(refreshed,)m 13(but)m 13(should)m 12(instead)m 13(be)m 13(\015ushed)m 12(from)m 13(the)m 13(routing)m 12(domain)m 13(\(see)m 104 1848 p (Section)s 10(14.1\).)m 0 1945 p (When)s 14(whatever)m 14(is)m 14(being)m 14(described)m 14(by)m 14 r 97 c 14(link)m 14(state)m 14(advertisement)m 14(changes,)m 15 r 97 c 14(new)m 14(advertisement)m 14(is)m 14(originated.)m 25 r 84 c -2(wo)m 0 1995 p (instances)s 10(of)m 10(the)m 10(same)m 11(link)m 10(state)m 10(advertisement)m 10(may)m 10(not)m 10(be)m 10(originated)m 10(within)m 11(the)m 10(time)m 10(period)m 10(MinLSInterval.)m 14(This)m 10(may)m 0 2044 p (require)s 13(that)m 13(the)m 13(generation)m 13(of)m 13(the)m 12(next)m 13(instance)m 13(to)m 13(be)m 13(delayed)m 13(by)m 13(up)m 13(to)m 13(MinLSInterval.)m 21(The)m 13(following)m 13(changes)m 13(may)m 0 2094 p (cause)s 11 r 97 c 12(router)m 11(to)m 12(originate)m 11 r 97 c 11(new)m 12(instance)m 11(of)m 12(an)m 11(advertisement.)m 17(These)m 11(changes)m 12(should)m 11(cause)m 12(new)m 11(originations)m 11(only)m 12(if)m 0 2144 p (the)s 10(contents)m 11(of)m 10(the)m 11(new)m 10(advertisement)m 10(would)m 11(be)m 10(dif)m (ferent.)s 52 2240 p (2.)s t-ita.300 @sf 21(An)m 10(interface')m -4 r 115 c 9(state)m 11(changes)m t-rom.300 @sf 11(\(see)m 10(Section)m 11(9.1\).)m 15(This)m 10(may)m 11(mean)m 10(that)m 11(it)m 11(is)m 10(necessary)m 11(to)m 11(produce)m 10 r 97 c 11(new)m 11(instance)m 10(of)m 104 2290 p (the)s 10(router)m 11(links)m 10(advertisement.)m 52 2370 p (3.)s t-ita.300 @sf 21(An)m 14(attached)m 15(network')m -4 r 115 c 13(Designated)m 15(Router)m 15(changes.)m t-rom.300 @sf 27 r 65 c 14(new)m 15(router)m 15(links)m 15(advertisement)m 14(should)m 15(be)m 15(originated.)m 104 2419 p (Also,)s 10(if)m 11(the)m 10(router)m 10(itself)m 11(is)m 10(now)m 11(the)m 10(Designated)m 11(Router)m -1 r 44 c 9 r 97 c 11(new)m 10(network)m 11(links)m 10(advertisement)m 10(should)m 11(be)m 10(produced.)m 52 2499 p (4.)s t-ita.300 @sf 21(One)m 8(of)m 9(the)m 9(neighboring)m 9 r 114 c (outers)s 8(changes)m 9(to/fr)m -1(om)m 8(the)m 9(FULL)m 9(state.)m t-rom.300 @sf 13(This)m 9(may)m 9(mean)m 9(that)m 9(it)m 9(is)m 9(necessary)m 9(to)m 9(produce)m 9 r 97 c 104 2549 p (new)s 9(instance)m 8(of)m 9(the)m 9(router)m 9(links)m 9(advertisement.)m 13(Also,)m 9(if)m 9(the)m 9(router)m 9(is)m 9(itself)m 8(the)m 9(Designated)m 9(Router)m 9(for)m 9(the)m 8(attached)m 104 2599 p (network,)s 10 r 97 c 11(new)m 10(network)m 10(links)m 11(advertisement)m 10(should)m 11(be)m 10(produced.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(63])m @eop 62 @bop0 62 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (An)s 13(implementation)m 14(of)m 13(OSPF)m 13(must)m 13(be)m 14(able)m 13(to)m 13(access)m 13(individual)m 14(pieces)m 13(of)m 13(an)m 13(area)m 14(database.)m 22(This)m 13(lookup)m 13(function)m 14(is)m 0 245 p (based)s 12(on)m 12(an)m 12(advertisement')m -1 r 115 c 11(LS)m 13(type,)m 12(Link)m 12(State)m 12(ID)m 13(and)m 12(Advertising)m 12(Router)m -1 r 46 c t-rom.210 @sf 1306 230 p (13)s t-rom.300 @sf 1356 245 p (There)s 12(will)m 13(be)m 12 r 97 c 12(single)m 12(instance)m 12(\(the)m 0 295 p (most)s 10(up-to-date\))m 10(of)m 10(each)m 11(link)m 10(state)m 10(advertisement)m 10(in)m 10(the)m 10(database.)m 14(The)m 10(database)m 10(lookup)m 10(function)m 11(is)m 10(invoked)m 10(during)m 10(the)m 0 345 p (link)s 9(state)m 9(\015ooding)m 10(procedure)m 9(\(Section)m 9(13\))m 9(and)m 9(the)m 10(routing)m 9(table)m 9(calculation)m 9(\(Section)m 9(16\).)m 14(In)m 9(addition,)m 9(using)m 10(this)m 9(lookup)m 0 394 p (function)s 11(the)m 12(router)m 11(can)m 11(determine)m 11(whether)m 12(it)m 11(has)m 11(itself)m 11(ever)m 12(originated)m 11 r 97 c 11(particular)m 11(link)m 12(state)m 11(advertisement,)m 11(and)m 11(if)m 12(so,)m 0 444 p (with)s 10(what)m 11(LS)m 10(sequence)m 11(number)m -2 r 46 c 0 512 p 65 c 14(link)m 14(state)m 13(advertisement)m 14(is)m 14(added)m 14(to)m 13 r 97 c 14(router)m 2 r 39 c -2 r 115 c 13(database)m 14(when)m 14(either)m 13(a\))m 14(it)m 14(is)m 14(received)m 13(during)m 14(the)m 14(\015ooding)m 14(process)m 0 562 p (\(Section)s 8(13\))m 8(or)m 8(b\))m 8(it)m 8(is)m 8(originated)m 8(by)m 8(the)m 8(router)m 8(itself)m 8(\(Section)m 8(12.4\).)m 13 r 65 c 8(link)m 8(state)m 8(advertisement)m 8(is)m 8(deleted)m 8(from)m 8 r 97 c 8(router)m 2 r 39 c -1 r 115 c 0 611 p (database)s 10(when)m 10(either)m 10(a\))m 11(it)m 10(has)m 10(been)m 10(overwritten)m 10(by)m 10 r 97 c 10(newer)m 11(instance)m 10(during)m 10(the)m 10(\015ooding)m 10(process)m 10(\(Section)m 10(13\))m 10(or)m 11(b\))m 10(the)m 0 661 p (router)s 12(originates)m 12 r 97 c 12(newer)m 11(instance)m 12(of)m 12(one)m 12(of)m 12(its)m 12(self-originated)m 12(advertisements)m 12(\(Section)m 11(12.4\))m 12(or)m 12(c\))m 12(the)m 12(advertisement)m 0 711 p (ages)s 10(out)m 9(and)m 10(is)m 10(\015ushed)m 9(from)m 10(the)m 10(routing)m 9(domain)m 10(\(Section)m 10(14\).)m 13(Whenever)m 10 r 97 c 10(link)m 9(state)m 10(advertisement)m 10(is)m 9(deleted)m 10(from)m 10(the)m 0 761 p (database)s 10(it)m 11(must)m 10(also)m 11(be)m 10(removed)m 10(from)m 11(all)m 10(neighbors')m t-bol.300 @sf 11(Link)m 10(state)m 11 r 114 c (etransmission)s 9(lists)m t-rom.300 @sf 11(\(see)m 10(Section)m 10(10\).)m t-bol.360 @sf 0 898 p (12.3)s 50(Repr)m (esentation)s 12(of)m 12 r 84 c (OS)s t-rom.300 @sf 0 993 p (All)s 13(OSPF)m 13(link)m 13(state)m 12(advertisements)m 13(\(with)m 13(the)m 13(exception)m 13(of)m 13(network)m 13(links)m 13(advertisements\))m 12(specify)m 13(metrics.)m 22(In)m 12(router)m 0 1043 p (links)s 11(advertisements,)m 10(the)m 11(metrics)m 10(indicate)m 11(the)m 11(costs)m 10(of)m 11(the)m 10(described)m 11(interfaces.)m 14(In)m 11(summary)m 11(link)m 10(and)m 11(AS)m 10(external)m 11(link)m 0 1093 p (advertisements,)s 13(the)m 12(metric)m 13(indicates)m 12(the)m 13(cost)m 12(of)m 13(the)m 12(described)m 13(path.)m 19(In)m 13(all)m 12(of)m 13(these)m 12(advertisements,)m 13 r 97 c 13(separate)m 12(metric)m 0 1143 p (can)s 11(be)m 12(speci\014ed)m 11(for)m 12(each)m 11(IP)m 12 r 84 c (OS.)s 16 r 84 c (OS)s 11(is)m 11(encoded)m 12(in)m 11(an)m 12(OSPF)m 11(link)m 12(state)m 11(advertisement)m 12(as)m 11(the)m 12(following)m 11(mapping)m 12(of)m 0 1192 p (the)s 10(Delay)m 11(\(D\),)m 10(Throughput)m 11(\(T\))m 10(and)m 10(Reliability)m 11(\(R\))m 10(\015ags)m 11(found)m 10(in)m 11(the)m 10(IP)m 10(packet)m 11(header)m 1 r 39 c -1 r 115 c 9 r 84 c (OS)s 10(\014eld)m 11(\(see)m 10([RFC)m 10(791]\).)m 704 1299 p 543 2 ru 703 1348 p 2 50 ru t-ita.300 @sf 728 1334 p (OSPF)s 11(encoding)m 1017 1348 p 2 50 ru 1043 1334 p 68 c 1097 1348 p 2 50 ru 1123 1334 p 84 c 1170 1348 p 2 50 ru 1196 1334 p 82 c 1246 1348 p 2 50 ru 704 1350 p 543 2 ru 703 1400 p 2 50 ru t-rom.300 @sf 850 1385 p 48 c 1017 1400 p 2 50 ru 1048 1385 p 48 c 1097 1400 p 2 50 ru 1124 1385 p 48 c 1170 1400 p 2 50 ru 1198 1385 p 48 c 1246 1400 p 2 50 ru 703 1450 p 2 50 ru 850 1435 p 52 c 1017 1450 p 2 50 ru 1048 1435 p 48 c 1097 1450 p 2 50 ru 1124 1435 p 48 c 1170 1450 p 2 50 ru 1198 1435 p 49 c 1246 1450 p 2 50 ru 703 1500 p 2 50 ru 850 1485 p 56 c 1017 1500 p 2 50 ru 1048 1485 p 48 c 1097 1500 p 2 50 ru 1124 1485 p 49 c 1170 1500 p 2 50 ru 1198 1485 p 48 c 1246 1500 p 2 50 ru 703 1549 p 2 50 ru 840 1534 p (12)s 1017 1549 p 2 50 ru 1048 1534 p 48 c 1097 1549 p 2 50 ru 1124 1534 p 49 c 1170 1549 p 2 50 ru 1198 1534 p 49 c 1246 1549 p 2 50 ru 703 1599 p 2 50 ru 840 1584 p (16)s 1017 1599 p 2 50 ru 1048 1584 p 49 c 1097 1599 p 2 50 ru 1124 1584 p 48 c 1170 1599 p 2 50 ru 1198 1584 p 48 c 1246 1599 p 2 50 ru 703 1649 p 2 50 ru 840 1634 p (20)s 1017 1649 p 2 50 ru 1048 1634 p 49 c 1097 1649 p 2 50 ru 1124 1634 p 48 c 1170 1649 p 2 50 ru 1198 1634 p 49 c 1246 1649 p 2 50 ru 703 1699 p 2 50 ru 840 1684 p (24)s 1017 1699 p 2 50 ru 1048 1684 p 49 c 1097 1699 p 2 50 ru 1124 1684 p 49 c 1170 1699 p 2 50 ru 1198 1684 p 48 c 1246 1699 p 2 50 ru 703 1749 p 2 50 ru 840 1734 p (28)s 1017 1749 p 2 50 ru 1048 1734 p 49 c 1097 1749 p 2 50 ru 1124 1734 p 49 c 1170 1749 p 2 50 ru 1198 1734 p 49 c 1246 1749 p 2 50 ru 704 1750 p 543 2 ru 656 1887 p 84 c -2(able)m 10(17:)m 14(Representing)m 10 r 84 c (OS)s 10(in)m 10(OSPF)m -2 r 46 c 0 1996 p (Each)s 11(OSPF)m 12(link)m 11(state)m 11(advertisement)m 12(must)m 11(specify)m 11(the)m 11 r 84 c (OS)s 11 r 48 c 11(metric.)m 17(Other)m 11 r 84 c (OS)s 11(metrics,)m 11(if)m 12(they)m 11(appear)m -1 r 44 c 11(must)m 11(appear)m 0 2046 p (in)s 12(order)m 13(of)m 12(increasing)m 12 r 84 c (OS)s 12(encoding.)m 20(For)m 12(example,)m 13(the)m 12 r 84 c (OS)s 12 r 56 c 12(\(high)m 13(throughput\))m 12(metric)m 12(must)m 13(always)m 12(appear)m 13(before)m 0 2096 p (the)s 12 r 84 c (OS)s 11(16)m 12(\(low)m 12(delay\))m 12(metric)m 12(when)m 12(both)m 12(are)m 12(speci\014ed.)m 18(If)m 12 r 97 c 12(metric)m 12(for)m 12(some)m 12(non-zero)m 12 r 84 c (OS)s 11(is)m 12(not)m 12(speci\014ed,)m 12(its)m 12(cost)m 0 2145 p (defaults)s 9(to)m 9(the)m 9(cost)m 9(for)m 9 r 84 c (OS)s 8(0,)m 10(unless)m 9(the)m t-bol.300 @sf 9 r 84 c -3(-bit)m t-rom.300 @sf 8(is)m 9(reset)m 9(in)m 9(the)m 9(advertisement')m -1 r 115 c 8(options)m 9(\014eld)m 9(\(see)m 9(Section)m 9(12.1.2)m 9(for)m 9(more)m 0 2195 p (details\).)s 0 2263 p (Note)s 15(that)m 15(if)m 16(more)m 15 r 84 c (OS)s 14(types)m 15(are)m 16(de\014ned)m 15(in)m 15 r 97 c 15(future)m 15(IP)m 15(architecture,)m 17(OSPF')m -1 r 115 c 14 r 84 c (OS)s 14(encoding)m 15(can)m 15(be)m 16(extended)m 15(in)m 15 r 97 c 0 2313 p (straightforward)s 10(manner)m -1 r 46 c 0 2348 p 780 2 ru t-rom.180 @sf 33 2376 p (13)s t-rom.240 @sf 60 2388 p (There)s 9(is)m 8(one)m 9(instance)m 8(where)m 9 r 97 c 9(lookup)m 8(must)m 9(be)m 8(done)m 9(based)m 9(on)m 8(partial)m 9(information.)m 12(This)m 8(is)m 9(during)m 9(the)m 8(routing)m 9(table)m 9(calculation,)m 8(when)m 9 r 97 c 8(network)m 0 2427 p (links)s 6(advertisement)m 7(must)m 6(be)m 6(found)m 6(based)m 7(solely)m 6(on)m 6(its)m 7(Link)m 6(State)m 6(ID.)m 6(The)m 7(lookup)m 6(in)m 6(this)m 7(case)m 6(is)m 6(still)m 6(well)m 7(de\014ned,)m 6(since)m 7(no)m 6(two)m 6(network)m 7(advertisements)m 0 2467 p (can)s 8(have)m 9(the)m 8(same)m 8(Link)m 9(State)m 8(ID.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(62])m @eop 61 @bop0 cmmi10.300 @sf [ 40 28 -2 0 33.352] 78 @dc cmsy10.300 @sf [ 32 2 -3 -9 32.286] 0 @dc cmr10.300 @sf [<000600000006000000060000000600000006000000060000000600000006000000060000000600 00000600000006000000060000FFFFFFE0FFFFFFE0000600000006000000060000000600000006 00000006000000060000000600000006000000060000000600000006000000060000> 32 28 -2 4 32.286] 43 @dc 61 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (state)s 11(advertisement.)m 14(Afterwards,)m 10(the)m 11(advertisement')m -2 r 115 c 10(sequence)m 10(number)m 11(is)m 10(incremented)m 11(each)m 10(time)m 11(the)m 10(router)m 11(originates)m 0 245 p 97 c 11(new)m 10(instance)m 11(of)m 11(the)m 11(advertisement.)m 14(When)m 11(an)m 11(attempt)m 10(is)m 11(made)m 11(to)m 11(increment)m 10(the)m 11(sequence)m 11(number)m 10(past)m 11(the)m 11(maximum)m 0 295 p (value)s 12(of)m 12(of)m cmmi10.300 @sf 12 r 78 c cmsy10.300 @sf 16 r 0 c t-rom.300 @sf 10 r 49 c 13 r 40 c c-med.300 @sf (0x7fffffff)s t-rom.300 @sf (\),)s 12(the)m 12(current)m 13(instance)m 12(of)m 12(the)m 12(advertisement)m 12(must)m 12(\014rst)m 12(be)m 13(\015ushed)m 12(from)m 12(the)m 12(routing)m 0 345 p (domain.)s 21(This)m 13(is)m 13(done)m 13(by)m 12(prematurely)m 13(aging)m 13(the)m 13(advertisement)m 13(\(see)m 13(Section)m 12(14.1\))m 13(and)m 13(re\015ooding)m 13(it.)m 21(As)m 13(soon)m 13(as)m 13(this)m 0 394 p (\015ood)s 13(has)m 12(been)m 13(acknowledged)m 12(by)m 13(all)m 12(adjacent)m 13(neighbors,)m 13 r 97 c 12(new)m 13(instance)m 12(can)m 13(be)m 12(originated)m 13(with)m 12(sequence)m 13(number)m 12(of)m cmsy10.300 @sf 0 444 p 0 c cmmi10.300 @sf 78 c cmr10.300 @sf 14 r 43 c t-rom.300 @sf 9 r 49 c 10 r 40 c c-med.300 @sf (0x80000001)s t-rom.300 @sf (\).)s 0 512 p (The)s 11(router)m 12(may)m 11(be)m 11(forced)m 11(to)m 12(promote)m 11(the)m 11(sequence)m 12(number)m 11(of)m 11(one)m 11(of)m 12(its)m 11(advertisements)m 11(when)m 12 r 97 c 11(more)m 11(recent)m 11(instance)m 0 562 p (of)s 14(the)m 13(advertisement)m 14(is)m 13(unexpectedly)m 14(received)m 14(during)m 13(the)m 14(\015ooding)m 14(process.)m 23(This)m 14(should)m 13(be)m 14 r 97 c 14(rare)m 13(event.)m 24(This)m 13(may)m 0 611 p (indicate)s 10(that)m 10(an)m 10(out-of-date)m 9(advertisement,)m 10(originated)m 10(by)m 10(the)m 10(router)m 10(itself)m 10(before)m 10(its)m 9(last)m 10(restart/reload,)m 10(still)m 10(exists)m 10(in)m 10(the)m 0 661 p (Autonomous)s 10(System.)m 14(For)m 11(more)m 10(information)m 11(see)m 10(Section)m 10(13.4.)m t-bol.300 @sf 0 790 p (12.1.7)s 42(LS)m 10(checksum)m t-rom.300 @sf 0 885 p (This)s 14(\014eld)m 13(is)m 14(the)m 14(checksum)m 13(of)m 14(the)m 13(complete)m 14(contents)m 14(of)m 13(the)m 14(advertisement,)m 14(excepting)m 14(the)m 14(age)m 13(\014eld.)m 24(The)m 13(age)m 14(\014eld)m 14(is)m 0 935 p (excepted)s 12(so)m 13(that)m 12(an)m 12(advertisement')m -1 r 115 c 11(age)m 12(can)m 13(be)m 12(incremented)m 12(without)m 13(updating)m 12(the)m 12(checksum.)m 20(The)m 12(checksum)m 12(used)m 13(is)m 0 985 p (the)s 13(same)m 13(that)m 13(is)m 13(used)m 13(for)m 13(ISO)m 13(connectionless)m 13(datagrams;)m 14(it)m 13(is)m 13(commonly)m 13(referred)m 13(to)m 13(as)m 13(the)m 13(Fletcher)m 13(checksum.)m 22(It)m 13(is)m 0 1035 p (documented)s 12(in)m 12(Annex)m 12 r 67 c 11(of)m 12([RFC)m 12(994].)m 18(The)m 12(link)m 12(state)m 12(header)m 12(also)m 12(contains)m 11(the)m 12(length)m 12(of)m 12(the)m 12(advertisement)m 12(in)m 11(bytes;)m 0 1085 p (subtracting)s 10(the)m 11(size)m 10(of)m 11(the)m 10(age)m 10(\014eld)m 11(\(two)m 10(bytes\))m 11(yields)m 10(the)m 11(amount)m 10(of)m 10(data)m 11(to)m 10(checksum.)m 0 1152 p (The)s 9(checksum)m 9(is)m 9(used)m 9(to)m 9(detect)m 9(data)m 9(corruption)m 9(of)m 9(an)m 9(advertisement.)m 14(This)m 9(corruption)m 9(can)m 9(occur)m 9(while)m 9(an)m 9(advertisement)m 0 1202 p (is)s 8(being)m 8(\015ooded,)m 9(or)m 8(while)m 8(it)m 8(is)m 8(being)m 8(held)m 8(in)m 8 r 97 c 8(router)m 1 r 39 c -1 r 115 c 7(memory)m -2 r 46 c 12(The)m 8(LS)m 8(checksum)m 8(\014eld)m 8(cannot)m 8(take)m 8(on)m 8(the)m 8(value)m 8(of)m 8(zero;)m 0 1252 p (the)s 11(occurrence)m 10(of)m 11(such)m 10 r 97 c 11(value)m 10(should)m 11(be)m 10(considered)m 11 r 97 c 10(checksum)m 11(failure.)m 14(In)m 11(other)m 10(words,)m 11(calculation)m 10(of)m 11(the)m 11(checksum)m 0 1302 p (is)s 10(not)m 11(optional.)m 0 1369 p (The)s 14(checksum)m 13(of)m 14 r 97 c 14(link)m 13(state)m 14(advertisement)m 13(is)m 14(veri\014ed)m 14(in)m 13(two)m 14(cases:)m 20(a\))m 14(when)m 14(it)m 13(is)m 14(received)m 13(in)m 14 r 97 c 14(Link)m 13(State)m 14(Update)m 0 1419 p (Packet)s 9(and)m 9(b\))m 8(at)m 9(times)m 9(during)m 9(the)m 9(aging)m 9(of)m 8(the)m 9(link)m 9(state)m 9(database.)m 13(The)m 9(detection)m 9(of)m 9 r 97 c 9(checksum)m 9(failure)m 8(leads)m 9(to)m 9(separate)m 0 1469 p (actions)s 10(in)m 11(each)m 10(case.)m 14(See)m 11(Sections)m 10(13)m 10(and)m 11(14)m 10(for)m 11(more)m 10(details.)m 0 1537 p (Whenever)s 7(the)m 7(LS)m 7(sequence)m 7(number)m 7(\014eld)m 7(indicates)m 7(that)m 7(two)m 7(instances)m 7(of)m 8(an)m 7(advertisement)m 7(are)m 7(the)m 7(same,)m 7(the)m 7(LS)m 8(checksum)m 0 1586 p (\014eld)s 12(is)m 13(examined.)m 19(If)m 12(there)m 12(is)m 13 r 97 c 12(dif)m (ference,)s 12(the)m 12(instance)m 12(with)m 13(the)m 12(lar)m (ger)s 11(checksum)m 13(is)m 12(considered)m 12(to)m 12(be)m 13(most)m 12(recent.)m t-rom.210 @sf 1919 1571 p (12)s t-rom.300 @sf 0 1636 p (See)s 10(Section)m 11(13.1)m 10(for)m 11(more)m 10(details.)m t-bol.360 @sf 0 1773 p (12.2)s 50(The)m 12(link)m 13(state)m 12(database)m t-rom.300 @sf 0 1869 p 65 c 9(router)m 10(has)m 9 r 97 c 10(separate)m 9(link)m 9(state)m 10(database)m 9(for)m 10(every)m 9(area)m 10(to)m 9(which)m 9(it)m 10(belongs.)m 13(The)m 10(link)m 9(state)m 10(database)m 9(has)m 9(been)m 10(referred)m 0 1918 p (to)s 11(elsewhere)m 10(in)m 11(the)m 10(text)m 11(as)m 11(the)m 10(topological)m 11(database.)m 14(All)m 11(routers)m 10(belonging)m 11(to)m 11(the)m 10(same)m 11(area)m 10(have)m 11(identical)m 11(topological)m 0 1968 p (databases)s 10(for)m 11(the)m 10(area.)m 0 2036 p (The)s 13(databases)m 13(for)m 12(each)m 13(individual)m 13(area)m 13(are)m 13(always)m 13(dealt)m 12(with)m 13(separately)m -1 r 46 c 20(The)m 13(shortest)m 12(path)m 13(calculation)m 13(is)m 13(performed)m 0 2086 p (separately)s 13(for)m 14(each)m 13(area)m 13(\(see)m 14(Section)m 13(16\).)m 23(Components)m 13(of)m 13(the)m 14(area)m 13(topological)m 13(database)m 13(are)m 14(\015ooded)m 13(throughout)m 13(the)m 0 2136 p (area)s 13(only)m -1 r 46 c 22(Finally)m -2 r 44 c 13(when)m 14(an)m 13(adjacency)m 14(\(belonging)m 13(to)m 14(Area)m 13(A\))m 14(is)m 13(being)m 14(brought)m 13(up,)m 15(only)m 13(the)m 14(database)m 13(for)m 14(Area)m 13 r 65 c 14(is)m 0 2185 p (synchronized)s 10(between)m 11(the)m 10(two)m 11(routers.)m 0 2253 p (The)s 9(area)m 9(database)m 9(is)m 9(composed)m 9(of)m 9(router)m 9(links)m 9(advertisements,)m 9(network)m 9(links)m 9(advertisements,)m 10(and)m 9(summary)m 9(link)m 9(adver-)m 0 2303 p (tisements)s 11(\(all)m 11(listed)m 10(in)m 11(the)m 11(area)m 11(data)m 11(structure\).)m 15(In)m 11(addition,)m 10(external)m 11(routes)m 11(\(AS)m 11(external)m 11(advertisements\))m 10(are)m 11(included)m 0 2353 p (in)s 10(all)m 11(non-stub)m 10(area)m 11(databases)m 10(\(see)m 10(Section)m 11(3.6\).)m 0 2387 p 780 2 ru t-rom.180 @sf 33 2414 p (12)s t-rom.240 @sf 60 2426 p (When)s 7(two)m 7(advertisements)m 7(have)m 7(dif)m (ferent)s 7(checksums,)m 7(they)m 7(are)m 7(assumed)m 8(to)m 7(be)m 7(separate)m 7(instances.)m 11(This)m 7(can)m 7(occur)m 7(when)m 7 r 97 c 7(router)m 7(restarts,)m 7(and)m 8(loses)m 0 2465 p (track)s 9(of)m 10(its)m 9(previous)m 10(sequence)m 9(number)m -1 r 46 c 14(In)m 9(this)m 10(case,)m 10(since)m 9(the)m 9(two)m 10(advertisements)m 9(have)m 10(the)m 9(same)m 10(sequence)m 9(number)m 44 c 9(it)m 9(is)m 9(not)m 10(possible)m 9(to)m 10(determine)m 0 2505 p (which)s 11(link)m 11(state)m 11(is)m 11(actually)m 11(newer)m -1 r 46 c 18(If)m 11(the)m 11(wrong)m 11(advertisement)m 11(is)m 11(accepted)m 11(as)m 11(newer)m -1 r 44 c 11(the)m 11(originating)m 11(router)m 11(will)m 11(originate)m 11(another)m 11(instance.)m 19(See)m 0 2544 p (Section)s 8(13.4)m 9(for)m 8(further)m 8(details.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(61])m @eop 60 @bop0 60 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 325 201 p 1300 2 ru 324 259 p 2 59 ru t-ita.300 @sf 350 236 p (LS)s 11(type)m 524 259 p 2 59 ru 550 236 p (Advertisement)s 10(description)m 1624 259 p 2 59 ru 325 261 p 1300 2 ru 324 411 p 2 151 ru t-rom.300 @sf 350 296 p 49 c 524 411 p 2 151 ru 550 296 p (These)s 15(are)m 15(the)m 15(router)m 15(links)m 15(advertisements.)m 27(They)m 15(describe)m 15(the)m 550 346 p (collected)s 8(states)m 8(of)m 8(the)m 8(router)m 2 r 39 c -2 r 115 c 7(interfaces.)m 14(For)m 8(more)m 8(information,)m 550 396 p (consult)s 10(Section)m 11(12.4.1.)m 1624 411 p 2 151 ru 325 413 p 1300 2 ru 324 563 p 2 151 ru 350 448 p 50 c 524 563 p 2 151 ru 550 448 p (These)s 11(are)m 11(the)m 12(network)m 11(links)m 11(advertisements.)m 17(They)m 11(describe)m 11(the)m 550 497 p (set)s 14(of)m 13(routers)m 14(attached)m 14(to)m 13(the)m 14(network.)m 24(For)m 14(more)m 13(information,)m 550 547 p (consult)s 10(Section)m 11(12.4.2.)m 1624 563 p 2 151 ru 325 564 p 1300 2 ru 324 822 p 2 259 ru 350 599 p 51 c 11(or)m 10 r 52 c 524 822 p 2 259 ru 550 599 p (These)s 18(are)m 18(the)m 18(summary)m 18(link)m 18(advertisements.)m 36(They)m 18(describe)m 550 649 p (inter)s (-area)s 10(routes,)m 12(and)m 11(enable)m 11(the)m 11(condensation)m 11(of)m 11(routing)m 11(infor-)m 550 699 p (mation)s 13(at)m 13(area)m 12(borders.)m 22(Originated)m 12(by)m 13(area)m 13(border)m 13(routers,)m 13(the)m 550 749 p 84 c -2(ype)m 15 r 51 c 16(advertisements)m 16(describe)m 16(routes)m 15(to)m 16(networks)m 16(while)m 16(the)m 550 799 p 84 c -2(ype)m 9 r 52 c 11(advertisements)m 10(describe)m 11(routes)m 10(to)m 10(AS)m 11(boundary)m 10(routers.)m 1624 822 p 2 259 ru 325 824 p 1300 2 ru 324 1074 p 2 250 ru 350 859 p 53 c 524 1074 p 2 250 ru 550 859 p (These)s 13(are)m 14(the)m 13(AS)m 13(external)m 14(link)m 13(advertisements.)m 23(Originated)m 13(by)m 550 909 p (AS)s 14(boundary)m 15(routers,)m 15(they)m 14(describe)m 15(routes)m 14(to)m 15(destinations)m 14(ex-)m 550 959 p (ternal)s 12(to)m 12(the)m 12(Autonomous)m 12(System.)m 19 r 65 c 12(default)m 12(route)m 12(for)m 12(the)m 13(Au-)m 550 1008 p (tonomous)s 10(System)m 11(can)m 11(also)m 10(be)m 11(described)m 10(by)m 11(an)m 10(AS)m 11(external)m 11(link)m 550 1058 p (advertisement.)s 1624 1074 p 2 250 ru 325 1075 p 1300 2 ru 624 1212 p 84 c -2(able)m 10(15:)m 13(OSPF)m 11(link)m 10(state)m 11(advertisements.)m 352 1309 p 1247 2 ru 351 1358 p 2 50 ru t-ita.300 @sf 377 1343 p (LS)s 10 r 84 c -2(ype)m 533 1358 p 2 50 ru 559 1343 p (Link)s 10(State)m 10(ID)m 1598 1358 p 2 50 ru 352 1360 p 1247 2 ru 351 1410 p 2 50 ru t-rom.300 @sf 432 1395 p 49 c 533 1410 p 2 50 ru 559 1395 p (The)s 10(originating)m 10(router)m 2 r 39 c -1 r 115 c 9(Router)m 11(ID.)m 1598 1410 p 2 50 ru 351 1460 p 2 50 ru 432 1445 p 50 c 533 1460 p 2 50 ru 559 1445 p (The)s 10(IP)m 10(interface)m 11(address)m 10(of)m 11(the)m 10(network')m -1 r 115 c 9(Designated)m 11(Router)m -2 r 46 c 1598 1460 p 2 50 ru 351 1510 p 2 50 ru 432 1495 p 51 c 533 1510 p 2 50 ru 559 1495 p (The)s 10(destination)m 10(network')m -1 r 115 c 10(IP)m 10(address.)m 1598 1510 p 2 50 ru 351 1559 p 2 50 ru 432 1544 p 52 c 533 1559 p 2 50 ru 559 1544 p (The)s 10(Router)m 10(ID)m 11(of)m 10(the)m 11(described)m 10(AS)m 11(boundary)m 10(router)m -1 r 46 c 1598 1559 p 2 50 ru 351 1609 p 2 50 ru 432 1594 p 53 c 533 1609 p 2 50 ru 559 1594 p (The)s 10(destination)m 10(network')m -1 r 115 c 10(IP)m 10(address.)m 1598 1609 p 2 50 ru 352 1611 p 1247 2 ru 598 1748 p 84 c -2(able)m 10(16:)m 13(The)m 11(advertisement')m -1 r 115 c 9(Link)m 10(State)m 11(ID.)m t-bol.300 @sf 0 1870 p (12.1.5)s 42(Advertising)m 10(Router)m t-rom.300 @sf 0 1964 p (This)s 10(\014eld)m 10(speci\014es)m 9(the)m 10(OSPF)m 10(Router)m 10(ID)m 9(of)m 10(the)m 10(advertisement')m -1 r 115 c 8(originator)m -1 r 46 c 13(For)m 9(router)m 10(links)m 10(advertisements,)m 10(this)m 10(\014eld)m 9(is)m 0 2014 p (identical)s 11(to)m 12(the)m 11(Link)m 11(State)m 12(ID)m 11(\014eld.)m 16(Network)m 12(link)m 11(advertisements)m 11(are)m 12(originated)m 11(by)m 11(the)m 12(network')m -2 r 115 c 11(Designated)m 11(Router)m -1 r 46 c 0 2063 p (Summary)s 15(link)m 16(advertisements)m 15(are)m 15(originated)m 15(by)m 16(area)m 15(border)m 15(routers.)m 29(Finally)m -2 r 44 c 16(AS)m 15(external)m 15(link)m 15(advertisements)m 16(are)m 0 2113 p (originated)s 10(by)m 11(AS)m 10(boundary)m 11(routers.)m t-bol.300 @sf 0 2239 p (12.1.6)s 42(LS)m 10(sequence)m 10(number)m t-rom.300 @sf 0 2333 p (The)s 11(sequence)m 12(number)m 11(\014eld)m 12(is)m 11 r 97 c 12(signed)m 11(32-bit)m 12(integer)m -2 r 46 c 16(It)m 12(is)m 11(used)m 12(to)m 11(detect)m 12(old)m 11(and)m 12(duplicate)m 11(link)m 12(state)m 11(advertisements.)m 0 2383 p (The)s 9(space)m 10(of)m 9(sequence)m 10(numbers)m 9(is)m 10(linearly)m 9(ordered.)m 14(The)m 9(lar)m (ger)s 9(the)m 10(sequence)m 9(number)m 10(\(when)m 9(compared)m 10(as)m 9(signed)m 10(32-bit)m 0 2433 p (integers\))s 11(the)m 11(more)m 10(recent)m 11(the)m 11(advertisement.)m 15 r 84 c -2 r 111 c 10(describe)m 11(to)m 10(sequence)m 11(number)m 11(space)m 11(more)m 10(precisely)m -1 r 44 c 10(let)m cmmi10.300 @sf 10 r 78 c t-rom.300 @sf 16(refer)m 10(in)m 11(the)m 0 2483 p (discussion)s 10(below)m 11(to)m 10(the)m 11(constant)m 10 r 50 c t-rom.210 @sf 571 2468 p (31)s t-rom.300 @sf 602 2483 p 46 c 0 2549 p (The)s 13(sequence)m 12(number)m cmsy10.300 @sf 13 r 0 c cmmi10.300 @sf 78 c t-rom.300 @sf 17 r 40 c c-med.300 @sf (0x80000000)s t-rom.300 @sf 41 c 13(is)m 12(reserved)m 13(\(and)m 13(unused\).)m 20(This)m 13(leaves)m cmsy10.300 @sf 12 r 0 c cmmi10.300 @sf 78 c cmr10.300 @sf 16 r 43 c t-rom.300 @sf 11 r 49 c 13 r 40 c c-med.300 @sf (0x80000001)s t-rom.300 @sf 41 c 13(as)m 12(the)m 0 2599 p (smallest)s 8(\(and)m 7(therefore)m 8(oldest\))m 8(sequence)m 7(number)m -1 r 46 c 12 r 65 c 8(router)m 7(uses)m 8(this)m 8(sequence)m 8(number)m 7(the)m 8(\014rst)m 8(time)m 7(it)m 8(originates)m 8(any)m 7(link)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(60])m @eop 59 @bop0 59 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (Ages)s 10(are)m 10(examined)m 10(when)m 10 r 97 c 10(router)m 10(receives)m 10(two)m 10(instances)m 10(of)m 9 r 97 c 10(link)m 10(state)m 10(advertisement,)m 10(both)m 10(having)m 10(identical)m 10(sequence)m 0 245 p (numbers)s 11(and)m 12(checksums.)m 16(An)m 11(instance)m 12(of)m 11(age)m 11(MaxAge)m 11(is)m 12(then)m 11(always)m 11(accepted)m 11(as)m 12(most)m 11(recent;)m 12(this)m 11(allows)m 11(old)m 12(adver-)m 0 295 p (tisements)s 10(to)m 11(be)m 10(\015ushed)m 10(quickly)m 11(from)m 10(the)m 10(routing)m 10(domain.)m 14(Otherwise,)m 11(if)m 10(the)m 10(ages)m 11(dif)m (fer)s 9(by)m 10(more)m 11(than)m 10(MaxAgeDif)m (f,)s 10(the)m 0 345 p (instance)s 10(having)m 11(the)m 10(smaller)m 11(age)m 10(is)m 10(accepted)m 11(as)m 10(most)m 11(recent.)m t-rom.210 @sf 990 329 p 49 c 49 c t-rom.300 @sf 1035 345 p (See)s 10(Section)m 10(13.1)m 11(for)m 10(more)m 11(details.)m t-bol.300 @sf 0 473 p (12.1.2)s 42(Options)m t-rom.300 @sf 0 569 p (The)s 12(options)m 11(\014eld)m 12(in)m 11(the)m 12(link)m 11(state)m 12(header)m 12(indicates)m 11(which)m 12(optional)m 11(capabilities)m 12(are)m 11(associated)m 12(with)m 12(the)m 11(advertisement.)m 0 618 p (OSPF')s -1 r 115 c 10(optional)m 11(capabilities)m 11(are)m 11(described)m 11(in)m 12(Section)m 11(4.5.)m 16(There)m 11(are)m 11(currently)m 11(two)m 11(optional)m 12(capabilities)m 11(de\014ned;)m 11(they)m 0 668 p (are)s 10(represented)m 11(by)m 10(the)m t-bol.300 @sf 11 r 84 c -3(-bit)m t-rom.300 @sf 9(and)m t-bol.300 @sf 11(E-bit)m t-rom.300 @sf 10(found)m 10(in)m 11(the)m 10(options)m 11(\014eld.)m 14(The)m 10(rest)m 10(of)m 11(the)m 10(options)m 11(\014eld)m 10(should)m 11(be)m 10(set)m 10(to)m 11(zero.)m 0 736 p (The)s t-bol.300 @sf 11(E-bit)m t-rom.300 @sf 12(represents)m 11(OSPF')m -1 r 115 c 10(external)m 12(routing)m 11(capability)m -2 r 46 c 16(This)m 12(bit)m 11(should)m 11(be)m 12(set)m 11(in)m 12(all)m 11(advertisements)m 11(associated)m 12(with)m 0 786 p (the)s 14(backbone,)m 15(and)m 15(all)m 14(advertisements)m 14(associated)m 14(with)m 15(non-stub)m 14(areas)m 14(\(see)m 14(Section)m 15(3.6\).)m 25(It)m 14(should)m 15(also)m 14(be)m 14(set)m 14(in)m 15(all)m 0 835 p (AS)s 14(external)m 14(advertisements.)m 24(It)m 14(should)m 14(be)m 14(reset)m 14(in)m 14(all)m 14(router)m 14(links,)m 15(network)m 14(links)m 14(and)m 14(summary)m 14(link)m 14(advertisements)m 0 885 p (associated)s 13(with)m 13 r 97 c 13(stub)m 14(area.)m 22(For)m 13(all)m 13(link)m 13(state)m 13(advertisements,)m 14(the)m 13(setting)m 14(of)m 13(the)m t-bol.300 @sf 13(E-bit)m t-rom.300 @sf 13(is)m 13(for)m 13(informational)m 13(purposes)m 0 935 p (only;)s 10(it)m 11(does)m 10(not)m 11(af)m (fect)s 9(the)m 11(routing)m 10(table)m 11(calculation.)m 0 1003 p (The)s t-bol.300 @sf 10 r 84 c -3(-bit)m t-rom.300 @sf 9(represents)m 10(OSPF')m -1 r 115 c 9 r 84 c (OS)s 9(routing)m 10(capability)m -2 r 46 c 13(This)m 10(bit)m 10(should)m 9(be)m 10(set)m 10(in)m 10 r 97 c 10(router)m 10(links)m 10(advertisement)m 10(if)m 10(and)m 10(only)m 0 1053 p (if)s 9(the)m 9(router)m 9(is)m 9(capable)m 8(of)m 9(calculating)m 9(separate)m 9(routes)m 9(for)m 9(each)m 9(IP)m 9 r 84 c (OS)s 8(\(see)m 9(Section)m 9(2.4\).)m 13(The)m t-bol.300 @sf 9 r 84 c -3(-bit)m t-rom.300 @sf 8(should)m 9(always)m 9(be)m 9(set)m 0 1102 p (in)s 11(network)m 11(links)m 12(advertisements.)m 16(It)m 11(should)m 11(be)m 11(set)m 11(in)m 12(summary)m 11(link)m 11(and)m 11(AS)m 11(external)m 12(link)m 11(advertisements)m 11(if)m 11(and)m 11(only)m 11(if)m 0 1152 p (the)s 9(advertisement)m 8(describes)m 9(paths)m 9(for)m 8(all)m 9 r 84 c (OS)s 8(values,)m 9(instead)m 8(of)m 9(just)m 9(the)m 8 r 84 c (OS)s 8 r 48 c 9(path.)m 13(Note)m 9(that,)m 9(with)m 8(the)m t-bol.300 @sf 9 r 84 c -3(-bit)m t-rom.300 @sf 8(set,)m 9(there)m 0 1202 p (may)s 12(still)m 12(be)m 13(only)m 12 r 97 c 12(single)m 12(metric)m 12(in)m 12(the)m 13(advertisement)m 12(\(the)m 12 r 84 c (OS)s 11 r 48 c 13(metric\).)m 19(This)m 12(would)m 12(mean)m 12(that)m 13(paths)m 12(for)m 12(non-zero)m 0 1252 p 84 c (OS)s 10(exist,)m 11(but)m 10(are)m 11(equivalent)m 11(to)m 11(the)m 10 r 84 c (OS)s 10 r 48 c 11(path.)m 15 r 65 c 11(link)m 10(state)m 11(advertisement')m -1 r 115 c t-bol.300 @sf 9 r 84 c -2(-bit)m t-rom.300 @sf 9(is)m 11(examined)m 11(when)m 10(calculating)m 11(the)m 0 1302 p (routing)s 10(table')m -1 r 115 c 10(non-zero)m 10 r 84 c (OS)s 10(paths)m 10(\(see)m 10(Section)m 11(16.9\).)m t-bol.300 @sf 0 1430 p (12.1.3)s 42(LS)m 10(type)m t-rom.300 @sf 0 1526 p (The)s 12(LS)m 11(type)m 12(\014eld)m 12(dictates)m 11(the)m 12(format)m 12(and)m 11(function)m 12(of)m 12(the)m 11(link)m 12(state)m 12(advertisement.)m 17(Advertisements)m 12(of)m 12(dif)m (ferent)s 11(types)m 0 1576 p (have)s 13(dif)m (ferent)s 12(names)m 13(\(e.g.,)m 14(router)m 13(links)m 13(or)m 13(network)m 13(links\).)m 21(All)m 13(advertisement)m 13(types,)m 14(except)m 12(the)m 13(AS)m 13(external)m 13(link)m 13(ad-)m 0 1625 p (vertisements)s 13(\(LS)m 12(type)m cmr10.300 @sf 13 r 61 c t-rom.300 @sf 12(5\),)m 13(are)m 13(\015ooded)m 12(throughout)m 13 r 97 c 12(single)m 13(area)m 13(only)m -2 r 46 c 19(AS)m 13(external)m 12(link)m 13(advertisements)m 12(are)m 13(\015ooded)m 0 1675 p (throughout)s 11(the)m 11(entire)m 11(Autonomous)m 11(System,)m 11(excluding)m 12(stub)m 11(areas)m 11(\(see)m 11(Section)m 11(3.6\).)m 16(Each)m 11(separate)m 11(advertisement)m 11(type)m 0 1725 p (is)s 10(brie\015y)m 11(described)m 10(below)m 11(in)m 10 r 84 c -2(able)m 10(15.)m t-bol.300 @sf 0 1862 p (12.1.4)s 42(Link)m 10(State)m 10(ID)m t-rom.300 @sf 0 1958 p (This)s 12(\014eld)m 12(identi\014es)m 12(the)m 12(piece)m 12(of)m 13(the)m 12(routing)m 12(domain)m 12(that)m 12(is)m 12(being)m 12(described)m 12(by)m 12(the)m 12(advertisement.)m 19(Depending)m 12(on)m 12(the)m 0 2008 p (advertisement')s -1 r 115 c 9(LS)m 11(type,)m 10(the)m 10(Link)m 11(State)m 10(ID)m 11(takes)m 10(on)m 10(the)m 11(values)m 10(listed)m 11(in)m 10 r 84 c -2(able)m 10(16.)m 0 2085 p (When)s 13(the)m 13(link)m 14(state)m 13(advertisement)m 13(is)m 13(describing)m 14 r 97 c 13(network,)m 14(the)m 13(Link)m 13(State)m 14(ID)m 13(is)m 13(either)m 13(the)m 14(network')m -2 r 115 c 13(IP)m 13(address)m 13(\(as)m 0 2134 p (in)s 12(type)m 11 r 51 c 12(summary)m 12(link)m 11(advertisements)m 12(and)m 11(in)m 12(AS)m 12(external)m 11(link)m 12(advertisements\))m 12(or)m 11(the)m 12(network')m -1 r 115 c 10(IP)m 12(address)m 12(is)m 11(easily)m 0 2184 p (derivable)s 10(from)m 9(the)m 10(Link)m 10(State)m 10(ID)m 9(\(note)m 10(that)m 10(masking)m 9 r 97 c 10(network)m 10(links)m 10(advertisement')m -2 r 115 c 9(Link)m 10(State)m 9(ID)m 10(with)m 10(the)m 9(network')m -1 r 115 c 0 2234 p (subnet)s 10(mask)m 10(yields)m 10(the)m 10(network')m -1 r 115 c 9(IP)m 10(address\).)m 14(When)m 10(the)m 10(link)m 10(state)m 11(advertisement)m 10(is)m 10(describing)m 10 r 97 c 10(router)m -1 r 44 c 10(the)m 10(Link)m 10(State)m 0 2284 p (ID)s 10(is)m 11(always)m 10(the)m 11(described)m 10(router)m 2 r 39 c -2 r 115 c 10(OSPF)m 10(Router)m 11(ID.)m 0 2352 p (When)s 12(an)m 12(AS)m 12(external)m 13(advertisement)m 12(\(LS)m 12 r 84 c -2(ype)m cmr10.300 @sf 11 r 61 c t-rom.300 @sf 12(5\))m 12(is)m 13(describing)m 12 r 97 c 12(default)m 12(route,)m 13(its)m 12(Link)m 12(State)m 12(ID)m 12(is)m 12(set)m 12(to)m 13(Default-)m 0 2401 p (Destination)s 10 r 40 c c-med.300 @sf (0.0.0.0)s t-rom.300 @sf (\).)s 0 2435 p 780 2 ru t-rom.180 @sf 34 2463 p 49 c 49 c t-rom.240 @sf 60 2475 p (MaxAgeDif)s 102 c 7(is)m 7(an)m 8(architectural)m 7(constant.)m 11(It)m 7(indicates)m 7(the)m 8(maximum)m 7(dispersion)m 8(of)m 7(ages,)m 7(in)m 8(seconds,)m 7(that)m 8(can)m 7(occur)m 7(for)m 8 r 97 c 7(single)m 8(link)m 7(state)m 7(instance)m 0 2514 p (as)s 7(it)m 7(is)m 8(\015ooded)m 7(throughout)m 7(the)m 7(routing)m 8(domain.)m 10(If)m 8(two)m 7(advertisements)m 7(dif)m (fer)s 7(by)m 7(more)m 7(than)m 8(this,)m 7(they)m 7(are)m 8(assumed)m 7(to)m 7(be)m 7(dif)m (ferent)s 7(instances)m 7(of)m 7(the)m 8(same)m 0 2554 p (advertisement.)s 11(This)m 8(can)m 9(occur)m 8(when)m 8 r 97 c 9(router)m 8(restarts)m 8(and)m 9(loses)m 8(track)m 8(of)m 9(its)m 8(previous)m 8(sequence)m 9(number)m -1 r 46 c 10(See)m 8(Section)m 9(13.4)m 8(for)m 8(more)m 9(details.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(59])m @eop 58 @bop0 58 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 221 201 p 1509 2 ru 220 251 p 2 50 ru t-ita.300 @sf 246 236 p 84 c -2(ype)m 348 251 p 2 50 ru 433 236 p (Dest)s 594 251 p 2 50 ru 620 236 p (Ar)s -1(ea)m 723 251 p 2 50 ru 749 236 p (Path)s 10 r 84 c -2(ype)m 940 251 p 2 50 ru 966 236 p (Cost)s 1066 251 p 2 50 ru 1092 236 p (Next)s 10(Hop\(s\))m 1319 251 p 2 50 ru 1344 236 p (Advertising)s 11(Router\(s\))m 1728 251 p 2 50 ru 221 252 p 1509 2 ru 221 262 p 1509 2 ru 220 312 p 2 50 ru t-rom.300 @sf 270 297 p 78 c 348 312 p 2 50 ru 454 297 p (Ib)s 594 312 p 2 50 ru 649 297 p 48 c 723 312 p 2 50 ru 753 297 p (intra-area)s 940 312 p 2 50 ru 983 297 p (16)s 1066 312 p 2 50 ru 1157 297 p 82 c -1(T3)m 1319 312 p 2 50 ru 1514 297 p 42 c 1728 312 p 2 50 ru 220 362 p 2 50 ru 270 347 p 78 c 348 362 p 2 50 ru 455 347 p (Ia)s 594 362 p 2 50 ru 649 347 p 48 c 723 362 p 2 50 ru 753 347 p (intra-area)s 940 362 p 2 50 ru 983 347 p (21)s 1066 362 p 2 50 ru 1157 347 p 82 c -1(T3)m 1319 362 p 2 50 ru 1514 347 p 42 c 1728 362 p 2 50 ru 220 412 p 2 50 ru 257 397 p (BR)s 348 412 p 2 50 ru 436 397 p 82 c -2(T3)m 594 412 p 2 50 ru 649 397 p 48 c 723 412 p 2 50 ru 753 397 p (intra-area)s 940 412 p 2 50 ru 994 397 p 49 c 1066 412 p 2 50 ru 1183 397 p 42 c 1319 412 p 2 50 ru 1514 397 p 42 c 1728 412 p 2 50 ru 220 462 p 2 50 ru 257 447 p (BR)s 348 462 p 2 50 ru 425 447 p 82 c -1(T10)m 594 462 p 2 50 ru 649 447 p 48 c 723 462 p 2 50 ru 753 447 p (intra-area)s 940 462 p 2 50 ru 983 447 p (16)s 1066 462 p 2 50 ru 1157 447 p 82 c -1(T3)m 1319 462 p 2 50 ru 1514 447 p 42 c 1728 462 p 2 50 ru 220 511 p 2 50 ru 257 496 p (BR)s 348 511 p 2 50 ru 426 496 p 82 c -1(T1)m -2 r 49 c 594 511 p 2 50 ru 649 496 p 48 c 723 511 p 2 50 ru 753 496 p (intra-area)s 940 511 p 2 50 ru 983 496 p (19)s 1066 511 p 2 50 ru 1157 496 p 82 c -1(T3)m 1319 511 p 2 50 ru 1514 496 p 42 c 1728 511 p 2 50 ru 221 513 p 1509 2 ru 220 563 p 2 50 ru 270 548 p 78 c 348 563 p 2 50 ru 373 548 p (N9-N1)s (1,H1)s 594 563 p 2 50 ru 649 548 p 48 c 723 563 p 2 50 ru 753 548 p (inter)s (-area)s 940 563 p 2 50 ru 983 548 p (20)s 1066 563 p 2 50 ru 1157 548 p 82 c -1(T3)m 1319 563 p 2 50 ru 1479 548 p 82 c -2(T1)m -1 r 49 c 1728 563 p 2 50 ru 221 565 p 1509 2 ru 221 574 p 1509 2 ru 479 711 p 84 c -2(able)m 9(14:)m 14(Changes)m 11(resulting)m 10(from)m 10(an)m 11(additional)m 10(virtual)m 11(link.)m t-bol.420 @sf 0 845 p (12)s 58(Link)m 15(State)m 14(Advertisements)m t-rom.300 @sf 0 956 p (Each)s 8(router)m 7(in)m 8(the)m 8(Autonomous)m 7(System)m 8(originates)m 8(one)m 7(or)m 8(more)m 8(link)m 7(state)m 8(advertisements.)m 13(There)m 8(are)m 8(\014ve)m 7(distinct)m 8(types)m 8(of)m 0 1005 p (link)s 8(state)m 9(advertisements,)m 9(which)m 8(are)m 8(described)m 9(in)m 8(Section)m 9(4.3.)m 13(The)m 8(collection)m 9(of)m 8(link)m 9(state)m 8(advertisements)m 8(forms)m 9(the)m 8(link)m 0 1055 p (state)s 11(or)m 11(topological)m 11(database.)m 16(Each)m 11(separate)m 11(type)m 11(of)m 11(advertisement)m 11(has)m 11 r 97 c 11(separate)m 12(function.)m 15(Router)m 11(links)m 11(and)m 12(network)m 0 1105 p (links)s 12(advertisements)m 12(describe)m 11(how)m 12(an)m 12(area')m -1 r 115 c 11(routers)m 11(and)m 12(networks)m 12(are)m 12(interconnected.)m 18(Summary)m 12(link)m 12(advertisements)m 0 1155 p (provide)s 9 r 97 c 8(way)m 9(of)m 8(condensing)m 9(an)m 8(area')m -1 r 115 c 7(routing)m 9(information.)m 13(AS)m 9(external)m 8(advertisements)m 9(provide)m 8 r 97 c 9(way)m 9(of)m 8(transparently)m 0 1205 p (advertising)s 10(externally-derived)m 11(routing)m 10(information)m 11(throughout)m 10(the)m 10(Autonomous)m 11(System.)m 0 1272 p (Each)s 10(link)m 11(state)m 10(advertisement)m 11(begins)m 10(with)m 10 r 97 c 11(standard)m 10(20-byte)m 11(header)m -2 r 46 c 13(This)m 11(link)m 10(state)m 11(header)m 10(is)m 10(discussed)m 11(below)m -2 r 46 c t-bol.360 @sf 0 1409 p (12.1)s 50(The)m 12(Link)m 13(State)m 12(Header)m t-rom.300 @sf 0 1505 p (The)s 13(link)m 13(state)m 13(header)m 13(contains)m 13(the)m 13(LS)m 13(type,)m 13(Link)m 13(State)m 13(ID)m 13(and)m 13(Advertising)m 13(Router)m 13(\014elds.)m 21(The)m 13(combination)m 13(of)m 13(these)m 0 1555 p (three)s 10(\014elds)m 11(uniquely)m 10(identi\014es)m 11(the)m 10(link)m 10(state)m 11(advertisement.)m 0 1622 p (There)s 11(may)m 11(be)m 11(several)m 11(instances)m 11(of)m 10(an)m 11(advertisement)m 11(present)m 11(in)m 11(the)m 11(Autonomous)m 11(System,)m 11(all)m 11(at)m 11(the)m 11(same)m 11(time.)m 15(It)m 11(must)m 0 1672 p (then)s 13(be)m 14(determined)m 13(which)m 13(instance)m 14(is)m 13(more)m 14(recent.)m 22(This)m 14(determination)m 13(is)m 13(made)m 14(be)m 13(examining)m 13(the)m 14(LS)m 13(sequence,)m 14(LS)m 0 1722 p (checksum)s 10(and)m 11(LS)m 10(age)m 11(\014elds.)m 14(These)m 10(\014elds)m 10(are)m 11(also)m 10(contained)m 11(in)m 10(the)m 10(20-byte)m 11(link)m 10(state)m 11(header)m -2 r 46 c 0 1790 p (Several)s 10(of)m 10(the)m 11(OSPF)m 10(packet)m 10(types)m 10(list)m 10(link)m 11(state)m 10(advertisements.)m 14(When)m 10(the)m 10(instance)m 10(is)m 10(not)m 11(important,)m 10(an)m 10(advertisement)m 0 1839 p (is)s 11(referred)m 12(to)m 11(by)m 12(its)m 11(LS)m 11(type,)m 12(Link)m 11(State)m 12(ID)m 11(and)m 11(Advertising)m 12(Router)m 11(\(see)m 12(Link)m 11(State)m 11(Request)m 12(Packets\).)m 17(Otherwise,)m 11(the)m 0 1889 p (LS)s 10(sequence)m 11(number)m -1 r 44 c 10(LS)m 10(age)m 10(and)m 11(LS)m 10(checksum)m 11(\014elds)m 10(must)m 10(also)m 11(be)m 10(referenced.)m 0 1957 p 65 c 10(detailed)m 11(explanation)m 10(of)m 11(the)m 10(\014elds)m 10(contained)m 11(in)m 10(the)m 11(link)m 10(state)m 11(header)m 10(follows.)m t-bol.300 @sf 0 2085 p (12.1.1)s 42(LS)m 10(age)m t-rom.300 @sf 0 2181 p (This)s 10(\014eld)m 10(is)m 10(the)m 10(age)m 10(of)m 10(the)m 10(link)m 10(state)m 10(advertisement)m 9(in)m 10(seconds.)m 14(It)m 10(should)m 10(be)m 10(processed)m 10(as)m 10(an)m 10(unsigned)m 10(16-bit)m 10(integer)m -2 r 46 c 13(It)m 0 2231 p (is)s 11(set)m 12(to)m 11 r 48 c 12(when)m 11(the)m 11(link)m 12(state)m 11(advertisement)m 11(is)m 12(originated.)m 17(It)m 11(must)m 11(be)m 12(incremented)m 11(by)m 11(InfT)m (ransDelay)s 10(on)m 12(every)m 11(hop)m 12(of)m 0 2281 p (the)s 10(\015ooding)m 11(procedure.)m 14(Link)m 10(state)m 11(advertisements)m 10(are)m 10(also)m 11(aged)m 10(as)m 11(they)m 10(are)m 10(held)m 11(in)m 10(each)m 11(router)m 1 r 39 c -1 r 115 c 9(database.)m 0 2348 p (The)s 13(age)m 13(of)m 14 r 97 c 13(link)m 13(state)m 13(advertisement)m 13(is)m 14(never)m 13(incremented)m 13(past)m 13(MaxAge.)m 22(Advertisements)m 14(having)m 13(age)m 13(MaxAge)m 13(are)m 0 2398 p (not)s 12(used)m 12(in)m 11(the)m 12(routing)m 12(table)m 12(calculation.)m 18(When)m 11(an)m 12(advertisement')m -1 r 115 c 11(age)m 11(\014rst)m 12(reaches)m 12(MaxAge,)m 12(it)m 12(is)m 12(re\015ooded.)m 18 r 65 c 11(link)m 0 2448 p (state)s 9(advertisement)m 9(of)m 9(age)m 9(MaxAge)m 9(is)m 9(\014nally)m 9(\015ushed)m 9(from)m 9(the)m 9(database)m 9(when)m 9(it)m 8(is)m 9(no)m 9(longer)m 9(contained)m 9(on)m 9(any)m 9(neighbor)m t-bol.300 @sf 0 2498 p (Link)s 12(state)m 13 r 114 c (etransmission)s 12(lists)m t-rom.300 @sf 46 c 20(This)m 12(indicates)m 13(that)m 12(it)m 13(has)m 12(been)m 13(acknowledged)m 12(by)m 13(all)m 12(adjacent)m 13(neighbors.)m 20(For)m 12(more)m 0 2547 p (information)s 10(on)m 11(the)m 10(aging)m 11(of)m 10(link)m 10(state)m 11(advertisements,)m 10(consult)m 11(Section)m 10(14.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(58])m @eop 57 @bop0 57 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (area)s 12(border)m 11(router)m 12(and)m 12(an)m 11(AS)m 12(boundary)m 11(router)m -1 r 46 c 17(Note)m 11(also)m 12(that)m 12(there)m 11(are)m 12(two)m 12(routing)m 11(entries)m 12(for)m 12(the)m 11(area)m 12(border)m 11(router)m 0 245 p 82 c -2(T3,)m 10(since)m 10(it)m 11(has)m 10(two)m 11(areas)m 10(in)m 10(common)m 11(with)m 10 r 82 c -1(T4)m 9(\(Area)m 11 r 49 c 10(and)m 10(the)m 11(backbone\).)m 0 313 p (Backbone)s 11(paths)m 10(have)m 11(been)m 10(calculated)m 11(to)m 10(all)m 11(area)m 10(border)m 11(routers)m 11(\(BR\).)m 10(These)m 11(are)m 10(used)m 11(when)m 10(determining)m 11(the)m 10(inter)m (-area)s 0 362 p (routes.)s 15(Note)m 11(that)m 11(all)m 11(of)m 10(the)m 11(inter)m (-area)s 10(routes)m 11(are)m 11(associated)m 11(with)m 11(the)m 10(backbone;)m 11(this)m 11(is)m 11(always)m 11(the)m 11(case)m 10(when)m 11(the)m 11(router)m 0 412 p (is)s 11(itself)m 11(an)m 11(area)m 11(border)m 11(router)m -2 r 46 c 15(Routing)m 11(information)m 11(is)m 11(condensed)m 11(at)m 11(area)m 11(boundaries.)m 15(In)m 11(this)m 11(example,)m 11(we)m 11(assume)m 11(that)m 0 462 p (Area)s 12 r 51 c 12(has)m 11(been)m 12(de\014ned)m 12(so)m 12(that)m 12(networks)m 11(N9-N1)m 49 c 11(and)m 12(the)m 11(host)m 12(route)m 12(to)m 12(H1)m 12(are)m 11(all)m 12(condensed)m 12(to)m 12 r 97 c 12(single)m 11(route)m 12(when)m 0 512 p (advertised)s 11(to)m 11(the)m 11(backbone)m 12(\(by)m 11(router)m 11 r 82 c -2(T1)m -1(1\).)m 15(Note)m 11(that)m 11(the)m 11(cost)m 11(of)m 11(this)m 12(route)m 11(is)m 11(the)m 11(minimum)m 11(of)m 11(the)m 11(set)m 11(of)m 12(costs)m 11(to)m 11(its)m 0 562 p (individual)s 10(components.)m 0 629 p (There)s 11(is)m 11 r 97 c 11(virtual)m 11(link)m 12(con\014gured)m 11(between)m 11(routers)m 11 r 82 c -2(T10)m 10(and)m 12 r 82 c -2(T1)m -1(1.)m 15 r 87 c -1(ithout)m 10(this)m 11(con\014gured)m 11(virtual)m 11(link,)m 12 r 82 c -2(T1)m -1 r 49 c 10(would)m 0 679 p (be)s 12(unable)m 11(to)m 12(advertise)m 12 r 97 c 11(route)m 12(for)m 11(networks)m 12(N9-N1)m 49 c 10(and)m 12(host)m 11(H1)m 12(into)m 12(the)m 11(backbone,)m 12(and)m 12(there)m 12(would)m 11(not)m 12(be)m 12(an)m 11(entry)m 0 729 p (for)s 10(these)m 11(networks)m 10(in)m 11(router)m 10 r 82 c -1(T4')m -3 r 115 c 10(routing)m 10(table.)m 0 797 p (In)s 13(this)m 12(example)m 13(there)m 12(are)m 13(two)m 12(equal-cost)m 13(paths)m 12(to)m 13(network)m 12(N12.)m 20(However)m 44 c 12(they)m 12(both)m 13(use)m 12(the)m 13(same)m 12(next)m 13(hop)m 12(\(Router)m 0 846 p 82 c -2(T5\).)m 165 951 p 1620 2 ru 164 1001 p 2 50 ru t-ita.300 @sf 205 986 p 84 c -2(ype)m 323 1001 p 2 50 ru 409 986 p (Dest)s 569 1001 p 2 50 ru 595 986 p (Ar)s -1(ea)m 698 1001 p 2 50 ru 764 986 p (Path)s 11 r 84 c -2(ype)m 996 1001 p 2 50 ru 1021 986 p (Cost)s 1122 1001 p 2 50 ru 1148 986 p (Next)s 10(Hop\(s\))m 1374 1001 p 2 50 ru 1400 986 p (Advertising)s 10(Router\(s\))m 1784 1001 p 2 50 ru 165 1002 p 1620 2 ru 164 1052 p 2 50 ru t-rom.300 @sf 229 1037 p 78 c 323 1052 p 2 50 ru 421 1037 p (N1)s 569 1052 p 2 50 ru 624 1037 p 49 c 698 1052 p 2 50 ru 768 1037 p (intra-area)s 996 1052 p 2 50 ru 1049 1037 p 52 c 1122 1052 p 2 50 ru 1213 1037 p 82 c -1(T1)m 1374 1052 p 2 50 ru 1570 1037 p 42 c 1784 1052 p 2 50 ru 164 1102 p 2 50 ru 229 1087 p 78 c 323 1102 p 2 50 ru 421 1087 p (N2)s 569 1102 p 2 50 ru 624 1087 p 49 c 698 1102 p 2 50 ru 768 1087 p (intra-area)s 996 1102 p 2 50 ru 1049 1087 p 52 c 1122 1102 p 2 50 ru 1213 1087 p 82 c -1(T2)m 1374 1102 p 2 50 ru 1570 1087 p 42 c 1784 1102 p 2 50 ru 164 1152 p 2 50 ru 229 1137 p 78 c 323 1152 p 2 50 ru 421 1137 p (N3)s 569 1152 p 2 50 ru 624 1137 p 49 c 698 1152 p 2 50 ru 768 1137 p (intra-area)s 996 1152 p 2 50 ru 1049 1137 p 49 c 1122 1152 p 2 50 ru 1239 1137 p 42 c 1374 1152 p 2 50 ru 1570 1137 p 42 c 1784 1152 p 2 50 ru 164 1202 p 2 50 ru 229 1187 p 78 c 323 1202 p 2 50 ru 421 1187 p (N4)s 569 1202 p 2 50 ru 624 1187 p 49 c 698 1202 p 2 50 ru 768 1187 p (intra-area)s 996 1202 p 2 50 ru 1049 1187 p 51 c 1122 1202 p 2 50 ru 1213 1187 p 82 c -1(T3)m 1374 1202 p 2 50 ru 1570 1187 p 42 c 1784 1202 p 2 50 ru 164 1251 p 2 50 ru 217 1237 p (BR)s 323 1251 p 2 50 ru 411 1237 p 82 c -1(T3)m 569 1251 p 2 50 ru 624 1237 p 49 c 698 1251 p 2 50 ru 768 1237 p (intra-area)s 996 1251 p 2 50 ru 1049 1237 p 49 c 1122 1251 p 2 50 ru 1239 1237 p 42 c 1374 1251 p 2 50 ru 1570 1237 p 42 c 1784 1251 p 2 50 ru 165 1253 p 1620 2 ru 164 1303 p 2 50 ru 229 1288 p 78 c 323 1303 p 2 50 ru 429 1288 p (Ib)s 569 1303 p 2 50 ru 624 1288 p 48 c 698 1303 p 2 50 ru 768 1288 p (intra-area)s 996 1303 p 2 50 ru 1039 1288 p (22)s 1122 1303 p 2 50 ru 1213 1288 p 82 c -1(T5)m 1374 1303 p 2 50 ru 1570 1288 p 42 c 1784 1303 p 2 50 ru 164 1353 p 2 50 ru 229 1338 p 78 c 323 1353 p 2 50 ru 431 1338 p (Ia)s 569 1353 p 2 50 ru 624 1338 p 48 c 698 1353 p 2 50 ru 768 1338 p (intra-area)s 996 1353 p 2 50 ru 1039 1338 p (27)s 1122 1353 p 2 50 ru 1213 1338 p 82 c -1(T5)m 1374 1353 p 2 50 ru 1570 1338 p 42 c 1784 1353 p 2 50 ru 164 1403 p 2 50 ru 217 1388 p (BR)s 323 1403 p 2 50 ru 411 1388 p 82 c -1(T3)m 569 1403 p 2 50 ru 624 1388 p 48 c 698 1403 p 2 50 ru 768 1388 p (intra-area)s 996 1403 p 2 50 ru 1039 1388 p (21)s 1122 1403 p 2 50 ru 1213 1388 p 82 c -1(T5)m 1374 1403 p 2 50 ru 1570 1388 p 42 c 1784 1403 p 2 50 ru 164 1452 p 2 50 ru 217 1437 p (BR)s 323 1452 p 2 50 ru 411 1437 p 82 c -1(T7)m 569 1452 p 2 50 ru 624 1437 p 48 c 698 1452 p 2 50 ru 768 1437 p (intra-area)s 996 1452 p 2 50 ru 1039 1437 p (14)s 1122 1452 p 2 50 ru 1213 1437 p 82 c -1(T5)m 1374 1452 p 2 50 ru 1570 1437 p 42 c 1784 1452 p 2 50 ru 164 1502 p 2 50 ru 217 1487 p (BR)s 323 1502 p 2 50 ru 401 1487 p 82 c -2(T10)m 569 1502 p 2 50 ru 624 1487 p 48 c 698 1502 p 2 50 ru 768 1487 p (intra-area)s 996 1502 p 2 50 ru 1039 1487 p (22)s 1122 1502 p 2 50 ru 1213 1487 p 82 c -1(T5)m 1374 1502 p 2 50 ru 1570 1487 p 42 c 1784 1502 p 2 50 ru 164 1552 p 2 50 ru 217 1537 p (BR)s 323 1552 p 2 50 ru 401 1537 p 82 c -1(T1)m -2 r 49 c 569 1552 p 2 50 ru 624 1537 p 48 c 698 1552 p 2 50 ru 768 1537 p (intra-area)s 996 1552 p 2 50 ru 1039 1537 p (25)s 1122 1552 p 2 50 ru 1213 1537 p 82 c -1(T5)m 1374 1552 p 2 50 ru 1570 1537 p 42 c 1784 1552 p 2 50 ru 164 1602 p 2 50 ru 190 1587 p (ASBR)s 323 1602 p 2 50 ru 411 1587 p 82 c -1(T5)m 569 1602 p 2 50 ru 624 1587 p 48 c 698 1602 p 2 50 ru 768 1587 p (intra-area)s 996 1602 p 2 50 ru 1049 1587 p 56 c 1122 1602 p 2 50 ru 1239 1587 p 42 c 1374 1602 p 2 50 ru 1570 1587 p 42 c 1784 1602 p 2 50 ru 164 1652 p 2 50 ru 190 1637 p (ASBR)s 323 1652 p 2 50 ru 411 1637 p 82 c -1(T7)m 569 1652 p 2 50 ru 624 1637 p 48 c 698 1652 p 2 50 ru 768 1637 p (intra-area)s 996 1652 p 2 50 ru 1039 1637 p (14)s 1122 1652 p 2 50 ru 1213 1637 p 82 c -1(T5)m 1374 1652 p 2 50 ru 1570 1637 p 42 c 1784 1652 p 2 50 ru 165 1653 p 1620 2 ru 164 1703 p 2 50 ru 229 1688 p 78 c 323 1703 p 2 50 ru 421 1688 p (N6)s 569 1703 p 2 50 ru 624 1688 p 48 c 698 1703 p 2 50 ru 768 1688 p (inter)s (-area)s 996 1703 p 2 50 ru 1039 1688 p (15)s 1122 1703 p 2 50 ru 1213 1688 p 82 c -1(T5)m 1374 1703 p 2 50 ru 1544 1688 p 82 c -1(T7)m 1784 1703 p 2 50 ru 164 1753 p 2 50 ru 229 1738 p 78 c 323 1753 p 2 50 ru 421 1738 p (N7)s 569 1753 p 2 50 ru 624 1738 p 48 c 698 1753 p 2 50 ru 768 1738 p (inter)s (-area)s 996 1753 p 2 50 ru 1039 1738 p (19)s 1122 1753 p 2 50 ru 1213 1738 p 82 c -1(T5)m 1374 1753 p 2 50 ru 1544 1738 p 82 c -1(T7)m 1784 1753 p 2 50 ru 164 1803 p 2 50 ru 229 1788 p 78 c 323 1803 p 2 50 ru 421 1788 p (N8)s 569 1803 p 2 50 ru 624 1788 p 48 c 698 1803 p 2 50 ru 768 1788 p (inter)s (-area)s 996 1803 p 2 50 ru 1039 1788 p (18)s 1122 1803 p 2 50 ru 1213 1788 p 82 c -1(T5)m 1374 1803 p 2 50 ru 1544 1788 p 82 c -1(T7)m 1784 1803 p 2 50 ru 164 1853 p 2 50 ru 229 1838 p 78 c 323 1853 p 2 50 ru 349 1838 p (N9-N1)s -1(1,H1)m 569 1853 p 2 50 ru 624 1838 p 48 c 698 1853 p 2 50 ru 768 1838 p (inter)s (-area)s 996 1853 p 2 50 ru 1039 1838 p (26)s 1122 1853 p 2 50 ru 1213 1838 p 82 c -1(T5)m 1374 1853 p 2 50 ru 1535 1838 p 82 c -2(T1)m -1 r 49 c 1784 1853 p 2 50 ru 165 1854 p 1620 2 ru 164 1904 p 2 50 ru 229 1889 p 78 c 323 1904 p 2 50 ru 411 1889 p (N12)s 569 1904 p 2 50 ru 624 1889 p 42 c 698 1904 p 2 50 ru 724 1889 p (type)s 10 r 49 c 11(external)m 996 1904 p 2 50 ru 1039 1889 p (16)s 1122 1904 p 2 50 ru 1213 1889 p 82 c -1(T5)m 1374 1904 p 2 50 ru 1503 1889 p 82 c -1(T5,R)m -3(T7)m 1784 1904 p 2 50 ru 164 1954 p 2 50 ru 229 1939 p 78 c 323 1954 p 2 50 ru 411 1939 p (N13)s 569 1954 p 2 50 ru 624 1939 p 42 c 698 1954 p 2 50 ru 724 1939 p (type)s 10 r 49 c 11(external)m 996 1954 p 2 50 ru 1039 1939 p (16)s 1122 1954 p 2 50 ru 1213 1939 p 82 c -1(T5)m 1374 1954 p 2 50 ru 1544 1939 p 82 c -1(T5)m 1784 1954 p 2 50 ru 164 2004 p 2 50 ru 229 1989 p 78 c 323 2004 p 2 50 ru 411 1989 p (N14)s 569 2004 p 2 50 ru 624 1989 p 42 c 698 2004 p 2 50 ru 724 1989 p (type)s 10 r 49 c 11(external)m 996 2004 p 2 50 ru 1039 1989 p (16)s 1122 2004 p 2 50 ru 1213 1989 p 82 c -1(T5)m 1374 2004 p 2 50 ru 1544 1989 p 82 c -1(T5)m 1784 2004 p 2 50 ru 164 2053 p 2 50 ru 229 2039 p 78 c 323 2053 p 2 50 ru 411 2039 p (N15)s 569 2053 p 2 50 ru 624 2039 p 42 c 698 2053 p 2 50 ru 724 2039 p (type)s 10 r 49 c 11(external)m 996 2053 p 2 50 ru 1039 2039 p (23)s 1122 2053 p 2 50 ru 1213 2039 p 82 c -1(T5)m 1374 2053 p 2 50 ru 1544 2039 p 82 c -1(T7)m 1784 2053 p 2 50 ru 165 2055 p 1620 2 ru 462 2192 p 84 c -2(able)m 9(13:)m 14(Router)m 10 r 82 c -1(T4')m -2 r 115 c 9(routing)m 10(table)m 11(in)m 10(the)m 11(presence)m 10(of)m 11(areas.)m 0 2301 p (Router)s 13 r 82 c -2(T4')m -2 r 115 c 12(routing)m 13(table)m 12(would)m 13(improve)m 13(\(i.e.,)m 13(some)m 13(of)m 13(the)m 12(paths)m 13(in)m 13(the)m 13(routing)m 13(table)m 12(would)m 13(become)m 13(shorter\))m 13(if)m 12(an)m 0 2351 p (additional)s 15(virtual)m 15(link)m 14(were)m 15(con\014gured)m 15(between)m 15(router)m 15 r 82 c -2(T4)m 14(and)m 15(router)m 15 r 82 c -2(T3.)m 26(The)m 15(new)m 15(virtual)m 15(link)m 15(would)m 14(itself)m 15(be)m 0 2400 p (associated)s 11(with)m 11(the)m 10(\014rst)m 11(entry)m 11(for)m 11(area)m 11(border)m 11(router)m 10 r 82 c -1(T3)m 10(in)m 11 r 84 c -2(able)m 10(13)m 10(\(an)m 11(intra-area)m 11(path)m 11(through)m 11(Area)m 11(1\).)m 15(This)m 10(would)m 0 2450 p (yield)s 13 r 97 c 12(cost)m 13(of)m 13 r 49 c 12(for)m 13(the)m 13(virtual)m 12(link.)m 21(The)m 13(routing)m 13(table)m 12(entries)m 13(changes)m 13(that)m 12(would)m 13(be)m 13(caused)m 12(by)m 13(the)m 13(addition)m 12(of)m 13(this)m 0 2500 p (virtual)s 10(link)m 11(are)m 10(shown)m 11(in)m 10 r 84 c -2(able)m 10(14.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(57])m @eop 56 @bop0 56 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p 49 c -2(1.2)m 49(Sample)m 13 r 114 c (outing)s 11(table,)m 13(without)m 12(ar)m (eas)s t-rom.300 @sf 0 291 p (Consider)s 14(the)m 14(Autonomous)m 13(System)m 14(pictured)m 14(in)m 14(Figure)m 14(2.)m 24(No)m 14(OSPF)m 14(areas)m 13(have)m 14(been)m 14(con\014gured.)m 24 r 65 c 14(single)m 14(metric)m 14(is)m 0 341 p (shown)s 9(per)m 10(outbound)m 9(interface,)m 10(indicating)m 9(that)m 9(routes)m 10(will)m 9(not)m 10(vary)m 9(based)m 9(on)m 10 r 84 c (OS.)s 8(The)m 10(calculation)m 9(router)m 9 r 82 c -1(T6')m -2 r 115 c 8(routing)m 0 390 p (table)s 13(proceeds)m 13(as)m 13(described)m 13(in)m 13(Section)m 13(2.1.)m 21(The)m 13(resulting)m 13(routing)m 13(table)m 13(is)m 13(shown)m 13(in)m 13 r 84 c -2(able)m 12(12.)m 22(Destination)m 13(types)m 13(are)m 0 440 p (abbreviated:)s 14(Network)m 10(as)m 11(\\N",)m 10(area)m 11(border)m 10(router)m 10(as)m 11(\\BR")m 10(and)m 11(AS)m 10(boundary)m 10(router)m 11(as)m 10(\\ASBR".)m 0 508 p (There)s 11(are)m 12(no)m 11(instances)m 11(of)m 11(multiple)m 12(equal-cost)m 11(shortest)m 11(paths)m 12(in)m 11(this)m 11(example.)m 17(Also,)m 11(since)m 11(there)m 12(are)m 11(no)m 11(areas,)m 12(there)m 11(are)m 0 558 p (no)s 10(inter)m (-area)s 10(paths.)m 0 625 p (Routers)s 11 r 82 c -2(T5)m 10(and)m 11 r 82 c -2(T7)m 10(are)m 11(AS)m 11(boundary)m 11(routers.)m 15(Intra-area)m 11(routes)m 11(have)m 10(been)m 11(calculated)m 11(to)m 11(routers)m 11 r 82 c -2(T5)m 10(and)m 11 r 82 c -2(T7.)m 14(This)m 0 675 p (allows)s 11(external)m 11(routes)m 12(to)m 11(be)m 11(calculated)m 11(to)m 11(the)m 11(destinations)m 12(advertised)m 11(by)m 11 r 82 c -2(T5)m 11(and)m 11 r 82 c -2(T7)m 11(\(i.e.,)m 11(networks)m 11(N12,)m 11(N13,)m 12(N14)m 0 725 p (and)s 13(N15\).)m 21(It)m 13(is)m 13(assumed)m 13(all)m 13(AS)m 13(external)m 13(advertisements)m 13(originated)m 13(by)m 13 r 82 c -2(T5)m 12(and)m 13 r 82 c -1(T7)m 11(are)m 13(advertising)m 13(type)m 13 r 49 c 13(external)m 0 775 p (metrics.)s 14(This)m 10(results)m 11(in)m 10(type)m 11 r 49 c 10(external)m 10(paths)m 11(being)m 10(calculated)m 11(to)m 10(destinations)m 10(N12-N15.)m 225 881 p 1500 2 ru 224 931 p 2 50 ru t-ita.300 @sf 265 916 p 84 c -2(ype)m 383 931 p 2 50 ru 409 916 p (Dest)s 509 931 p 2 50 ru 535 916 p (Ar)s -1(ea)m 638 931 p 2 50 ru 704 916 p (Path)s 11 r 84 c -2(ype)m 936 931 p 2 50 ru 962 916 p (Cost)s 1062 931 p 2 50 ru 1088 916 p (Next)s 10(Hop\(s\))m 1314 931 p 2 50 ru 1340 916 p (Advertising)s 10(Router\(s\))m 1724 931 p 2 50 ru 225 932 p 1500 2 ru 224 982 p 2 50 ru t-rom.300 @sf 289 967 p 78 c 383 982 p 2 50 ru 421 967 p (N1)s 509 982 p 2 50 ru 564 967 p 48 c 638 982 p 2 50 ru 708 967 p (intra-area)s 936 982 p 2 50 ru 979 967 p (10)s 1062 982 p 2 50 ru 1153 967 p 82 c -1(T3)m 1314 982 p 2 50 ru 1510 967 p 42 c 1724 982 p 2 50 ru 224 1032 p 2 50 ru 289 1017 p 78 c 383 1032 p 2 50 ru 421 1017 p (N2)s 509 1032 p 2 50 ru 564 1017 p 48 c 638 1032 p 2 50 ru 708 1017 p (intra-area)s 936 1032 p 2 50 ru 979 1017 p (10)s 1062 1032 p 2 50 ru 1153 1017 p 82 c -1(T3)m 1314 1032 p 2 50 ru 1510 1017 p 42 c 1724 1032 p 2 50 ru 224 1082 p 2 50 ru 289 1067 p 78 c 383 1082 p 2 50 ru 421 1067 p (N3)s 509 1082 p 2 50 ru 564 1067 p 48 c 638 1082 p 2 50 ru 708 1067 p (intra-area)s 936 1082 p 2 50 ru 989 1067 p 55 c 1062 1082 p 2 50 ru 1153 1067 p 82 c -1(T3)m 1314 1082 p 2 50 ru 1510 1067 p 42 c 1724 1082 p 2 50 ru 224 1132 p 2 50 ru 289 1117 p 78 c 383 1132 p 2 50 ru 421 1117 p (N4)s 509 1132 p 2 50 ru 564 1117 p 48 c 638 1132 p 2 50 ru 708 1117 p (intra-area)s 936 1132 p 2 50 ru 989 1117 p 56 c 1062 1132 p 2 50 ru 1153 1117 p 82 c -1(T3)m 1314 1132 p 2 50 ru 1510 1117 p 42 c 1724 1132 p 2 50 ru 224 1182 p 2 50 ru 289 1167 p 78 c 383 1182 p 2 50 ru 429 1167 p (Ib)s 509 1182 p 2 50 ru 564 1167 p 48 c 638 1182 p 2 50 ru 708 1167 p (intra-area)s 936 1182 p 2 50 ru 989 1167 p 55 c 1062 1182 p 2 50 ru 1179 1167 p 42 c 1314 1182 p 2 50 ru 1510 1167 p 42 c 1724 1182 p 2 50 ru 224 1231 p 2 50 ru 289 1216 p 78 c 383 1231 p 2 50 ru 431 1216 p (Ia)s 509 1231 p 2 50 ru 564 1216 p 48 c 638 1231 p 2 50 ru 708 1216 p (intra-area)s 936 1231 p 2 50 ru 979 1216 p (12)s 1062 1231 p 2 50 ru 1143 1216 p 82 c -2(T10)m 1314 1231 p 2 50 ru 1510 1216 p 42 c 1724 1231 p 2 50 ru 224 1281 p 2 50 ru 289 1266 p 78 c 383 1281 p 2 50 ru 421 1266 p (N6)s 509 1281 p 2 50 ru 564 1266 p 48 c 638 1281 p 2 50 ru 708 1266 p (intra-area)s 936 1281 p 2 50 ru 989 1266 p 56 c 1062 1281 p 2 50 ru 1143 1266 p 82 c -2(T10)m 1314 1281 p 2 50 ru 1510 1266 p 42 c 1724 1281 p 2 50 ru 224 1331 p 2 50 ru 289 1316 p 78 c 383 1331 p 2 50 ru 421 1316 p (N7)s 509 1331 p 2 50 ru 564 1316 p 48 c 638 1331 p 2 50 ru 708 1316 p (intra-area)s 936 1331 p 2 50 ru 979 1316 p (12)s 1062 1331 p 2 50 ru 1143 1316 p 82 c -2(T10)m 1314 1331 p 2 50 ru 1510 1316 p 42 c 1724 1331 p 2 50 ru 224 1381 p 2 50 ru 289 1366 p 78 c 383 1381 p 2 50 ru 421 1366 p (N8)s 509 1381 p 2 50 ru 564 1366 p 48 c 638 1381 p 2 50 ru 708 1366 p (intra-area)s 936 1381 p 2 50 ru 979 1366 p (10)s 1062 1381 p 2 50 ru 1143 1366 p 82 c -2(T10)m 1314 1381 p 2 50 ru 1510 1366 p 42 c 1724 1381 p 2 50 ru 224 1431 p 2 50 ru 289 1416 p 78 c 383 1431 p 2 50 ru 421 1416 p (N9)s 509 1431 p 2 50 ru 564 1416 p 48 c 638 1431 p 2 50 ru 708 1416 p (intra-area)s 936 1431 p 2 50 ru 980 1416 p 49 c -1 r 49 c 1062 1431 p 2 50 ru 1143 1416 p 82 c -2(T10)m 1314 1431 p 2 50 ru 1510 1416 p 42 c 1724 1431 p 2 50 ru 224 1480 p 2 50 ru 289 1465 p 78 c 383 1480 p 2 50 ru 411 1465 p (N10)s 509 1480 p 2 50 ru 564 1465 p 48 c 638 1480 p 2 50 ru 708 1465 p (intra-area)s 936 1480 p 2 50 ru 979 1465 p (13)s 1062 1480 p 2 50 ru 1143 1465 p 82 c -2(T10)m 1314 1480 p 2 50 ru 1510 1465 p 42 c 1724 1480 p 2 50 ru 224 1530 p 2 50 ru 289 1515 p 78 c 383 1530 p 2 50 ru 412 1515 p (N1)s -1 r 49 c 509 1530 p 2 50 ru 564 1515 p 48 c 638 1530 p 2 50 ru 708 1515 p (intra-area)s 936 1530 p 2 50 ru 979 1515 p (14)s 1062 1530 p 2 50 ru 1143 1515 p 82 c -2(T10)m 1314 1530 p 2 50 ru 1510 1515 p 42 c 1724 1530 p 2 50 ru 224 1580 p 2 50 ru 289 1565 p 78 c 383 1580 p 2 50 ru 421 1565 p (H1)s 509 1580 p 2 50 ru 564 1565 p 48 c 638 1580 p 2 50 ru 708 1565 p (intra-area)s 936 1580 p 2 50 ru 979 1565 p (21)s 1062 1580 p 2 50 ru 1143 1565 p 82 c -2(T10)m 1314 1580 p 2 50 ru 1510 1565 p 42 c 1724 1580 p 2 50 ru 224 1630 p 2 50 ru 250 1615 p (ASBR)s 383 1630 p 2 50 ru 411 1615 p 82 c -1(T5)m 509 1630 p 2 50 ru 564 1615 p 48 c 638 1630 p 2 50 ru 708 1615 p (intra-area)s 936 1630 p 2 50 ru 989 1615 p 54 c 1062 1630 p 2 50 ru 1153 1615 p 82 c -1(T5)m 1314 1630 p 2 50 ru 1510 1615 p 42 c 1724 1630 p 2 50 ru 224 1680 p 2 50 ru 250 1665 p (ASBR)s 383 1680 p 2 50 ru 411 1665 p 82 c -1(T7)m 509 1680 p 2 50 ru 564 1665 p 48 c 638 1680 p 2 50 ru 708 1665 p (intra-area)s 936 1680 p 2 50 ru 989 1665 p 56 c 1062 1680 p 2 50 ru 1143 1665 p 82 c -2(T10)m 1314 1680 p 2 50 ru 1510 1665 p 42 c 1724 1680 p 2 50 ru 225 1681 p 1500 2 ru 224 1731 p 2 50 ru 289 1716 p 78 c 383 1731 p 2 50 ru 411 1716 p (N12)s 509 1731 p 2 50 ru 564 1716 p 42 c 638 1731 p 2 50 ru 664 1716 p (type)s 11 r 49 c 10(external)m 936 1731 p 2 50 ru 979 1716 p (10)s 1062 1731 p 2 50 ru 1143 1716 p 82 c -2(T10)m 1314 1731 p 2 50 ru 1484 1716 p 82 c -1(T7)m 1724 1731 p 2 50 ru 224 1781 p 2 50 ru 289 1766 p 78 c 383 1781 p 2 50 ru 411 1766 p (N13)s 509 1781 p 2 50 ru 564 1766 p 42 c 638 1781 p 2 50 ru 664 1766 p (type)s 11 r 49 c 10(external)m 936 1781 p 2 50 ru 979 1766 p (14)s 1062 1781 p 2 50 ru 1153 1766 p 82 c -1(T5)m 1314 1781 p 2 50 ru 1484 1766 p 82 c -1(T5)m 1724 1781 p 2 50 ru 224 1831 p 2 50 ru 289 1816 p 78 c 383 1831 p 2 50 ru 411 1816 p (N14)s 509 1831 p 2 50 ru 564 1816 p 42 c 638 1831 p 2 50 ru 664 1816 p (type)s 11 r 49 c 10(external)m 936 1831 p 2 50 ru 979 1816 p (14)s 1062 1831 p 2 50 ru 1153 1816 p 82 c -1(T5)m 1314 1831 p 2 50 ru 1484 1816 p 82 c -1(T5)m 1724 1831 p 2 50 ru 224 1881 p 2 50 ru 289 1866 p 78 c 383 1881 p 2 50 ru 411 1866 p (N15)s 509 1881 p 2 50 ru 564 1866 p 42 c 638 1881 p 2 50 ru 664 1866 p (type)s 11 r 49 c 10(external)m 936 1881 p 2 50 ru 979 1866 p (17)s 1062 1881 p 2 50 ru 1143 1866 p 82 c -2(T10)m 1314 1881 p 2 50 ru 1484 1866 p 82 c -1(T7)m 1724 1881 p 2 50 ru 225 1882 p 1500 2 ru 427 2019 p 84 c -2(able)m 9(12:)m 14(The)m 11(routing)m 10(table)m 11(for)m 10(Router)m 10 r 82 c -1(T6)m 9(\(no)m 11(con\014gured)m 10(areas\).)m t-bol.360 @sf 0 2197 p 49 c -2(1.3)m 49(Sample)m 13 r 114 c (outing)s 11(table,)m 13(with)m 12(ar)m (eas)s t-rom.300 @sf 0 2293 p (Consider)s 11(the)m 12(previous)m 11(example,)m 11(this)m 12(time)m 11(split)m 11(into)m 11(OSPF)m 12(areas.)m 16(An)m 11(OSPF)m 12(area)m 11(con\014guration)m 11(is)m 11(pictured)m 12(in)m 11(Figure)m 11(6.)m 0 2342 p (Router)s 10 r 82 c -1(T4')m -3 r 115 c 9(routing)m 11(table)m 10(will)m 10(be)m 10(described)m 10(for)m 10(this)m 10(area)m 11(con\014guration.)m 13(Router)m 11 r 82 c -2(T4)m 9(has)m 10 r 97 c 10(connection)m 11(to)m 10(Area)m 10 r 49 c 10(and)m 10 r 97 c 0 2392 p (backbone)s 9(connection.)m 13(This)m 9(causes)m 8(Router)m 9 r 82 c -2(T4)m 8(to)m 9(view)m 8(the)m 9(AS)m 9(as)m 8(the)m 9(concatenation)m 9(of)m 8(the)m 9(two)m 9(graphs)m 8(shown)m 9(in)m 9(Figures)m 0 2442 p 55 c 10(and)m 11(8.)m 14(The)m 10(resulting)m 11(routing)m 10(table)m 10(is)m 11(displayed)m 10(in)m 11 r 84 c -2(able)m 9(13.)m 0 2510 p (Again,)s 8(routers)m 8 r 82 c -1(T5)m 7(and)m 8 r 82 c -2(T7)m 7(are)m 8(AS)m 8(boundary)m 8(routers.)m 13(Routers)m 7 r 82 c -1(T3,)m 7 r 82 c -1(T4,)m 7 r 82 c -1(T7,)m 7 r 82 c -1(T10)m 6(and)m 8 r 82 c -1(T1)m -2 r 49 c 7(are)m 8(area)m 8(border)m 8(routers.)m 0 2559 p (Note)s 11(that)m 11(there)m 11(are)m 11(two)m 11(routing)m 11(entries)m 10(\(in)m 11(this)m 11(case)m 11(having)m 11(identical)m 11(paths\))m 11(for)m 11(router)m 11 r 82 c -2(T7,)m 10(in)m 11(its)m 11(dual)m 11(capacities)m 11(as)m 11(an)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(56])m @eop 55 @bop0 55 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (When)s 10(multiple)m 11(paths)m 10(of)m 11(equal)m 10(path-type)m 11(and)m 10(cost)m 11(exist)m 10(to)m 11 r 97 c 10(destination)m 11(\(called)m 10(elsewhere)m 11(\\equal-cost")m 10(paths\),)m 11(they)m 10(are)m 0 245 p (stored)s 10(in)m 11 r 97 c 10(single)m 11(routing)m 10(table)m 10(entry)m -1 r 46 c 13(Each)m 10(one)m 11(of)m 10(the)m 10(\\equal-cost")m 11(paths)m 10(is)m 11(distinguished)m 10(by)m 10(the)m 11(following)m 10(\014elds:)m t-bol.300 @sf 0 346 p (Next)s 10(hop)m t-rom.300 @sf 21(The)m 11(outgoing)m 10(router)m 10(interface)m 11(to)m 10(use)m 11(when)m 10(forwarding)m 10(traf)m (\014c)s 10(to)m 10(the)m 11(destination.)m 14(On)m 10(multi-access)m 11(networks,)m 104 396 p (the)s 9(next)m 9(hop)m 9(also)m 9(includes)m 9(the)m 9(IP)m 9(address)m 9(of)m 9(the)m 9(next)m 10(router)m 9(\(if)m 9(any\))m 9(in)m 9(the)m 9(path)m 9(towards)m 9(the)m 9(destination.)m 14(This)m 9(next)m 104 445 p (router)s 10(will)m 11(always)m 10(be)m 10(one)m 11(of)m 10(the)m 11(adjacent)m 10(neighbors.)m t-bol.300 @sf 0 526 p (Advertising)s 10 r 114 c (outer)s t-rom.300 @sf 20 r 86 c -3(alid)m 10(only)m 12(for)m 12(inter)m (-area)s 11(and)m 11(AS)m 12(external)m 12(paths.)m 17(This)m 12(\014eld)m 12(indicates)m 11(the)m 12(Router)m 12(ID)m 11(of)m 12(the)m 12(router)m 104 576 p (advertising)s 10(the)m 11(summary)m 10(link)m 10(or)m 11(AS)m 10(external)m 11(link)m 10(that)m 11(led)m 10(to)m 10(this)m 11(path.)m t-bol.360 @sf 0 709 p 49 c -2(1.1)m 49(Routing)m 13(table)m 12(lookup)m t-rom.300 @sf 0 802 p (When)s 12(an)m 12(IP)m 11(data)m 12(packet)m 12(is)m 12(received,)m 12(an)m 12(OSPF)m 11(router)m 12(\014nds)m 12(the)m 12(routing)m 12(table)m 11(entry)m 12(that)m 12(best)m 12(matches)m 12(the)m 11(packet')m -1 r 115 c 11(des-)m 0 852 p (tination.)s 21(This)m 13(routing)m 13(table)m 13(entry)m 13(then)m 13(provides)m 13(the)m 13(outgoing)m 13(interface)m 13(and)m 12(next)m 13(hop)m 13(router)m 13(to)m 13(use)m 13(in)m 13(forwarding)m 13(the)m 0 902 p (packet.)s 16(This)m 12(section)m 11(describes)m 11(the)m 11(process)m 11(of)m 12(\014nding)m 11(the)m 11(best)m 11(matching)m 12(routing)m 11(table)m 11(entry)m -2 r 46 c 16(The)m 11(process)m 11(consists)m 11(of)m 12 r 97 c 0 952 p (number)s 10(of)m 11(steps,)m 10(wherein)m 11(the)m 10(collection)m 11(of)m 10(routing)m 11(table)m 10(entries)m 11(is)m 10(progressively)m 11(pruned.)m 14(In)m 10(the)m 11(end,)m 10(the)m 11(single)m 10(routing)m 0 1001 p (table)s 10(entry)m 11(remaining)m 10(is)m 11(the)m 10(called)m 10(best)m 11(match.)m 0 1067 p (Note)s 10(that)m 9(the)m 10(steps)m 9(described)m 10(below)m 10(may)m 9(fail)m 10(to)m 9(produce)m 10 r 97 c 10(best)m 9(match)m 10(routing)m 9(table)m 10(entry)m 10(\(i.e.,)m 9(all)m 10(existing)m 10(routing)m 9(table)m 0 1116 p (entries)s 13(are)m 14(pruned)m 13(for)m 14(some)m 13(reason)m 14(or)m 13(another\).)m 23(In)m 13(this)m 14(case,)m 14(the)m 13(packet')m -1 r 115 c 13(IP)m 13(destination)m 14(is)m 13(considered)m 13(unreachable.)m 0 1166 p (Instead)s 12(of)m 13(being)m 12(forwarded,)m 13(the)m 12(packet)m 12(should)m 12(be)m 13(dropped)m 12(and)m 12(an)m 13(ICMP)m 12(destination)m 12(unreachable)m 12(message)m 13(should)m 12(be)m 0 1216 p (returned)s 10(to)m 11(the)m 10(packet')m -1 r 115 c 9(source.)m 52 1317 p (1.)s 21(Select)m 14(the)m 14(complete)m 15(set)m 14(of)m 14(\\matching")m 15(routing)m 14(table)m 14(entries)m 15(from)m 14(the)m 15(routing)m 14(table.)m 26(Each)m 14(routing)m 14(table)m 15(entry)m 104 1367 p (describes)s 13 r 97 c 13(\(set)m 13(of\))m 13(path\(s\))m 13(to)m 13 r 97 c 13(range)m 13(of)m 13(IP)m 13(addresses.)m 22(If)m 13(the)m 13(data)m 13(packet')m -2 r 115 c 12(IP)m 13(destination)m 13(falls)m 13(into)m 14(an)m 13(entry')m -2 r 115 c 104 1416 p (range)s 9(of)m 9(IP)m 10(addresses,)m 9(the)m 10(routing)m 9(table)m 9(entry)m 10(is)m 9(called)m 9 r 97 c 10(match.)m 13(\(It)m 10(is)m 9(quite)m 9(likely)m 10(that)m 9(multiple)m 9(entries)m 10(will)m 9(match)m 104 1466 p (the)s 10(data)m 11(packet.)m 13(For)m 11(example,)m 10 r 97 c 11(default)m 10(route)m 11(will)m 10(match)m 10(all)m 11(packets.\))m 52 1547 p (2.)s 21(Suppose)m 15(that)m 15(the)m 16(packet')m -1 r 115 c 14(IP)m 15(destination)m 16(falls)m 15(into)m 16(one)m 15(of)m 16(the)m 15(router)m 1 r 39 c -1 r 115 c 15(con\014gured)m t-bol.300 @sf 15(ar)m (ea)s 15(addr)m (ess)s 14(ranges)m t-rom.300 @sf 16(\(see)m 104 1597 p (Section)s 7(3.5\),)m 8(and)m 7(that)m 7(the)m 7(particular)m t-bol.300 @sf 7(ar)m (ea)s 6(addr)m (ess)s 7(range)m t-rom.300 @sf 7(is)m 7(active.)m 13(This)m 7(means)m 7(that)m 7(there)m 7(are)m 7(one)m 7(or)m 7(more)m 7(reachable)m 104 1647 p (\(by)s 10(intra-area)m 11(paths\))m 11(networks)m 10(contained)m 11(in)m 11(the)m 10(area)m 11(address)m 11(range.)m 14(The)m 11(packet')m -2 r 115 c 10(IP)m 11(destination)m 10(is)m 11(then)m 11(required)m 104 1696 p (to)s 11(belong)m 11(to)m 11(one)m 11(of)m 11(these)m 11(constituent)m 11(networks.)m 16(For)m 11(this)m 12(reason,)m 11(only)m 11(matching)m 11(routing)m 11(table)m 11(entries)m 11(with)m t-bol.300 @sf 11(path-)m 104 1746 p (type)s t-rom.300 @sf 13(of)m 13(intra-area)m 13(are)m 13(considered)m 14(\(all)m 13(others)m 13(are)m 13(pruned\).)m 22(If)m 13(no)m 13(such)m 14(matching)m 13(entries)m 13(exist,)m 14(the)m 13(destination)m 13(is)m 104 1796 p (unreachable)s 10(\(see)m 11(above\).)m 13(Otherwise,)m 11(skip)m 10(to)m 11(step)m 10(4.)m 52 1877 p (3.)s 21(Reduce)m 10(the)m 11(set)m 10(of)m 11(matching)m 10(entries)m 11(to)m 10(those)m 11(having)m 10(the)m 11(most)m 10(preferential)m t-bol.300 @sf 11(path-type)m t-rom.300 @sf 10(\(see)m 11(Section)m 10 r 49 c (1\).)s 13(OSPF)m 10(has)m 104 1927 p 97 c 11(four)m 11(level)m 12(hierarchy)m 11(of)m 11(paths.)m 16(Intra-area)m 12(paths)m 11(are)m 11(the)m 12(most)m 11(preferred,)m 11(followed)m 11(in)m 12(order)m 11(by)m 11(inter)m (-area,)s 11 r 84 c -2(ype)m 10 r 49 c 104 1976 p (external)s 10(and)m 11 r 84 c -2(ype)m 9 r 50 c 11(external)m 10(paths.)m 52 2057 p (4.)s 21(Select)m 9(the)m 10(remaining)m 10(routing)m 10(table)m 10(entry)m 10(that)m 10(provides)m 10(the)m 10(longest)m 10(\(most)m 10(speci\014c\))m 9(match.)m 14(Another)m 10(way)m 10(of)m 10(saying)m 104 2107 p (this)s 13(is)m 13(to)m 14(choose)m 13(the)m 13(remaining)m 13(entry)m 13(that)m 14(speci\014es)m 13(the)m 13(narrowest)m 13(range)m 14(of)m 13(IP)m 13(addresses.)m t-rom.210 @sf 1609 2092 p (10)s t-rom.300 @sf 1662 2107 p (For)s 14(example,)m 14(the)m 104 2157 p (entry)s 15(for)m 16(the)m 15(address/mask)m 16(pair)m 15(of)m 16(\(128.185.1.0,)m c-med.300 @sf 17(0xffffff00)m t-rom.300 @sf 41 c 15(is)m 16(more)m 15(speci\014c)m 16(than)m 15(an)m 16(entry)m 15(for)m 16(the)m 15(pair)m 104 2206 p (\(128.185.0.0,)s c-med.300 @sf 10(0xffff0000)m t-rom.300 @sf (\).)s 14(The)m 10(default)m 11(route)m 10(is)m 11(the)m 10(least)m 11(speci\014c)m 10(match,)m 10(since)m 11(it)m 10(matches)m 11(all)m 10(destinations.)m 52 2287 p (5.)s 21(At)m 13(this)m 13(point,)m 14(there)m 13(may)m 14(still)m 13(be)m 13(multiple)m 13(routing)m 14(table)m 13(entries)m 13(remaining.)m 22(Each)m 14(routing)m 13(entry)m 13(will)m 13(specify)m 14(the)m 104 2337 p (same)s 10(range)m 11(of)m 11(IP)m 11(addresses,)m 10(but)m 11 r 97 c 11(dif)m (ferent)s 10(IP)m 10 r 84 c -1(ype)m 9(of)m 11(Service.)m 15(Select)m 10(the)m 11(routing)m 11(table)m 11(entry)m 10(whose)m 11 r 84 c (OS)s 10(value)m 104 2387 p (matches)s 12(the)m 11 r 84 c (OS)s 11(found)m 12(in)m 12(the)m 12(packet)m 11(header)m -1 r 46 c 17(If)m 12(there)m 12(is)m 11(no)m 12(routing)m 12(table)m 12(entry)m 11(for)m 12(this)m 12 r 84 c (OS,)s 11(select)m 12(the)m 11(routing)m 104 2437 p (table)s 11(entry)m 12(for)m 11 r 84 c (OS)s 11(0.)m 17(In)m 12(other)m 11(words,)m 12(packets)m 12(requesting)m 11 r 84 c (OS)s 11 r 88 c 11(are)m 12(routed)m 11(along)m 12(the)m 11 r 84 c (OS)s 11 r 48 c 12(path)m 11(if)m 12 r 97 c 11 r 84 c (OS)s 11 r 88 c 104 2486 p (path)s 10(does)m 11(not)m 10(exist.)m 0 2520 p 780 2 ru t-rom.180 @sf 33 2547 p (10)s t-rom.240 @sf 60 2559 p (It)s 8(is)m 8(assumed)m 9(that,)m 8(for)m 8(two)m 8(dif)m (ferent)s 8(address)m 8(ranges)m 8(matching)m 8(the)m 9(destination,)m 8(one)m 8(range)m 8(is)m 8(more)m 9(speci\014c)m 8(than)m 8(the)m 8(other)m -1 r 46 c 10(Non-contiguous)m 9(subnet)m 0 2599 p (masks)s 8(can)m 9(be)m 8(con\014gured)m 8(to)m 9(violate)m 8(this)m 8(assumption.)m 11(Such)m 9(subnet)m 8(mask)m 8(con\014gurations)m 9(cannot)m 8(be)m 8(handled)m 9(by)m 8(the)m 8(OSPF)m 9(protocol.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(55])m @eop 54 @bop0 54 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (Addr)s (ess)s 10(Mask)m t-rom.300 @sf 20(Only)m 12(de\014ned)m 11(for)m 11(networks.)m 16(The)m 12(network')m -2 r 115 c 11(IP)m 11(address)m 11(together)m 11(with)m 11(its)m 12(address)m 11(mask)m 11(de\014nes)m 11 r 97 c 11(range)m 104 245 p (of)s 10(IP)m 10(addresses.)m 14(For)m 10(IP)m 10(subnets,)m 10(the)m 10(address)m 10(mask)m 10(is)m 10(referred)m 10(to)m 10(as)m 11(the)m 10(subnet)m 10(mask.)m 13(For)m 11(host)m 10(routes,)m 10(the)m 10(mask)m 10(is)m 104 295 p (\\all)s 10(ones")m 11 r 40 c c-med.300 @sf (0xffffffff)s t-rom.300 @sf (\).)s t-bol.300 @sf 0 376 p (Optional)s 10(Capabilities)m t-rom.300 @sf 21(When)m 12(the)m 11(destination)m 12(is)m 12 r 97 c 11(router)m 12(\(either)m 11(an)m 12(area)m 11(border)m 12(router)m 12(or)m 11(an)m 12(AS)m 11(boundary)m 12(router\))m 11(this)m 104 426 p (\014eld)s 10(indicates)m 10(the)m 10(optional)m 10(OSPF)m 11(capabilities)m 10(supported)m 10(by)m 10(the)m 10(destination)m 11(router)m -2 r 46 c 13(The)m 10(two)m 10(optional)m 11(capabilities)m 104 476 p (currently)s 13(de\014ned)m 14(by)m 13(this)m 13(speci\014cation)m 14(are)m 13(the)m 14(ability)m 13(to)m 13(route)m 14(based)m 13(on)m 14(IP)m 13 r 84 c (OS)s 13(and)m 13(the)m 13(ability)m 14(to)m 13(process)m 14(AS)m 104 525 p (external)s 10(advertisements.)m 14(For)m 10 r 97 c 11(further)m 10(discussion)m 11(of)m 10(OSPF')m -1 r 115 c 9(optional)m 11(capabilities,)m 10(see)m 11(Section)m 10(4.5.)m 0 628 p (The)s 11(set)m 11(of)m 11(paths)m 11(to)m 11(use)m 11(for)m 11 r 97 c 11(destination)m 11(may)m 11(vary)m 11(based)m 11(on)m 11(IP)m 11 r 84 c -2(ype)m 10(of)m 11(Service)m 11(and)m 11(the)m 11(OSPF)m 11(area)m 11(to)m 11(which)m 11(the)m 10(paths)m 0 678 p (belong.)s 14(This)m 10(means)m 10(that)m 10(there)m 10(may)m 11(be)m 10(multiple)m 10(routing)m 10(table)m 10(entries)m 10(for)m 10(the)m 11(same)m 10(destination,)m 10(depending)m 10(on)m 10(the)m 10(values)m 0 727 p (of)s 10(the)m 11(next)m 10(two)m 11(\014elds.)m t-bol.300 @sf 0 823 p 84 c -2(ype)m 9(of)m 11(Service)m t-rom.300 @sf 21(There)m 8(can)m 9(be)m 9 r 97 c 9(separate)m 9(set)m 9(of)m 9(routes)m 9(for)m 9(each)m 9(IP)m 9 r 84 c -2(ype)m 8(of)m 9(Service.)m 13(The)m 9(encoding)m 9(of)m 9 r 84 c (OS)s 8(in)m 9(OSPF)m 9(link)m 104 872 p (state)s 10(advertisements)m 11(is)m 10(described)m 10(in)m 11(Section)m 10(12.3.)m t-bol.300 @sf 0 954 p (Ar)s (ea)s t-rom.300 @sf 20(This)m 10(\014eld)m 10(indicates)m 10(the)m 10(area)m 10(whose)m 10(link)m 10(state)m 10(information)m 10(has)m 9(led)m 10(to)m 10(the)m 10(routing)m 10(table)m 10(entry')m -1 r 115 c 9(collection)m 10(of)m 10(paths.)m 104 1003 p (This)s 9(is)m 9(called)m 9(the)m 9(entry')m -1 r 115 c 8(associated)m 10(area.)m 13(For)m 9(sets)m 9(of)m 10(AS)m 9(external)m 9(paths,)m 9(this)m 9(\014eld)m 10(is)m 9(not)m 9(de\014ned.)m 13(For)m 10(destinations)m 104 1053 p (of)s 12(type)m 12(\\area)m 13(border)m 12(router)m 2(",)m 12(there)m 13(may)m 12(be)m 12(separate)m 13(sets)m 12(of)m 12(paths)m 13(\(and)m 12(therefore)m 12(separate)m 13(routing)m 12(table)m 12(entries\))m 104 1103 p (associated)s 13(with)m 12(each)m 13(of)m 13(several)m 13(areas.)m 21(This)m 12(will)m 13(happen)m 13(when)m 13(two)m 12(area)m 13(border)m 13(routers)m 13(share)m 12(multiple)m 13(areas)m 13(in)m 104 1153 p (common.)s 16(For)m 12(all)m 11(other)m 12(destination)m 11(types,)m 11(only)m 12(the)m 11(set)m 11(of)m 12(paths)m 11(associated)m 12(with)m 11(the)m 11(best)m 12(area)m 11(\(the)m 11(one)m 12(providing)m 104 1203 p (the)s 10(shortest)m 11(route\))m 10(is)m 10(kept.)m 0 1298 p (The)s 11(rest)m 11(of)m 11(the)m 11(routing)m 12(table)m 11(entry)m 11(describes)m 11(the)m 11(set)m 11(of)m 11(paths)m 11(to)m 12(the)m 11(destination.)m 16(The)m 11(following)m 11(\014elds)m 11(pertain)m 11(to)m 11(the)m 11(set)m 0 1348 p (of)s 11(paths)m 11(as)m 12 r 97 c 11(whole.)m 16(In)m 11(other)m 11(words,)m 12(each)m 11(one)m 11(of)m 11(the)m 12(paths)m 11(contained)m 11(in)m 11 r 97 c 11(routing)m 12(table)m 11(entry)m 11(is)m 11(of)m 11(the)m 12(same)m 11(path-type)m 0 1397 p (and)s 10(cost)m 11(\(see)m 10(below\).)m t-bol.300 @sf 0 1493 p (Path-type)s t-rom.300 @sf 21(There)m 10(are)m 10(four)m 10(possible)m 10(types)m 10(of)m 10(paths)m 10(used)m 10(to)m 10(route)m 10(traf)m (\014c)s 9(to)m 10(the)m 11(destination,)m 10(listed)m 10(here)m 10(in)m 10(order)m 10(of)m 10(prefer-)m 104 1542 p (ence:)s 16(intra-area,)m 12(inter)m (-area,)s 11(type)m 11 r 49 c 12(external)m 11(or)m 12(type)m 12 r 50 c 11(external.)m 18(Intra-area)m 11(paths)m 12(indicate)m 11(destinations)m 12(belonging)m 104 1592 p (to)s 14(one)m 15(of)m 15(the)m 14(router)m 2 r 39 c -2 r 115 c 14(attached)m 15(areas.)m 26(Inter)m (-area)s 14(paths)m 14(are)m 15(paths)m 15(to)m 14(destinations)m 15(in)m 14(other)m 15(OSPF)m 15(areas.)m 26(These)m 104 1642 p (are)s 11(discovered)m 11(through)m 11(the)m 11(examination)m 11(of)m 11(received)m 10(summary)m 11(link)m 11(advertisements.)m 16(AS)m 11(external)m 11(paths)m 11(are)m 11(paths)m 104 1692 p (to)s 14(destinations)m 14(external)m 15(to)m 14(the)m 15(AS.)m 14(These)m 14(are)m 15(detected)m 14(through)m 14(the)m 15(examination)m 14(of)m 14(received)m 15(AS)m 14(external)m 14(link)m 104 1742 p (advertisements.)s t-bol.300 @sf 0 1823 p (Cost)s t-rom.300 @sf 21(The)m 13(link)m 12(state)m 13(cost)m 13(of)m 13(the)m 12(path)m 13(to)m 13(the)m 13(destination.)m 21(For)m 13(all)m 12(paths)m 13(except)m 13(type)m 13 r 50 c 13(external)m 12(paths)m 13(this)m 13(describes)m 13(the)m 104 1873 p (entire)s 12(path')m -1 r 115 c 11(cost.)m 19(For)m 12 r 84 c -2(ype)m 11 r 50 c 12(external)m 12(paths,)m 13(this)m 12(\014eld)m 12(describes)m 12(the)m 12(cost)m 12(of)m 13(the)m 12(portion)m 12(of)m 12(the)m 12(path)m 12(internal)m 12(to)m 104 1922 p (the)s 10(AS.)m 11(This)m 10(cost)m 10(is)m 11(calculated)m 10(as)m 11(the)m 10(sum)m 11(of)m 10(the)m 10(costs)m 11(of)m 10(the)m 11(path')m -2 r 115 c 10(constituent)m 10(links.)m t-bol.300 @sf 0 2004 p 84 c -2(ype)m 9 r 50 c 11(cost)m t-rom.300 @sf 21(Only)m 12(valid)m 12(for)m 12(type)m 13 r 50 c 12(external)m 12(paths.)m 20(For)m 12(these)m 12(paths,)m 13(this)m 12(\014eld)m 13(indicates)m 12(the)m 12(cost)m 12(of)m 13(the)m 12(path')m -1 r 115 c 11(external)m 104 2053 p (portion.)s 21(This)m 12(cost)m 13(has)m 13(been)m 13(advertised)m 12(by)m 13(an)m 13(AS)m 13(boundary)m 12(router)m 44 c 12(and)m 13(is)m 12(the)m 13(most)m 13(signi\014cant)m 13(part)m 12(of)m 13(the)m 13(total)m 104 2103 p (path)s 10(cost.)m 13(For)m 10(example,)m 11(an)m 9(external)m 10(type)m 10 r 50 c 10(path)m 10(with)m 10(type)m 10 r 50 c 10(cost)m 10(of)m 10 r 53 c 10(is)m 10(always)m 10(preferred)m 10(over)m 10 r 97 c 10(path)m 10(with)m 10(type)m 10 r 50 c 104 2153 p (cost)s 10(of)m 11(10,)m 10(regardless)m 10(of)m 11(the)m 10(cost)m 11(of)m 10(the)m 11(two)m 10(paths')m 10(internal)m 11(components.)m t-bol.300 @sf 0 2234 p (Link)s 10(State)m 11(Origin)m t-rom.300 @sf 21 r 86 c -4(alid)m 9(only)m 9(for)m 10(intra-area)m 9(paths,)m 10(this)m 9(\014eld)m 10(indicates)m 10(the)m 9(link)m 10(state)m 9(advertisement)m 10(\(router)m 9(links)m 10(or)m 10(net-)m 104 2284 p (work)s 8(links\))m 8(that)m 9(directly)m 8(references)m 8(the)m 9(destination.)m 13(For)m 8(example,)m 9(if)m 8(the)m 9(destination)m 8(is)m 8 r 97 c 9(transit)m 8(network,)m 9(this)m 8(is)m 8(the)m 104 2334 p (transit)s 9(network')m -1 r 115 c 8(network)m 10(links)m 10(advertisement.)m 13(If)m 10(the)m 9(destination)m 10(is)m 9 r 97 c 10(stub)m 9(network,)m 10(this)m 9(is)m 10(the)m 9(router)m 10(links)m 9(adver-)m 104 2384 p (tisement)s 11(for)m 12(the)m 11(attached)m 11(router)m -1 r 46 c 16(The)m 11(advertisement)m 12(is)m 11(discovered)m 11(during)m 12(the)m 11(shortest-path)m 12(tree)m 11(calculation)m 11(\(see)m 104 2433 p (Section)s 12(16.1\).)m 20(Multiple)m 12(advertisements)m 12(may)m 13(reference)m 12(the)m 12(destination,)m 13(however)m 12 r 97 c 13(tie-breaking)m 12(scheme)m 12(always)m 104 2483 p (reduces)s 10(the)m 11(choice)m 10(to)m 10 r 97 c 11(single)m 10(advertisement.)m 104 2549 p (This)s 11(\014eld)m 10(is)m 11(for)m 11(informational)m 10(purposes)m 11(only)m -1 r 46 c 13(The)m 11(advertisement)m 11(could)m 11(be)m 10(used)m 11(as)m 11 r 97 c 11(root)m 10(for)m 11(an)m 11(SPF)m 11(calculation)m 104 2599 p (when)s 10(building)m 11 r 97 c 10(reverse)m 10(path)m 11(forwarding)m 10(tree.)m 14(This)m 11(is)m 10(beyond)m 10(the)m 11(scope)m 10(of)m 11(this)m 10(speci\014cation.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(54])m @eop 53 @bop0 53 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (The)s 10(neighbor)m 11(state)m 10(changes)m 11(realized)m 10(by)m 10(each)m 11(router)m 10(are)m 11(listed)m 10(on)m 11(the)m 10(sides)m 10(of)m 11(the)m 10(\014gure.)m 0 261 p (At)s 12(the)m 12(beginning)m 12(of)m 12(Figure)m 13(14,)m 12(router)m 12 r 82 c -1(T1')m -3 r 115 c 12(interface)m 12(to)m 12(the)m 12(network)m 12(becomes)m 12(operational.)m 19(It)m 12(begins)m 12(sending)m 12(hellos,)m 0 311 p (although)s 10(it)m 10(doesn')m 116 c 10(know)m 10(the)m 10(identity)m 10(of)m 10(the)m 10(Designated)m 10(Router)m 11(or)m 10(of)m 10(any)m 10(other)m 10(neighboring)m 10(routers.)m 14(Router)m 10 r 82 c -1(T2)m 9(hears)m 0 361 p (this)s 11(hello)m 10(\(moving)m 11(the)m 11(neighbor)m 10(to)m t-bol.300 @sf 11(Init)m t-rom.300 @sf 11(state\),)m 11(and)m 10(in)m 11(its)m 11(next)m 10(hello)m 11(indicates)m 11(that)m 10(it)m 11(is)m 11(itself)m 10(the)m 11(Designated)m 11(Router)m 10(and)m 0 411 p (that)s 10(it)m 9(has)m 10(heard)m 9(hellos)m 10(from)m 10 r 82 c -2(T1.)m 13(This)m 9(in)m 10(turn)m 9(causes)m 10 r 82 c -1(T1)m 8(to)m 10(go)m 9(to)m 10(state)m t-bol.300 @sf 10(ExStart)m t-rom.300 @sf 44 c 9(as)m 10(it)m 10(starts)m 9(to)m 10(bring)m 9(up)m 10(the)m 9(adjacency)m -1 r 46 c 0 477 p 82 c -2(T1)m 13(begins)m 13(by)m 14(asserting)m 13(itself)m 14(as)m 13(the)m 14(master)m -2 r 46 c 22(When)m 14(it)m 13(sees)m 14(that)m 13 r 82 c -1(T2)m 12(is)m 13(indeed)m 14(the)m 13(master)m 14(\(because)m 13(of)m 14 r 82 c -2(T2')m -2 r 115 c 12(higher)m 0 527 p (Router)s 12(ID\),)m 12 r 82 c -2(T1)m 11(transitions)m 12(to)m 11(slave)m 12(state)m 12(and)m 12(adopts)m 11(its)m 12(neighbor)m 2 r 39 c -2 r 115 c 11(sequence)m 12(number)m -1 r 46 c 17(Database)m 11(Description)m 12(packets)m 0 577 p (are)s 11(then)m 11(exchanged,)m 12(with)m 11(polls)m 11(coming)m 11(from)m 11(the)m 11(master)m 11(\(R)m -1(T2\))m 10(and)m 11(responses)m 11(from)m 11(the)m 11(slave)m 12(\(R)m -2(T1\).)m 15(This)m 11(sequence)m 11(of)m 0 627 p (Database)s 10(Description)m 11(Packets)m 10(ends)m 11(when)m 10(both)m 10(the)m 11(poll)m 10(and)m 11(associated)m 10(response)m 11(has)m 10(the)m 10(M-bit)m 11(of)m (f.)s 0 693 p (In)s 10(this)m 10(example,)m 11(it)m 10(is)m 10(assumed)m 10(that)m 10 r 82 c -1(T2)m 9(has)m 10 r 97 c 11(completely)m 10(up)m 10(to)m 10(date)m 10(database.)m 14(In)m 10(that)m 11(case,)m 10 r 82 c -2(T2)m 10(goes)m 10(immediately)m 10(into)m t-bol.300 @sf 0 743 p (Full)s t-rom.300 @sf 10(state.)m 14 r 82 c -1(T1)m 9(will)m 10(go)m 11(into)m t-bol.300 @sf 10(Full)m t-rom.300 @sf 10(state)m 10(after)m 11(updating)m 10(the)m 10(necessary)m 11(parts)m 10(of)m 10(its)m 11(database.)m 13(This)m 11(is)m 10(done)m 10(by)m 11(sending)m 10(Link)m 0 793 p (State)s 11(Request)m 11(Packets,)m 11(and)m 11(receiving)m 11(Link)m 11(State)m 11(Update)m 11(Packets)m 11(in)m 10(response.)m 16(Note)m 11(that,)m 11(while)m 11 r 82 c -2(T1)m 10(has)m 11(waited)m 11(until)m 11 r 97 c 0 842 p (complete)s 12(set)m 12(of)m 12(Database)m 12(Description)m 13(Packets)m 12(has)m 12(been)m 12(received)m 12(\(from)m 12 r 82 c -1(T2\))m 11(before)m 12(sending)m 12(any)m 12(Link)m 12(State)m 12(Request)m 0 892 p (Packets,)s 14(this)m 13(need)m 13(not)m 13(be)m 13(the)m 13(case.)m 21 r 82 c -1(T1)m 12(could)m 13(have)m 13(interleaved)m 13(the)m 13(sending)m 13(of)m 13(Link)m 13(State)m 13(Request)m 13(Packets)m 13(with)m 12(the)m 0 942 p (reception)s 10(of)m 11(Database)m 10(Description)m 11(Packets.)m t-bol.420 @sf 0 1098 p 49 c -2 r 49 c 57(The)m 15(Routing)m 14 r 84 c -4(able)m 14(Structur)m -1 r 101 c t-rom.300 @sf 0 1207 p (The)s 12(routing)m 12(table)m 11(data)m 12(structure)m 12(contains)m 12(all)m 11(the)m 12(information)m 12(necessary)m 12(to)m 12(forward)m 11(an)m 12(IP)m 12(data)m 12(packet)m 11(toward)m 12(its)m 12(desti-)m 0 1257 p (nation.)s 20(Each)m 13(routing)m 12(table)m 13(entry)m 13(describes)m 12(the)m 13(collection)m 12(of)m 13(best)m 12(paths)m 13(to)m 13 r 97 c 12(particular)m 13(destination.)m 20(When)m 13(forwarding)m 0 1307 p (an)s 14(IP)m 15(data)m 14(packet,)m 16(the)m 14(routing)m 14(table)m 15(entry)m 14(providing)m 15(the)m 14(best)m 14(match)m 15(for)m 14(the)m 15(packet')m -2 r 115 c 14(IP)m 14(destination)m 14(is)m 15(located.)m 26(The)m 0 1357 p (matching)s 11(routing)m 10(table)m 11(entry)m 11(then)m 10(provides)m 11(the)m 11(next)m 10(hop)m 11(towards)m 11(the)m 10(packet')m -1 r 115 c 10(destination.)m 14(OSPF)m 11(also)m 11(provides)m 10(for)m 11(the)m 0 1406 p (existence)s 13(of)m 13 r 97 c 13(default)m 13(route)m 13(\(Destination)m 13(ID)m 13 r 61 c 13(DefaultDestination\).)m 22(When)m 13(the)m 13(default)m 12(route)m 13(exists,)m 14(it)m 13(matches)m 13(all)m 13(IP)m 0 1456 p (destinations)s 12(\(although)m 11(any)m 12(other)m 12(matching)m 11(entry)m 12(is)m 11 r 97 c 12(better)m 12(match\).)m 17(Finding)m 12(the)m 12(routing)m 11(table)m 12(entry)m 11(that)m 12(best)m 12(matches)m 0 1506 p (an)s 10(IP)m 11(destination)m 10(is)m 11(further)m 10(described)m 10(in)m 11(Section)m 10 r 49 c (1.1.)s 0 1572 p (There)s 11(is)m 10 r 97 c 11(single)m 10(routing)m 11(table)m 10(in)m 11(each)m 10(router)m -1 r 46 c 13 r 84 c -2(wo)m 10(sample)m 10(routing)m 11(tables)m 10(are)m 11(described)m 10(in)m 11(Sections)m 10 r 49 c (1.2)s 9(and)m 11 r 49 c -1(1.3.)m 14(The)m 0 1622 p (building)s 10(of)m 11(the)m 10(routing)m 11(table)m 10(is)m 10(discussed)m 11(in)m 10(Section)m 11(16.)m 0 1688 p (The)s 9(rest)m 9(of)m 9(this)m 9(section)m 9(de\014nes)m 9(the)m 9(\014elds)m 9(found)m 9(in)m 9 r 97 c 9(routing)m 9(table)m 9(entry)m -2 r 46 c 12(The)m 9(\014rst)m 9(set)m 9(of)m 9(\014elds)m 9(describes)m 9(the)m 9(routing)m 9(table)m 0 1738 p (entry')s -1 r 115 c 9(destination.)m t-bol.300 @sf 0 1843 p (Destination)s 10 r 84 c -2(ype)m t-rom.300 @sf 20(The)m 14(destination)m 15(can)m 14(be)m 14(one)m 15(of)m 14(three)m 14(types.)m 26(Only)m 14(the)m 15(\014rst)m 14(type,)m 15(Network,)m 16(is)m 14(actually)m 14(used)m 15(when)m 104 1893 p (forwarding)s 10(IP)m 10(data)m 10(traf)m (\014c.)s 13(The)m 9(other)m 10(destinations)m 10(are)m 10(used)m 10(solely)m 10(as)m 10(intermediate)m 10(steps)m 10(in)m 10(the)m 10(routing)m 10(table)m 9(build)m 104 1943 p (process.)s t-bol.300 @sf 104 2024 p (Network)s t-rom.300 @sf 21 r 65 c 10(range)m 10(of)m 10(IP)m 10(addresses,)m 10(to)m 10(which)m 11(IP)m 10(data)m 10(traf)m (\014c)s 9(may)m 10(be)m 11(forwarded.)m 13(This)m 11(includes)m 10(IP)m 10(networks)m 10(\(class)m 195 2074 p (A,)s 11(B,)m 10(or)m 10(C\),)m 11(IP)m 10(subnets,)m 11(and)m 10(single)m 10(IP)m 11(hosts.)m 14(The)m 10(default)m 11(route)m 10(also)m 10(falls)m 11(in)m 10(this)m 11(category)m -2 r 46 c t-bol.300 @sf 104 2139 p (Ar)s (ea)s 9(border)m 11 r 114 c (outer)s t-rom.300 @sf 20(Routers)m 11(that)m 11(are)m 11(connected)m 11(to)m 11(multiple)m 11(OSPF)m 11(areas.)m 15(Such)m 11(routers)m 11(originate)m 11(summary)m 11(link)m 195 2189 p (advertisements.)s 32(These)m 17(routing)m 16(table)m 17(entries)m 16(are)m 16(used)m 17(when)m 16(calculating)m 17(the)m 16(inter)m (-area)s 16(routes)m 16(\(see)m 17(Sec-)m 195 2239 p (tion)s 11(16.2\).)m 13(These)m 11(routing)m 10(table)m 11(entries)m 10(may)m 10(also)m 11(be)m 10(associated)m 11(with)m 10(con\014gured)m 11(virtual)m 10(links.)m t-bol.300 @sf 104 2304 p (AS)s 10(boundary)m 11 r 114 c (outer)s t-rom.300 @sf 20(Routers)m 12(that)m 13(originate)m 13(AS)m 13(external)m 13(link)m 13(advertisements.)m 21(These)m 12(routing)m 13(table)m 13(entries)m 13(are)m 195 2354 p (used)s 11(when)m 10(calculating)m 10(the)m 11(AS)m 10(external)m 11(routes)m 10(\(see)m 10(Section)m 11(16.4\).)m t-bol.300 @sf 0 2436 p (Destination)s 10(ID)m t-rom.300 @sf 21(The)m 11(destination')m -2 r 115 c 10(identi\014er)m 10(or)m 11(name.)m 14(This)m 10(depends)m 11(on)m 10(the)m 11(destination')m -2 r 115 c 10(type.)m 14(For)m 11(networks,)m 10(the)m 11(iden-)m 104 2485 p (ti\014er)s 10(is)m 11(their)m 10(associated)m 10(IP)m 11(address.)m 14(For)m 10(all)m 11(other)m 10(types,)m 10(the)m 11(identi\014er)m 10(is)m 11(the)m 10(OSPF)m 10(Router)m 11(ID.)m t-rom.210 @sf 1642 2470 p 57 c 0 2520 p 780 2 ru t-rom.180 @sf 45 2547 p 57 c t-rom.240 @sf 60 2559 p (The)s 8(address)m 8(space)m 8(of)m 8(IP)m 8(networks)m 7(and)m 8(the)m 8(address)m 8(space)m 8(of)m 8(OSPF)m 8(Router)m 8(IDs)m 8(may)m 8(overlap.)m 11(That)m 8(is,)m 8 r 97 c 8(network)m 7(may)m 8(have)m 8(an)m 8(IP)m 8(address)m 8(which)m 8(is)m 0 2599 p (identical)s 8(\(when)m 9(considered)m 8(as)m 8 r 97 c 9(32-bit)m 8(number\))m 8(to)m 9(some)m 8(router)m 1 r 39 c -1 r 115 c 8(Router)m 8(ID.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(53])m @eop 52 @bop0 52 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 38600707 7564902 9143664 30720081 43942215 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/figure14.fig %%Creator: f2ps %%CreationDate: Fri Jun 8 17:21:29 1990 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 115 139 467 668 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Polyline newpath 200 413 moveto 440 413 lineto stroke newpath 432.000 411.000 moveto 440.000 413.000 lineto 432.000 415.000 lineto stroke % Polyline newpath 440 383 moveto 200 383 lineto stroke newpath 208.000 385.000 moveto 200.000 383.000 lineto 208.000 381.000 lineto stroke % Polyline newpath 199 354 moveto 440 354 lineto stroke newpath 432.000 352.000 moveto 440.000 354.000 lineto 432.000 356.000 lineto stroke % Polyline newpath 440 324 moveto 200 324 lineto stroke newpath 208.000 326.000 moveto 200.000 324.000 lineto 208.000 322.000 lineto stroke % Polyline newpath 199 294 moveto 439 294 lineto stroke newpath 431.000 292.000 moveto 439.000 294.000 lineto 431.000 296.000 lineto stroke % Polyline newpath 440 266 moveto 199 266 lineto stroke newpath 207.000 268.000 moveto 199.000 266.000 lineto 207.000 264.000 lineto stroke % Polyline newpath 199 240 moveto 440 240 lineto stroke newpath 432.000 238.000 moveto 440.000 240.000 lineto 432.000 242.000 lineto stroke % Polyline newpath 452 139 moveto 508 139 lineto 508 187 lineto 452 187 lineto closepath stroke % Polyline newpath 132 139 moveto 188 139 lineto 188 187 lineto 132 187 lineto closepath stroke % Polyline newpath 435 638 moveto 195 638 lineto stroke newpath 203.000 640.000 moveto 195.000 638.000 lineto 203.000 636.000 lineto stroke % Polyline newpath 437 576 moveto 197 576 lineto stroke newpath 205.000 578.000 moveto 197.000 576.000 lineto 205.000 574.000 lineto stroke % Polyline newpath 197 605 moveto 437 605 lineto stroke newpath 429.000 603.000 moveto 437.000 605.000 lineto 429.000 607.000 lineto stroke % Polyline newpath 197 543 moveto 437 543 lineto stroke newpath 429.000 541.000 moveto 437.000 543.000 lineto 429.000 545.000 lineto stroke % Polyline newpath 197 512 moveto 437 512 lineto stroke newpath 429.000 510.000 moveto 437.000 512.000 lineto 429.000 514.000 lineto stroke % Polyline newpath 438 489 moveto 198 489 lineto stroke newpath 206.000 491.000 moveto 198.000 489.000 lineto 206.000 487.000 lineto stroke /Courier findfont 12.222222 scalefont setfont 128 342 moveto 1 -1 scale (Exchange) show 1 -1 scale 460 373 moveto 1 -1 scale (Exchange) show 1 -1 scale 468 257 moveto 1 -1 scale (Init) show 1 -1 scale 222 258 moveto 1 -1 scale (Hello\(DR=RT2,seen=...,RT1\)) show 1 -1 scale 248 232 moveto 1 -1 scale (Hello\(DR=0,seen=0\)) show 1 -1 scale 162 720 moveto 1 -1 scale (Figure 14: An adjacency bring-up example) show 1 -1 scale 131 284 moveto 1 -1 scale (Exstart) show 1 -1 scale 464 313 moveto 1 -1 scale (Exstart) show 1 -1 scale 467 226 moveto 1 -1 scale (Down) show 1 -1 scale 137 228 moveto 1 -1 scale (Down) show 1 -1 scale 227 404 moveto 1 -1 scale (D-D \(Seq=y+1, M, Slave\)) show 1 -1 scale 226 373 moveto 1 -1 scale (D-D \(Seq=y+1, M, Master\)) show 1 -1 scale 226 342 moveto 1 -1 scale (D-D \(Seq=y, M, Slave\)) show 1 -1 scale 225 312 moveto 1 -1 scale (D-D \(Seq=y, I, M, Master\)) show 1 -1 scale 224 285 moveto 1 -1 scale (D-D \(Seq=x, I, M, Master\)) show 1 -1 scale 316 462 moveto 1 -1 scale (.) show 1 -1 scale 316 450 moveto 1 -1 scale (.) show 1 -1 scale 316 436 moveto 1 -1 scale (.) show 1 -1 scale 469 166 moveto 1 -1 scale (RT2) show 1 -1 scale 147 165 moveto 1 -1 scale (RT1) show 1 -1 scale 136 657 moveto 1 -1 scale (Full) show 1 -1 scale 471 529 moveto 1 -1 scale (Full) show 1 -1 scale 128 513 moveto 1 -1 scale (Loading) show 1 -1 scale 272 627 moveto 1 -1 scale (LS Update) show 1 -1 scale 272 564 moveto 1 -1 scale (LS Update) show 1 -1 scale 272 596 moveto 1 -1 scale (LS Request) show 1 -1 scale 274 533 moveto 1 -1 scale (LS Request) show 1 -1 scale 229 504 moveto 1 -1 scale (D-D \(Seq=y+n, Slave\)) show 1 -1 scale 229 480 moveto 1 -1 scale (D-D \(Seq=y+n, Master\)) show 1 -1 scale showpage $F2psEnd endTexFig 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(52])m @eop 51 @bop0 51 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (10.8)s 50(Sending)m 12(Database)m 13(Description)m 12(Packets)m t-rom.300 @sf 0 288 p (This)s 9(section)m 10(describes)m 9(how)m 10(Database)m 9(Description)m 10(Packets)m 9(are)m 10(sent)m 9(to)m 10 r 97 c 9(neighbor)m -1 r 46 c 13(The)m 9(router)m 2 r 39 c -2 r 115 c 9(optional)m 9(OSPF)m 10(capabili-)m 0 338 p (ties)s 8(\(see)m 7(Section)m 8(4.5\))m 7(are)m 8(transmitted)m 7(to)m 8(the)m 8(neighbor)m 7(in)m 8(the)m t-bol.300 @sf 7(Options)m t-rom.300 @sf 8(\014eld)m 8(of)m 7(the)m 8(Database)m 7(Description)m 8(packet.)m 13(The)m 7(router)m 0 388 p (should)s 12(maintain)m 11(the)m 12(same)m 11(set)m 12(of)m 11(optional)m 12(capabilities)m 11(throughout)m 12(the)m 11(Database)m 12(Exchange)m 11(and)m 12(\015ooding)m 11(procedures.)m 17(If)m 0 438 p (for)s 13(some)m 14(reason)m 13(the)m 13(router)m 2 r 39 c -2 r 115 c 13(optional)m 13(capabilities)m 13(change,)m 14(the)m 14(Database)m 13(Exchange)m 13(procedure)m 13(should)m 14(be)m 13(restarted)m 13(by)m 0 488 p (reverting)s 11(to)m 11(neighbor)m 11(state)m t-bol.300 @sf 12(ExStart)m t-rom.300 @sf 46 c 16(There)m 11(are)m 11(currently)m 11(two)m 11(optional)m 11(capabilities)m 12(de\014ned.)m 16(The)m t-bol.300 @sf 11 r 84 c -3(-bit)m t-rom.300 @sf 10(should)m 11(be)m 12(set)m 11(if)m 0 538 p (and)s 10(only)m 11(if)m 10(the)m 10(router)m 11(is)m 10(capable)m 10(of)m 11(calculating)m 10(separate)m 11(routes)m 10(for)m 10(each)m 11(IP)m 10 r 84 c (OS.)s 13(The)m t-bol.300 @sf 10(E-bit)m t-rom.300 @sf 11(should)m 10(be)m 10(set)m 11(if)m 10(and)m 11(only)m 10(if)m 0 587 p (the)s 10(attached)m 11(network)m 10(belongs)m 11(to)m 10 r 97 c 10(non-stub)m 11(area.)m 14(The)m 10(rest)m 11(of)m 10(the)m t-bol.300 @sf 10(Options)m t-rom.300 @sf 11(\014eld)m 10(should)m 11(be)m 10(set)m 11(to)m 10(zero.)m 0 653 p (The)s 16(sending)m 15(of)m 16(Database)m 15(Description)m 16(packets)m 15(depends)m 16(on)m 15(the)m 16(neighbor)m 1 r 39 c -1 r 115 c 15(state.)m 29(In)m 16(state)m t-bol.300 @sf 15(ExStart)m t-rom.300 @sf 16(the)m 15(router)m 16(sends)m 0 703 p (empty)s 13(Database)m 14(Description)m 13(packets,)m 14(with)m 14(the)m 13(initialize)m 14(\(I\),)m 13(more)m 14(\(M\))m 13(and)m 13(master)m 14(\(MS\))m 13(bits)m 14(set.)m 23(These)m 13(packets)m 14(are)m 0 752 p (retransmitted)s 10(every)m 11(RxmtInterval)m 10(seconds.)m 0 818 p (In)s 8(state)m t-bol.300 @sf 8(Exchange)m t-rom.300 @sf 8(the)m 8(Database)m 8(Description)m 8(Packets)m 8(actually)m 8(contain)m 8(summaries)m 8(of)m 7(the)m 8(link)m 8(state)m 8(information)m 8(contained)m 0 868 p (in)s 14(the)m 14(router)m 1 r 39 c -1 r 115 c 13(database.)m 24(Each)m 14(link)m 14(state)m 14(advertisement)m 14(in)m 14(the)m 13(area')m -1 r 115 c 13(topological)m 14(database)m 14(\(at)m 14(the)m 13(time)m 14(the)m 14(neighbor)m 0 917 p (transitions)s 10(into)m t-bol.300 @sf 10(Exchange)m t-rom.300 @sf 11(state\))m 10(is)m 10(listed)m 10(in)m 10(the)m 11(neighbor)m t-bol.300 @sf 10(Database)m 10(summary)m 10(list)m t-rom.300 @sf 46 c 14(When)m 10 r 97 c 10(new)m 10(Database)m 11(Description)m 0 967 p (Packet)s 15(is)m 15(to)m 15(be)m 14(sent,)m 16(the)m 15(packet')m -1 r 115 c 14(sequence)m 15(number)m 15(is)m 14(incremented,)m 16(and)m 15(the)m 15(\(new\))m 15(top)m 15(of)m 15(the)m t-bol.300 @sf 15(Database)m 14(summary)m 0 1017 p (list)s t-rom.300 @sf 14(is)m 15(described)m 14(by)m 14(the)m 14(packet.)m 26(Items)m 14(are)m 15(removed)m 14(from)m 14(the)m t-bol.300 @sf 15(Database)m 14(summary)m 14(list)m t-rom.300 @sf 14(when)m 15(the)m 14(previous)m 14(packet)m 15(is)m 0 1067 p (acknowledged.)s 0 1132 p (In)s 10(state)m t-bol.300 @sf 11(Exchange)m t-rom.300 @sf 44 c 10(the)m 11(determination)m 10(of)m 10(when)m 11(to)m 10(send)m 11 r 97 c 10(packet)m 11(depends)m 10(on)m 10(whether)m 11(the)m 10(router)m 11(is)m 10(master)m 10(or)m 11(slave:)m t-bol.300 @sf 0 1234 p (Master)s t-rom.300 @sf 21(Packets)m 12(are)m 13(sent)m 12(when)m 12(either)m 13(a\))m 12(the)m 13(slave)m 12(acknowledges)m 12(the)m 13(previous)m 12(packet)m 12(by)m 13(echoing)m 12(the)m 13(sequence)m 12(num-)m 148 1284 p (ber)s 15(or)m 15(b\))m 14(RxmtInterval)m 15(seconds)m 15(elapse)m 15(without)m 14(an)m 15(acknowledgment,)m 16(in)m 15(which)m 14(case)m 15(the)m 15(previous)m 15(packet)m 14(is)m 148 1333 p (retransmitted.)s t-bol.300 @sf 0 1414 p (Slave)s t-rom.300 @sf 53(Packets)m 10(are)m 10(sent)m 10(only)m 10(in)m 10(response)m 10(to)m 10(packets)m 10(received)m 10(from)m 10(the)m 10(master)m -2 r 46 c 13(If)m 10(the)m 10(packet)m 10(received)m 10(from)m 10(the)m 10(master)m 148 1464 p (is)s 10(new)m -1 r 44 c 9 r 97 c 11(new)m 10(packet)m 10(is)m 11(sent,)m 10(otherwise)m 11(the)m 10(previous)m 10(packet)m 11(is)m 10(resent.)m 0 1566 p (In)s 13(states)m t-bol.300 @sf 13(Loading)m t-rom.300 @sf 13(and)m t-bol.300 @sf 13(Full)m t-rom.300 @sf 13(the)m 14(slave)m 13(must)m 13(resend)m 13(its)m 13(last)m 13(packet)m 13(in)m 13(response)m 13(to)m 13(duplicate)m 14(packets)m 13(received)m 13(from)m 13(the)m 0 1616 p (master)s -1 r 46 c 12(For)m 10(this)m 10(reason)m 10(the)m 10(slave)m 10(must)m 10(wait)m 10(RouterDeadInterval)m 10(seconds)m 10(before)m 10(freeing)m 10(the)m 10(last)m 10(packet.)m 14(Reception)m 10(of)m 10 r 97 c 0 1665 p (packet)s 10(from)m 11(the)m 10(master)m 11(after)m 10(this)m 10(interval)m 11(will)m 10(generate)m 11 r 97 c t-bol.300 @sf 10(Seq)m 11(Number)m 10(Mismatch)m t-rom.300 @sf 10(neighbor)m 11(event.)m t-bol.360 @sf 0 1799 p (10.9)s 50(Sending)m 12(Link)m 13(State)m 12(Request)m 13(Packets)m t-rom.300 @sf 0 1892 p (In)s 10(neighbor)m 10(states)m t-bol.300 @sf 10(Exchange)m t-rom.300 @sf 10(or)m t-bol.300 @sf 10(Loading)m t-rom.300 @sf 44 c 10(the)m t-bol.300 @sf 10(Link)m 11(state)m 10 r 114 c (equest)s 9(list)m t-rom.300 @sf 10(contains)m 10 r 97 c 10(list)m 10(of)m 10(those)m 10(link)m 10(state)m 10(advertisements)m 0 1942 p (that)s 9(need)m 9(to)m 9(be)m 9(obtained)m 10(from)m 9(the)m 9(neighbor)m -2 r 46 c 13 r 84 c -2 r 111 c 8(request)m 9(these)m 9(advertisements,)m 10 r 97 c 9(router)m 9(sends)m 9(the)m 9(neighbor)m 9(the)m 9(beginning)m 0 1992 p (of)s 10(the)m t-bol.300 @sf 11(Link)m 10(state)m 11 r 114 c (equest)s 9(list)m t-rom.300 @sf 44 c 11(packaged)m 10(in)m 11 r 97 c 10(Link)m 10(State)m 11(Request)m 10(packet.)m 0 2057 p (When)s 13(the)m 13(neighbor)m 12(responds)m 13(to)m 13(these)m 13(requests)m 13(with)m 13(the)m 12(proper)m 13(Link)m 13(State)m 13(Update)m 13(packet\(s\),)m 13(the)m t-bol.300 @sf 13(Link)m 13(state)m 12 r 114 c (equest)s 0 2107 p (list)s t-rom.300 @sf 12(is)m 13(truncated)m 12(and)m 13 r 97 c 12(new)m 13(Link)m 12(State)m 13(Request)m 12(packet)m 13(is)m 12(sent.)m 20(This)m 13(process)m 12(continues)m 13(until)m 12(the)m 12(link)m 13(state)m 12(request)m 13(list)m 0 2157 p (becomes)s 13(empty)m -2 r 46 c 19(Unsatis\014ed)m 12(Link)m 13(State)m 12(Requests)m 13(are)m 13(retransmitted)m 12(at)m 13(intervals)m 12(of)m 13(RxmtInterval.)m 20(There)m 12(should)m 13(be)m 12(at)m 0 2207 p (most)s 10(one)m 11(Link)m 10(State)m 11(Request)m 10(packet)m 10(outstanding)m 11(at)m 10(any)m 11(one)m 10(time.)m 0 2272 p (When)s 13(the)m t-bol.300 @sf 14(Link)m 13(state)m 14 r 114 c (equest)s 12(list)m t-rom.300 @sf 14(becomes)m 13(empty)m -2 r 44 c 14(and)m 13(the)m 13(neighbor)m 14(state)m 13(is)m t-bol.300 @sf 14(Loading)m t-rom.300 @sf 13(\(i.e.,)m 14 r 97 c 14(complete)m 13(sequence)m 14(of)m 0 2322 p (Database)s 10(Description)m 11(packets)m 10(has)m 11(been)m 10(received)m 10(from)m 11(the)m 10(neighbor\),)m 11(the)m t-bol.300 @sf 10(Loading)m 11(Done)m t-rom.300 @sf 10(neighbor)m 10(event)m 11(is)m 10(generated.)m t-bol.360 @sf 0 2455 p (10.10)s 50(An)m 12(Example)m t-rom.300 @sf 0 2549 p (Figure)s 7(14)m 8(shows)m 7(an)m 7(example)m 8(of)m 7(an)m 7(adjacency)m 8(forming.)m 13(Routers)m 7 r 82 c -1(T1)m 6(and)m 7 r 82 c -1(T2)m 6(are)m 7(both)m 8(connected)m 7(to)m 8 r 97 c 7(broadcast)m 7(network.)m 0 2599 p (It)s 10(is)m 10(assumed)m 10(that)m 9 r 82 c -1(T2)m 9(is)m 10(the)m 10(Designated)m 9(Router)m 10(for)m 10(the)m 10(network,)m 10(and)m 10(that)m 10 r 82 c -2(T2)m 9(has)m 10 r 97 c 10(higher)m 10(Router)m 9(ID)m 10(that)m 10(router)m 10 r 82 c -2(T1.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(51])m @eop 50 @bop0 50 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m cmsy10.300 @sf 154 195 p 15 c t-rom.300 @sf 20(If)m 8(the)m 9(router)m 8(is)m 8(slave,)m 8(and)m 8(the)m 8(packet')m -1 r 115 c 7(sequence)m 8(number)m 8(is)m 9(equal)m 8(to)m 8(the)m 8(router)m 1 r 39 c -1 r 115 c 7(sequence)m 8(number)m 44 c 7(the)m 8(packet)m 195 245 p (is)s 10 r 97 c 9(duplicate.)m 14(The)m 9(slave)m 10(must)m 9(respond)m 10(to)m 10(duplicates)m 9(by)m 10(repeating)m 9(the)m 10(last)m 9(Database)m 10(Description)m 9(packet)m 10(that)m 195 295 p (it)s 11(sent.)m cmsy10.300 @sf 154 361 p 15 c t-rom.300 @sf 20(Else,)m 11(generate)m 10(the)m 11(neighbor)m 10(event)m t-bol.300 @sf 10(Seq)m 11(Number)m 10(Mismatch)m t-rom.300 @sf 11(and)m 10(stop)m 11(processing)m 10(the)m 10(packet.)m t-bol.300 @sf 0 452 p (Loading)s 10(or)m 11(Full)m t-rom.300 @sf 21(In)m 9(this)m 10(state,)m 10(the)m 9(router)m 10(has)m 10(sent)m 9(and)m 10(received)m 10(an)m 9(entire)m 10(sequence)m 10(of)m 9(Database)m 10(Descriptions.)m 14(The)m 9(only)m 104 502 p (packets)s 10(received)m 10(should)m 10(be)m 10(duplicates)m 10(\(see)m 9(above\).)m 14(In)m 10(particular)m -1 r 44 c 10(the)m 9(packet')m -1 r 115 c 9(Options)m 10(\014eld)m 10(should)m 10(match)m 10(the)m 10(set)m 104 552 p (of)s 9(optional)m 10(OSPF)m 10(capabilities)m 10(previously)m 9(indicated)m 10(by)m 10(the)m 9(neighbor)m 10(\(stored)m 10(in)m 9(the)m 10(neighbor)m 10(structure')m -2 r 115 c t-bol.300 @sf 9(neighbor)m 104 602 p (Options)s t-rom.300 @sf 14(\014eld\).)m 24(Any)m 13(other)m 14(packets)m 14(received,)m 15(including)m 13(the)m 14(reception)m 14(of)m 14 r 97 c 14(packet)m 13(with)m 14(the)m 14(Initialize\(I\))m 14(bit)m 14(set,)m 104 652 p (should)s 11(generate)m 12(the)m 12(neighbor)m 11(event)m t-bol.300 @sf 12(Seq)m 12(Number)m 11(Mismatch)m t-rom.300 @sf 46 c t-rom.210 @sf 1146 637 p 56 c t-rom.300 @sf 1180 652 p (Duplicates)s 12(should)m 11(be)m 12(discarded)m 12(by)m 11(the)m 12(master)m -1 r 46 c 104 702 p (The)s 10(slave)m 11(must)m 10(respond)m 10(to)m 11(duplicates)m 10(by)m 11(repeating)m 10(the)m 11(last)m 10(Database)m 10(Description)m 11(packet)m 10(that)m 11(it)m 10(sent.)m 0 811 p (When)s 11(the)m 11(router)m 11(accepts)m 11 r 97 c 11(received)m 11(Database)m 11(Description)m 11(Packet)m 11(as)m 11(the)m 11(next)m 11(in)m 11(sequence)m 11(the)m 11(packet)m 11(contents)m 11(are)m 11(pro-)m 0 861 p (cessed)s 14(as)m 13(follows.)m 24(For)m 14(each)m 13(link)m 14(state)m 13(advertisement)m 14(listed,)m 15(the)m 13(advertisement')m -1 r 115 c 13(LS)m 13(type)m 14(is)m 14(checked)m 13(for)m 14(validity)m -2 r 46 c 23(If)m 0 910 p (the)s t-bol.300 @sf 13(LS)m 13(type)m t-rom.300 @sf 13(is)m 13(unknown)m 13(\(e.g.,)m 13(not)m 13(one)m 13(of)m 13(the)m 13(LS)m 13(types)m 13(1-5)m 13(de\014ned)m 13(by)m 13(this)m 13(speci\014cation\),)m 14(or)m 13(if)m 13(this)m 13(is)m 13 r 97 c 13(AS)m 13(external)m 0 960 p (advertisement)s 9(\(LS)m 9(type)m cmr10.300 @sf 9 r 61 c t-rom.300 @sf 9(5\))m 9(and)m 9(the)m 9(neighbor)m 9(is)m 9(associated)m 9(with)m 9 r 97 c 9(stub)m 9(area,)m 9(generate)m 9(the)m 10(neighbor)m 9(event)m t-bol.300 @sf 9(Seq)m 9(Number)m 0 1010 p (Mismatch)s t-rom.300 @sf 14(and)m 13(stop)m 14(processing)m 14(the)m 14(packet.)m 23(Otherwise,)m 15(the)m 14(router)m 13(looks)m 14(up)m 14(the)m 14(advertisement)m 13(in)m 14(its)m 14(database)m 14(to)m 13(see)m 0 1060 p (whether)s 10(it)m 10(also)m 10(has)m 11(an)m 10(instance)m 10(of)m 10(the)m 10(link)m 10(state)m 11(advertisement.)m 13(If)m 11(it)m 10(does)m 10(not,)m 10(or)m 10(if)m 10(the)m 11(database)m 10(copy)m 10(is)m 10(less)m 10(recent)m 10(\(see)m 0 1110 p (Section)s 9(13.1\),)m 9(the)m 8(link)m 9(state)m 9(advertisement)m 8(is)m 9(put)m 8(on)m 9(the)m t-bol.300 @sf 9(Link)m 8(state)m 9 r 114 c (equest)s 8(list)m t-rom.300 @sf 9(so)m 8(that)m 9(it)m 8(can)m 9(be)m 9(requested)m 8(\(immediately)m 0 1159 p (or)s 10(at)m 11(some)m 10(later)m 11(time\))m 10(in)m 10(Link)m 11(State)m 10(Request)m 11(Packets.)m 0 1227 p (When)s 8(the)m 9(router)m 8(accepts)m 9 r 97 c 8(received)m 9(Database)m 8(Description)m 9(Packet)m 8(as)m 9(the)m 8(next)m 9(in)m 8(sequence,)m 9(it)m 9(also)m 8(performs)m 9(the)m 8(following)m 0 1277 p (actions,)s 10(depending)m 11(on)m 10(whether)m 11(it)m 10(is)m 10(master)m 11(or)m 10(slave:)m t-bol.300 @sf 0 1386 p (Master)s t-rom.300 @sf 21(Increments)m 10(the)m 10(sequence)m 11(number)m -1 r 46 c 12(If)m 11(the)m 10(router)m 11(has)m 10(already)m 10(sent)m 11(its)m 10(entire)m 10(sequence)m 11(of)m 10(Database)m 10(Descriptions,)m 148 1436 p (and)s 11(the)m 11(just)m 11(accepted)m 11(packet)m 11(has)m 11(the)m 11(more)m 11(bit)m 11(\(M\))m 11(set)m 11(to)m 11(0,)m 12(the)m 11(neighbor)m 11(event)m t-bol.300 @sf 11(Exchange)m 11(Done)m t-rom.300 @sf 11(is)m 11(generated.)m 148 1486 p (Otherwise,)s 10(it)m 11(should)m 10(send)m 11 r 97 c 10(new)m 11(Database)m 10(Description)m 10(to)m 11(the)m 10(slave.)m t-bol.300 @sf 0 1569 p (Slave)s t-rom.300 @sf 53(Sets)m 12(the)m 11(sequence)m 12(number)m 12(to)m 11(the)m 12(sequence)m 12(number)m 11(appearing)m 12(in)m 12(the)m 11(received)m 12(packet.)m 18(The)m 11(slave)m 12(must)m 11(send)m 12 r 97 c 148 1619 p (Database)s 11(Description)m 11(in)m 10(reply)m -1 r 46 c 14(If)m 11(the)m 10(received)m 11(packet)m 11(has)m 11(the)m 10(more)m 11(bit)m 11(\(M\))m 11(set)m 11(to)m 10(0,)m 11(and)m 11(the)m 11(packet)m 11(to)m 11(be)m 10(sent)m 148 1668 p (by)s 10(the)m 10(slave)m 11(will)m 10(have)m 10(the)m 10(M-bit)m 10(set)m 10(to)m 11 r 48 c 10(also,)m 10(the)m 10(neighbor)m 10(event)m t-bol.300 @sf 11(Exchange)m 10(Done)m t-rom.300 @sf 10(is)m 10(generated.)m 14(Note)m 10(that)m 10(the)m 148 1718 p (slave)s 10(always)m 11(generates)m 10(this)m 11(event)m 10(before)m 11(the)m 10(master)m -1 r 46 c t-bol.360 @sf 0 1855 p (10.7)s 50(Receiving)m 12(Link)m 13(State)m 12(Request)m 13(Packets)m t-rom.300 @sf 0 1951 p (This)s 13(section)m 12(explains)m 13(the)m 13(detailed)m 13(processing)m 12(of)m 13(received)m 13(Link)m 13(State)m 12(Request)m 13(packets.)m 21(Received)m 13(Link)m 12(State)m 13(Request)m 0 2000 p (Packets)s 14(specify)m 14 r 97 c 15(list)m 14(of)m 14(link)m 14(state)m 14(advertisements)m 15(that)m 14(the)m 14(neighbor)m 14(wishes)m 14(to)m 15(receive.)m 25(Link)m 14(state)m 14(Request)m 14(Packets)m 0 2050 p (should)s 10(be)m 11(accepted)m 10(when)m 11(the)m 10(neighbor)m 10(is)m 11(in)m 10(states)m t-bol.300 @sf 11(Exchange)m t-rom.300 @sf 44 c t-bol.300 @sf 10(Loading)m t-rom.300 @sf 44 c 11(or)m t-bol.300 @sf 10(Full)m t-rom.300 @sf 46 c 14(In)m 10(all)m 11(other)m 10(states)m 10(Link)m 11(State)m 10(Request)m 0 2100 p (Packets)s 10(should)m 11(be)m 10(ignored.)m 0 2168 p (Each)s 9(link)m 9(state)m 8(advertisement)m 9(speci\014ed)m 9(in)m 9(the)m 8(Link)m 9(State)m 9(Request)m 9(packet)m 9(should)m 8(be)m 9(located)m 9(in)m 9(the)m 8(router)m 2 r 39 c -1 r 115 c 7(database,)m 10(and)m 0 2217 p (copied)s 11(into)m 11(Link)m 11(State)m 11(Update)m 11(packets)m 11(for)m 11(transmission)m 11(to)m 11(the)m 11(neighbor)m -1 r 46 c 14(These)m 11(link)m 11(state)m 11(advertisements)m 11(should)m 11(NOT)m 0 2267 p (be)s 11(placed)m 10(on)m 11(the)m t-bol.300 @sf 10(Link)m 11(state)m 11 r 114 c (etransmission)s 10(list)m t-rom.300 @sf 10(for)m 11(the)m 10(neighbor)m -1 r 46 c 14(If)m 10 r 97 c 11(link)m 10(state)m 11(advertisement)m 11(cannot)m 10(be)m 11(found)m 10(in)m 11(the)m 0 2317 p (database,)s 12(something)m 12(has)m 12(gone)m 12(wrong)m 12(with)m 12(the)m 12(synchronization)m 12(procedure,)m 12(and)m 12(neighbor)m 12(event)m t-bol.300 @sf 12(BadLSReq)m t-rom.300 @sf 12(should)m 12(be)m 0 2367 p (generated.)s 0 2402 p 780 2 ru t-rom.180 @sf 45 2430 p 56 c t-rom.240 @sf 60 2442 p (Note)s 10(that)m 9(it)m 10(is)m 9(possible)m 10(for)m 9 r 97 c 10(router)m 9(to)m 10(resynchronize)m 9(any)m 10(of)m 9(its)m 10(fully)m 9(established)m 10(adjacencies)m 9(by)m 10(setting)m 9(the)m 10(adjacency')m -1 r 115 c 9(state)m 9(back)m 10(to)m t-bol.240 @sf 9(ExStart)m t-rom.240 @sf 46 c 0 2481 p (This)s 8(will)m 9(cause)m 8(the)m 8(other)m 9(end)m 8(of)m 8(the)m 9(adjacency)m 8(to)m 8(process)m 9 r 97 c t-bol.240 @sf 8(Seq)m 8(Number)m 9(Mismatch)m t-rom.240 @sf 8(event,)m 8(and)m 9(therefore)m 8(to)m 8(also)m 9(go)m 8(back)m 8(to)m t-bol.240 @sf 9(ExStart)m t-rom.240 @sf 8(state.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(50])m @eop 49 @bop0 49 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 104 195 p (interface)s 11(is)m 12(in)m 12(state)m t-bol.300 @sf 11 r 87 c -1(aiting)m t-rom.300 @sf 44 c 11(the)m 12(receiving)m 11(interface')m -1 r 115 c 11(state)m 11(machine)m 12(is)m t-ita.300 @sf 12(scheduled)m t-rom.300 @sf 11(with)m 12(the)m 12(event)m t-bol.300 @sf 11(BackupSeen)m t-rom.300 @sf 46 c 104 245 p (Otherwise,)s 12(if)m 11(the)m 12(neighbor)m 11(is)m 12(declaring)m 11(itself)m 12(to)m 11(be)m 12(Backup)m 11(Designated)m 12(Router)m 11(and)m 12(it)m 11(had)m 12(not)m 11(previously)m -1 r 44 c 11(or)m 11(the)m 104 295 p (neighbor)s 8(is)m 9(not)m 8(declaring)m 8(itself)m 9(Backup)m 8(Designated)m 8(Router)m 9(where)m 8(it)m 8(had)m 9(previously)m -2 r 44 c 8(the)m 8(receiving)m 9(interface')m -2 r 115 c 8(state)m 104 345 p (machine)s 10(is)m t-ita.300 @sf 10(scheduled)m t-rom.300 @sf 11(with)m 10(the)m 10(event)m t-bol.300 @sf 11(NeighborChange)m t-rom.300 @sf 46 c 13(In)m 11(any)m 10(case,)m 10(the)m 11(Backup)m 10(Designated)m 10(Router)m 10(item)m 11(in)m 10(the)m 104 394 p (neighbor)s 10(structure)m 11(is)m 10(set)m 10(accordingly)m -1 r 46 c t-bol.360 @sf 0 529 p (10.6)s 50(Receiving)m 12(Database)m 13(Description)m 12(Packets)m t-rom.300 @sf 0 624 p (This)s 15(section)m 15(explains)m 15(the)m 15(detailed)m 15(processing)m 15(of)m 15 r 97 c 15(received)m 15(Database)m 15(Description)m 15(packet.)m 27(The)m 15(incoming)m 15(Database)m 0 674 p (Description)s 13(Packet)m 13(has)m 12(already)m 13(been)m 13(associated)m 13(with)m 13 r 97 c 13(neighbor)m 12(and)m 13(receiving)m 13(interface)m 13(by)m 13(the)m 12(generic)m 13(input)m 13(packet)m 0 724 p (processing)s 10(\(Section)m 10(8.2\).)m 13(The)m 10(further)m 10(processing)m 10(of)m 9(the)m 10(Database)m 10(Description)m 10(Packet)m 10(depends)m 9(on)m 10(the)m 10(neighbor)m 10(state.)m 14(If)m 0 773 p (the)s 10(neighbor)m 2 r 39 c -1 r 115 c 9(state)m 10(is)m t-bol.300 @sf 11(Down)m t-rom.300 @sf 10(or)m t-bol.300 @sf 11(Attempt)m t-rom.300 @sf 10(the)m 11(packet)m 10(should)m 10(be)m 11(ignored.)m 14(Otherwise,)m 10(if)m 11(the)m 10(state)m 10(is:)m t-bol.300 @sf 0 879 p (Init)s t-rom.300 @sf 21(The)m 10(neighbor)m 10(state)m 9(machine)m 10(should)m 10(be)m t-ita.300 @sf 10(executed)m t-rom.300 @sf 10(with)m 10(the)m 10(event)m t-bol.300 @sf 10(2-W)m -2(ay)m 9(Received)m t-rom.300 @sf 46 c 14(This)m 10(causes)m 10(an)m 10(immediate)m 10(state)m 104 929 p (change)s 10(to)m 9(either)m 10(state)m t-bol.300 @sf 10(2-W)m -1(ay)m t-rom.300 @sf 9(or)m 10(state)m t-bol.300 @sf 9(Exstart)m t-rom.300 @sf 46 c 14(The)m 10(processing)m 10(of)m 10(the)m 9(current)m 10(packet)m 10(should)m 10(then)m 10(continue)m 10(in)m 9(this)m 104 978 p (new)s 10(state.)m t-bol.300 @sf 0 1060 p (2-W)s -1(ay)m t-rom.300 @sf 19(The)m 15(packet)m 14(should)m 14(be)m 14(ignored.)m 26(Database)m 14(description)m 14(packets)m 14(are)m 15(used)m 14(only)m 14(for)m 14(the)m 14(purpose)m 15(of)m 14(bringing)m 14(up)m 104 1110 p (adjacencies.)s t-rom.210 @sf 320 1095 p 55 c t-bol.300 @sf 0 1192 p (ExStart)s t-rom.300 @sf 21(If)m 8(the)m 8(received)m 7(packet)m 8(matches)m 8(one)m 8(of)m 8(the)m 8(following)m 8(cases,)m 8(then)m 8(the)m 8(neighbor)m 8(state)m 8(machine)m 8(should)m 7(be)m t-ita.300 @sf 8(executed)m t-rom.300 @sf 104 1242 p (with)s 9(the)m 9(event)m t-bol.300 @sf 10(NegotiationDone)m t-rom.300 @sf 9(\(causing)m 9(the)m 9(state)m 10(to)m 9(transition)m 9(to)m t-bol.300 @sf 9(Exchange)m t-rom.300 @sf (\),)s 10(the)m 9(packet')m -1 r 115 c 8(Options)m 9(\014eld)m 10(should)m 104 1292 p (be)s 13(recorded)m 13(in)m 12(the)m 13(neighbor)m 13(structure')m -1 r 115 c t-bol.300 @sf 12(Neighbor)m 13(Options)m t-rom.300 @sf 13(\014eld)m 13(and)m 12(the)m 13(packet)m 13(should)m 13(be)m 13(accepted)m 13(as)m 13(next)m 13(in)m 104 1342 p (sequence)s 10(and)m 11(processed)m 10(further)m 10(\(see)m 11(below\).)m 14(Otherwise,)m 10(the)m 11(packet)m 10(should)m 10(be)m 11(ignored.)m cmsy10.300 @sf 154 1431 p 15 c t-rom.300 @sf 20(The)m 9(initialize\(I\),)m 8(more)m 8(\(M\))m 9(and)m 8(master\(MS\))m 8(bits)m 8(are)m 9(set,)m 9(the)m 8(contents)m 8(of)m 8(the)m 9(packet)m 8(are)m 8(empty)m -1 r 44 c 7(and)m 9(the)m 8(neigh-)m 195 1481 p (bor)s 2 r 39 c -2 r 115 c 11(Router)m 11(ID)m 11(is)m 11(lar)m (ger)s 11(than)m 11(the)m 11(router)m 1 r 39 c -1 r 115 c 10(own.)m 17(In)m 11(this)m 11(case)m 11(the)m 11(router)m 12(is)m 11(now)m 11(Slave.)m 16(Set)m 11(the)m 12(master/slave)m 195 1531 p (bit)s 11(to)m 10(slave,)m 10(and)m 11(set)m 10(the)m 11(sequence)m 10(number)m 10(to)m 11(that)m 10(speci\014ed)m 11(by)m 10(the)m 11(master)m -2 r 46 c cmsy10.300 @sf 154 1596 p 15 c t-rom.300 @sf 20(The)m 14(initialize\(I\))m 13(and)m 13(master\(MS\))m 14(bits)m 13(are)m 13(of)m (f,)s 13(the)m 14(packet')m -2 r 115 c 13(sequence)m 13(number)m 13(equals)m 14(the)m 13(router)m 1 r 39 c -1 r 115 c 12(own)m 14(se-)m 195 1646 p (quence)s 14(number)m 14(\(indicating)m 14(acknowledgment\))m 14(and)m 14(the)m 14(neighbor)m 2 r 39 c -1 r 115 c 13(Router)m 14(ID)m 14(is)m 14(smaller)m 14(than)m 14(the)m 14(router)m 2 r 39 c -2 r 115 c 195 1696 p (own.)s 14(In)m 10(this)m 11(case)m 10(the)m 11(router)m 10(is)m 10(Master)m -1 r 46 c t-bol.300 @sf 0 1786 p (Exchange)s t-rom.300 @sf 21(If)m 8(the)m 8(state)m 9(of)m 8(the)m 8(MS-bit)m 8(is)m 9(inconsistent)m 8(with)m 8(the)m 9(master/slave)m 8(state)m 8(of)m 8(the)m 9(connection,)m 8(generate)m 9(the)m 8(neighbor)m 104 1835 p (event)s t-bol.300 @sf 10(Seq)m 11(Number)m 10(Mismatch)m t-rom.300 @sf 10(and)m 11(stop)m 10(processing)m 11(the)m 10(packet.)m 14(Otherwise:)m cmsy10.300 @sf 154 1925 p 15 c t-rom.300 @sf 20(If)m 12(the)m 11(initialize\(I\))m 11(bit)m 11(is)m 12(set,)m 11(generate)m 11(the)m 11(neighbor)m 12(event)m t-bol.300 @sf 11(Seq)m 11(Number)m 11(Mismatch)m t-rom.300 @sf 12(and)m 11(stop)m 11(processing)m 11(the)m 195 1975 p (packet.)s cmsy10.300 @sf 154 2040 p 15 c t-rom.300 @sf 20(If)m 13(the)m 13(packet')m -2 r 115 c 12(Options)m 12(\014eld)m 13(indicates)m 13 r 97 c 12(dif)m (ferent)s 12(set)m 13(of)m 12(optional)m 13(OSPF)m 12(capabilities)m 13(than)m 12(were)m 13(previously)m 195 2090 p (received)s 12(from)m 11(the)m 12(neighbor)m 12(\(recorded)m 11(in)m 12(the)m t-bol.300 @sf 12(Neighbor)m 12(Options)m t-rom.300 @sf 11(\014eld)m 12(of)m 12(the)m 11(neighbor)m 12(structure\),)m 12(generate)m 195 2140 p (the)s 11(neighbor)m 10(event)m t-bol.300 @sf 10(Seq)m 11(Number)m 10(Mismatch)m t-rom.300 @sf 11(and)m 10(stop)m 10(processing)m 11(the)m 10(packet.)m cmsy10.300 @sf 154 2205 p 15 c t-rom.300 @sf 20(If)m 12(the)m 12(router)m 12(is)m 12(master)m -1 r 44 c 11(and)m 12(the)m 12(packet')m -2 r 115 c 11(sequence)m 12(number)m 12(equals)m 12(the)m 12(router)m 1 r 39 c -1 r 115 c 11(own)m 11(sequence)m 12(number)m 12(\(this)m 195 2255 p (packet)s 11(is)m 10(the)m 10(next)m 11(in)m 10(sequence\))m 11(the)m 10(packet)m 10(should)m 11(be)m 10(accepted)m 11(and)m 10(its)m 11(contents)m 10(processed)m 10(\(below\).)m cmsy10.300 @sf 154 2320 p 15 c t-rom.300 @sf 20(If)m 13(the)m 12(router)m 12(is)m 13(master)m -1 r 44 c 12(and)m 12(the)m 13(packet')m -2 r 115 c 12(sequence)m 12(number)m 13(is)m 12(one)m 12(less)m 13(than)m 12(the)m 12(router)m 2 r 39 c -1 r 115 c 11(sequence)m 12(number)m 44 c 195 2370 p (the)s 11(packet)m 10(is)m 10 r 97 c 11(duplicate.)m 14(Duplicates)m 10(should)m 10(be)m 11(discarded)m 10(by)m 11(the)m 10(master)m -1 r 46 c cmsy10.300 @sf 154 2436 p 15 c t-rom.300 @sf 20(If)m 9(the)m 8(router)m 8(is)m 8(slave,)m 9(and)m 8(the)m 8(packet')m -1 r 115 c 7(sequence)m 8(number)m 9(is)m 8(one)m 8(more)m 8(than)m 9(the)m 8(router)m 1 r 39 c -1 r 115 c 7(own)m 9(sequence)m 8(number)m 195 2485 p (\(this)s 11(packet)m 10(is)m 10(the)m 11(next)m 10(in)m 11(sequence\))m 10(the)m 10(packet)m 11(should)m 10(be)m 11(accepted)m 10(and)m 11(its)m 10(contents)m 10(processed)m 11(\(below\).)m 0 2520 p 780 2 ru t-rom.180 @sf 45 2547 p 55 c t-rom.240 @sf 60 2559 p (When)s 11(the)m 10(identity)m 11(of)m 10(the)m 11(Designated)m 10(Router)m 11(is)m 10(changing,)m 11(it)m 11(may)m 10(be)m 11(quite)m 10(common)m 11(for)m 10 r 97 c 11(neighbor)m 10(in)m 11(this)m 10(state)m 11(to)m 10(send)m 11(the)m 10(router)m 11 r 97 c 10(Database)m 0 2599 p (Description)s 8(packet;)m 9(this)m 8(means)m 8(that)m 9(there)m 8(is)m 8(some)m 9(momentary)m 8(disagreement)m 8(on)m 9(the)m 8(Designated)m 8(Router)m 2 r 39 c -1 r 115 c 7(identity)m -1 r 46 c t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(49])m @eop 48 @bop0 48 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (10.5)s 50(Receiving)m 12(Hello)m 13(packets)m t-rom.300 @sf 0 291 p (This)s 12(section)m 12(explains)m 12(the)m 12(detailed)m 12(processing)m 12(of)m 12 r 97 c 12(received)m 12(Hello)m 12(packet.)m 18(\(See)m 12(Section)m 12(A.3.2)m 12(for)m 12(the)m 12(format)m 12(of)m 12(Hello)m 0 341 p (packets.\))s 14(The)m 9(generic)m 10(input)m 10(processing)m 9(of)m 10(OSPF)m 10(packets)m 9(will)m 10(have)m 10(checked)m 9(the)m 10(validity)m 10(of)m 9(the)m 10(IP)m 10(header)m 9(and)m 10(the)m 10(OSPF)m 0 390 p (packet)s 9(header)m -2 r 46 c 13(Next,)m 9(the)m 8(values)m 9(of)m 8(the)m t-bol.300 @sf 9(Network)m 9(Mask)m t-rom.300 @sf 44 c t-bol.300 @sf 9(HelloInt)m t-rom.300 @sf 44 c 9(and)m t-bol.300 @sf 8(DeadInt)m t-rom.300 @sf 9(\014elds)m 9(in)m 8(the)m 9(received)m 8(Hello)m 9(packet)m 9(must)m 0 440 p (be)s 10(checked)m 10(against)m 10(the)m 11(values)m 10(con\014gured)m 10(for)m 10(the)m 10(receiving)m 10(interface.)m 14(Any)m 10(mismatch)m 10(causes)m 11(processing)m 10(to)m 10(stop)m 10(and)m 10(the)m 0 490 p (packet)s 9(to)m 9(be)m 9(dropped.)m 13(In)m 9(other)m 9(words,)m 10(the)m 9(above)m 9(\014elds)m 9(are)m 9(really)m 9(describing)m 9(the)m 9(attached)m 9(network')m -2 r 115 c 8(con\014guration.)m 14(Note)m 0 540 p (that)s 11(the)m 10(value)m 11(of)m 11(the)m t-bol.300 @sf 11(Network)m 10(Mask)m t-rom.300 @sf 11(\014eld)m 11(should)m 10(not)m 11(be)m 11(checked)m 11(in)m 10(Hellos)m 11(received)m 11(on)m 10(unnumbered)m 11(serial)m 11(lines)m 10(or)m 11(on)m 0 590 p (virtual)s 10(links.)m 0 657 p (The)s 10(receiving)m 10(interface)m 11(attaches)m 10(to)m 10 r 97 c 10(single)m 11(OSPF)m 10(area)m 10(\(this)m 10(could)m 11(be)m 10(the)m 10(backbone\).)m 14(The)m 10(setting)m 10(of)m 11(the)m t-bol.300 @sf 10(E-bit)m t-rom.300 @sf 10(found)m 10(in)m 0 707 p (the)s 12(Hello)m 13(Packet')m -2 r 115 c 12(option)m 12(\014eld)m 12(must)m 13(match)m 12(this)m 12(area')m -1 r 115 c 11(external)m 12(routing)m 13(capability)m -2 r 46 c 19(If)m 12(AS)m 12(external)m 13(advertisements)m 12(are)m 0 757 p (not)s 10(\015ooded)m 10(into/throughout)m 10(the)m 10(area)m 10(\(i.e,)m 10(the)m 11(area)m 10(is)m 10 r 97 c 10(\\stub"\))m 10(the)m t-bol.300 @sf 10(E-bit)m t-rom.300 @sf 10(must)m 10(be)m 10(clear)m 10(in)m 10(received)m 10(hellos,)m 10(otherwise)m 10(the)m t-bol.300 @sf 0 807 p (E-bit)s t-rom.300 @sf 11(must)m 11(be)m 12(set.)m 16 r 65 c 11(mismatch)m 11(causes)m 11(processing)m 11(to)m 12(stop)m 11(and)m 11(the)m 11(packet)m 11(to)m 11(be)m 12(dropped.)m 16(The)m 11(setting)m 11(of)m 11(the)m 11(rest)m 12(of)m 11(the)m 0 857 p (bits)s 10(in)m 11(the)m 10(Hello)m 11(Packet')m -2 r 115 c 10(option)m 10(\014eld)m 11(should)m 10(be)m 10(ignored.)m 0 924 p (At)s 10(this)m 10(point,)m 9(an)m 10(attempt)m 10(is)m 10(made)m 9(to)m 10(match)m 10(the)m 10(source)m 9(of)m 10(the)m 10(Hello)m 10(Packet)m 9(to)m 10(one)m 10(of)m 10(the)m 9(receiving)m 10(interface')m -1 r 115 c 9(neighbors.)m 0 974 p (If)s 11(the)m 11(receiving)m 11(interface)m 11(is)m 12 r 97 c 11(multi-access)m 11(network)m 11(\(either)m 11(broadcast)m 11(or)m 11(non-broadcast\))m 11(the)m 11(source)m 12(is)m 11(identi\014ed)m 11(by)m 11(the)m 0 1024 p (IP)s 10(source)m 10(address)m 10(found)m 10(in)m 10(the)m 9(Hello')m -1 r 115 c 9(IP)m 10(header)m -1 r 46 c 12(If)m 10(the)m 10(receiving)m 10(interface)m 10(is)m 10 r 97 c 10(point-to-point)m 10(link)m 10(or)m 9 r 97 c 10(virtual)m 10(link,)m 10(the)m 0 1074 p (source)s 9(is)m 9(identi\014ed)m 8(by)m 9(the)m 9(Router)m 9(ID)m 8(found)m 9(in)m 9(the)m 9(Hello')m -2 r 115 c 8(OSPF)m 9(packet)m 9(header)m -1 r 46 c 12(The)m 9(interface')m -2 r 115 c 8(current)m 9(list)m 9(of)m 8(neighbors)m 0 1124 p (is)s 12(contained)m 13(in)m 12(the)m 13(interface')m -1 r 115 c 11(data)m 13(structure.)m 20(If)m 12 r 97 c 12(matching)m 13(neighbor)m 12(structure)m 13(cannot)m 12(be)m 13(found,)m 13(\(i.e.,)m 13(this)m 12(is)m 13(the)m 12(\014rst)m 0 1173 p (time)s 10(the)m 11(neighbor)m 10(has)m 11(been)m 10(detected\),)m 10(one)m 11(is)m 10(created.)m 14(The)m 11(initial)m 10(state)m 10(of)m 11 r 97 c 10(newly)m 11(created)m 10(neighbor)m 11(is)m 10(set)m 10(to)m t-bol.300 @sf 11(Down)m t-rom.300 @sf 46 c 0 1241 p (When)s 15(receiving)m 14(an)m 15(Hello)m 14(Packet)m 15(from)m 14 r 97 c 15(neighbor)m 15(on)m 14 r 97 c 15(multi-access)m 14(network)m 15(\(broadcast)m 14(or)m 15(non-broadcast\),)m 15(set)m 15(the)m 0 1291 p (neighbor)s 9(structure')m -1 r 115 c 9(Neighbor)m 9(ID)m 9(equal)m 10(to)m 9(the)m 10(Router)m 9(ID)m 9(found)m 10(in)m 9(the)m 10(packet')m -2 r 115 c 9(OSPF)m 9(header)m -1 r 46 c 13(When)m 9(receiving)m 9(an)m 10(Hello)m 0 1341 p (on)s 10 r 97 c 11(point-to-point)m 10(network)m 10(\(but)m 10(not)m 11(on)m 10 r 97 c 10(virtual)m 11(link\))m 10(set)m 10(the)m 11(neighbor)m 10(structure')m -1 r 115 c 9(Neighbor)m 10(IP)m 10(address)m 11(to)m 10(the)m 10(packet')m -1 r 115 c 0 1390 p (IP)s 10(source)m 11(address.)m 0 1458 p (Now)s 7(the)m 7(rest)m 7(of)m 7(the)m 7(Hello)m 7(Packet)m 7(is)m 7(examined,)m 7(generating)m 7(events)m 7(to)m 7(be)m 7(given)m 7(to)m 7(the)m 7(neighbor)m 7(and)m 7(interface)m 7(state)m 7(machines.)m 0 1508 p (These)s 12(state)m 12(machines)m 12(are)m 12(speci\014ed)m 12(either)m 12(to)m 12(be)m t-ita.300 @sf 12(executed)m t-rom.300 @sf 12(or)m t-ita.300 @sf 12(scheduled)m t-rom.300 @sf 12(\(see)m 12(Section)m 12(4.4\).)m 19(For)m 11(example,)m 13(by)m 12(specifying)m 0 1558 p (below)s 8(that)m 9(the)m 8(neighbor)m 8(state)m 9(machine)m 8(be)m t-ita.300 @sf 8(executed)m t-rom.300 @sf 8(in)m 9(line,)m 9(several)m 8(neighbor)m 8(state)m 8(transitions)m 9(may)m 8(be)m 8(ef)m (fected)s 8(by)m 8 r 97 c 9(single)m 0 1608 p (received)s 10(Hello:)m cmsy10.300 @sf 62 1717 p 15 c t-rom.300 @sf 21(Each)m 10(Hello)m 11(Packet)m 10(causes)m 11(the)m 10(neighbor)m 11(state)m 10(machine)m 10(to)m 11(be)m t-ita.300 @sf 10(executed)m t-rom.300 @sf 11(with)m 10(the)m 10(event)m t-bol.300 @sf 11(Hello)m 10(Received)m t-rom.300 @sf 46 c cmsy10.300 @sf 62 1800 p 15 c t-rom.300 @sf 21(Then)m 14(the)m 13(list)m 14(of)m 13(neighbors)m 14(contained)m 13(in)m 14(the)m 14(Hello)m 13(Packet)m 14(is)m 13(examined.)m 24(If)m 13(the)m 14(router)m 13(itself)m 14(appears)m 14(in)m 13(this)m 14(list,)m 104 1850 p (the)s 11(neighbor)m 11(state)m 12(machine)m 11(should)m 11(be)m t-ita.300 @sf 12(executed)m t-rom.300 @sf 11(with)m 11(the)m 12(event)m t-bol.300 @sf 11(2-W)m -1(ay)m 10(Received)m t-rom.300 @sf 46 c 17(Otherwise,)m 11(the)m 11(neighbor)m 12(state)m 104 1899 p (machine)s 10(should)m 11(be)m 10(executed)m 10(with)m 11(the)m 10(event)m t-bol.300 @sf 11(1-W)m -2(ay)m 10(Received)m t-rom.300 @sf 44 c 10(and)m 11(the)m 10(processing)m 10(of)m 11(the)m 10(packet)m 11(stops.)m cmsy10.300 @sf 62 1982 p 15 c t-rom.300 @sf 21(Next,)m 12(the)m 12(Hello)m 12(packet')m -1 r 115 c 11(Router)m 12(Priority)m 12(\014eld)m 12(is)m 12(examined.)m 18(If)m 12(this)m 12(\014eld)m 12(is)m 12(dif)m (ferent)s 11(than)m 12(the)m 12(one)m 12(previously)m 12(re-)m 104 2032 p (ceived)s 9(from)m 9(the)m 9(neighbor)m 44 c 8(the)m 9(receiving)m 9(interface')m -1 r 115 c 8(state)m 9(machine)m 9(is)m t-ita.300 @sf 10(scheduled)m t-rom.300 @sf 9(with)m 9(the)m 9(event)m t-bol.300 @sf 9(NeighborChange)m t-rom.300 @sf 46 c 104 2082 p (In)s 10(any)m 11(case,)m 10(the)m 10(Router)m 11(Priority)m 10(\014eld)m 11(in)m 10(the)m 11(neighbor)m 10(data)m 10(structure)m 11(should)m 10(be)m 11(set)m 10(accordingly)m -2 r 46 c cmsy10.300 @sf 62 2165 p 15 c t-rom.300 @sf 21(Next)m 11(the)m 11(Designated)m 11(Router)m 11(\014eld)m 11(in)m 11(the)m 11(Hello)m 11(Packet)m 11(is)m 11(examined.)m 15(If)m 11(the)m 11(neighbor)m 11(is)m 11(both)m 11(declaring)m 11(itself)m 11(to)m 11(be)m 104 2215 p (Designated)s 7(Router)m 7(\(Designated)m 7(Router)m 7(\014eld)m 7 r 61 c 7(neighbor)m 7(IP)m 7(address\))m 7(and)m 7(the)m 7(Backup)m 7(Designated)m 7(Router)m 7(\014eld)m 7(in)m 7(the)m 104 2265 p (packet)s 10(is)m 10(equal)m 11(to)m 10(0.0.0.0)m 10(and)m 11(the)m 10(receiving)m 10(interface)m 11(is)m 10(in)m 10(state)m t-bol.300 @sf 10 r 87 c -1(aiting)m t-rom.300 @sf 44 c 10(the)m 10(receiving)m 10(interface')m -1 r 115 c 9(state)m 10(machine)m 104 2315 p (is)s t-ita.300 @sf 10(scheduled)m t-rom.300 @sf 9(with)m 10(the)m 10(event)m t-bol.300 @sf 10(BackupSeen)m t-rom.300 @sf 46 c 14(Otherwise,)m 10(if)m 9(the)m 10(neighbor)m 10(is)m 10(declaring)m 10(itself)m 10(to)m 9(be)m 10(Designated)m 10(Router)m 104 2364 p (and)s 10(it)m 11(had)m 11(not)m 10(previously)m -1 r 44 c 9(or)m 11(the)m 11(neighbor)m 10(is)m 11(not)m 11(declaring)m 10(itself)m 11(Designated)m 11(Router)m 10(where)m 11(it)m 11(had)m 10(previously)m -1 r 44 c 9(the)m 104 2414 p (receiving)s 11(interface')m -1 r 115 c 10(state)m 11(machine)m 11(is)m t-ita.300 @sf 11(scheduled)m t-rom.300 @sf 11(with)m 12(the)m 11(event)m t-bol.300 @sf 11(NeighborChange)m t-rom.300 @sf 46 c 16(In)m 11(any)m 11(case,)m 12(the)m 11(Designated)m 104 2464 p (Router)s 10(item)m 11(in)m 10(the)m 10(neighbor)m 11(structure)m 10(is)m 11(set)m 10(accordingly)m -2 r 46 c cmsy10.300 @sf 62 2547 p 15 c t-rom.300 @sf 21(Finally)m -2 r 44 c 10(the)m 11(Backup)m 11(Designated)m 10(Router)m 11(\014eld)m 11(in)m 11(the)m 10(Hello)m 11(Packet)m 11(is)m 11(examined.)m 15(If)m 10(the)m 11(neighbor)m 11(is)m 11(declaring)m 10(itself)m 104 2597 p (to)s 14(be)m 15(Backup)m 14(Designated)m 15(Router)m 14(\(Backup)m 14(Designated)m 15(Router)m 14(\014eld)m 15 r 61 c 14(neighbor)m 15(IP)m 14(address\))m 14(and)m 15(the)m 14(receiving)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(48])m @eop 47 @bop0 47 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 175 195 p (Action:)s 75(The)m t-bol.300 @sf 11(Link)m 10(state)m 11 r 114 c (etransmission)s 10(list)m t-rom.300 @sf 44 c t-bol.300 @sf 11(Database)m 10(summary)m 11(list)m t-rom.300 @sf 11(and)m t-bol.300 @sf 10(Link)m 11(state)m 11 r 114 c (equest)s 375 245 p (list)s t-rom.300 @sf 10(are)m 11(cleared)m 10(of)m 11(link)m 10(state)m 10(advertisements.)m 14(Also,)m 11(the)m 10(inactivity)m 11(timer)m 10(is)m 10(disabled.)m 161 327 p (State\(s\):)s 75(Any)m 11(state)m 191 385 p (Event:)s t-bol.300 @sf 75(LLDown)m t-rom.300 @sf 123 443 p (New)s 10(state:)m t-bol.300 @sf 75(Down)m t-rom.300 @sf 175 501 p (Action:)s 75(The)m t-bol.300 @sf 11(Link)m 10(state)m 11 r 114 c (etransmission)s 10(list)m t-rom.300 @sf 44 c t-bol.300 @sf 11(Database)m 10(summary)m 11(list)m t-rom.300 @sf 11(and)m t-bol.300 @sf 10(Link)m 11(state)m 11 r 114 c (equest)s 375 551 p (list)s t-rom.300 @sf 10(are)m 11(cleared)m 10(of)m 11(link)m 10(state)m 10(advertisements.)m 14(Also,)m 11(the)m 10(inactivity)m 11(timer)m 10(is)m 10(disabled.)m 161 634 p (State\(s\):)s 75(Any)m 11(state)m 191 692 p (Event:)s t-bol.300 @sf 75(Inactivity)m 11 r 84 c (imer)s t-rom.300 @sf 123 750 p (New)s 10(state:)m t-bol.300 @sf 75(Down)m t-rom.300 @sf 175 808 p (Action:)s 75(The)m t-bol.300 @sf 11(Link)m 10(state)m 11 r 114 c (etransmission)s 10(list)m t-rom.300 @sf 44 c t-bol.300 @sf 11(Database)m 10(summary)m 11(list)m t-rom.300 @sf 11(and)m t-bol.300 @sf 10(Link)m 11(state)m 11 r 114 c (equest)s 375 858 p (list)s t-rom.300 @sf 10(are)m 11(cleared)m 10(of)m 11(link)m 10(state)m 10(advertisements.)m 161 940 p (State\(s\):)s t-bol.300 @sf 75(2-W)m -1(ay)m t-rom.300 @sf 9(or)m 11(greater)m 191 998 p (Event:)s t-bol.300 @sf 75(1-W)m -1(ay)m 9(Received)m t-rom.300 @sf 123 1056 p (New)s 10(state:)m t-bol.300 @sf 75(Init)m t-rom.300 @sf 175 1114 p (Action:)s 75(The)m t-bol.300 @sf 11(Link)m 10(state)m 11 r 114 c (etransmission)s 10(list)m t-rom.300 @sf 44 c t-bol.300 @sf 11(Database)m 10(summary)m 11(list)m t-rom.300 @sf 11(and)m t-bol.300 @sf 10(Link)m 11(state)m 11 r 114 c (equest)s 375 1164 p (list)s t-rom.300 @sf 10(are)m 11(cleared)m 10(of)m 11(link)m 10(state)m 10(advertisements.)m 161 1246 p (State\(s\):)s t-bol.300 @sf 75(2-W)m -1(ay)m t-rom.300 @sf 9(or)m 11(greater)m 191 1304 p (Event:)s t-bol.300 @sf 75(2-W)m -1(ay)m 9 r 114 c (eceived)s t-rom.300 @sf 123 1363 p (New)s 10(state:)m 75(No)m 11(state)m 10(change.)m 175 1421 p (Action:)s 75(No)m 10(action)m 11(required.)m 161 1503 p (State\(s\):)s t-bol.300 @sf 75(Init)m t-rom.300 @sf 191 1561 p (Event:)s t-bol.300 @sf 75(1-W)m -1(ay)m 9 r 114 c (eceived)s t-rom.300 @sf 123 1619 p (New)s 10(state:)m 75(No)m 11(state)m 10(change.)m 175 1677 p (Action:)s 75(No)m 10(action)m 11(required.)m t-bol.360 @sf 0 1802 p (10.4)s 50(Whether)m 12(to)m 13(become)m 12(adjacent)m t-rom.300 @sf 0 1890 p (Adjacencies)s 15(are)m 14(established)m 15(with)m 15(some)m 15(subset)m 14(of)m 15(the)m 15(router)m 1 r 39 c -1 r 115 c 14(neighbors.)m 27(Routers)m 14(connected)m 15(by)m 15(point-to-point)m 15(net-)m 0 1940 p (works)s 12(and)m 12(virtual)m 12(links)m 12(always)m 12(become)m 12(adjacent.)m 18(On)m 12(multi-access)m 12(networks,)m 12(all)m 12(routers)m 12(become)m 12(adjacent)m 12(to)m 12(both)m 12(the)m 0 1990 p (Designated)s 10(Router)m 11(and)m 10(the)m 11(Backup)m 10(Designated)m 10(Router)m -1 r 46 c 0 2049 p (The)s 9(adjacency-forming)m 9(decision)m 9(occurs)m 8(in)m 9(two)m 9(places)m 9(in)m 9(the)m 9(neighbor)m 9(state)m 9(machine.)m 13(First,)m 9(when)m 9(bidirectional)m 9(commu-)m 0 2099 p (nication)s 10(is)m 10(initially)m 11(established)m 10(with)m 10(the)m 10(neighbor)m -1 r 44 c 10(and)m 10(secondly)m -2 r 44 c 9(when)m 10(the)m 11(identity)m 10(of)m 10(the)m 10(attached)m 10(network')m -1 r 115 c 9(\(Backup\))m 0 2149 p (Designated)s 11(Router)m 12(changes.)m 17(If)m 11(the)m 12(decision)m 11(is)m 12(made)m 11(to)m 12(not)m 11(attempt)m 12(an)m 11(adjacency)m -1 r 44 c 10(the)m 12(state)m 11(of)m 12(the)m 11(neighbor)m 12(communi-)m 0 2199 p (cation)s 10(stops)m 11(at)m t-bol.300 @sf 10(2-W)m -1(ay)m t-rom.300 @sf 46 c 0 2258 p (An)s 8(adjacency)m 8(should)m 8(be)m 8(established)m 9(with)m 8 r 97 c 8(\(bidirectional\))m 8(neighbor)m 8(when)m 8(at)m 8(least)m 8(one)m 8(of)m 8(the)m 9(following)m 8(conditions)m 8(holds:)m 300 2340 p 45 c 10(The)m 11(underlying)m 10(network)m 11(type)m 10(is)m 10(point-to-point)m 300 2390 p 45 c 10(The)m 11(underlying)m 10(network)m 11(type)m 10(is)m 10(virtual)m 11(link)m 300 2440 p 45 c 10(The)m 11(router)m 10(itself)m 11(is)m 10(the)m 10(Designated)m 11(Router)m 300 2490 p 45 c 10(The)m 11(router)m 10(itself)m 11(is)m 10(the)m 10(Backup)m 11(Designated)m 10(Router)m 300 2540 p 45 c 10(The)m 11(neighboring)m 10(router)m 11(is)m 10(the)m 10(Designated)m 11(Router)m 300 2589 p 45 c 10(The)m 11(neighboring)m 10(router)m 11(is)m 10(the)m 10(Backup)m 11(Designated)m 10(Router)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(47])m @eop 46 @bop0 46 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 161 195 p (State\(s\):)s t-bol.300 @sf 75(Loading)m t-rom.300 @sf 191 253 p (Event:)s t-bol.300 @sf 75(Loading)m 11(Done)m t-rom.300 @sf 123 311 p (New)s 10(state:)m t-bol.300 @sf 75(Full)m t-rom.300 @sf 175 369 p (Action:)s 75(No)m 10(action)m 11(required.)m 14(This)m 10(is)m 11(an)m 10(adjacency')m -1 r 115 c 9(\014nal)m 11(state.)m 161 479 p (State\(s\):)s t-bol.300 @sf 75(2-W)m -1(ay)m t-rom.300 @sf 191 537 p (Event:)s t-bol.300 @sf 75(AdjOK?)m t-rom.300 @sf 123 595 p (New)s 10(state:)m 75(Depends)m 11(upon)m 10(action)m 11(routine.)m 175 653 p (Action:)s 75(Determine)m 13(whether)m 13(an)m 14(adjacency)m 13(should)m 13(be)m 13(formed)m 13(with)m 14(the)m 13(neighboring)m 13(router)m 13(\(see)m 375 703 p (Section)s 12(10.4\).)m 19(If)m 12(not,)m 12(the)m 12(neighbor)m 12(state)m 12(remains)m 12(at)m t-bol.300 @sf 12(2-W)m -1(ay)m t-rom.300 @sf 46 c 17(Otherwise,)m 13(transition)m 11(the)m 375 753 p (neighbor)s 10(state)m 10(to)m t-bol.300 @sf 10(ExStart)m t-rom.300 @sf 10(and)m 10(perform)m 10(the)m 9(actions)m 10(associated)m 10(with)m 10(the)m 10(above)m 10(state)m 10(ma-)m 375 802 p (chine)s 10(entry)m 11(for)m 10(state)m t-bol.300 @sf 11(Init)m t-rom.300 @sf 10(and)m 10(event)m t-bol.300 @sf 11(2-W)m -1(ay)m 9(Received)m t-rom.300 @sf 46 c 161 912 p (State\(s\):)s t-bol.300 @sf 75(ExStart)m t-rom.300 @sf 11(or)m 10(greater)m 191 970 p (Event:)s t-bol.300 @sf 75(AdjOK?)m t-rom.300 @sf 123 1028 p (New)s 10(state:)m 75(Depends)m 11(upon)m 10(action)m 11(routine.)m 175 1086 p (Action:)s 75(Determine)m 11(whether)m 12(the)m 11(neighboring)m 12(router)m 11(should)m 12(still)m 11(be)m 11(adjacent.)m 17(If)m 12(yes,)m 12(there)m 11(is)m 11(no)m 375 1136 p (state)s 10(change)m 11(and)m 10(no)m 11(further)m 10(action)m 10(is)m 11(necessary)m -2 r 46 c 375 1194 p (Otherwise,)s 9(the)m 9(\(possibly)m 9(partially)m 9(formed\))m 9(adjacency)m 9(must)m 9(be)m 9(destroyed.)m 13(The)m 9(neighbor)m 375 1244 p (state)s 12(transitions)m 11(to)m t-bol.300 @sf 12(2-W)m -1(ay)m t-rom.300 @sf 46 c 16(The)m t-bol.300 @sf 12(Link)m 11(state)m 12 r 114 c (etransmission)s 11(list)m t-rom.300 @sf 44 c t-bol.300 @sf 12(Database)m 11(summary)m 375 1293 p (list)s t-rom.300 @sf 10(and)m t-bol.300 @sf 11(Link)m 10(state)m 11 r 114 c (equest)s 9(list)m t-rom.300 @sf 11(are)m 10(cleared)m 11(of)m 10(link)m 10(state)m 11(advertisements.)m 161 1403 p (State\(s\):)s t-bol.300 @sf 75(Exchange)m t-rom.300 @sf 11(or)m 10(greater)m 191 1461 p (Event:)s t-bol.300 @sf 75(Seq)m 11(Number)m 10(Mismatch)m t-rom.300 @sf 123 1519 p (New)s 10(state:)m t-bol.300 @sf 75(ExStart)m t-rom.300 @sf 175 1577 p (Action:)s 75(The)m 12(\(possibly)m 12(partially)m 12(formed\))m 12(adjacency)m 12(is)m 12(torn)m 12(down,)m 12(and)m 12(then)m 12(an)m 12(attempt)m 12(is)m 12(made)m 375 1627 p (at)s 14(reestablishment.)m 26(The)m 14(neighbor)m 14(state)m 15(\014rst)m 14(transitions)m 14(to)m t-bol.300 @sf 15(ExStart)m t-rom.300 @sf 46 c 25(The)m t-bol.300 @sf 14(Link)m 15(state)m 375 1677 p 114 c (etransmission)s 11(list)m t-rom.300 @sf 44 c t-bol.300 @sf 12(Database)m 11(summary)m 12(list)m t-rom.300 @sf 11(and)m t-bol.300 @sf 12(Link)m 11(state)m 12 r 114 c (equest)s 10(list)m t-rom.300 @sf 12(are)m 11(cleared)m 375 1726 p (of)s 11(link)m 10(state)m 11(advertisements.)m 14(Then)m 10(the)m 11(router)m 10(increments)m 11(the)m 11(sequence)m 10(number)m 11(for)m 10(this)m 375 1776 p (neighbor)s -1 r 44 c 9(declares)m 9(itself)m 9(master)m 10(\(sets)m 9(the)m 9(master/slave)m 10(bit)m 9(to)m 9(master\),)m 10(and)m 9(starts)m 9(sending)m 375 1826 p (Database)s 12(Description)m 12(Packets,)m 13(with)m 12(the)m 13(initialize)m 12(\(I\),)m 12(more)m 12(\(M\))m 13(and)m 12(master)m 12(\(MS\))m 12(bits)m 375 1876 p (set.)s 14(This)m 10(Database)m 11(Description)m 10(Packet)m 11(should)m 10(be)m 10(otherwise)m 11(empty)m 10(\(see)m 11(Section)m 10(10.8\).)m 161 1985 p (State\(s\):)s t-bol.300 @sf 75(Exchange)m t-rom.300 @sf 11(or)m 10(greater)m 191 2043 p (Event:)s t-bol.300 @sf 75(BadLSReq)m t-rom.300 @sf 123 2101 p (New)s 10(state:)m t-bol.300 @sf 75(ExStart)m t-rom.300 @sf 175 2159 p (Action:)s 75(The)m 7(action)m 7(for)m 8(event)m t-bol.300 @sf 7(BadLSReq)m t-rom.300 @sf 7(is)m 7(exactly)m 8(the)m 7(same)m 7(as)m 7(for)m 7(the)m 8(neighbor)m 7(event)m t-bol.300 @sf 7(SeqNum-)m 375 2209 p (berMismatch)s t-rom.300 @sf 46 c 21(The)m 13(\(possibly)m 13(partially)m 13(formed\))m 12(adjacency)m 13(is)m 13(torn)m 13(down,)m 13(and)m 13(then)m 13(an)m 375 2259 p (attempt)s 11(is)m 11(made)m 11(at)m 11(reestablishment.)m 15(For)m 11(more)m 11(information,)m 11(see)m 11(the)m 11(neighbor)m 11(state)m 11(ma-)m 375 2309 p (chine)s 14(entry)m 14(that)m 14(is)m 14(invoked)m 14(when)m 14(event)m t-bol.300 @sf 14(SeqNumberMismatch)m t-rom.300 @sf 14(is)m 14(generated)m 14(in)m 14(state)m t-bol.300 @sf 375 2359 p (Exchange)s t-rom.300 @sf 10(or)m 11(greater)m -1 r 46 c 161 2468 p (State\(s\):)s 75(Any)m 11(state)m 191 2526 p (Event:)s t-bol.300 @sf 75(KillNbr)m t-rom.300 @sf 123 2584 p (New)s 10(state:)m t-bol.300 @sf 75(Down)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(46])m @eop 45 @bop0 45 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 123 195 p (New)s 10(state:)m 75(No)m 11(state)m 10(change.)m 175 253 p (Action:)s 75(Restart)m 12(the)m 11(inactivity)m 12(timer)m 12(for)m 12(the)m 11(neighbor)m 44 c 11(since)m 11(the)m 12(neighbor)m 12(has)m 12(again)m 11(been)m 12(heard)m 375 303 p (from.)s 161 412 p (State\(s\):)s t-bol.300 @sf 75(Init)m t-rom.300 @sf 191 470 p (Event:)s t-bol.300 @sf 75(2-W)m -1(ay)m 9(Received)m t-rom.300 @sf 123 528 p (New)s 10(state:)m 75(Depends)m 11(upon)m 10(action)m 11(routine.)m 175 587 p (Action:)s 75(Determine)m 14(whether)m 15(an)m 14(adjacency)m 15(should)m 14(be)m 15(established)m 14(with)m 15(the)m 14(neighbor)m 15(\(see)m 14(Sec-)m 375 636 p (tion)s 10(10.4\).)m 14(If)m 11(not,)m 10(the)m 11(new)m 10(neighbor)m 10(state)m 11(is)m t-bol.300 @sf 10(2-W)m -1(ay)m t-rom.300 @sf 46 c 375 694 p (Otherwise)s 11(\(an)m 10(adjacency)m 11(should)m 11(be)m 10(established\))m 11(the)m 11(neighbor)m 10(state)m 11(transitions)m 11(to)m t-bol.300 @sf 10(ExS-)m 375 744 p (tart)s t-rom.300 @sf 46 c 29(Upon)m 15(entering)m 15(this)m 16(state,)m 16(the)m 15(router)m 16(increments)m 15(the)m 15(sequence)m 16(number)m 15(for)m 15(this)m 375 794 p (neighbor)s -1 r 46 c 19(If)m 12(this)m 13(is)m 12(the)m 12(\014rst)m 13(time)m 12(that)m 13(an)m 12(adjacency)m 13(has)m 12(been)m 12(attempted,)m 13(the)m 13(sequence)m 375 844 p (number)s 14(should)m 14(be)m 14(assigned)m 13(some)m 14(unique)m 14(value)m 14(\(like)m 14(the)m 14(time)m 13(of)m 14(day)m 14(clock\).)m 24(It)m 14(then)m 375 894 p (declares)s 10(itself)m 9(master)m 10(\(sets)m 10(the)m 9(master/slave)m 10(bit)m 10(to)m 9(master\),)m 10(and)m 10(starts)m 10(sending)m 9(Database)m 375 944 p (Description)s 12(Packets,)m 13(with)m 13(the)m 12(initialize)m 13(\(I\),)m 12(more)m 12(\(M\))m 13(and)m 12(master)m 13(\(MS\))m 12(bits)m 12(set.)m 20(This)m 375 993 p (Database)s 13(Description)m 12(Packet)m 13(should)m 12(be)m 13(otherwise)m 13(empty)m -2 r 46 c 19(This)m 13(Database)m 13(Description)m 375 1043 p (Packet)s 12(should)m 12(be)m 12(retransmitted)m 12(at)m 12(intervals)m 12(of)m 12(RxmtInterval)m 12(until)m 12(the)m 12(next)m 13(state)m 12(is)m 12(en-)m 375 1093 p (tered)s 10(\(see)m 11(Section)m 21(10.8\).)m 161 1202 p (State\(s\):)s t-bol.300 @sf 75(ExStart)m t-rom.300 @sf 191 1260 p (Event:)s t-bol.300 @sf 75(NegDone)m t-rom.300 @sf 123 1318 p (New)s 10(state:)m t-bol.300 @sf 75(Exchange)m t-rom.300 @sf 175 1377 p (Action:)s 75(The)m 15(router)m 15(must)m 15(list)m 15(the)m 15(contents)m 15(of)m 16(its)m 15(entire)m 15(area)m 15(link)m 15(state)m 15(database)m 15(in)m 15(the)m 15(neigh-)m 375 1426 p (bor)s t-bol.300 @sf 11(Database)m 11(summary)m 10(list)m t-rom.300 @sf 46 c 16(The)m 10(area)m 11(link)m 11(state)m 11(database)m 11(consists)m 11(of)m 10(the)m 11(router)m 11(links,)m 375 1476 p (network)s 13(links)m 13(and)m 13(summary)m 13(links)m 13(contained)m 13(in)m 13(the)m 13(area)m 13(structure,)m 13(along)m 13(with)m 13(the)m 13(AS)m 375 1526 p (external)s 13(links)m 13(contained)m 13(in)m 13(the)m 13(global)m 13(structure.)m 21(AS)m 13(external)m 13(link)m 13(advertisements)m 13(are)m 375 1576 p (omitted)s 7(from)m 7 r 97 c 8(virtual)m 7(neighbor)m 1 r 39 c -1 r 115 c t-bol.300 @sf 6(Database)m 7(summary)m 8(list)m t-rom.300 @sf 46 c 12(AS)m 8(external)m 7(advertisements)m 375 1626 p (are)s 10(omitted)m 10(from)m 9(the)m t-bol.300 @sf 10(Database)m 10(summary)m 10(list)m t-rom.300 @sf 10(if)m 10(the)m 9(area)m 10(has)m 10(been)m 10(con\014gured)m 10(as)m 10 r 97 c 9(stub)m 375 1675 p (\(see)s 13(Section)m 13(3.6\).)m 22(Advertisements)m 13(whose)m 13(age)m 13(is)m 14(equal)m 13(to)m 13(MaxAge)m 13(are)m 13(instead)m 13(added)m 375 1725 p (to)s 12(the)m 11(neighbor)m 2 r 39 c -2 r 115 c t-bol.300 @sf 11(Link)m 12(state)m 11 r 114 c (etransmission)s 11(list)m t-rom.300 @sf 46 c 18 r 65 c 11(summary)m 12(of)m 12(the)m t-bol.300 @sf 11(Database)m 12(sum-)m 375 1775 p (mary)s 9(list)m t-rom.300 @sf 9(will)m 9(be)m 10(sent)m 9(to)m 9(the)m 9(neighbor)m 9(in)m 9(Database)m 9(Description)m 10(packets.)m 13(Each)m 9(Database)m 375 1825 p (Description)s 10(Packet)m 11(has)m 10 r 97 c 10(sequence)m 10(number)m 44 c 9(and)m 10(is)m 11(explicitly)m 10(acknowledged.)m 14(Only)m 10(one)m 375 1875 p (Database)s 14(Description)m 14(Packet)m 14(is)m 15(allowed)m 14(outstanding)m 14(at)m 14(any)m 14(one)m 15(time.)m 25(For)m 14(more)m 14(de-)m 375 1924 p (tail)s 12(on)m 13(the)m 12(sending)m 13(and)m 12(receiving)m 13(of)m 12(Database)m 13(Description)m 12(packets,)m 13(see)m 12(Sections)m 13(10.8)m 375 1974 p (and)s 10(10.6.)m 161 2083 p (State\(s\):)s t-bol.300 @sf 75(Exchange)m t-rom.300 @sf 191 2142 p (Event:)s t-bol.300 @sf 75(Exchange)m 11(Done)m t-rom.300 @sf 123 2200 p (New)s 10(state:)m 75(Depends)m 11(upon)m 10(action)m 11(routine.)m 175 2258 p (Action:)s 75(If)m 13(the)m 12(neighbor)m t-bol.300 @sf 13(Link)m 13(state)m 13 r 114 c (equest)s 12(list)m t-rom.300 @sf 12(is)m 13(empty)m -2 r 44 c 13(the)m 12(new)m 13(neighbor)m 13(state)m 12(is)m t-bol.300 @sf 13(Full)m t-rom.300 @sf 46 c 21(No)m 375 2308 p (other)s 10(action)m 11(is)m 10(required.)m 14(This)m 11(is)m 10(an)m 10(adjacency')m -1 r 115 c 10(\014nal)m 10(state.)m 375 2366 p (Otherwise,)s 11(the)m 11(new)m 11(neighbor)m 11(state)m 11(is)m t-bol.300 @sf 11(Loading)m t-rom.300 @sf 46 c 15(Start)m 11(\(or)m 11(continue\))m 11(sending)m 11(Link)m 11(State)m 375 2416 p (Request)s 11(packets)m 12(to)m 11(the)m 11(neighbor)m 12(\(see)m 11(Section)m 11(10.9\).)m 17(These)m 11(are)m 11(requests)m 12(for)m 11(the)m 11(neigh-)m 375 2465 p (bor)s 2 r 39 c -2 r 115 c 11(more)m 12(recent)m 12(advertisements)m 12(\(which)m 12(were)m 12(discovered)m 12(but)m 12(not)m 12(yet)m 12(received)m 12(in)m 12(the)m t-bol.300 @sf 375 2515 p (Exchange)s t-rom.300 @sf 11(state\).)m 16(These)m 11(advertisements)m 11(are)m 11(listed)m 11(in)m 11(the)m t-bol.300 @sf 11(Link)m 11(state)m 12 r 114 c (equest)s 10(list)m t-rom.300 @sf 11(asso-)m 375 2565 p (ciated)s 10(with)m 11(the)m 10(neighbor)m -1 r 46 c 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(45])m @eop 44 @bop0 44 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (1-W)s -1(ay)m t-rom.300 @sf 19(An)m 13(Hello)m 12(packet)m 12(has)m 12(been)m 12(received)m 12(from)m 12(the)m 13(neighbor)m -1 r 44 c 11(in)m 13(which)m 12(this)m 12(router)m 12(is)m 12(not)m 12(mentioned.)m 19(This)m 12(indicates)m 104 245 p (that)s 10(communication)m 11(with)m 10(the)m 10(neighbor)m 11(is)m 10(not)m 11(bidirectional.)m t-bol.300 @sf 0 327 p (KillNbr)s t-rom.300 @sf 21(This)m 12(is)m 13(an)m 13(indication)m 13(that)m 12(all)m 13(communication)m 13(with)m 12(the)m 13(neighbor)m 13(is)m 12(now)m 13(impossible,)m 13(forcing)m 13(the)m 13(neighbor)m 12(to)m 104 376 p (revert)s 10(to)m 11(Down)m 10(state.)m t-bol.300 @sf 0 458 p (Inactivity)s 10 r 84 c (imer)s t-rom.300 @sf 20(The)m 11(inactivity)m 11 r 84 c -1(imer)m 10(has)m 10(\014red.)m 14(This)m 11(means)m 11(that)m 10(no)m 11(Hello)m 10(packets)m 11(have)m 10(been)m 11(seen)m 10(recently)m 11(from)m 10(the)m 104 508 p (neighbor)s -2 r 46 c 13(The)m 11(neighbor)m 10(reverts)m 11(to)m 10(Down)m 10(state.)m t-bol.300 @sf 0 590 p (LLDown)s t-rom.300 @sf 21(This)m 13(is)m 13(an)m 13(indication)m 13(from)m 13(the)m 13(lower)m 13(level)m 13(protocols)m 13(that)m 13(the)m 13(neighbor)m 13(is)m 13(now)m 13(unreachable.)m 21(For)m 13(example,)m 104 640 p (on)s 12(an)m 12(X.25)m 12(network)m 12(this)m 11(could)m 12(be)m 12(indicated)m 12(by)m 12(an)m 12(X.25)m 12(clear)m 12(indication)m 12(with)m 12(appropriate)m 12(cause)m 12(and)m 12(diagnostic)m 104 689 p (\014elds.)s 14(This)m 10(event)m 10(forces)m 11(the)m 10(neighbor)m 11(into)m 10(Down)m 11(state.)m t-bol.360 @sf 0 824 p (10.3)s 50(The)m 12(Neighbor)m 13(state)m 12(machine)m t-rom.300 @sf 0 918 p 65 c 10(detailed)m 9(description)m 10(of)m 9(the)m 10(neighbor)m 9(state)m 10(changes)m 9(follows.)m 14(Each)m 10(state)m 9(change)m 10(is)m 9(invoked)m 10(by)m 9(an)m 10(event)m 9(\(Section)m 10(10.2\).)m 0 968 p (This)s 13(event)m 14(may)m 13(produce)m 13(dif)m (ferent)s 13(ef)m (fects,)s 13(depending)m 13(on)m 13(the)m 14(current)m 13(state)m 13(of)m 13(the)m 14(neighbor)m -2 r 46 c 22(For)m 13(this)m 13(reason,)m 14(the)m 14(state)m 0 1018 p (machine)s 12(below)m 11(is)m 12(or)m (ganized)s 11(by)m 12(current)m 11(neighbor)m 12(state)m 12(and)m 11(received)m 12(event.)m 18(Each)m 12(entry)m 11(in)m 12(the)m 12(state)m 11(machine)m 12(describes)m 0 1068 p (the)s 10(resulting)m 11(new)m 10(neighbor)m 11(state)m 10(and)m 10(the)m 11(required)m 10(set)m 11(of)m 10(additional)m 11(actions.)m 0 1134 p (When)s 13(an)m 14(neighbor)m 1 r 39 c -1 r 115 c 12(state)m 14(changes,)m 14(it)m 13(may)m 14(be)m 13(necessary)m 14(to)m 13(rerun)m 13(the)m 14(Designated)m 13(Router)m 14(election)m 13(algorithm.)m 23(This)m 13(is)m 0 1184 p (determined)s 13(by)m 14(whether)m 13(the)m 14(interface)m t-bol.300 @sf 13(Neighbor)m 13(Change)m t-rom.300 @sf 14(event)m 13(is)m 14(generated)m 13(\(see)m 13(Section)m 14(9.2\).)m 23(Also,)m 14(if)m 13(the)m 14(Interface)m 0 1234 p (is)s 15(in)m t-bol.300 @sf 16(DR)m t-rom.300 @sf 15(state)m 15(\(the)m 15(router)m 16(is)m 15(itself)m 15(Designated)m 16(Router\),)m 16(changes)m 15(in)m 16(neighbor)m 15(state)m 15(may)m 16(cause)m 15 r 97 c 15(new)m 15(network)m 16(links)m 0 1284 p (advertisement)s 10(to)m 11(be)m 10(originated)m 11(\(see)m 10(Section)m 10(12.4\).)m 0 1350 p (When)s 12(the)m 12(neighbor)m 12(state)m 12(machine)m 12(needs)m 12(to)m 11(invoke)m 12(the)m 12(interface)m 12(state)m 12(machine,)m 13(it)m 11(should)m 12(be)m 12(done)m 12(as)m 12 r 97 c t-ita.300 @sf 12(scheduled)m t-rom.300 @sf 12(task)m 0 1400 p (\(see)s 10(Section)m 11(4.4\).)m 14(This)m 10(simpli\014es)m 11(things,)m 10(by)m 10(ensuring)m 11(that)m 10(neither)m 11(state)m 10(machine)m 10(will)m 11(be)m t-ita.300 @sf 10(executed)m t-rom.300 @sf 11(recursively)m -2 r 46 c 161 1504 p (State\(s\):)s t-bol.300 @sf 75(Down)m t-rom.300 @sf 191 1562 p (Event:)s t-bol.300 @sf 75(Start)m t-rom.300 @sf 123 1621 p (New)s 10(state:)m t-bol.300 @sf 75(Attempt)m t-rom.300 @sf 175 1679 p (Action:)s 75(Send)m 9(an)m 10(hello)m 9(to)m 10(the)m 9(neighbor)m 9(\(this)m 10(neighbor)m 9(is)m 9(always)m 10(associated)m 9(with)m 10 r 97 c 9(non-broadcast)m 375 1728 p (network\))s 10(and)m 11(start)m 10(the)m 11(inactivity)m 10(timer)m 11(for)m 10(the)m 11(neighbor)m -1 r 46 c 13(The)m 10(timer)m 2 r 39 c -1 r 115 c 9(later)m 10(\014ring)m 11(would)m 375 1778 p (indicate)s 10(that)m 11(communication)m 10(with)m 11(the)m 10(neighbor)m 10(was)m 11(not)m 10(attained.)m 161 1883 p (State\(s\):)s t-bol.300 @sf 75(Attempt)m t-rom.300 @sf 191 1941 p (Event:)s t-bol.300 @sf 75(Hello)m 11(Received)m t-rom.300 @sf 123 1999 p (New)s 10(state:)m t-bol.300 @sf 75(Init)m t-rom.300 @sf 175 2057 p (Action:)s 75(Restart)m 13(the)m 13(inactivity)m 13(timer)m 13(for)m 14(the)m 13(neighbor)m -1 r 44 c 13(since)m 13(the)m 13(neighbor)m 13(has)m 13(now)m 13(been)m 13(heard)m 375 2107 p (from.)s 161 2212 p (State\(s\):)s t-bol.300 @sf 75(Down)m t-rom.300 @sf 191 2270 p (Event:)s t-bol.300 @sf 75(Hello)m 11(Received)m t-rom.300 @sf 123 2328 p (New)s 10(state:)m t-bol.300 @sf 75(Init)m t-rom.300 @sf 175 2386 p (Action:)s 75(Start)m 11(the)m 11(inactivity)m 11(timer)m 11(for)m 12(the)m 11(neighbor)m -2 r 46 c 15(The)m 11(timer)m 2 r 39 c -1 r 115 c 10(later)m 11(\014ring)m 11(would)m 11(indicate)m 11(that)m 375 2436 p (the)s 10(neighbor)m 11(is)m 10(dead.)m 161 2540 p (State\(s\):)s t-bol.300 @sf 75(Init)m t-rom.300 @sf 11(or)m 10(greater)m 191 2599 p (Event:)s t-bol.300 @sf 75(Hello)m 11(Received)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(44])m @eop 43 @bop0 43 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (Exchange)s t-rom.300 @sf 21(In)m 10(this)m 11(state)m 11(the)m 10(router)m 11(is)m 11(describing)m 10(its)m 11(entire)m 11(link)m 10(state)m 11(database)m 10(by)m 11(sending)m 11(Database)m 10(Description)m 11(packets)m 104 245 p (to)s 14(the)m 14(neighbor)m -2 r 46 c 24(Each)m 14(Database)m 13(Description)m 14(Packet)m 14(has)m 14 r 97 c 14(sequence)m 14(number)m -1 r 44 c 14(and)m 14(is)m 14(explicitly)m 14(acknowledged.)m 104 295 p (Only)s 10(one)m 10(Database)m 10(Description)m 11(Packet)m 10(is)m 10(allowed)m 10(outstanding)m 11(at)m 10(any)m 10(one)m 10(time.)m 14(In)m 10(this)m 10(state,)m 11(Link)m 10(State)m 10(Request)m 104 345 p (Packets)s 12(may)m 12(also)m 12(be)m 12(sent)m 12(asking)m 13(for)m 12(the)m 12(neighbor)m 1 r 39 c -1 r 115 c 11(more)m 12(recent)m 12(advertisements.)m 19(All)m 13(adjacencies)m 12(in)m t-bol.300 @sf 12(Exchange)m t-rom.300 @sf 104 394 p (state)s 11(or)m 12(greater)m 12(are)m 12(used)m 11(by)m 12(the)m 12(\015ooding)m 11(procedure.)m 18(In)m 12(fact,)m 12(these)m 12(adjacencies)m 11(are)m 12(fully)m 12(capable)m 12(of)m 11(transmitting)m 104 444 p (and)s 10(receiving)m 11(all)m 10(types)m 10(of)m 11(OSPF)m 10(routing)m 11(protocol)m 10(packets.)m t-bol.300 @sf 0 527 p (Loading)s t-rom.300 @sf 21(In)m 11(this)m 10(state,)m 11(Link)m 11(State)m 11(Request)m 10(packets)m 11(are)m 11(sent)m 11(to)m 10(the)m 11(neighbor)m 11(asking)m 11(for)m 10(the)m 11(more)m 11(recent)m 11(advertisements)m 104 577 p (that)s 10(have)m 11(been)m 10(discovered)m 10(\(but)m 11(not)m 10(yet)m 11(received\))m 10(in)m 11(the)m t-bol.300 @sf 10(Exchange)m t-rom.300 @sf 10(state.)m t-bol.300 @sf 0 660 p (Full)s t-rom.300 @sf 21(In)m 12(this)m 12(state,)m 13(the)m 12(neighboring)m 13(routers)m 12(are)m 12(fully)m 13(adjacent.)m 19(These)m 12(adjacencies)m 13(will)m 12(now)m 12(appear)m 13(in)m 12(router)m 12(links)m 12(and)m 104 710 p (network)s 10(links)m 11(advertisements.)m t-bol.360 @sf 0 846 p (10.2)s 50(Events)m 12(causing)m 13(neighbor)m 12(state)m 13(changes)m t-rom.300 @sf 0 942 p (State)s 12(changes)m 12(can)m 11(be)m 12(ef)m (fected)s 11(by)m 12 r 97 c 12(number)m 11(of)m 12(events.)m 18(These)m 12(events)m 12(are)m 11(shown)m 12(in)m 12(the)m 12(labels)m 11(of)m 12(the)m 12(arcs)m 12(in)m 11(Figures)m 12(12)m 0 992 p (and)s 10(13.)m 14(The)m 11(label)m 10(de\014nitions)m 11(are)m 10(as)m 10(follows:)m t-bol.300 @sf 0 1101 p (Hello)s 10(Received)m t-rom.300 @sf 21 r 65 c 11(Hello)m 10(packet)m 10(has)m 11(been)m 10(received)m 11(from)m 10 r 97 c 11(neighbor)m -2 r 46 c t-bol.300 @sf 0 1184 p (Start)s t-rom.300 @sf 21(This)m 8(is)m 9(an)m 9(indication)m 8(that)m 9(Hello)m 8(Packets)m 9(should)m 9(now)m 8(be)m 9(sent)m 9(to)m 8(the)m 9(neighbor)m 8(at)m 9(intervals)m 9(of)m 8(HelloInterval)m 9(seconds.)m 104 1234 p (This)s 10(event)m 11(is)m 10(generated)m 10(only)m 11(for)m 10(neighbors)m 11(associated)m 10(with)m 11(non-broadcast)m 10(networks.)m t-bol.300 @sf 0 1317 p (2-W)s -1(ay)m 9(Received)m t-rom.300 @sf 21(Bidirectional)m 11(communication)m 11(has)m 12(been)m 11(realized)m 11(between)m 11(the)m 12(two)m 11(neighboring)m 11(routers.)m 17(This)m 11(is)m 11(indi-)m 104 1367 p (cated)s 10(by)m 11(this)m 10(router)m 10(seeing)m 11(itself)m 10(in)m 11(the)m 10(other)m 2 r 39 c -2 r 115 c 10(Hello)m 10(packet.)m t-bol.300 @sf 0 1450 p (NegotiationDone)s t-rom.300 @sf 21(The)m 11(Master/Slave)m 12(relationship)m 12(has)m 11(been)m 12(negotiated,)m 12(and)m 12(sequence)m 11(numbers)m 12(have)m 12(been)m 12(exchanged.)m 104 1500 p (This)s 13(signals)m 13(the)m 12(start)m 13(of)m 13(the)m 13(sending/receiving)m 13(of)m 13(Database)m 13(Description)m 13(packets.)m 21(For)m 13(more)m 13(information)m 13(on)m 13(the)m 104 1549 p (generation)s 10(of)m 11(this)m 10(event,)m 10(consult)m 11(Section)m 10(10.8.)m t-bol.300 @sf 0 1632 p (Exchange)s 10(Done)m t-rom.300 @sf 21(Both)m 13(routers)m 12(have)m 12(successfully)m 13(transmitted)m 12 r 97 c 13(full)m 12(sequence)m 12(of)m 13(Database)m 12(Description)m 13(packets.)m 20(Each)m 104 1682 p (router)s 11(now)m 11(knows)m 11(what)m 12(parts)m 11(of)m 11(its)m 11(link)m 11(state)m 12(database)m 11(are)m 11(out)m 11(of)m 12(date.)m 16(For)m 11(more)m 11(information)m 11(on)m 12(the)m 11(generation)m 104 1732 p (of)s 10(this)m 11(event,)m 10(consult)m 10(Section)m 11(10.8.)m t-bol.300 @sf 0 1815 p (BadLSReq)s t-rom.300 @sf 21 r 65 c 9(Link)m 10(State)m 9(Request)m 9(has)m 10(been)m 9(received)m 10(for)m 9 r 97 c 10(link)m 9(state)m 9(advertisement)m 10(not)m 9(contained)m 10(in)m 9(the)m 10(database.)m 13(This)m 104 1865 p (indicates)s 10(an)m 11(error)m 10(in)m 10(the)m 11(synchronization)m 10(process.)m t-bol.300 @sf 0 1948 p (Loading)s 10(Done)m t-rom.300 @sf 21(Link)m 11(State)m 12(Updates)m 11(have)m 11(been)m 12(received)m 11(for)m 11(all)m 12(out-of-date)m 11(portions)m 11(of)m 12(the)m 11(database.)m 16(This)m 12(is)m 11(indicated)m 104 1998 p (by)s 10(the)m t-bol.300 @sf 11(Link)m 10(state)m 10 r 114 c (equest)s 10(list)m t-rom.300 @sf 11(becoming)m 10(empty)m 10(after)m 11(the)m 10(Database)m 11(Description)m 10(Process)m 10(has)m 11(completed.)m t-bol.300 @sf 0 2081 p (AdjOK?)s t-rom.300 @sf 21 r 65 c 14(decision)m 14(must)m 15(be)m 14(made)m 14(\(again\))m 14(as)m 15(to)m 14(whether)m 14(an)m 15(adjacency)m 14(should)m 14(be)m 14(established/maintained)m 15(with)m 14(the)m 104 2131 p (neighbor)s -2 r 46 c 13(This)m 11(event)m 10(will)m 11(start)m 10(some)m 10(adjacencies)m 11(forming,)m 10(and)m 11(destroy)m 10(others.)m 0 2240 p (The)s 11(following)m 10(events)m 11(cause)m 10(well)m 11(developed)m 11(neighbors)m 10(to)m 11(revert)m 10(to)m 11(lesser)m 11(states.)m 14(Unlike)m 11(the)m 10(above)m 11(events,)m 11(these)m 10(events)m 0 2290 p (may)s 10(occur)m 11(when)m 10(the)m 11(neighbor)m 10(conversation)m 10(is)m 11(in)m 10(any)m 11(of)m 10 r 97 c 11(number)m 10(of)m 10(states.)m t-bol.300 @sf 0 2399 p (Seq)s 10(Number)m 11(Mismatch)m t-rom.300 @sf 21 r 65 c 10(Database)m 9(Description)m 10(packet)m 10(has)m 10(been)m 10(received)m 10(that)m 10(either)m 10(a\))m 10(has)m 10(an)m 10(unexpected)m 9(sequence)m 104 2449 p (number)s -1 r 44 c 15(b\))m 16(unexpectedly)m 15(has)m 15(the)m 15(Init)m 15(bit)m 16(set)m 15(or)m 15(c\))m 15(has)m 15(an)m 16(Options)m 15(\014eld)m 15(dif)m (fering)s 14(from)m 16(the)m 15(last)m 15(Options)m 15(\014eld)m 104 2498 p (received)s 9(in)m 9 r 97 c 9(Database)m 9(Description)m 9(packet.)m 13(Any)m 9(of)m 9(these)m 9(conditions)m 9(indicate)m 9(that)m 9(some)m 9(error)m 9(has)m 10(occurred)m 9(during)m 104 2548 p (adjacency)s 10(establishment.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(43])m @eop 42 @bop0 42 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 38600707 6578176 5854576 30391173 50323046 startTexFig %!PS-Adobe-1.0 %%Title: figure12-13.fig %%Creator: f2ps %%CreationDate: Mon Nov 5 05:50:50 1990 %%For: jmoy@winston (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 100 89 462 765 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y translate xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix } def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Ellipse newpath 163 480 33 33 0 360 DrawEllipse stroke % Ellipse newpath 307 482 33 33 0 360 DrawEllipse stroke % Ellipse newpath 457 406 33 33 0 360 DrawEllipse stroke % Ellipse newpath 455 557 33 33 0 360 DrawEllipse stroke % Ellipse newpath 315 171 33 33 0 360 DrawEllipse stroke % Ellipse newpath 153 169 33 33 0 360 DrawEllipse stroke % Ellipse newpath 474 93 33 33 0 360 DrawEllipse stroke % Ellipse newpath 235 64 33 33 0 360 DrawEllipse stroke % Ellipse newpath 480 209 10 10 0 360 DrawEllipse stroke % Ellipse newpath 161 384 10 10 0 360 DrawEllipse stroke % Polyline newpath 405 482 moveto 438 527 lineto stroke newpath 434.882 519.366 moveto 438.000 527.000 lineto 431.656 521.732 lineto stroke % Polyline newpath 405 482 moveto 434 432 lineto stroke newpath 428.256 437.917 moveto 434.000 432.000 lineto 431.716 439.924 lineto stroke % Polyline newpath 340 481 moveto 405 481 lineto stroke newpath 397.000 479.000 moveto 405.000 481.000 lineto 397.000 483.000 lineto stroke % Polyline newpath 454 440 moveto 454 524 lineto stroke newpath 456.000 516.000 moveto 454.000 524.000 lineto 452.000 516.000 lineto stroke % Polyline newpath 441 93 moveto 335 143 lineto stroke newpath 343.089 141.396 moveto 335.000 143.000 lineto 341.382 137.778 lineto stroke % Polyline newpath 428 172 moveto 473 202 lineto stroke newpath 467.453 195.898 moveto 473.000 202.000 lineto 465.234 199.226 lineto stroke % Polyline newpath 428 171 moveto 468 127 lineto stroke newpath 461.139 131.574 moveto 468.000 127.000 lineto 464.098 134.265 lineto stroke % Polyline newpath 348 171 moveto 428 171 lineto stroke newpath 420.000 169.000 moveto 428.000 171.000 lineto 420.000 173.000 lineto stroke % Polyline newpath 197 481 moveto 274 481 lineto stroke newpath 266.000 479.000 moveto 274.000 481.000 lineto 266.000 483.000 lineto stroke % Polyline newpath 161 396 moveto 161 447 lineto stroke newpath 163.000 439.000 moveto 161.000 447.000 lineto 159.000 439.000 lineto stroke % Polyline newpath 187 170 moveto 282 170 lineto stroke newpath 274.000 168.000 moveto 282.000 170.000 lineto 274.000 172.000 lineto stroke % Polyline newpath 166 139 moveto 211 89 lineto stroke newpath 204.162 93.608 moveto 211.000 89.000 lineto 207.135 96.284 lineto stroke % Polyline newpath 259 89 moveto 302 139 lineto stroke newpath 298.300 131.630 moveto 302.000 139.000 lineto 295.267 134.239 lineto stroke /Courier findfont 12.222222 scalefont setfont 128 670 moveto 1 -1 scale (Event BadLSReq forces Exstart state) show 1 -1 scale 112 654 moveto 1 -1 scale (* Event SeqNumberMismatch forces Exstart state) show 1 -1 scale 127 749 moveto 1 -1 scale (Event AdjOK? leads to adjacency forming/breaking) show 1 -1 scale 128 687 moveto 1 -1 scale (Event 1-Way forces Init state) show 1 -1 scale 127 733 moveto 1 -1 scale (Event LLDown forces Down state) show 1 -1 scale 164 280 moveto 1 -1 scale (Event LLDown forces Down state) show 1 -1 scale 164 247 moveto 1 -1 scale (Event KillNbr forces Down state) show 1 -1 scale 128 703 moveto 1 -1 scale (Event KillNbr forces Down state) show 1 -1 scale 128 717 moveto 1 -1 scale (Event Inactivity Timer forces Down State) show 1 -1 scale 470 492 moveto 1 -1 scale (Done) show 1 -1 scale 461 479 moveto 1 -1 scale (Loading) show 1 -1 scale 358 471 moveto 1 -1 scale (Done) show 1 -1 scale 351 455 moveto 1 -1 scale (Exchng) show 1 -1 scale 206 470 moveto 1 -1 scale (NegDone) show 1 -1 scale 114 777 moveto 1 -1 scale (Figure 13: Neighbor state changes \(Database Exchange\)) show 1 -1 scale 429 408 moveto 1 -1 scale (Loading) show 1 -1 scale 439 562 moveto 1 -1 scale (Full) show 1 -1 scale 136 484 moveto 1 -1 scale (ExStart) show 1 -1 scale 283 483 moveto 1 -1 scale (Exchng) show 1 -1 scale 164 264 moveto 1 -1 scale (Event Inactivity Timer forces Down State) show 1 -1 scale 358 196 moveto 1 -1 scale (Received) show 1 -1 scale 367 182 moveto 1 -1 scale (2-Way) show 1 -1 scale 199 160 moveto 1 -1 scale (Received) show 1 -1 scale 210 146 moveto 1 -1 scale (Hello) show 1 -1 scale 456 97 moveto 1 -1 scale (2-Way) show 1 -1 scale 298 168 moveto 1 -1 scale (Init) show 1 -1 scale 135 172 moveto 1 -1 scale (Down) show 1 -1 scale 381 133 moveto 1 -1 scale (1-Way) show 1 -1 scale 114 319 moveto 1 -1 scale (Figure 12: Neighbor state changes \(Hello Protocol\)) show 1 -1 scale 209 64 moveto 1 -1 scale (Attempt) show 1 -1 scale 279 105 moveto 1 -1 scale (Hello Received) show 1 -1 scale 149 104 moveto 1 -1 scale (Start) show 1 -1 scale 152 248 moveto 1 -1 scale (*) show 1 -1 scale 476 213 moveto 1 -1 scale (A) show 1 -1 scale 157 388 moveto 1 -1 scale (A) show 1 -1 scale showpage $F2psEnd endTexFig 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(42])m @eop 41 @bop0 41 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (Database)s 10(summary)m 11(list)m t-rom.300 @sf 21(The)m 13(complete)m 13(list)m 13(of)m 13(link)m 14(state)m 13(advertisements)m 13(that)m 13(make)m 13(up)m 13(the)m 14(area)m 13(topological)m 13(database,)m 104 245 p (at)s 13(the)m 13(moment)m 14(the)m 13(neighbor)m 13(goes)m 13(into)m 14(Database)m 13(Exchange)m 13(state.)m 23(This)m 13(list)m 13(is)m 13(sent)m 14(to)m 13(the)m 13(neighbor)m 14(in)m 13(Database)m 104 295 p (Description)s 10(packets.)m t-bol.300 @sf 0 378 p (Link)s 10(state)m 11 r 114 c (equest)s 9(list)m t-rom.300 @sf 21(The)m 13(list)m 13(of)m 13(link)m 13(state)m 13(advertisements)m 13(that)m 13(need)m 13(to)m 13(be)m 13(received)m 12(from)m 13(this)m 13(neighbor)m 13(in)m 13(order)m 13(to)m 104 428 p (synchronize)s 11(the)m 12(two)m 11(neighbors')m 11(topological)m 12(databases.)m 17(This)m 11(list)m 11(is)m 12(created)m 11(as)m 11(Database)m 12(Description)m 11(packets)m 12(are)m 104 477 p (received,)s 9(and)m 10(is)m 9(then)m 10(sent)m 9(to)m 10(the)m 9(neighbor)m 10(in)m 9(Link)m 10(State)m 9(Request)m 10(packets.)m 13(The)m 10(list)m 9(is)m 10(depleted)m 9(as)m 10(appropriate)m 9(Link)m 104 527 p (State)s 10(Update)m 11(packets)m 10(are)m 10(received.)m t-bol.360 @sf 0 664 p (10.1)s 50(Neighbor)m 12(states)m t-rom.300 @sf 0 760 p (The)s 11(state)m 10(of)m 11 r 97 c 10(neighbor)m 11(\(really)m -2 r 44 c 10(the)m 10(state)m 11(of)m 10 r 97 c 11(conversation)m 10(being)m 11(held)m 11(with)m 10 r 97 c 11(neighboring)m 10(router\))m 11(is)m 10(documented)m 11(in)m 10(the)m 0 809 p (following)s 13(sections.)m 21(The)m 13(states)m 13(are)m 12(listed)m 13(in)m 13(order)m 13(of)m 13(progressing)m 13(functionality)m -2 r 46 c 20(For)m 13(example,)m 13(the)m 13(inoperative)m 13(state)m 13(is)m 0 859 p (listed)s 9(\014rst,)m 9(followed)m 8(by)m 9 r 97 c 9(list)m 9(of)m 8(intermediate)m 9(states)m 9(before)m 8(the)m 9(\014nal,)m 9(fully)m 9(functional)m 9(state)m 8(is)m 9(achieved.)m 13(The)m 9(speci\014cation)m 0 909 p (makes)s 10(use)m 9(of)m 10(this)m 10(ordering)m 9(by)m 10(sometimes)m 9(making)m 10(references)m 10(such)m 9(as)m 10(\\those)m 10(neighbors/adjacencies)m 9(in)m 10(state)m 9(greater)m 10(than)m 0 959 p (X".)s 12(Figures)m 12(12)m 12(and)m 12(13)m 12(show)m 12(the)m 12(graph)m 12(of)m 12(neighbor)m 12(state)m 12(changes.)m 18(The)m 12(arcs)m 12(of)m 12(the)m 12(graphs)m 12(are)m 12(labelled)m 12(with)m 12(the)m 12(event)m 0 1009 p (causing)s 10(the)m 11(state)m 10(change.)m 14(The)m 11(neighbor)m 10(events)m 10(are)m 11(documented)m 10(in)m 11(Section)m 10(10.2.)m 0 1076 p (The)s 11(graph)m 12(in)m 11(Figure)m 12(12)m 11(show)m 12(the)m 11(state)m 12(changes)m 11(ef)m (fected)s 11(by)m 11(the)m 12(Hello)m 11(Protocol.)m 17(The)m 11(Hello)m 12(Protocol)m 11(is)m 12(responsible)m 11(for)m 0 1126 p (neighbor)s 10(acquisition)m 11(and)m 10(maintenance,)m 11(and)m 10(for)m 10(ensuring)m 11(two)m 10(way)m 11(communication)m 10(between)m 11(neighbors.)m 0 1194 p (The)s 11(graph)m 11(in)m 11(Figure)m 10(13)m 11(shows)m 11(the)m 11(forming)m 11(of)m 11(an)m 11(adjacency)m -2 r 46 c 14(Not)m 11(every)m 11(two)m 11(neighboring)m 10(routers)m 11(become)m 11(adjacent)m 11(\(see)m 0 1244 p (Section)s 13(10.4\).)m 24(The)m 13(adjacency)m 13(starts)m 14(to)m 13(form)m 14(when)m 13(the)m 14(neighbor)m 13(is)m 14(in)m 13(state)m t-bol.300 @sf 14(ExStart)m t-rom.300 @sf 46 c 23(After)m 13(the)m 14(two)m 13(routers)m 14(discover)m 0 1293 p (their)s 10(master/slave)m 10(status,)m 11(the)m 10(state)m 10(transitions)m 10(to)m t-bol.300 @sf 11(Exchange)m t-rom.300 @sf 46 c 13(At)m 11(this)m 10(point)m 10(the)m 10(neighbor)m 10(starts)m 11(to)m 10(be)m 10(used)m 10(in)m 10(the)m 11(\015ooding)m 0 1343 p (procedure,)s 8(and)m 8(the)m 7(two)m 8(neighboring)m 7(routers)m 8(begin)m 7(synchronizing)m 8(their)m 7(databases.)m 13(When)m 8(this)m 7(synchronization)m 8(is)m 7(\014nished,)m 0 1393 p (the)s 11(neighbor)m 11(is)m 10(in)m 11(state)m t-bol.300 @sf 11(Full)m t-rom.300 @sf 11(and)m 11(we)m 10(say)m 11(that)m 11(the)m 11(two)m 10(routers)m 11(are)m 11(fully)m 11(adjacent.)m 15(At)m 11(this)m 10(point)m 11(the)m 11(adjacency)m 11(is)m 11(listed)m 10(in)m 0 1443 p (link)s 10(state)m 11(advertisements.)m 0 1510 p (For)s 8 r 97 c 8(more)m 8(detailed)m 8(description)m 8(of)m 8(neighbor)m 9(state)m 8(changes,)m 8(together)m 8(with)m 8(the)m 8(additional)m 9(actions)m 8(involved)m 8(in)m 8(each)m 8(change,)m 0 1560 p (see)s 10(Section)m 11(10.3.)m t-bol.300 @sf 0 1670 p (Down)s t-rom.300 @sf 21(This)m 7(is)m 8(the)m 7(initial)m 7(state)m 8(of)m 7 r 97 c 8(neighbor)m 7(conversation.)m 13(It)m 7(indicates)m 8(that)m 7(there)m 8(has)m 7(been)m 8(no)m 7(recent)m 7(information)m 8(received)m 104 1719 p (from)s 10(the)m 10(neighbor)m -1 r 46 c 13(On)m 10(non-broadcast)m 10(networks,)m 11(Hello)m 10(packets)m 10(may)m 11(still)m 10(be)m 10(sent)m 10(to)m 11(\\Down")m 10(neighbors,)m 10(although)m 104 1769 p (at)s 10 r 97 c 11(reduced)m 10(frequency)m 10(\(see)m 11(Section)m 10(9.5.1\).)m t-bol.300 @sf 0 1852 p (Attempt)s t-rom.300 @sf 21(This)m 11(state)m 12(is)m 11(only)m 11(valid)m 12(for)m 11(neighbors)m 12(attached)m 11(to)m 11(non-broadcast)m 12(networks.)m 16(It)m 12(indicates)m 11(that)m 12(no)m 11(recent)m 11(infor-)m 104 1902 p (mation)s 14(has)m 13(been)m 14(received)m 14(from)m 14(the)m 13(neighbor)m 44 c 13(but)m 14(that)m 14 r 97 c 13(more)m 14(concerted)m 14(ef)m (fort)s 13(should)m 14(be)m 13(made)m 14(to)m 14(contact)m 14(the)m 104 1952 p (neighbor)s -2 r 46 c 13(This)m 11(is)m 10(done)m 11(by)m 10(sending)m 10(the)m 11(neighbor)m 10(Hello)m 11(packets)m 10(at)m 11(intervals)m 10(of)m 10(HelloInterval)m 11(\(see)m 10(Section)m 11(9.5.1\).)m t-bol.300 @sf 0 2035 p (Init)s t-rom.300 @sf 21(In)m 11(this)m 12(state,)m 12(an)m 11(Hello)m 12(packet)m 12(has)m 11(recently)m 12(been)m 11(seen)m 12(from)m 11(the)m 12(neighbor)m -1 r 46 c 16(However)m -1 r 44 c 11(bidirectional)m 12(communication)m 104 2085 p (has)s 15(not)m 15(yet)m 15(been)m 14(established)m 15(with)m 15(the)m 15(neighbor)m 15(\(i.e.,)m 16(the)m 15(router)m 15(itself)m 15(did)m 15(not)m 15(appear)m 15(in)m 15(the)m 15(neighbor)m 1 r 39 c -1 r 115 c 14(Hello)m 104 2134 p (packet\).)s 14(All)m 10(neighbors)m 10(in)m 11(this)m 10(state)m 10(\(or)m 11(higher\))m 10(are)m 10(listed)m 10(in)m 11(the)m 10(Hello)m 10(packets)m 11(sent)m 10(from)m 10(the)m 11(associated)m 10(interface.)m t-bol.300 @sf 0 2217 p (2-W)s -1(ay)m t-rom.300 @sf 19(In)m 11(this)m 11(state,)m 10(communication)m 11(between)m 10(the)m 11(two)m 10(routers)m 11(is)m 10(bidirectional.)m 15(This)m 10(has)m 11(been)m 10(assured)m 11(by)m 10(the)m 11(operation)m 104 2267 p (of)s 8(the)m 8(Hello)m 8(Protocol.)m 13(This)m 8(is)m 8(the)m 8(most)m 8(advanced)m 8(state)m 8(short)m 8(of)m 8(beginning)m 8(adjacency)m 8(establishment.)m 13(The)m 8(\(Backup\))m 104 2317 p (Designated)s 10(Router)m 11(is)m 10(selected)m 10(from)m 11(the)m 10(set)m 11(of)m 10(neighbors)m 11(in)m 10(state)m t-bol.300 @sf 10(2-W)m -1(ay)m t-rom.300 @sf 9(or)m 11(greater)m -1 r 46 c t-bol.300 @sf 0 2400 p (ExStart)s t-rom.300 @sf 21(This)m 11(is)m 12(the)m 12(\014rst)m 11(step)m 12(in)m 12(creating)m 11(an)m 12(adjacency)m 11(between)m 12(the)m 12(two)m 11(neighboring)m 12(routers.)m 18(The)m 11(goal)m 12(of)m 11(this)m 12(step)m 12(is)m 104 2450 p (to)s 9(decide)m 10(which)m 9(router)m 10(is)m 9(the)m 10(master)m -1 r 44 c 9(and)m 9(to)m 10(decide)m 9(upon)m 9(the)m 10(initial)m 9(sequence)m 10(number)m -1 r 46 c 12(Neighbor)m 10(conversations)m 9(in)m 104 2500 p (this)s 10(state)m 11(or)m 10(greater)m 10(are)m 11(called)m 10(adjacencies.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(41])m @eop 40 @bop0 40 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (The)s 13(neighbor)m 13(data)m 12(structure)m 13(contains)m 13(all)m 13(information)m 13(pertinent)m 12(to)m 13(the)m 13(forming)m 13(or)m 13(formed)m 13(adjacency)m 12(between)m 13(the)m 13(two)m 0 245 p (neighbors.)s 21(\(However)m -1 r 44 c 13(remember)m 13(that)m 12(not)m 13(all)m 13(neighbors)m 13(become)m 13(adjacent.\))m 21(An)m 12(adjacency)m 13(can)m 13(be)m 13(viewed)m 13(as)m 12 r 97 c 13(highly)m 0 295 p (developed)s 10(conversation)m 11(between)m 10(two)m 11(routers.)m t-bol.300 @sf 0 392 p (State)s t-rom.300 @sf 21(The)m 10(functional)m 11(level)m 10(of)m 10(the)m 11(neighbor)m 10(conversation.)m 14(This)m 11(is)m 10(described)m 10(in)m 11(more)m 10(detail)m 11(in)m 10(Section)m 10(10.1.)m t-bol.300 @sf 0 472 p (Inactivity)s 10 r 84 c (imer)s t-rom.300 @sf 20 r 65 c 13(single)m 12(shot)m 13(timer)m 12(whose)m 13(\014ring)m 12(indicates)m 13(that)m 12(no)m 13(Hello)m 12(Packet)m 13(has)m 12(been)m 13(seen)m 12(from)m 13(this)m 12(neighbor)m 104 521 p (recently)s -2 r 46 c 13(The)m 10(length)m 11(of)m 10(the)m 11(timer)m 10(is)m 10(RouterDeadInterval)m 11(seconds.)m t-bol.300 @sf 0 601 p (Master/Slave)s t-rom.300 @sf 21(When)m 9(the)m 10(two)m 9(neighbors)m 10(are)m 10(exchanging)m 9(databases,)m 10(they)m 9(form)m 10 r 97 c 9(Master)m 10(Slave)m 10(relationship.)m 13(The)m 10(Master)m 104 651 p (sends)s 13(the)m 13(\014rst)m 14(Database)m 13(Description)m 13(Packet,)m 14(and)m 14(is)m 13(the)m 13(only)m 13(part)m 14(that)m 13(is)m 13(allowed)m 14(to)m 13(retransmit.)m 22(The)m 14(slave)m 13(can)m 104 701 p (only)s 10(respond)m 11(to)m 10(the)m 11(master)m 2 r 39 c -2 r 115 c 10(Database)m 10(Description)m 11(Packets.)m 14(The)m 11(master/slave)m 10(relationship)m 11(is)m 11(negotiated)m 10(in)m 11(state)m t-bol.300 @sf 104 751 p (ExStart)s t-rom.300 @sf 46 c t-bol.300 @sf 0 830 p (Sequence)s 10(Number)m t-rom.300 @sf 21 r 65 c 12(32-bit)m 12(number)m 12(identifying)m 12(individual)m 12(Database)m 12(Description)m 12(packets.)m 18(When)m 12(the)m 12(neighbor)m 12(state)m 104 880 p (ExStart)s 10(is)m 11(entered,)m 10(the)m 10(sequence)m 11(number)m 10(should)m 10(be)m 11(set)m 10(to)m 11 r 97 c 10(value)m 10(not)m 11(previously)m 10(seen)m 10(by)m 11(the)m 10(neighboring)m 11(router)m -2 r 46 c 104 930 p (One)s 13(possible)m 13(scheme)m 12(is)m 13(to)m 13(use)m 13(the)m 13(machine')m -1 r 115 c 12(time)m 12(of)m 13(day)m 13(counter)m -1 r 46 c 20(The)m 13(sequence)m 13(number)m 13(is)m 13(then)m 12(incremented)m 104 980 p (by)s 10(the)m 11(master)m 11(with)m 10(each)m 11(new)m 11(Database)m 10(Description)m 11(packet)m 11(sent.)m 14(The)m 11(slave')m -2 r 115 c 10(sequence)m 11(number)m 10(indicates)m 11(the)m 11(last)m 104 1029 p (packet)s 10(received)m 11(from)m 10(the)m 10(master)m -1 r 46 c 13(Only)m 10(one)m 11(packet)m 10(is)m 11(allowed)m 10(outstanding)m 11(at)m 10 r 97 c 10(time.)m t-bol.300 @sf 0 1109 p (Neighbor)s 10(ID)m t-rom.300 @sf 21(The)m 14(OSPF)m 13(Router)m 13(ID)m 14(of)m 13(the)m 13(neighboring)m 14(router)m -1 r 46 c 21(The)m 14(neighbor)m 13(ID)m 13(is)m 14(learned)m 13(when)m 14(Hello)m 13(packets)m 13(are)m 104 1159 p (received)s 10(from)m 11(the)m 10(neighbor)m -1 r 44 c 10(or)m 10(is)m 11(con\014gured)m 10(if)m 10(this)m 11(is)m 10 r 97 c 11(virtual)m 10(adjacency)m 11(\(see)m 10(Section)m 10(C.4\).)m t-bol.300 @sf 0 1239 p (Neighbor)s 10(priority)m t-rom.300 @sf 21(The)m 8(Router)m 8(Priority)m 8(of)m 9(the)m 8(neighboring)m 8(router)m -2 r 46 c 13(Contained)m 8(in)m 8(the)m 8(neighbor)m 1 r 39 c -1 r 115 c 7(Hello)m 8(packets,)m 9(this)m 8(item)m 104 1288 p (is)s 10(used)m 11(when)m 10(selecting)m 10(the)m 11(Designated)m 10(Router)m 11(for)m 10(the)m 11(attached)m 10(network.)m t-bol.300 @sf 0 1368 p (Neighbor)s 10(IP)m 11(addr)m (ess)s t-rom.300 @sf 20(The)m 10(IP)m 10(address)m 10(of)m 11(the)m 10(neighboring)m 10(router)m 2 r 39 c -2 r 115 c 10(interface)m 10(to)m 10(the)m 10(attached)m 10(network.)m 14(Used)m 10(as)m 11(the)m 10(Des-)m 104 1418 p (tination)s 12(IP)m 13(address)m 12(when)m 13(protocol)m 12(packets)m 13(are)m 12(sent)m 13(as)m 13(unicasts)m 12(along)m 13(this)m 12(adjacency)m -2 r 46 c 20(Also)m 12(used)m 13(in)m 12(router)m 13(links)m 104 1468 p (advertisements)s 12(as)m 12(the)m t-bol.300 @sf 12(Link)m 12(ID)m t-rom.300 @sf 12(for)m 12(the)m 12(attached)m 12(network)m 12(if)m 13(the)m 12(neighboring)m 12(router)m 12(is)m 12(selected)m 12(to)m 12(be)m 12(Designated)m 104 1518 p (Router)s 8(\(see)m 9(Section)m 8(12.4.1\).)m 13(The)m 9(neighbor)m 8(IP)m 9(address)m 8(is)m 9(learned)m 8(when)m 9(Hello)m 8(packets)m 9(are)m 8(received)m 9(from)m 8(the)m 9(neigh-)m 104 1567 p (bor)s -2 r 46 c 13(For)m 10(virtual)m 10(links,)m 10(the)m 10(neighbor)m 10(IP)m 10(address)m 10(is)m 10(learned)m 10(during)m 10(the)m 10(routing)m 10(table)m 10(build)m 10(process)m 10(\(see)m 10(Section)m 10(15\).)m t-bol.300 @sf 0 1647 p (Neighbor)s 10(Options)m t-rom.300 @sf 21(The)m 8(optional)m 7(OSPF)m 7(capabilities)m 8(supported)m 7(by)m 7(the)m 8(neighbor)m -2 r 46 c 12(Learned)m 8(during)m 7(the)m 7(Database)m 8(Exchange)m 104 1697 p (process)s 11(\(see)m 10(Section)m 11(10.6\).)m 15(The)m 11(neighbor)m 2 r 39 c -2 r 115 c 10(optional)m 11(OSPF)m 11(capabilities)m 11(are)m 10(also)m 11(listed)m 11(in)m 11(its)m 11(Hello)m 11(packets.)m 15(This)m 104 1747 p (enables)s 11(received)m 11(Hellos)m 10(to)m 11(be)m 11(rejected)m 11(\(i.e.,)m 11(neighbor)m 11(relationships)m 11(will)m 11(not)m 10(even)m 11(start)m 11(to)m 11(form\))m 11(if)m 11(there)m 11(is)m 10 r 97 c 11(mis-)m 104 1796 p (match)s 11(in)m 11(certain)m 11(crucial)m 11(OSPF)m 12(capabilities)m 11(\(see)m 11(Section)m 11(10.5\).)m 16(The)m 11(optional)m 12(OSPF)m 11(capabilities)m 11(are)m 11(documented)m 104 1846 p (in)s 10(Section)m 11(4.5.)m t-bol.300 @sf 0 1926 p (Neighbor)s 1 r 39 c -1 r 115 c 10(Designated)m 10(Router)m t-rom.300 @sf 21(The)m 13(neighbor)m 1 r 39 c -1 r 115 c 12(idea)m 12(of)m 13(the)m 13(Designated)m 13(Router)m -1 r 46 c 20(If)m 12(this)m 13(is)m 13(the)m 13(neighbor)m 12(itself,)m 14(this)m 13(is)m 104 1976 p (important)s 10(in)m 11(the)m 10(local)m 10(calculation)m 11(of)m 10(the)m 11(Designated)m 10(Router)m -1 r 46 c 13(De\014ned)m 10(only)m 11(on)m 10(multi-access)m 10(networks.)m t-bol.300 @sf 0 2055 p (Neighbor)s 1 r 39 c -1 r 115 c 10(Backup)m 10(Designated)m 10(Router)m t-rom.300 @sf 21(The)m 8(neighbor)m 1 r 39 c -1 r 115 c 6(idea)m 8(of)m 7(the)m 8(Backup)m 7(Designated)m 8(Router)m -1 r 46 c 12(If)m 7(this)m 8(is)m 7(the)m 8(neighbor)m 104 2105 p (itself,)s 11(this)m 11(is)m 10(important)m 11(in)m 11(the)m 11(local)m 11(calculation)m 10(of)m 11(the)m 11(Backup)m 11(Designated)m 11(Router)m -2 r 46 c 14(De\014ned)m 11(only)m 11(on)m 11(multi-access)m 104 2155 p (networks.)s 0 2252 p (The)s 14(next)m 14(set)m 14(of)m 13(variables)m 14(are)m 14(lists)m 14(of)m 14(link)m 14(state)m 13(advertisements.)m 24(These)m 14(lists)m 14(describe)m 14(subsets)m 14(of)m 14(the)m 13(area)m 14(topological)m 0 2302 p (database.)s 21(There)m 12(can)m 13(be)m 12(\014ve)m 13(distinct)m 13(types)m 12(of)m 13(link)m 12(state)m 13(advertisements)m 13(in)m 12(an)m 13(area)m 13(topological)m 12(database:)m 19(router)m 12(links,)m 0 2352 p (network)s 11(links,)m 11(and)m 10(type)m 11 r 51 c 11(and)m 11 r 52 c 10(summary)m 11(links)m 11(\(all)m 11(stored)m 10(in)m 11(the)m 11(area)m 10(data)m 11(structure\),)m 11(and)m 11(AS)m 11(external)m 10(links)m 11(\(stored)m 11(in)m 0 2402 p (the)s 10(global)m 11(data)m 10(structure\).)m t-bol.300 @sf 0 2499 p (Link)s 10(state)m 11 r 114 c (etransmission)s 9(list)m t-rom.300 @sf 21(The)m 11(list)m 10(of)m 11(link)m 11(state)m 10(advertisements)m 11(that)m 10(have)m 11(been)m 10(\015ooded)m 11(but)m 10(not)m 11(acknowledged)m 11(on)m 104 2549 p (this)s 12(adjacency)m -1 r 46 c 19(These)m 12(will)m 13(be)m 12(retransmitted)m 13(at)m 12(intervals)m 13(until)m 12(they)m 13(are)m 12(acknowledged,)m 13(or)m 13(until)m 12(the)m 13(adjacency)m 12(is)m 104 2599 p (destroyed.)s 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(40])m @eop 39 @bop0 39 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (the)s 9(IP)m 8(address)m 9(mask)m 8(of)m 9(the)m 8(attached)m 9(network)m 8 r 40 c t-bol.300 @sf (Network)s 9(Mask)m t-rom.300 @sf (\).)s 13(On)m 9(unnumbered)m 8(point-to-point)m 9(networks)m 8(and)m 9(on)m 8(virtual)m 0 245 p (links)s 10(this)m 11(\014eld)m 10(should)m 11(be)m 10(set)m 10(to)m 11(0.)m 0 312 p (The)s 11(Hello)m 11(packet')m -1 r 115 c t-bol.300 @sf 10(Options)m t-rom.300 @sf 11(\014eld)m 11(describes)m 12(the)m 11(router)m 1 r 39 c -1 r 115 c 10(optional)m 11(OSPF)m 11(capabilities.)m 16(There)m 12(are)m 11(currently)m 11(two)m 11(optional)m 0 362 p (capabilities)s 12(de\014ned)m 12(\(see)m 13(Sections)m 12(4.5)m 12(and)m 12(A.2\).)m 20(The)m t-bol.300 @sf 12 r 84 c -3(-bit)m t-rom.300 @sf 11(of)m 12(the)m t-bol.300 @sf 13(Options)m t-rom.300 @sf 12(\014eld)m 12(should)m 12(be)m 13(set)m 12(if)m 12(the)m 12(router)m 12(is)m 13(capable)m 0 412 p (of)s 11(calculating)m 12(separate)m 11(routes)m 12(for)m 11(each)m 12(IP)m 11 r 84 c (OS.)s 17(The)m t-bol.300 @sf 11(E-bit)m t-rom.300 @sf 12(should)m 11(be)m 11(set)m 12(if)m 11(and)m 12(only)m 11(if)m 12(the)m 11(attached)m 12(area)m 11(is)m 12(capable)m 11(of)m 0 461 p (processing)s 9(AS)m 10(external)m 9(advertisements)m 9(\(i.e.,)m 10(it)m 9(is)m 10(not)m 9 r 97 c 9(stub)m 10(area\).)m 13(If)m 9(the)m t-bol.300 @sf 10(E-bit)m t-rom.300 @sf 9(is)m 9(set)m 10(incorrectly)m 9(the)m 9(neighboring)m 10(routers)m 0 511 p (will)s 10(refuse)m 10(to)m 10(accept)m 10(the)m 10(Hello)m 10(Packet)m 10(\(see)m 10(Section)m 10(10.5\).)m 14(The)m 10(rest)m 10(of)m 10(the)m 10(Hello)m 10(Packet')m -1 r 115 c t-bol.300 @sf 9(Options)m t-rom.300 @sf 10(\014eld)m 10(should)m 10(be)m 10(set)m 10(to)m 0 561 p (zero.)s 0 628 p (In)s 11(order)m 12(to)m 11(ensure)m 11(two-way)m 11(communication)m 12(between)m 11(adjacent)m 11(routers,)m 12(the)m 11(Hello)m 12(packet)m 11(contains)m 11(the)m 11(list)m 12(of)m 11(all)m 11(routers)m 0 678 p (from)s 10(which)m 11(hellos)m 10(have)m 10(been)m 11(seen)m 10(recently)m -2 r 46 c 13(The)m 11(Hello)m 10(packet)m 10(also)m 11(contains)m 10(the)m 11(router)m 1 r 39 c -1 r 115 c 9(current)m 10(choice)m 11(for)m 10(Designated)m 0 728 p (Router)s 10(and)m 11(Backup)m 10(Designated)m 11(Router)m -2 r 46 c 13 r 65 c 11(value)m 10(of)m 11 r 48 c 10(in)m 10(these)m 11(\014elds)m 10(means)m 11(that)m 10(one)m 10(has)m 11(not)m 10(yet)m 11(been)m 10(selected.)m 0 795 p (On)s 13(broadcast)m 12(networks)m 13(and)m 13(physical)m 13(point-to-point)m 12(networks,)m 13(Hello)m 13(packets)m 13(are)m 13(sent)m 12(every)m 13(HelloInterval)m 13(seconds)m 12(to)m 0 845 p (the)s 10(IP)m 10(multicast)m 11(address)m 10(AllSPFRouters.)m 14(On)m 10(virtual)m 10(links,)m 10(Hello)m 10(packets)m 11(are)m 10(sent)m 10(as)m 10(unicasts)m 10(\(addressed)m 11(directly)m 10(to)m 10(the)m 0 894 p (other)s 12(end)m 11(of)m 12(the)m 11(virtual)m 12(link\))m 11(every)m 12(HelloInterval)m 12(seconds.)m 17(On)m 11(non-broadcast)m 12(networks,)m 12(the)m 11(sending)m 12(of)m 12(Hello)m 11(packets)m 0 944 p (is)s 10(more)m 11(complicated.)m 14(This)m 10(will)m 11(be)m 10(covered)m 10(in)m 11(the)m 10(next)m 11(section.)m t-bol.300 @sf 0 1072 p (9.5.1)s 42(Sending)m 10(Hello)m 10(packets)m 11(on)m 10(non-br)m (oadcast)s 10(networks)m t-rom.300 @sf 0 1167 p (Static)s 13(con\014guration)m 12(information)m 13(is)m 13(necessary)m 13(in)m 12(order)m 13(for)m 13(the)m 13(Hello)m 12(Protocol)m 13(to)m 13(function)m 13(on)m 12(non-broadcast)m 13(networks)m 0 1217 p (\(see)s 11(Section)m 10(C.5\).)m 15(Every)m 10(attached)m 11(router)m 10(which)m 11(is)m 11(eligible)m 10(to)m 11(become)m 10(Designated)m 11(Router)m 10(has)m 11 r 97 c 11(con\014gured)m 10(list)m 11(of)m 10(all)m 11(of)m 0 1266 p (its)s 10(neighbors)m 11(on)m 10(the)m 11(network.)m 14(Each)m 10(listed)m 10(neighbor)m 11(is)m 10(labelled)m 11(with)m 10(its)m 10(Designated)m 11(Router)m 10(eligibility)m -1 r 46 c 0 1333 p (The)s 13(interface)m 13(state)m 13(must)m 13(be)m 13(at)m 13(least)m t-bol.300 @sf 13 r 87 c -1(aiting)m t-rom.300 @sf 12(for)m 13(any)m 13(hellos)m 13(to)m 13(be)m 13(sent.)m 22(Hellos)m 13(are)m 13(then)m 13(sent)m 13(directly)m 13(\(as)m 13(unicasts\))m 13(to)m 0 1383 p (some)s 12(subset)m 11(of)m 12 r 97 c 12(router)m 1 r 39 c -1 r 115 c 10(neighbors.)m 18(Sometimes)m 12(an)m 11(hello)m 12(is)m 11(sent)m 12(periodically)m 12(on)m 11 r 97 c 12(timer;)m 12(at)m 12(other)m 11(times)m 12(it)m 12(is)m 11(sent)m 12(as)m 11 r 97 c 0 1433 p (response)s 9(to)m 8 r 97 c 9(received)m 9(hello.)m 13 r 65 c 8(router)m 2 r 39 c -1 r 115 c 7(hello-sending)m 9(behavior)m 9(varies)m 8(depending)m 9(on)m 8(whether)m 9(the)m 9(router)m 8(itself)m 9(is)m 9(eligible)m 0 1483 p (to)s 10(become)m 11(Designated)m 10(Router)m -1 r 46 c 0 1550 p (If)s 13(the)m 13(router)m 13(is)m 13(eligible)m 13(to)m 14(become)m 13(Designated)m 13(Router)m -1 r 44 c 13(it)m 13(must)m 13(periodically)m 13(send)m 13(hellos)m 13(to)m 13(all)m 13(neighbors)m 13(that)m 14(are)m 13(also)m 0 1600 p (eligible.)s 26(In)m 15(addition,)m 15(if)m 15(the)m 14(router)m 15(is)m 14(itself)m 15(the)m 14(Designated)m 15(Router)m 14(or)m 15(Backup)m 14(Designated)m 15(Router)m -1 r 44 c 15(it)m 14(must)m 15(also)m 14(send)m 0 1649 p (periodic)s 12(hellos)m 11(to)m 12(all)m 11(other)m 12(neighbors.)m 17(This)m 12(means)m 11(that)m 12(any)m 11(two)m 12(eligible)m 11(routers)m 12(are)m 12(always)m 11(exchanging)m 12(hellos,)m 12(which)m 0 1699 p (is)s 11(necessary)m 10(for)m 11(the)m 10(correct)m 11(operation)m 10(of)m 11(the)m 11(Designated)m 10(Router)m 11(election)m 10(algorithm.)m 15 r 84 c -2 r 111 c 9(minimize)m 11(the)m 11(number)m 10(of)m 11(hellos)m 0 1749 p (sent,)s 10(the)m 11(number)m 10(of)m 11(eligible)m 10(routers)m 10(on)m 11 r 97 c 10(non-broadcast)m 11(network)m 10(should)m 11(be)m 10(kept)m 10(small.)m 0 1816 p (If)s 15(the)m 15(router)m 15(is)m 15(not)m 15(eligible)m 15(to)m 15(become)m 15(Designated)m 14(Router)m 44 c 15(it)m 15(must)m 15(periodically)m 15(send)m 15(hellos)m 15(to)m 15(both)m 15(the)m 14(Designated)m 0 1866 p (Router)s 10(and)m 10(the)m 10(Backup)m 10(Designated)m 10(Router)m 10(\(if)m 11(they)m 10(exist\).)m 13(It)m 10(must)m 11(also)m 10(send)m 10(an)m 10(hello)m 10(in)m 10(reply)m 10(to)m 10(an)m 10(hello)m 10(received)m 10(from)m 0 1916 p (any)s 13(eligible)m 12(neighbor)m 13(\(other)m 13(than)m 12(the)m 13(current)m 13(Designated)m 12(Router)m 13(and)m 13(Backup)m 12(Designated)m 13(Router\).)m 21(This)m 12(is)m 13(needed)m 13(to)m 0 1966 p (establish)s 10(an)m 11(initial)m 10(bidirectional)m 11(relationship)m 10(with)m 10(any)m 11(potential)m 10(Designated)m 11(Router)m -2 r 46 c 0 2033 p (When)s 10(sending)m 9(Hello)m 10(packets)m 9(periodically)m 10(to)m 9(any)m 10(neighbor)m -1 r 44 c 9(the)m 9(interval)m 10(between)m 10(hellos)m 9(is)m 10(determined)m 9(by)m 10(the)m 9(neighbor)m 2 r 39 c -1 r 115 c 0 2082 p (state.)s 21(If)m 12(the)m 13(neighbor)m 12(is)m 13(in)m 13(state)m t-bol.300 @sf 12(Down)m t-rom.300 @sf 44 c 14(hellos)m 12(are)m 13(sent)m 12(every)m 13(PollInterval)m 13(seconds.)m 20(Otherwise,)m 13(hellos)m 13(are)m 13(sent)m 12(every)m 0 2132 p (HelloInterval)s 10(seconds.)m t-bol.420 @sf 0 2289 p (10)s 58(The)m 15(Neighbor)m 14(Data)m 15(Structur)m 101 c t-rom.300 @sf 0 2399 p (An)s 11(OSPF)m 11(router)m 11(converses)m 10(with)m 11(its)m 11(neighboring)m 11(routers.)m 15(Each)m 11(separate)m 11(conversation)m 11(is)m 11(described)m 11(by)m 11 r 97 c 11(\\neighbor)m 10(data)m 0 2449 p (structure".)s 13(Each)m 9(conversation)m 8(is)m 8(bound)m 9(to)m 8 r 97 c 8(particular)m 9(OSPF)m 8(router)m 8(interface,)m 9(and)m 8(is)m 9(identi\014ed)m 8(either)m 8(by)m 9(the)m 8(neighboring)m 0 2499 p (router)s 2 r 39 c -2 r 115 c 15(OSPF)m 15(router)m 15(ID)m 16(or)m 15(by)m 16(its)m 15(Neighbor)m 16(IP)m 15(address)m 15(\(see)m 16(below\).)m 29(Thus)m 15(if)m 16(the)m 15(OSPF)m 15(router)m 16(and)m 15(another)m 16(router)m 0 2549 p (have)s 10(multiple)m 10(attached)m 10(networks)m 10(in)m 11(common,)m 10(multiple)m 10(conversations)m 10(ensue,)m 10(each)m 10(described)m 10(by)m 10 r 97 c 10(unique)m 11(neighbor)m 10(data)m 0 2599 p (structure.)s 14(Each)m 10(separate)m 11(conversation)m 10(is)m 11(loosely)m 10(referred)m 10(to)m 11(in)m 10(the)m 11(text)m 10(as)m 10(being)m 11 r 97 c 10(separate)m 11(\\neighbor)m 1(".)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(39])m @eop 38 @bop0 38 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 52 195 p (4.)s 21(If)m 11(Router)m 11 r 88 c 11(is)m 12(now)m 11(newly)m 11(the)m 12(Designated)m 11(Router)m 11(or)m 12(newly)m 11(the)m 11(Backup)m 12(Designated)m 11(Router)m -1 r 44 c 11(or)m 11(is)m 11(now)m 12(no)m 11(longer)m 104 245 p (the)s 12(Designated)m 13(Router)m 13(or)m 13(no)m 12(longer)m 13(the)m 13(Backup)m 13(Designated)m 12(Router)m 44 c 12(repeat)m 13(steps)m 12 r 50 c 13(and)m 13(3,)m 13(and)m 13(then)m 13(proceed)m 12(to)m 104 295 p (step)s 13(5.)m 21(For)m 13(example,)m 13(if)m 13(Router)m 13 r 88 c 13(is)m 13(now)m 13(the)m 12(Designated)m 13(Router)m 44 c 12(when)m 13(step)m 13 r 50 c 13(is)m 13(repeated)m 12 r 88 c 13(will)m 13(no)m 13(longer)m 13(be)m 104 345 p (eligible)s 9(for)m 10(Backup)m 9(Designated)m 10(Router)m 9(election.)m 14(Among)m 10(other)m 9(things,)m 10(this)m 9(will)m 10(ensure)m 9(that)m 10(no)m 9(router)m 10(will)m 9(declare)m 104 394 p (itself)s 10(both)m 11(Backup)m 10(Designated)m 10(Router)m 11(and)m 10(Designated)m 11(Router)m -2 r 46 c t-rom.210 @sf 1145 379 p 53 c t-rom.300 @sf 52 477 p (5.)s 21(As)m 10 r 97 c 10(result)m 10(of)m 10(these)m 10(calculations,)m 10(the)m 10(router)m 10(itself)m 10(may)m 10(now)m 10(be)m 10(Designated)m 10(Router)m 10(or)m 10(Backup)m 10(Designated)m 10(Router)m -1 r 46 c 104 526 p (See)s 12(Sections)m 13(7.3)m 13(and)m 12(7.4)m 13(for)m 12(the)m 13(additional)m 13(duties)m 12(this)m 13(would)m 13(entail.)m 20(The)m 13(router)m 1 r 39 c -1 r 115 c 11(interface)m 13(state)m 13(should)m 12(be)m 13(set)m 104 576 p (accordingly)s -2 r 46 c 19(If)m 12(the)m 12(router)m 12(itself)m 13(is)m 12(now)m 12(Designated)m 13(Router)m -1 r 44 c 12(the)m 12(new)m 12(interface)m 12(state)m 13(is)m t-bol.300 @sf 12(DR)m t-rom.300 @sf 46 c 12(If)m 13(the)m 12(router)m 12(itself)m 12(is)m 104 626 p (now)s 12(Backup)m 13(Designated)m 12(Router)m 44 c 12(the)m 12(new)m 12(interface)m 13(state)m 12(is)m t-bol.300 @sf 13(Backup)m t-rom.300 @sf 46 c 20(Otherwise,)m 13(the)m 12(new)m 13(interface)m 12(state)m 13(is)m t-bol.300 @sf 12(DR)m 104 676 p (Other)s t-rom.300 @sf 46 c 52 758 p (6.)s 21(If)m 7(the)m 7(attached)m 7(network)m 7(is)m 7(non-broadcast,)m 8(and)m 7(the)m 7(router)m 7(itself)m 7(has)m 7(just)m 7(become)m 7(either)m 7(Designated)m 7(Router)m 7(or)m 7(Backup)m 104 808 p (Designated)s 13(Router)m -1 r 44 c 12(it)m 13(must)m 13(start)m 13(sending)m 13(hellos)m 12(to)m 13(those)m 13(neighbors)m 13(that)m 13(are)m 13(not)m 12(eligible)m 13(to)m 13(become)m 13(Designated)m 104 858 p (Router)s 8(\(see)m 8(Section)m 8(9.5.1\).)m 13(This)m 8(is)m 8(done)m 9(by)m 8(invoking)m 8(the)m 8(neighbor)m 8(event)m t-bol.300 @sf 8(Start)m t-rom.300 @sf 8(for)m 8(each)m 8(neighbor)m 8(having)m 9 r 97 c t-bol.300 @sf 8(Router)m 104 908 p (Priority)s t-rom.300 @sf 10(of)m 11(0.)m 52 990 p (7.)s 21(If)m 9(the)m 10(above)m 9(calculations)m 10(have)m 10(caused)m 9(the)m 10(identity)m 10(of)m 9(either)m 10(the)m 10(Designated)m 9(Router)m 10(or)m 10(Backup)m 9(Designated)m 10(Router)m 104 1040 p (to)s 10(change,)m 10(the)m 11(set)m 10(of)m 10(adjacencies)m 10(associated)m 10(with)m 11(this)m 10(interface)m 10(will)m 10(need)m 11(to)m 10(be)m 10(modi\014ed.)m 14(Some)m 10(adjacencies)m 10(may)m 104 1089 p (need)s 13(to)m 13(be)m 13(formed,)m 14(and)m 13(others)m 13(may)m 14(need)m 13(to)m 13(be)m 13(broken.)m 22 r 84 c -2 r 111 c 12(accomplish)m 14(this,)m 13(invoke)m 14(the)m 13(event)m t-bol.300 @sf 13(AdjOK?)m t-rom.300 @sf 13(on)m 13(all)m 104 1139 p (neighbors)s 12(whose)m 13(state)m 12(is)m 13(at)m 12(least)m t-bol.300 @sf 13(2-W)m -1(ay)m t-rom.300 @sf 46 c 19(This)m 12(will)m 13(cause)m 12(their)m 13(eligibility)m 12(for)m 13(adjacency)m 12(to)m 13(be)m 12(reexamined)m 13(\(see)m 104 1189 p (Sections)s 10(10.3)m 11(and)m 10(10.4\).)m 0 1295 p (The)s 10(reason)m 10(behind)m 11(the)m 10(election)m 10(algorithm')m -1 r 115 c 9(complexity)m 10(is)m 10(the)m 11(desire)m 10(for)m 10(an)m 10(orderly)m 10(transition)m 11(from)m 10(Backup)m 10(Designated)m 0 1345 p (Router)s 14(to)m 13(Designated)m 14(Router)m -1 r 44 c 13(when)m 14(the)m 13(current)m 14(Designated)m 13(Router)m 14(fails.)m 23(This)m 14(orderly)m 13(transition)m 14(is)m 13(ensured)m 14(through)m 0 1395 p (the)s 11(introduction)m 12(of)m 11(hysteresis:)m 15(no)m 12(new)m 11(Backup)m 11(router)m 12(can)m 11(be)m 11(chosen)m 11(until)m 12(the)m 11(old)m 11(Backup)m 11(accepts)m 12(its)m 11(new)m 11(Designated)m 0 1445 p (Router)s 10(responsibilities.)m 0 1512 p (If)s 11(Router)m 11 r 88 c 10(is)m 11(not)m 11(itself)m 11(eligible)m 11(to)m 10(become)m 11(Designated)m 11(Router)m -1 r 44 c 10(it)m 11(is)m 11(possible)m 11(that)m 10(neither)m 11 r 97 c 11(Backup)m 11(Designated)m 11(Router)m 0 1562 p (nor)s 10 r 97 c 9(Designated)m 10(Router)m 10(will)m 9(be)m 10(selected)m 9(in)m 10(the)m 10(above)m 9(procedure.)m 14(Note)m 10(also)m 9(that)m 10(if)m 9(Router)m 10 r 88 c 10(is)m 9(the)m 10(only)m 10(attached)m 9(router)m 0 1611 p (that)s 13(is)m 13(eligible)m 13(to)m 12(become)m 13(Designated)m 13(Router)m -1 r 44 c 13(it)m 13(will)m 13(select)m 12(itself)m 13(as)m 13(Designated)m 13(Router)m 13(and)m 13(there)m 12(will)m 13(be)m 13(no)m 13(Backup)m 0 1661 p (Designated)s 10(Router)m 11(for)m 10(the)m 11(network.)m t-bol.360 @sf 0 1797 p (9.5)s 50(Sending)m 12(Hello)m 13(packets)m t-rom.300 @sf 0 1891 p (Hello)s 13(packets)m 12(are)m 13(sent)m 12(out)m 13(each)m 12(functioning)m 13(router)m 12(interface.)m 20(They)m 13(are)m 12(used)m 13(to)m 12(discover)m 13(and)m 12(maintain)m 13(neighbor)m 12(rela-)m 0 1941 p (tionships.)s t-rom.210 @sf 181 1926 p 54 c t-rom.300 @sf 219 1941 p (On)s 12(multi-access)m 13(networks,)m 13(hellos)m 13(are)m 12(also)m 13(used)m 13(to)m 12(elect)m 13(the)m 12(Designated)m 13(Router)m 13(and)m 12(Backup)m 13(Designated)m 0 1991 p (Router)s -1 r 44 c 10(and)m 10(in)m 11(that)m 10(way)m 10(determine)m 11(what)m 10(adjacencies)m 11(should)m 10(be)m 10(formed.)m 0 2058 p (The)s 8(format)m 8(of)m 8 r 97 c 8(Hello)m 8(packet)m 8(is)m 8(detailed)m 8(in)m 7(Section)m 8(A.3.2.)m 13(The)m 8(Hello)m 8(Packet)m 8(contains)m 8(the)m 8(router)m 2 r 39 c -2 r 115 c t-bol.300 @sf 7(Router)m 8(Priority)m t-rom.300 @sf 8(\(used)m 0 2108 p (in)s 9(choosing)m 8(the)m 9(Designated)m 8(Router\),)m 9(and)m 9(the)m 8(interval)m 9(between)m 8(Hello)m 9(broadcasts)m 8 r 40 c t-bol.300 @sf (HelloInterval)s t-rom.300 @sf (\).)s 14(The)m 8(Hello)m 9(Packet)m 8(also)m 0 2158 p (indicates)s 11(how)m 11(often)m 12 r 97 c 11(neighbor)m 11(must)m 11(be)m 12(heard)m 11(from)m 11(to)m 11(remain)m 12(active)m 11 r 40 c t-bol.300 @sf (RouterDeadInterval)s t-rom.300 @sf (\).)s 16(Both)m 12(HelloInterval)m 11(and)m 0 2207 p (RouterDeadInterval)s 12(must)m 11(be)m 12(the)m 11(same)m 12(for)m 11(all)m 12(routers)m 11(attached)m 12(to)m 11 r 97 c 12(common)m 11(network.)m 17(The)m 12(Hello)m 11(packet)m 12(also)m 12(contains)m 0 2242 p 780 2 ru t-rom.180 @sf 45 2270 p 53 c t-rom.240 @sf 60 2282 p (It)s 10(is)m 10(instructive)m 10(to)m 10(see)m 10(what)m 9(happens)m 10(when)m 10(the)m 10(Designated)m 10(Router)m 10(for)m 10(the)m 10(network)m 10(crashes.)m 15(Call)m 10(the)m 10(Designated)m 10(Router)m 10(for)m 10(the)m 10(network)m 10 r 82 c -1(T1,)m 0 2321 p (and)s 10(the)m 10(the)m 10(Backup)m 10(Designated)m 10(Router)m 10 r 82 c -1(T2.)m 15(If)m 10(router)m 10 r 82 c -1(T1)m 8(crashes)m 10(\(or)m 10(maybe)m 10(its)m 10(interface)m 10(to)m 10(the)m 10(network)m 10(dies\),)m 10(the)m 10(other)m 10(routers)m 10(on)m 10(the)m 10(network)m 0 2361 p (will)s 10(detect)m 10 r 82 c -1(T1')m -1 r 115 c 9(absence)m 10(within)m 10(RouterDeadInterval)m 10(seconds.)m 17(All)m 10(routers)m 11(may)m 10(not)m 10(detect)m 10(this)m 10(at)m 11(precisely)m 10(the)m 10(same)m 10(time;)m 11(the)m 10(routers)m 11(that)m 10(detect)m 0 2400 p 82 c -1(T1')m -2 r 115 c 8(absence)m 9(before)m 9 r 82 c -1(T2)m 8(does)m 9(will,)m 10(for)m 9 r 97 c 9(time,)m 9(select)m 9 r 82 c -1(T2)m 8(to)m 9(be)m 9(both)m 9(Designated)m 9(Router)m 9(and)m 9(Backup)m 10(Designated)m 9(Router)m -1 r 46 c 12(When)m 9 r 82 c -1(T2)m 8(detects)m 9(that)m 0 2440 p 82 c -1(T1)m 8(is)m 9(gone)m 9(it)m 8(will)m 9(move)m 9(itself)m 9(to)m 9(Designated)m 9(Router)m -1 r 46 c 12(At)m 9(this)m 8(time,)m 9(the)m 9(remaining)m 9(router)m 9(having)m 9(highest)m 9(Router)m 9(Priority)m 9(will)m 8(be)m 9(selected)m 9(as)m 9(Backup)m 0 2479 p (Designated)s 8(Router)m -1 r 46 c t-rom.180 @sf 45 2508 p 54 c t-rom.240 @sf 60 2520 p (On)s 10(point-to-point)m 10(networks,)m 11(the)m 10(lower)m 10(level)m 10(protocols)m 10(indicate)m 10(whether)m 10(the)m 10(neighbor)m 10(is)m 10(up)m 10(and)m 11(running.)m 16(Likewise,)m 10(existence)m 10(of)m 11(the)m 10(neighbor)m 0 2559 p (on)s 12(virtual)m 11(links)m 12(is)m 12(indicated)m 12(by)m 11(the)m 12(routing)m 12(table)m 11(calculation.)m 22(However)m -1 r 44 c 12(in)m 12(both)m 11(these)m 12(cases,)m 13(the)m 11(Hello)m 12(Protocol)m 12(is)m 12(still)m 11(used.)m 22(This)m 11(ensures)m 12(that)m 0 2599 p (communication)s 8(between)m 9(the)m 8(neighbors)m 8(is)m 9(bidirectional,)m 8(and)m 8(that)m 9(each)m 8(of)m 8(the)m 9(neighbors)m 8(has)m 8 r 97 c 9(functioning)m 8(routing)m 8(protocol)m 9(layer)m -1 r 46 c t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(38])m @eop 37 @bop0 37 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 123 195 p (New)s 10(state:)m t-bol.300 @sf 75(Down)m t-rom.300 @sf 175 253 p (Action:)s 75(All)m 10(interface)m 10(variables)m 10(are)m 10(reset,)m 10(and)m 10(interface)m 10(timers)m 10(disabled.)m 13(Also,)m 10(all)m 10(neighbor)m 10(con-)m 375 303 p (nections)s 13(associated)m 14(with)m 13(the)m 13(interface)m 14(are)m 13(destroyed.)m 23(This)m 13(is)m 13(done)m 14(by)m 13(generating)m 13(the)m 375 353 p (event)s t-bol.300 @sf 10(KillNbr)m t-rom.300 @sf 11(on)m 10(all)m 11(associated)m 10(neighbors)m 10(\(see)m 11(Section)m 10(10.2\).)m 161 453 p (State\(s\):)s 75(Any)m 11(State)m 191 511 p (Event:)s t-bol.300 @sf 75(Loop)m 11(Ind)m t-rom.300 @sf 123 569 p (New)s 10(state:)m t-bol.300 @sf 75(Loopback)m t-rom.300 @sf 175 627 p (Action:)s 75(Since)m 11(this)m 10(interface)m 11(is)m 11(no)m 10(longer)m 11(connected)m 10(to)m 11(the)m 11(attached)m 10(network)m 11(the)m 11(actions)m 10(associ-)m 375 677 p (ated)s 10(with)m 11(the)m 10(above)m t-bol.300 @sf 11(Interface)m 10(Down)m t-rom.300 @sf 10(event)m 11(are)m 10(executed.)m 161 777 p (State\(s\):)s t-bol.300 @sf 75(Loopback)m t-rom.300 @sf 191 835 p (Event:)s t-bol.300 @sf 75(Unloop)m 11(Ind)m t-rom.300 @sf 123 893 p (New)s 10(state:)m t-bol.300 @sf 75(Down)m t-rom.300 @sf 175 951 p (Action:)s 75(No)m 10(actions)m 9(are)m 10(necessary)m -2 r 46 c 13(For)m 10(example,)m 10(the)m 9(interface)m 10(variables)m 10(have)m 9(already)m 10(been)m 10(reset)m 375 1001 p (upon)s 13(entering)m 14(the)m t-bol.300 @sf 13(Loopback)m t-rom.300 @sf 13(state.)m 23(Note)m 14(that)m 13(reception)m 13(of)m 14(an)m t-bol.300 @sf 13(Interface)m 14(Up)m t-rom.300 @sf 13(event)m 13(is)m 375 1051 p (necessary)s 10(before)m 11(the)m 10(interface)m 11(again)m 10(becomes)m 10(fully)m 11(functional.)m t-bol.360 @sf 0 1184 p (9.4)s 50(Electing)m 12(the)m 13(Designated)m 12(Router)m t-rom.300 @sf 0 1277 p (This)s 16(section)m 16(describes)m 16(the)m 16(algorithm)m 16(used)m 16(for)m 16(calculating)m 16 r 97 c 16(network')m -2 r 115 c 15(Designated)m 16(Router)m 16(and)m 16(Backup)m 16(Designated)m 0 1326 p (Router)s -1 r 46 c 23(This)m 13(algorithm)m 14(is)m 14(invoked)m 13(by)m 14(the)m 14(Interface)m 14(state)m 13(machine.)m 24(The)m 14(initial)m 14(time)m 13 r 97 c 14(router)m 14(runs)m 14(the)m 13(election)m 14(algo-)m 0 1376 p (rithm)s 12(for)m 11 r 97 c 12(network,)m 12(the)m 11(network')m -1 r 115 c 11(Designated)m 11(Router)m 12(and)m 12(Backup)m 11(Designated)m 12(Router)m 11(are)m 12(initialized)m 12(to)m 11(0.0.0.0.)m 18(This)m 0 1426 p (indicates)s 10(the)m 11(lack)m 10(of)m 11(both)m 10 r 97 c 10(Designated)m 11(Router)m 10(and)m 11 r 97 c 10(Backup)m 11(Designated)m 10(Router)m -1 r 46 c 0 1491 p (The)s 9(Designated)m 8(Router)m 9(election)m 9(algorithm)m 9(proceeds)m 8(as)m 9(follows:)m 13(Call)m 9(the)m 9(router)m 8(doing)m 9(the)m 9(calculation)m 9(Router)m 8(X.)m 9(The)m 9(list)m 0 1541 p (of)s 10(neighbors)m 9(attached)m 10(to)m 10(the)m 10(network)m 9(and)m 10(having)m 10(established)m 10(bidirectional)m 9(communication)m 10(with)m 10(Router)m 9 r 88 c 10(is)m 10(examined.)m 0 1590 p (This)s 12(list)m 12(is)m 12(precisely)m 12(the)m 12(collection)m 12(of)m 12(Router)m 12(X')m -1 r 115 c 11(neighbors)m 11(\(on)m 12(this)m 12(network\))m 12(whose)m 12(state)m 12(is)m 12(greater)m 12(than)m 12(or)m 12(equal)m 12(to)m t-bol.300 @sf 0 1640 p (2-W)s -1(ay)m t-rom.300 @sf 11(\(see)m 13(Section)m 13(10.1\).)m 21(Router)m 13 r 88 c 13(itself)m 12(is)m 13(also)m 13(considered)m 13(to)m 12(be)m 13(on)m 13(the)m 13(list.)m 21(Discard)m 12(all)m 13(routers)m 13(from)m 13(the)m 13(list)m 12(that)m 0 1690 p (are)s 10(ineligible)m 9(to)m 10(become)m 10(Designated)m 10(Router)m -2 r 46 c 13(\(Routers)m 10(having)m 10(Router)m 9(Priority)m 10(of)m 10 r 48 c 10(are)m 9(ineligible)m 10(to)m 10(become)m 9(Designated)m 0 1740 p (Router.\))s 14(The)m 10(following)m 11(steps)m 10(are)m 11(then)m 10(executed,)m 10(considering)m 11(only)m 10(those)m 11(routers)m 10(that)m 10(remain)m 11(on)m 10(the)m 11(list:)m 52 1840 p (1.)s 21(Note)m 10(the)m 11(current)m 11(values)m 11(for)m 10(the)m 11(network')m -1 r 115 c 10(Designated)m 10(Router)m 11(and)m 11(Backup)m 11(Designated)m 10(Router)m -1 r 46 c 14(This)m 11(is)m 11(used)m 10(later)m 104 1890 p (for)s 10(comparison)m 11(purposes.)m 52 1970 p (2.)s 21(Calculate)m 13(the)m 14(new)m 13(Backup)m 14(Designated)m 14(Router)m 13(for)m 14(the)m 13(network)m 14(as)m 14(follows.)m 23(Only)m 14(those)m 13(routers)m 14(on)m 13(the)m 14(list)m 14(that)m 104 2020 p (have)s 9(not)m 9(declared)m 10(themselves)m 9(to)m 9(be)m 10(Designated)m 9(Router)m 9(are)m 10(eligible)m 9(to)m 9(become)m 10(Backup)m 9(Designated)m 9(Router)m -1 r 46 c 12(If)m 10(one)m 104 2070 p (or)s 13(more)m 14(of)m 13(these)m 14(routers)m 14(have)m 13(declared)m 14(themselves)m 13(Backup)m 14(Designated)m 13(Router)m 14(\(i.e.,)m 14(they)m 14(are)m 13(currently)m 14(listing)m 104 2120 p (themselves)s 10(as)m 11(Backup)m 11(Designated)m 11(Router)m -1 r 44 c 10(but)m 10(not)m 11(as)m 11(Designated)m 11(Router)m -1 r 44 c 10(in)m 10(their)m 11(Hello)m 11(Packets\))m 11(the)m 10(one)m 11(having)m 104 2169 p (highest)s 10(Router)m 11(Priority)m 10(is)m 10(declared)m 11(to)m 10(be)m 10(Backup)m 11(Designated)m 10(Router)m -1 r 46 c 13(In)m 10(case)m 10(of)m 11 r 97 c 10(tie,)m 11(the)m 10(one)m 10(having)m 11(the)m 10(highest)m 104 2219 p (Router)s 7(ID)m 8(is)m 8(chosen.)m 13(If)m 7(no)m 8(routers)m 8(have)m 7(declared)m 8(themselves)m 8(Backup)m 7(Designated)m 8(Router)m -1 r 44 c 8(choose)m 7(the)m 8(router)m 7(having)m 104 2269 p (highest)s 11(Router)m 11(Priority)m -2 r 44 c 10(\(again)m 11(excluding)m 11(those)m 11(routers)m 11(who)m 11(have)m 11(declared)m 11(themselves)m 11(Designated)m 11(Router\),)m 11(and)m 104 2319 p (again)s 10(use)m 11(the)m 10(Router)m 10(ID)m 11(to)m 10(break)m 11(ties.)m 52 2399 p (3.)s 21(Calculate)m 12(the)m 12(new)m 13(Designated)m 12(Router)m 13(for)m 12(the)m 13(network)m 12(as)m 13(follows.)m 20(If)m 12(one)m 13(or)m 12(more)m 13(of)m 12(the)m 13(routers)m 12(have)m 13(declared)m 104 2449 p (themselves)s 13(Designated)m 13(Router)m 13(\(i.e.,)m 14(they)m 14(are)m 13(currently)m 13(listing)m 13(themselves)m 13(as)m 14(Designated)m 13(Router)m 13(in)m 13(their)m 13(Hello)m 104 2499 p (Packets\))s 12(the)m 13(one)m 12(having)m 13(highest)m 13(Router)m 12(Priority)m 13(is)m 12(declared)m 13(to)m 12(be)m 13(Designated)m 13(Router)m -2 r 46 c 20(In)m 12(case)m 13(of)m 12 r 97 c 13(tie,)m 13(the)m 12(one)m 104 2549 p (having)s 10(the)m 9(highest)m 10(Router)m 10(ID)m 10(is)m 10(chosen.)m 13(If)m 10(no)m 10(routers)m 10(have)m 9(declared)m 10(themselves)m 10(Designated)m 10(Router)m -1 r 44 c 9(promote)m 10(the)m 104 2599 p (new)s 10(Backup)m 11(Designated)m 10(Router)m 10(to)m 11(Designated)m 10(Router)m -1 r 46 c 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(37])m @eop 36 @bop0 36 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (machine)s 12(below)m 12(is)m 11(or)m (ganized)s 12(by)m 11(current)m 12(interface)m 12(state)m 12(and)m 12(received)m 11(event.)m 18(Each)m 12(entry)m 12(in)m 12(the)m 12(state)m 12(machine)m 11(describes)m 0 245 p (the)s 10(resulting)m 11(new)m 10(interface)m 11(state)m 10(and)m 10(the)m 11(required)m 10(set)m 11(of)m 10(additional)m 11(actions.)m 0 313 p (When)s 9(an)m 9(interface')m -1 r 115 c 8(state)m 9(changes,)m 10(it)m 9(may)m 9(be)m 9(necessary)m 9(to)m 9(originate)m 10 r 97 c 9(new)m 9(router)m 9(links)m 9(advertisement.)m 14(See)m 9(Section)m 9(12.4)m 0 362 p (for)s 10(more)m 11(details.)m 0 430 p (Some)s 11(of)m 11(the)m 11(required)m 10(actions)m 11(below)m 11(involve)m 11(generating)m 11(events)m 11(for)m 10(the)m 11(neighbor)m 11(state)m 11(machine.)m 15(For)m 11(example,)m 11(when)m 11(an)m 0 480 p (interface)s 13(becomes)m 13(inoperative,)m 14(all)m 13(neighbor)m 13(connections)m 13(associated)m 14(with)m 13(the)m 13(interface)m 13(must)m 13(be)m 13(destroyed.)m 22(For)m 13(more)m 0 530 p (information)s 10(on)m 11(the)m 10(neighbor)m 11(state)m 10(machine,)m 10(see)m 11(Section)m 10(10.3.)m 161 639 p (State\(s\):)s t-bol.300 @sf 75(Down)m t-rom.300 @sf 191 697 p (Event:)s t-bol.300 @sf 75(Interface)m 11(Up)m t-rom.300 @sf 123 755 p (New)s 10(state:)m 75(Depends)m 11(on)m 10(action)m 11(routine)m 175 813 p (Action:)s 75(Start)m 10(the)m 11(interval)m t-bol.300 @sf 10(Hello)m 11 r 84 c (imer)s t-rom.300 @sf 44 c 9(enabling)m 11(the)m 10(periodic)m 11(sending)m 10(of)m 10(Hello)m 11(packets)m 10(out)m 11(the)m 375 863 p (interface.)s 17(If)m 11(the)m 12(attached)m 11(network)m 12(is)m 11 r 97 c 12(physical)m 11(point-to-point)m 11(network)m 12(or)m 11(virtual)m 12(link,)m 375 913 p (the)s 14(interface)m 13(state)m 14(transitions)m 13(to)m t-bol.300 @sf 14(Point-to-Point)m t-rom.300 @sf 46 c 23(Else,)m 14(if)m 14(the)m 13(router)m 14(is)m 14(not)m 13(eligible)m 14(to)m 375 963 p (become)s 10(Designated)m 11(Router)m 10(the)m 11(interface)m 10(state)m 10(transitions)m 11(to)m t-bol.300 @sf 10(DR)m 11(other)m t-rom.300 @sf 46 c 375 1021 p (Otherwise,)s 14(the)m 12(attached)m 13(network)m 13(is)m 13(multi-access)m 13(and)m 13(the)m 13(router)m 13(is)m 13(eligible)m 13(to)m 13(become)m 375 1071 p (Designated)s 10(Router)m -1 r 46 c 13(In)m 10(this)m 10(case,)m 10(in)m 10(an)m 11(attempt)m 10(to)m 10(discover)m 10(the)m 10(attached)m 10(network')m -1 r 115 c 9(Des-)m 375 1120 p (ignated)s 14(Router)m 13(the)m 14(interface)m 14(state)m 14(is)m 13(set)m 14(to)m t-bol.300 @sf 14 r 87 c -2(aiting)m t-rom.300 @sf 13(and)m 14(the)m 14(single)m 13(shot)m t-bol.300 @sf 14 r 87 c -1(ait)m 12 r 84 c (imer)s t-rom.300 @sf 375 1170 p (is)s 13(started.)m 22(If)m 14(in)m 13(addition)m 13(the)m 13(attached)m 14(network)m 13(is)m 13(non-broadcast,)m 14(examine)m 13(the)m 13(con\014g-)m 375 1220 p (ured)s 10(list)m 10(of)m 10(neighbors)m 10(for)m 10(this)m 10(interface)m 10(and)m 10(generate)m 10(the)m 10(neighbor)m 11(event)m t-bol.300 @sf 10(Start)m t-rom.300 @sf 10(for)m 10(each)m 375 1270 p (neighbor)s 10(that)m 11(is)m 10(also)m 11(eligible)m 10(to)m 10(become)m 11(Designated)m 10(Router)m -1 r 46 c 161 1379 p (State\(s\):)s t-bol.300 @sf 75 r 87 c -1(aiting)m t-rom.300 @sf 191 1437 p (Event:)s t-bol.300 @sf 75(Backup)m 11(Seen)m t-rom.300 @sf 123 1495 p (New)s 10(state:)m 75(Depends)m 11(upon)m 10(action)m 11(routine.)m 175 1553 p (Action:)s 75(Calculate)m 13(the)m 13(attached)m 13(network')m -2 r 115 c 12(Backup)m 13(Designated)m 13(Router)m 13(and)m 12(Designated)m 13(Router)m 44 c 375 1603 p (as)s 11(shown)m 12(in)m 11(Section)m 12(9.4.)m 16(As)m 12 r 97 c 11(result)m 12(of)m 11(this)m 11(calculation,)m 12(the)m 11(new)m 12(state)m 11(of)m 12(the)m 11(interface)m 375 1653 p (will)s 10(be)m 11(either)m t-bol.300 @sf 10(DR)m 11(other)m t-rom.300 @sf 44 c t-bol.300 @sf 10(Backup)m t-rom.300 @sf 10(or)m t-bol.300 @sf 11(DR)m t-rom.300 @sf 46 c 161 1762 p (State\(s\):)s t-bol.300 @sf 75 r 87 c -1(aiting)m t-rom.300 @sf 191 1820 p (Event:)s t-bol.300 @sf 75 r 87 c -1(ait)m 9 r 84 c (imer)s t-rom.300 @sf 123 1878 p (New)s 10(state:)m 75(Depends)m 11(upon)m 10(action)m 11(routine.)m 175 1937 p (Action:)s 75(Calculate)m 13(the)m 13(attached)m 13(network')m -2 r 115 c 12(Backup)m 13(Designated)m 13(Router)m 13(and)m 12(Designated)m 13(Router)m 44 c 375 1986 p (as)s 11(shown)m 12(in)m 11(Section)m 12(9.4.)m 16(As)m 12 r 97 c 11(result)m 12(of)m 11(this)m 11(calculation,)m 12(the)m 11(new)m 12(state)m 11(of)m 12(the)m 11(interface)m 375 2036 p (will)s 10(be)m 11(either)m t-bol.300 @sf 10(DR)m 11(other)m t-rom.300 @sf 44 c t-bol.300 @sf 10(Backup)m t-rom.300 @sf 10(or)m t-bol.300 @sf 11(DR)m t-rom.300 @sf 46 c 161 2145 p (State\(s\):)s t-bol.300 @sf 75(DR)m 11(Other)m t-rom.300 @sf 44 c t-bol.300 @sf 10(Backup)m t-rom.300 @sf 10(or)m t-bol.300 @sf 11(DR)m t-rom.300 @sf 191 2203 p (Event:)s t-bol.300 @sf 75(Neighbor)m 11(Change)m t-rom.300 @sf 123 2262 p (New)s 10(state:)m 75(Depends)m 11(upon)m 10(action)m 11(routine.)m 175 2320 p (Action:)s 75(Recalculate)m 9(the)m 8(attached)m 9(network')m -1 r 115 c 8(Backup)m 8(Designated)m 9(Router)m 9(and)m 9(Designated)m 8(Router)m 44 c 375 2370 p (as)s 11(shown)m 12(in)m 11(Section)m 12(9.4.)m 16(As)m 12 r 97 c 11(result)m 12(of)m 11(this)m 11(calculation,)m 12(the)m 11(new)m 12(state)m 11(of)m 12(the)m 11(interface)m 375 2419 p (will)s 10(be)m 11(either)m t-bol.300 @sf 10(DR)m 11(other)m t-rom.300 @sf 44 c t-bol.300 @sf 10(Backup)m t-rom.300 @sf 10(or)m t-bol.300 @sf 11(DR)m t-rom.300 @sf 46 c 161 2529 p (State\(s\):)s 75(Any)m 11(State)m 191 2587 p (Event:)s t-bol.300 @sf 75(Interface)m 11(Down)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(36])m @eop 35 @bop0 35 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (9.2)s 50(Events)m 12(causing)m 13(interface)m 12(state)m 13(changes)m t-rom.300 @sf 0 291 p (State)s 11(changes)m 10(can)m 11(be)m 10(ef)m (fected)s 10(by)m 10 r 97 c 11(number)m 10(of)m 11(events.)m 14(These)m 11(events)m 10(are)m 11(pictured)m 10(as)m 11(the)m 10(labelled)m 11(arcs)m 10(in)m 11(Figure)m 10 r 49 c (1.)s 13(The)m 0 341 p (label)s 10(de\014nitions)m 10(are)m 10(listed)m 10(below)m -1 r 46 c 12(For)m 10 r 97 c 11(detailed)m 10(explanation)m 10(of)m 10(the)m 10(ef)m (fect)s 9(of)m 10(these)m 10(events)m 10(on)m 11(OSPF)m 10(protocol)m 10(operation,)m 0 390 p (consult)s 10(Section)m 11(9.3.)m t-bol.300 @sf 0 500 p (Interface)s 10(Up)m t-rom.300 @sf 21(Lower)m (-level)s 6(protocols)m 7(have)m 7(indicated)m 7(that)m 8(the)m 7(network)m 7(interface)m 7(is)m 7(operational.)m 12(This)m 8(enables)m 7(the)m 7(interface)m 104 549 p (to)s 12(transition)m 12(out)m 12(of)m 11(Down)m 12(state.)m 19(On)m 12(virtual)m 12(links,)m 12(the)m 12(interface)m 12(operational)m 12(indication)m 12(is)m 12(actually)m 11 r 97 c 12(result)m 12(of)m 12(the)m 104 599 p (shortest)s 10(path)m 11(calculation)m 10(\(see)m 10(Section)m 11(16.7\).)m t-bol.300 @sf 0 682 p 87 c -1(ait)m 9 r 84 c (imer)s t-rom.300 @sf 20(The)m 16 r 87 c -2(ait)m 14(timer)m 16(has)m 16(\014red,)m 17(indicating)m 16(the)m 15(end)m 16(of)m 16(the)m 16(waiting)m 16(period)m 15(that)m 16(is)m 16(required)m 16(before)m 15(electing)m 16 r 97 c 104 732 p (\(Backup\))s 10(Designated)m 11(Router)m -2 r 46 c t-bol.300 @sf 0 815 p (Backup)s 10(seen)m t-rom.300 @sf 21(The)m 10(router)m 10(has)m 10(detected)m 9(the)m 10(existence)m 10(or)m 10(non-existence)m 10(of)m 10 r 97 c 9(Backup)m 10(Designated)m 10(Router)m 10(for)m 10(the)m 9(network.)m 104 865 p (This)s 12(is)m 13(done)m 12(in)m 12(one)m 13(of)m 12(two)m 12(ways.)m 20(First,)m 13 r 97 c 12(Hello)m 13(Packet)m 12(may)m 13(be)m 12(received)m 12(from)m 13 r 97 c 12(neighbor)m 12(claiming)m 13(to)m 12(be)m 13(itself)m 104 915 p (the)s 11(Backup)m 12(Designated)m 12(Router)m -2 r 46 c 17(Alternatively)m -2 r 44 c 11 r 97 c 12(Hello)m 11(Packet)m 12(may)m 11(be)m 12(received)m 12(from)m 11 r 97 c 12(neighbor)m 11(claiming)m 12(to)m 12(be)m 104 965 p (itself)s 12(the)m 11(Designated)m 12(Router)m -1 r 44 c 12(and)m 11(indicating)m 12(that)m 12(there)m 12(is)m 12(no)m 11(Backup.)m 18(In)m 12(either)m 12(case)m 12(there)m 12(must)m 11(be)m 12(bidirectional)m 104 1014 p (communication)s 12(with)m 11(the)m 12(neighbor)m -1 r 44 c 11(i.e.,)m 13(the)m 11(router)m 12(must)m 12(also)m 12(appear)m 11(in)m 12(the)m 12(neighbor)m 1 r 39 c -1 r 115 c 11(Hello)m 12(Packet.)m 18(This)m 11(event)m 104 1064 p (signals)s 10(an)m 11(end)m 10(to)m 10(the)m 11 r 87 c -2(aiting)m 9(state.)m t-bol.300 @sf 0 1147 p (Neighbor)s 10(Change)m t-rom.300 @sf 21(There)m 12(has)m 13(been)m 12 r 97 c 12(change)m 13(in)m 12(the)m 12(set)m 12(of)m 13(bidirectional)m 12(neighbors)m 12(associated)m 12(with)m 13(the)m 12(interface.)m 19(The)m 104 1197 p (\(Backup\))s 12(Designated)m 13(Router)m 12(needs)m 13(to)m 13(be)m 12(recalculated.)m 20(The)m 13(following)m 12(neighbor)m 13(changes)m 13(lead)m 12(to)m 13(the)m t-bol.300 @sf 12(Neighbor)m 104 1247 p (Change)s t-rom.300 @sf 10(event.)m 14(For)m 10(an)m 11(explanation)m 10(of)m 11(neighbor)m 10(states,)m 11(see)m 10(Section)m 10(10.1.)m cmsy10.300 @sf 154 1338 p 15 c t-rom.300 @sf 20(Bidirectional)m 11(communication)m 10(has)m 10(been)m 10(established)m 11(to)m 10 r 97 c 10(neighbor)m -1 r 46 c 13(In)m 10(other)m 10(words,)m 11(the)m 10(state)m 10(of)m 11(the)m 10(neighbor)m 195 1388 p (has)s 11(transitioned)m 10(to)m t-bol.300 @sf 10(2-W)m -1(ay)m t-rom.300 @sf 9(or)m 11(higher)m -1 r 46 c cmsy10.300 @sf 154 1454 p 15 c t-rom.300 @sf 20(There)m 11(is)m 10(no)m 10(longer)m 11(bidirectional)m 10(communication)m 11(with)m 10 r 97 c 10(neighbor)m -1 r 46 c 13(In)m 10(other)m 11(words,)m 10(the)m 10(state)m 11(of)m 10(the)m 11(neighbor)m 195 1504 p (has)s 11(transitioned)m 10(to)m t-bol.300 @sf 10(Init)m t-rom.300 @sf 11(or)m 10(lower)m -1 r 46 c cmsy10.300 @sf 154 1571 p 15 c t-rom.300 @sf 20(One)m 11(of)m 10(the)m 10(bidirectional)m 10(neighbors)m 10(is)m 11(newly)m 10(declaring)m 10(itself)m 10(as)m 11(either)m 10(Designated)m 10(Router)m 10(or)m 10(Backup)m 11(Desig-)m 195 1620 p (nated)s 11(Router)m -2 r 46 c 13(This)m 11(is)m 10(detected)m 10(through)m 11(examination)m 10(of)m 11(that)m 10(neighbor)m 2 r 39 c -2 r 115 c 10(Hello)m 10(Packets.)m cmsy10.300 @sf 154 1687 p 15 c t-rom.300 @sf 20(One)m 9(of)m 8(the)m 8(bidirectional)m 8(neighbors)m 8(is)m 9(no)m 8(longer)m 8(declaring)m 8(itself)m 8(as)m 9(Designated)m 8(Router)m -1 r 44 c 8(or)m 8(is)m 8(no)m 8(longer)m 9(declar-)m 195 1737 p (ing)s 7(itself)m 7(as)m 8(Backup)m 7(Designated)m 7(Router)m -1 r 46 c 12(This)m 7(is)m 7(again)m 7(detected)m 7(through)m 8(examination)m 7(of)m 7(that)m 7(neighbor)m 2 r 39 c -2 r 115 c 7(Hello)m 195 1786 p (Packets.)s cmsy10.300 @sf 154 1853 p 15 c t-rom.300 @sf 20(The)m 12(advertised)m t-bol.300 @sf 11(Router)m 11(Priority)m t-rom.300 @sf 11(for)m 11 r 97 c 11(bidirectional)m 12(neighbor)m 11(has)m 11(changed.)m 16(This)m 11(is)m 12(again)m 11(detected)m 11(through)m 195 1903 p (examination)s 11(of)m 10(that)m 10(neighbor)m 2 r 39 c -1 r 115 c 9(Hello)m 10(Packets.)m t-bol.300 @sf 0 1994 p (Loop)s 10(Ind)m t-rom.300 @sf 21(An)m 15(indication)m 14(has)m 14(been)m 15(received)m 14(that)m 14(the)m 15(interface)m 14(is)m 15(now)m 14(looped)m 14(back)m 15(to)m 14(itself.)m 26(This)m 14(indication)m 15(can)m 14(be)m 104 2044 p (received)s 10(either)m 11(from)m 10(network)m 10(management)m 11(or)m 10(from)m 11(the)m 10(lower)m 11(level)m 10(protocols.)m t-bol.300 @sf 0 2127 p (Unloop)s 10(Ind)m t-rom.300 @sf 21(An)m 9(indication)m 9(has)m 10(been)m 9(received)m 9(that)m 9(the)m 9(interface)m 9(is)m 10(no)m 9(longer)m 9(looped)m 9(back.)m 13(As)m 10(with)m 9(the)m t-bol.300 @sf 9(Loop)m 9(Ind)m t-rom.300 @sf 9(event,)m 104 2177 p (this)s 10(indication)m 11(can)m 10(be)m 10(received)m 11(either)m 10(from)m 11(network)m 10(management)m 11(or)m 10(from)m 10(the)m 11(lower)m 10(level)m 11(protocols.)m t-bol.300 @sf 0 2260 p (Interface)s 10(Down)m t-rom.300 @sf 21(Lower)m (-level)s 8(protocols)m 10(indicate)m 9(that)m 9(this)m 9(interface)m 9(is)m 9(no)m 9(longer)m 9(functional.)m 14(No)m 9(matter)m 9(what)m 9(the)m 9(current)m 104 2309 p (interface)s 10(state)m 11(is,)m 10(the)m 10(new)m 11(interface)m 10(state)m 11(will)m 10(be)m 11(Down.)m t-bol.360 @sf 0 2446 p (9.3)s 50(The)m 12(Interface)m 13(state)m 12(machine)m t-rom.300 @sf 0 2542 p 65 c 11(detailed)m 11(description)m 10(of)m 11(the)m 11(interface)m 11(state)m 11(changes)m 11(follows.)m 15(Each)m 11(state)m 10(change)m 11(is)m 11(invoked)m 11(by)m 11(an)m 11(event)m 10(\(Section)m 11(9.2\).)m 0 2592 p (This)s 13(event)m 14(may)m 13(produce)m 13(dif)m (ferent)s 13(ef)m (fects,)s 13(depending)m 13(on)m 13(the)m 14(current)m 13(state)m 13(of)m 13(the)m 14(interface.)m 22(For)m 13(this)m 14(reason,)m 14(the)m 13(state)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(35])m @eop 34 @bop0 34 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 104 195 p (if)s 12(the)m 11(authentication)m 12(type)m 12(indicates)m 12(simple)m 12(password,)m 12(the)m 12(authentication)m 12(key)m 12(would)m 11(be)m 12 r 97 c 12(64-bit)m 12(password.)m 18(This)m 104 245 p (key)s 9(would)m 10(be)m 9(inserted)m 10(directly)m 10(into)m 9(the)m 10(OSPF)m 9(header)m 10(when)m 9(originating)m 10(routing)m 10(protocol)m 9(packets,)m 10(and)m 9(there)m 10(could)m 104 295 p (be)s 10 r 97 c 11(separate)m 10(password)m 10(for)m 11(each)m 10(network.)m t-bol.360 @sf 0 425 p (9.1)s 50(Interface)m 12(states)m t-rom.300 @sf 0 516 p (The)s 15(various)m 14(states)m 15(that)m 15(router)m 15(interface)m 14(may)m 15(attain)m 15(is)m 14(documented)m 15(in)m 15(this)m 15(section.)m 26(The)m 15(states)m 15(are)m 15(listed)m 14(in)m 15(order)m 15(of)m 0 565 p (progressing)s 13(functionality)m -1 r 46 c 21(For)m 13(example,)m 14(the)m 13(inoperative)m 14(state)m 13(is)m 13(listed)m 13(\014rst,)m 14(followed)m 14(by)m 13 r 97 c 13(list)m 13(of)m 14(intermediate)m 13(states)m 0 615 p (before)s 10(the)m 11(\014nal,)m 10(fully)m 10(functional)m 11(state)m 10(is)m 10(achieved.)m 14(The)m 11(speci\014cation)m 10(makes)m 10(use)m 11(of)m 10(this)m 10(ordering)m 11(by)m 10(sometimes)m 10(making)m 0 665 p (references)s 10(such)m 11(as)m 10(\\those)m 11(interfaces)m 10(in)m 10(state)m 11(greater)m 10(than)m 11(X".)m 0 728 p (Figure)s 13 r 49 c -1 r 49 c 12(shows)m 12(the)m 13(graph)m 13(of)m 12(interface)m 13(state)m 13(changes.)m 20(The)m 13(arcs)m 13(of)m 12(the)m 13(graph)m 13(are)m 12(labelled)m 13(with)m 13(the)m 12(event)m 13(causing)m 12(the)m 0 778 p (state)s 11(change.)m 15(These)m 11(events)m 11(are)m 11(documented)m 11(in)m 11(Section)m 11(9.2.)m 16(The)m 11(interface)m 11(state)m 11(machine)m 10(is)m 11(described)m 11(in)m 11(more)m 11(detail)m 11(in)m 0 828 p (Section)s 10(9.3.)m t-bol.300 @sf 0 921 p (Down)s t-rom.300 @sf 21(This)m 14(is)m 14(the)m 13(initial)m 14(interface)m 14(state.)m 25(In)m 13(this)m 14(state,)m 15(the)m 14(lower)m (-level)s 13(protocols)m 14(have)m 14(indicated)m 14(that)m 14(the)m 14(interface)m 13(is)m 104 971 p (unusable.)s 13(No)m 9(protocol)m 9(traf)m (\014c)s 8(at)m 9(all)m 9(will)m 8(be)m 9(sent)m 9(or)m 9(received)m 9(on)m 9(such)m 8 r 97 c 9(interface.)m 14(In)m 8(this)m 9(state,)m 9(interface)m 9(parameters)m 104 1021 p (should)s 10(be)m 11(set)m 11(to)m 10(their)m 11(initial)m 11(values.)m 14(All)m 11(interface)m 11(timers)m 10(should)m 11(be)m 11(disabled,)m 10(and)m 11(there)m 11(should)m 10(be)m 11(no)m 11(adjacencies)m 104 1070 p (associated)s 10(with)m 11(the)m 10(interface.)m t-bol.300 @sf 0 1149 p (Loopback)s t-rom.300 @sf 21(In)m 15(this)m 16(state,)m 17(the)m 15(router)m 2 r 39 c -1 r 115 c 14(interface)m 16(to)m 15(the)m 16(network)m 15(is)m 16(looped)m 16(back.)m 29(The)m 16(interface)m 15(may)m 16(be)m 15(looped)m 16(back)m 104 1199 p (in)s 14(hardware)m 14(or)m 14(software.)m 24(The)m 14(interface)m 14(will)m 14(be)m 14(unavailable)m 14(for)m 14(regular)m 14(data)m 14(traf)m (\014c.)s 24(However)m 44 c 13(it)m 14(may)m 14(still)m 14(be)m 104 1249 p (desirable)s 9(to)m 10(gain)m 9(information)m 9(on)m 10(the)m 9(quality)m 10(of)m 9(this)m 9(interface,)m 10(either)m 9(through)m 10(sending)m 9(ICMP)m 10(pings)m 9(to)m 9(the)m 10(interface)m 104 1298 p (or)s 12(through)m 12(something)m 12(like)m 12 r 97 c 12(bit)m 12(error)m 12(test.)m 18(For)m 12(this)m 12(reason,)m 13(IP)m 12(packets)m 12(may)m 12(still)m 12(be)m 12(addressed)m 12(to)m 12(an)m 12(interface)m 12(in)m 104 1348 p (Loopback)s 13(state.)m 22 r 84 c -2 r 111 c 12(facilitate)m 13(this,)m 14(such)m 13(interfaces)m 13(are)m 13(advertised)m 13(in)m 13(router)m 13(links)m 14(advertisements)m 13(as)m 13(single)m 13(host)m 104 1398 p (routes,)s 10(whose)m 11(destination)m 10(is)m 10(the)m 11(IP)m 10(interface)m 11(address.)m t-rom.210 @sf 989 1383 p 52 c t-bol.300 @sf 0 1477 p 87 c -1(aiting)m t-rom.300 @sf 19(In)m 11(this)m 11(state,)m 10(the)m 11(router)m 11(is)m 10(trying)m 11(to)m 10(determine)m 11(the)m 11(identity)m 10(of)m 11(the)m 10(Backup)m 11(Designated)m 11(Router)m 10(for)m 11(the)m 10(network.)m 104 1527 p 84 c -2 r 111 c 11(do)m 12(this,)m 13(the)m 12(router)m 13(monitors)m 12(the)m 12(Hellos)m 12(it)m 13(receives.)m 19(The)m 12(router)m 13(is)m 12(not)m 12(allowed)m 12(to)m 13(elect)m 12 r 97 c 12(Backup)m 12(Designated)m 104 1576 p (Router)s 13(nor)m 13(Designated)m 14(Router)m 13(until)m 14(it)m 13(transitions)m 13(out)m 14(of)m 13 r 87 c -2(aiting)m 12(state.)m 23(This)m 13(prevents)m 13(unnecessary)m 14(changes)m 13(of)m 104 1626 p (\(Backup\))s 10(Designated)m 11(Router)m -2 r 46 c t-bol.300 @sf 0 1705 p (Point-to-point)s t-rom.300 @sf 21(In)m 12(this)m 12(state,)m 12(the)m 12(interface)m 13(is)m 12(operational,)m 12(and)m 12(connects)m 12(either)m 12(to)m 12 r 97 c 12(physical)m 12(point-to-point)m 13(network)m 12(or)m 104 1755 p (to)s 10 r 97 c 11(virtual)m 10(link.)m 14(Upon)m 10(entering)m 11(this)m 10(state,)m 10(the)m 11(router)m 10(attempts)m 10(to)m 11(form)m 10(an)m 10(adjacency)m 11(with)m 10(the)m 11(neighboring)m 10(router)m -1 r 46 c 104 1804 p (Hellos)s 10(are)m 11(sent)m 10(to)m 10(the)m 11(neighbor)m 10(every)m 11(HelloInterval)m 10(seconds.)m t-bol.300 @sf 0 1883 p (DR)s 10(Other)m t-rom.300 @sf 21(The)m 10(interface)m 10(is)m 10(to)m 11 r 97 c 10(multi-access)m 10(network)m 10(on)m 10(which)m 10(another)m 10(router)m 10(has)m 10(been)m 10(selected)m 11(to)m 10(be)m 10(the)m 10(Designated)m 104 1933 p (Router)s -2 r 46 c 15(In)m 11(this)m 11(state,)m 11(the)m 11(router)m 11(itself)m 11(has)m 11(not)m 10(been)m 11(selected)m 11(Backup)m 11(Designated)m 11(Router)m 11(either)m -1 r 46 c 14(The)m 11(router)m 11(forms)m 104 1983 p (adjacencies)s 10(to)m 11(both)m 10(the)m 10(Designated)m 11(Router)m 10(and)m 11(the)m 10(Backup)m 11(Designated)m 10(Router)m 10(\(if)m 11(they)m 10(exist\).)m t-bol.300 @sf 0 2061 p (Backup)s t-rom.300 @sf 21(In)m 11(this)m 11(state,)m 11(the)m 11(router)m 11(itself)m 11(is)m 11(the)m 11(Backup)m 11(Designated)m 11(Router)m 11(on)m 11(the)m 11(attached)m 11(network.)m 15(It)m 11(will)m 11(be)m 11(promoted)m 104 2111 p (to)s 11(Designated)m 11(Router)m 11(when)m 11(the)m 11(present)m 12(Designated)m 11(Router)m 11(fails.)m 16(The)m 11(router)m 11(establishes)m 11(adjacencies)m 11(to)m 11(all)m 12(other)m 104 2161 p (routers)s 9(attached)m 10(to)m 9(the)m 9(network.)m 14(The)m 9(Backup)m 10(Designated)m 9(Router)m 9(performs)m 10(slightly)m 9(dif)m (ferent)s 9(functions)m 9(during)m 9(the)m 104 2211 p (Flooding)s 10(Procedure,)m 10(as)m 10(compared)m 10(to)m 10(the)m 10(Designated)m 10(Router)m 10(\(see)m 10(Section)m 10(13.3\).)m 13(See)m 10(Section)m 10(7.4)m 10(for)m 10(more)m 10(details)m 104 2260 p (on)s 10(the)m 11(functions)m 10(performed)m 10(by)m 11(the)m 10(Backup)m 11(Designated)m 10(Router)m -1 r 46 c t-bol.300 @sf 0 2339 p (DR)s t-rom.300 @sf 21(In)m 14(this)m 15(state,)m 16(this)m 14(router)m 15(itself)m 14(is)m 15(the)m 15(Designated)m 14(Router)m 15(on)m 15(the)m 14(attached)m 15(network.)m 26(Adjacencies)m 15(are)m 14(established)m 104 2389 p (to)s 12(all)m 13(other)m 13(routers)m 12(attached)m 13(to)m 13(the)m 12(network.)m 21(The)m 12(router)m 13(must)m 13(also)m 12(originate)m 13 r 97 c 13(network)m 12(links)m 13(advertisement)m 12(for)m 104 2439 p (the)s 12(network)m 12(node.)m 19(The)m 13(advertisement)m 12(will)m 12(contain)m 12(links)m 12(to)m 13(all)m 12(routers)m 12(\(including)m 12(the)m 13(Designated)m 12(Router)m 12(itself\))m 104 2488 p (attached)s 10(to)m 10(the)m 10(network.)m 14(See)m 10(Section)m 10(7.3)m 10(for)m 10(more)m 10(details)m 10(on)m 10(the)m 10(functions)m 10(performed)m 10(by)m 10(the)m 10(Designated)m 10(Router)m -1 r 46 c 0 2520 p 780 2 ru t-rom.180 @sf 45 2547 p 52 c t-rom.240 @sf 60 2559 p (Note)s 11(that)m 11(no)m 10(host)m 11(route)m 11(is)m 11(generated)m 11(for)m -1 r 44 c 11(and)m 10(no)m 11(IP)m 11(packets)m 11(can)m 11(be)m 10(addressed)m 11(to,)m 12(interfaces)m 10(to)m 11(unnumbered)m 11(point-to-point)m 11(networks.)m 18(This)m 11(is)m 0 2599 p (regardless)s 8(of)m 9(such)m 8(an)m 8(interface')m -1 r 115 c 8(state.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(34])m @eop 33 @bop0 33 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (IP)s 10(interface)m 11(mask)m t-rom.300 @sf 21(This)m 11(indicates)m 11(the)m 11(portion)m 12(of)m 11(the)m 11(IP)m 11(interface)m 12(address)m 11(that)m 11(identi\014es)m 11(the)m 11(attached)m 12(network.)m 16(This)m 11(is)m 104 245 p (often)s 13(referred)m 14(to)m 13(as)m 13(the)m 14(subnet)m 13(mask.)m 23(Masking)m 13(the)m 14(IP)m 13(interface)m 14(address)m 13(with)m 13(this)m 14(value)m 13(yields)m 13(the)m 14(IP)m 13(network)m 104 295 p (number)s 10(of)m 11(the)m 10(attached)m 10(network.)m t-bol.300 @sf 0 378 p (Ar)s (ea)s 10(ID)m t-rom.300 @sf 20(The)m 16(Area)m 15(ID)m 15(to)m 16(which)m 15(the)m 15(attached)m 16(network)m 15(belongs.)m 28(All)m 16(routing)m 15(protocol)m 15(packets)m 16(originating)m 15(from)m 15(the)m 104 428 p (interface)s 10(are)m 11(labelled)m 10(with)m 10(this)m 11(Area)m 10(ID.)m t-bol.300 @sf 0 511 p (HelloInterval)s t-rom.300 @sf 21(The)m 11(length)m 12(of)m 11(time,)m 12(in)m 11(seconds,)m 12(between)m 12(the)m 11(Hello)m 12(packets)m 11(that)m 12(the)m 11(router)m 12(sends)m 11(on)m 12(the)m 11(interface.)m 17(Ad-)m 104 560 p (vertised)s 10(in)m 11(Hello)m 10(packets)m 10(sent)m 11(out)m 10(this)m 11(interface.)m t-bol.300 @sf 0 643 p (RouterDeadInterval)s t-rom.300 @sf 21(The)m 15(number)m 15(of)m 16(seconds)m 15(before)m 16(the)m 15(router)m 1 r 39 c -1 r 115 c 15(neighbors)m 15(will)m 15(declare)m 16(it)m 15(down,)m 17(when)m 15(they)m 15(stop)m 104 693 p (hearing)s 10(the)m 11(router)m 1 r 39 c -1 r 115 c 9(hellos.)m 14(Advertised)m 11(in)m 10(Hello)m 10(packets)m 11(sent)m 10(out)m 11(this)m 10(interface.)m t-bol.300 @sf 0 776 p (InfT)s -2(ransDelay)m t-rom.300 @sf 20(The)m 10(estimated)m 11(number)m 11(of)m 11(seconds)m 10(it)m 11(takes)m 11(to)m 11(transmit)m 11 r 97 c 10(Link)m 11(State)m 11(Update)m 11(Packet)m 10(over)m 11(this)m 11(interface.)m 104 826 p (Link)s 10(state)m 10(advertisements)m 10(contained)m 10(in)m 9(the)m 10(update)m 10(packet)m 10(will)m 10(have)m 10(their)m 10(age)m 10(incremented)m 10(by)m 10(this)m 10(amount)m 10(before)m 104 876 p (transmission.)s 15(This)m 11(value)m 11(should)m 10(take)m 11(into)m 11(account)m 11(transmission)m 11(and)m 11(propagation)m 10(delays;)m 11(it)m 11(must)m 11(be)m 11(greater)m 11(than)m 104 926 p (zero.)s t-bol.300 @sf 0 1009 p (Router)s 10(Priority)m t-rom.300 @sf 21(An)m 11(8-bit)m 12(unsigned)m 11(integer)m -2 r 46 c 16(When)m 11(two)m 11(routers)m 11(attached)m 11(to)m 11 r 97 c 12(network)m 11(both)m 11(attempt)m 11(to)m 11(become)m 11(Desig-)m 104 1059 p (nated)s 9(Router)m -1 r 44 c 9(the)m 9(one)m 9(with)m 9(the)m 9(highest)m 10(Router)m 9(Priority)m 9(takes)m 9(precedence.)m 14 r 65 c 9(router)m 9(whose)m 9(Router)m 9(Priority)m 10(is)m 9(set)m 9(to)m 104 1108 p 48 c 10(is)m 11(ineligible)m 11(to)m 10(become)m 11(Designated)m 11(Router)m 11(on)m 10(the)m 11(attached)m 11(network.)m 14(Advertised)m 11(in)m 11(Hello)m 10(packets)m 11(sent)m 11(out)m 10(this)m 104 1158 p (interface.)s t-bol.300 @sf 0 1241 p (Hello)s 10 r 84 c (imer)s t-rom.300 @sf 20(An)m 12(interval)m 12(timer)m 11(that)m 12(causes)m 12(the)m 11(interface)m 12(to)m 11(send)m 12 r 97 c 12(Hello)m 11(packet.)m 18(This)m 11(timer)m 12(\014res)m 12(every)m 11(HelloInterval)m 104 1291 p (seconds.)s 14(Note)m 10(that)m 10(on)m 11(non-broadcast)m 10(networks)m 11 r 97 c 10(separate)m 11(Hello)m 10(packet)m 10(is)m 11(sent)m 10(to)m 11(each)m 10(quali\014ed)m 10(neighbor)m -1 r 46 c t-bol.300 @sf 0 1374 p 87 c -1(ait)m 9 r 84 c (imer)s t-rom.300 @sf 20 r 65 c 15(single)m 14(shot)m 15(timer)m 15(that)m 14(causes)m 15(the)m 15(interface)m 14(to)m 15(exit)m 15(the)m 14 r 87 c -2(aiting)m 14(state,)m 15(and)m 15(as)m 15 r 97 c 14(consequence)m 15(select)m 14 r 97 c 104 1424 p (Designated)s 10(Router)m 11(on)m 10(the)m 10(network.)m 14(The)m 11(length)m 10(of)m 11(the)m 10(timer)m 10(is)m 11(RouterDeadInterval)m 10(seconds.)m t-bol.300 @sf 0 1507 p (List)s 10(of)m 11(neighboring)m 10 r 114 c (outers)s t-rom.300 @sf 20(The)m 9(other)m 10(routers)m 9(attached)m 9(to)m 9(this)m 9(network.)m 14(On)m 9(multi-access)m 9(networks,)m 9(this)m 9(list)m 10(is)m 9(formed)m 104 1557 p (by)s 12(the)m 12(Hello)m 12(Protocol.)m 18(Adjacencies)m 12(will)m 12(be)m 12(formed)m 12(to)m 12(some)m 12(of)m 12(these)m 12(neighbors.)m 19(The)m 12(set)m 12(of)m 12(adjacent)m 12(neighbors)m 104 1606 p (can)s 10(be)m 11(determined)m 10(by)m 10(an)m 11(examination)m 10(of)m 11(all)m 10(of)m 11(the)m 10(neighbors')m 10(states.)m t-bol.300 @sf 0 1689 p (Designated)s 10(Router)m t-rom.300 @sf 21(The)m 11(Designated)m 11(Router)m 10(selected)m 11(for)m 10(the)m 11(attached)m 11(network.)m 14(The)m 11(Designated)m 11(Router)m 10(is)m 11(selected)m 11(on)m 104 1739 p (all)s 8(multi-access)m 9(networks)m 8(by)m 9(the)m 8(Hello)m 8(Protocol.)m 14 r 84 c -2(wo)m 7(pieces)m 9(of)m 8(identi\014cation)m 9(are)m 8(kept)m 8(for)m 9(the)m 8(Designated)m 9(Router:)m 104 1789 p (its)s 12(Router)m 12(ID)m 13(and)m 12(its)m 13(interface)m 12(IP)m 12(address)m 13(on)m 12(the)m 12(network.)m 20(The)m 12(Designated)m 13(Router)m 12(advertises)m 12(link)m 13(state)m 12(for)m 12(the)m 104 1839 p (network.)s 17(The)m 12(network)m 12(link)m 12(state)m 11(advertisement)m 12(is)m 12(labelled)m 11(with)m 12(the)m 12(Designated)m 11(Router)m 2 r 39 c -1 r 115 c 10(IP)m 12(address.)m 18(This)m 11(item)m 104 1889 p (is)s 10(initialized)m 11(to)m 10(0,)m 10(which)m 11(indicates)m 10(the)m 11(lack)m 10(of)m 11 r 97 c 10(Designated)m 10(Router)m -1 r 46 c t-bol.300 @sf 0 1972 p (Backup)s 10(Designated)m 11(Router)m t-rom.300 @sf 21(The)m 7(Backup)m 8(Designated)m 7(Router)m 8(is)m 7(also)m 8(selected)m 8(on)m 7(all)m 8(multi-access)m 7(networks)m 8(by)m 7(the)m 8(Hello)m 104 2022 p (Protocol.)s 17(All)m 12(routers)m 12(on)m 11(the)m 12(attached)m 12(network)m 11(become)m 12(adjacent)m 12(to)m 11(both)m 12(the)m 12(Designated)m 11(Router)m 12(and)m 12(the)m 11(Backup)m 104 2071 p (Designated)s 12(Router)m -1 r 46 c 17(The)m 12(Backup)m 12(Designated)m 12(Router)m 12(becomes)m 12(Designated)m 12(Router)m 12(when)m 12(the)m 12(current)m 12(Designated)m 104 2121 p (Router)s 10(fails.)m 14(Initialized)m 10(to)m 11 r 48 c 10(indicating)m 11(the)m 10(lack)m 11(of)m 10 r 97 c 10(Backup)m 11(Designated)m 10(Router)m -1 r 46 c t-bol.300 @sf 0 2204 p (Interface)s 10(output)m 11(cost\(s\))m t-rom.300 @sf 21(The)m 14(cost)m 14(of)m 14(sending)m 14 r 97 c 13(packet)m 14(on)m 14(the)m 14(interface,)m 15(expressed)m 14(in)m 14(the)m 14(link)m 14(state)m 14(metric.)m 25(This)m 14(is)m 104 2254 p (advertised)s 11(as)m 11(the)m 11(link)m 11(cost)m 11(for)m 11(this)m 12(interface)m 11(in)m 11(the)m 11(router)m 11(links)m 11(advertisement.)m 16(There)m 11(may)m 11(be)m 11 r 97 c 11(separate)m 12(cost)m 11(for)m 104 2304 p (each)s 10(IP)m 11 r 84 c -2(ype)m 9(of)m 11(Service.)m 13(The)m 11(cost)m 10(of)m 11(an)m 10(interface)m 10(must)m 11(be)m 10(greater)m 11(than)m 10(zero.)m t-bol.300 @sf 0 2387 p (RxmtInterval)s t-rom.300 @sf 21(The)m 12(number)m 13(of)m 12(seconds)m 12(between)m 13(link)m 12(state)m 12(advertisement)m 13(retransmissions,)m 13(for)m 12(adjacencies)m 13(belonging)m 104 2437 p (to)s 10(this)m 11(interface.)m 13(Also)m 11(used)m 10(when)m 11(retransmitting)m 10(Database)m 11(Description)m 10(and)m 10(Link)m 11(State)m 10(Request)m 11(Packets.)m t-bol.300 @sf 0 2520 p (Authentication)s 10(key)m t-rom.300 @sf 21(This)m 11(con\014gured)m 10(data)m 11(allows)m 11(the)m 10(authentication)m 11(procedure)m 11(to)m 10(generate)m 11(and/or)m 10(verify)m 11(the)m 11(authenti-)m 104 2569 p (cation)s 8(\014eld)m 9(in)m 9(the)m 8(OSPF)m 9(header)m -1 r 46 c 12(The)m 9(authentication)m 8(key)m 9(can)m 9(be)m 8(con\014gured)m 9(on)m 9 r 97 c 8(per)m (-interface)s 8(basis.)m 13(For)m 9(example,)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(33])m @eop 32 @bop0 32 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (Next,)s 15(the)m 15(packet)m 14(must)m 14(be)m 14(authenticated.)m 26(This)m 14(depends)m 15(on)m 14(the)m 14(authentication)m 14(type)m 15(speci\014ed)m 14(\(see)m 14(Appendix)m 15(E\).)m 14(The)m 0 245 p (authentication)s 14(procedure)m 15(may)m 14(use)m 15(an)m 14(Authentication)m 15(key)m -2 r 44 c 14(which)m 15(can)m 14(be)m 15(con\014gured)m 14(on)m 14 r 97 c 15(per)m (-interface)s 13(basis.)m 26(If)m 15(the)m 0 295 p (authentication)s 10(fails,)m 11(the)m 10(packet)m 11(should)m 10(be)m 10(discarded.)m 0 362 p (If)s 8(the)m 8(packet)m 8(type)m 8(is)m 8(Hello,)m 9(it)m 8(should)m 8(then)m 8(be)m 8(further)m 8(processed)m 8(by)m 8(the)m 8(Hello)m 8(Protocol)m 8(\(see)m 8(Section)m 8(10.5\).)m 13(All)m 8(other)m 8(packet)m 0 412 p (types)s 13(are)m 12(sent/received)m 13(only)m 13(on)m 12(adjacencies.)m 21(This)m 13(means)m 12(that)m 13(the)m 13(packet)m 12(must)m 13(have)m 13(been)m 12(sent)m 13(by)m 13(one)m 12(of)m 13(the)m 13(router)m 1 r 39 c -1 r 115 c 0 462 p (active)s 10(neighbors.)m 14(If)m 10(the)m 10(receiving)m 10(interface)m 10(is)m 10 r 97 c 10(multi-access)m 10(network)m 10(\(either)m 10(broadcast)m 10(or)m 10(non-broadcast\))m 11(the)m 10(sender)m 10(is)m 0 512 p (identi\014ed)s 12(by)m 12(the)m 12(IP)m 12(source)m 12(address)m 12(found)m 12(in)m 12(the)m 12(packet')m -2 r 115 c 11(IP)m 12(header)m -1 r 46 c 18(If)m 12(the)m 11(receiving)m 12(interface)m 12(is)m 12 r 97 c 12(point-to-point)m 12(link)m 0 562 p (or)s 10 r 97 c 10(virtual)m 10(link,)m 10(the)m 10(sender)m 10(is)m 9(identi\014ed)m 10(by)m 10(the)m 10(Router)m 10(ID)m 10(\(source)m 10(router\))m 10(found)m 10(in)m 10(the)m 9(packet')m -1 r 115 c 9(OSPF)m 10(header)m -1 r 46 c 12(The)m 10(data)m 0 611 p (structure)s 10(associated)m 10(with)m 10(the)m 10(receiving)m 9(interface)m 10(contains)m 10(the)m 10(list)m 10(of)m 10(active)m 10(neighbors.)m 14(Packets)m 9(not)m 10(matching)m 10(any)m 10(active)m 0 661 p (neighbor)s 10(are)m 11(discarded.)m 0 729 p (At)s 11(this)m 11(point)m 11(all)m 11(received)m 11(protocol)m 11(packets)m 11(are)m 11(associated)m 12(with)m 11(an)m 11(active)m 11(neighbor)m -2 r 46 c 15(For)m 11(the)m 11(further)m 11(input)m 11(processing)m 11(of)m 0 779 p (speci\014c)s 10(packet)m 11(types,)m 10(consult)m 11(the)m 10(sections)m 10(listed)m 11(in)m 10 r 84 c -2(able)m 10 r 49 c -1(1.)m 477 885 p 996 2 ru 477 935 p 2 50 ru t-ita.300 @sf 502 920 p 84 c -2(ype)m 604 935 p 2 50 ru 630 920 p (Packet)s 10(name)m 1002 935 p 2 50 ru 1028 920 p (detailed)s 10(section)m 11(\(r)m -1(eceive\))m 1472 935 p 2 50 ru 477 936 p 996 2 ru 477 986 p 2 50 ru t-rom.300 @sf 531 971 p 49 c 604 986 p 2 50 ru 630 971 p (Hello)s 1002 986 p 2 50 ru 1028 971 p (Section)s 10(10.5)m 1472 986 p 2 50 ru 477 1036 p 2 50 ru 531 1021 p 50 c 604 1036 p 2 50 ru 630 1021 p (Database)s 10(description)m 1002 1036 p 2 50 ru 1028 1021 p (Section)s 10(10.6)m 1472 1036 p 2 50 ru 477 1086 p 2 50 ru 531 1071 p 51 c 604 1086 p 2 50 ru 630 1071 p (Link)s 10(state)m 11(request)m 1002 1086 p 2 50 ru 1028 1071 p (Section)s 10(10.7)m 1472 1086 p 2 50 ru 477 1136 p 2 50 ru 531 1121 p 52 c 604 1136 p 2 50 ru 630 1121 p (Link)s 10(state)m 11(update)m 1002 1136 p 2 50 ru 1028 1121 p (Section)s 10(13)m 1472 1136 p 2 50 ru 477 1185 p 2 50 ru 531 1171 p 53 c 604 1185 p 2 50 ru 630 1171 p (Link)s 10(state)m 11(ack)m 1002 1185 p 2 50 ru 1028 1171 p (Section)s 10(13.7)m 1472 1185 p 2 50 ru 477 1187 p 996 2 ru 581 1324 p 84 c -2(able)m 9 r 49 c (1:)s 13(Sections)m 10(describing)m 11(packet)m 10(reception.)m t-bol.420 @sf 0 1523 p 57 c 58(The)m 15(Interface)m 14(Data)m 15(Structur)m 101 c t-rom.300 @sf 0 1634 p (An)s 12(OSPF)m 11(interface)m 12(is)m 12(the)m 11(connection)m 12(between)m 11 r 97 c 12(router)m 12(and)m 11 r 97 c 12(network.)m 18(There)m 11(is)m 12 r 97 c 11(single)m 12(OSPF)m 12(interface)m 11(structure)m 12(for)m 0 1683 p (each)s 14(attached)m 14(network;)m 16(each)m 14(interface)m 14(structure)m 15(has)m 14(at)m 14(most)m 14(one)m 14(IP)m 14(interface)m 14(address)m 14(\(see)m 14(below\).)m 25(The)m 15(support)m 14(for)m 0 1733 p (multiple)s 10(addresses)m 11(on)m 10 r 97 c 11(single)m 10(network)m 10(is)m 11 r 97 c 10(matter)m 11(for)m 10(future)m 11(consideration.)m 0 1801 p (An)s 12(OSPF)m 12(interface)m 13(can)m 12(be)m 12(considered)m 12(to)m 13(belong)m 12(to)m 12(the)m 12(area)m 12(that)m 13(contains)m 12(the)m 12(attached)m 12(network.)m 20(All)m 12(routing)m 12(protocol)m 0 1851 p (packets)s 15(originated)m 15(by)m 15(the)m 15(router)m 15(over)m 15(this)m 15(interface)m 15(are)m 15(labelled)m 15(with)m 15(the)m 15(interface')m -2 r 115 c t-bol.300 @sf 14(Ar)m (ea)s 15(ID)m t-rom.300 @sf 46 c 15(One)m 15(or)m 15(more)m 14(router)m 0 1901 p (adjacencies)s 12(may)m 12(develop)m 11(over)m 12(an)m 12(interface.)m 18 r 65 c 12(router)m 1 r 39 c -1 r 115 c 11(link)m 12(state)m 12(advertisements)m 11(re\015ect)m 12(the)m 12(state)m 12(of)m 12(its)m 11(interfaces)m 12(and)m 0 1950 p (their)s 10(associated)m 11(adjacencies.)m 0 2018 p (The)s 9(following)m 9(data)m 9(items)m 9(are)m 9(associated)m 9(with)m 9(an)m 9(interface.)m 14(Note)m 9(that)m 9 r 97 c 9(number)m 9(of)m 9(these)m 9(items)m 9(are)m 9(actually)m 9(con\014guration)m 0 2068 p (for)s 10(the)m 11(attached)m 10(network;)m 11(those)m 10(items)m 10(must)m 11(be)m 10(the)m 11(same)m 10(for)m 11(all)m 10(routers)m 10(connected)m 11(to)m 10(the)m 11(network.)m t-bol.300 @sf 0 2177 p 84 c -2(ype)m t-rom.300 @sf 20(The)m 10(kind)m 10(of)m 11(network)m 10(to)m 11(which)m 10(the)m 10(interface)m 11(attaches.)m 14(Its)m 10(value)m 11(is)m 10(either)m 10(broadcast,)m 11(non-broadcast)m 10(yet)m 11(still)m 10(multi-)m 104 2227 p (access,)s 10(point-to-point)m 11(or)m 10(virtual)m 10(link.)m t-bol.300 @sf 0 2310 p (State)s t-rom.300 @sf 21(The)m 10(functional)m 11(level)m 11(of)m 10(an)m 11(interface.)m 15(State)m 11(determines)m 10(whether)m 11(or)m 11(not)m 10(full)m 11(adjacencies)m 11(are)m 10(allowed)m 11(to)m 11(form)m 10(over)m 104 2360 p (the)s 10(interface.)m 14(State)m 10(is)m 11(also)m 10(re\015ected)m 11(in)m 10(the)m 11(router)m 1 r 39 c -1 r 115 c 9(link)m 11(state)m 10(advertisements.)m t-bol.300 @sf 0 2443 p (IP)s 10(interface)m 11(addr)m (ess)s t-rom.300 @sf 20(The)m 8(IP)m 9(address)m 9(associated)m 8(with)m 9(the)m 8(interface.)m 14(This)m 8(appears)m 9(as)m 8(the)m 9(IP)m 9(source)m 8(address)m 9(in)m 8(all)m 9(routing)m 104 2493 p (protocol)s 12(packets)m 11(originated)m 12(over)m 12(this)m 12(interface.)m 18(Interfaces)m 12(to)m 12(unnumbered)m 12(point-to-point)m 11(networks)m 12(do)m 12(not)m 12(have)m 104 2542 p (an)s 10(associated)m 11(IP)m 10(address.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(32])m @eop 31 @bop0 31 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 467 201 p 1016 2 ru 466 251 p 2 50 ru t-ita.300 @sf 492 236 p 84 c -2(ype)m 594 251 p 2 50 ru 620 236 p (Packet)s 10(name)m 992 251 p 2 50 ru 1018 236 p (detailed)s 10(section)m 11(\(transmit\))m 1482 251 p 2 50 ru 467 252 p 1016 2 ru 466 302 p 2 50 ru t-rom.300 @sf 521 287 p 49 c 594 302 p 2 50 ru 620 287 p (Hello)s 992 302 p 2 50 ru 1018 287 p (Section)s 10(9.5)m 1482 302 p 2 50 ru 466 352 p 2 50 ru 521 337 p 50 c 594 352 p 2 50 ru 620 337 p (Database)s 10(description)m 992 352 p 2 50 ru 1018 337 p (Section)s 10(10.8)m 1482 352 p 2 50 ru 466 402 p 2 50 ru 521 387 p 51 c 594 402 p 2 50 ru 620 387 p (Link)s 10(state)m 11(request)m 992 402 p 2 50 ru 1018 387 p (Section)s 10(10.9)m 1482 402 p 2 50 ru 466 452 p 2 50 ru 521 437 p 52 c 594 452 p 2 50 ru 620 437 p (Link)s 10(state)m 11(update)m 992 452 p 2 50 ru 1018 437 p (Section)s 10(13.3)m 1482 452 p 2 50 ru 466 501 p 2 50 ru 521 486 p 53 c 594 501 p 2 50 ru 620 486 p (Link)s 10(state)m 11(ack)m 992 501 p 2 50 ru 1018 486 p (Section)s 10(13.5)m 1482 501 p 2 50 ru 467 503 p 1016 2 ru 552 640 p 84 c -2(able)m 10(10:)m 14(Sections)m 10(describing)m 11(packet)m 10(transmission.)m 0 774 p (In)s 11(order)m 11(for)m 11(the)m 12(packet)m 11(to)m 11(be)m 11(accepted)m 11(at)m 11(the)m 11(IP)m 11(level,)m 12(it)m 11(must)m 11(pass)m 11 r 97 c 11(number)m 11(of)m 12(tests,)m 11(even)m 11(before)m 11(the)m 11(packet)m 11(is)m 12(passed)m 0 823 p (to)s 10(OSPF)m 11(for)m 10(processing:)m cmsy10.300 @sf 62 933 p 15 c t-rom.300 @sf 21(The)m 10(IP)m 11(checksum)m 10(must)m 11(be)m 10(correct.)m cmsy10.300 @sf 62 1016 p 15 c t-rom.300 @sf 21(The)m 11(packet')m -2 r 115 c 10(IP)m 10(destination)m 11(address)m 10(must)m 11(be)m 10(the)m 11(IP)m 10(address)m 11(of)m 10(the)m 11(receiving)m 10(interface,)m 11(or)m 10(one)m 11(of)m 10(the)m 11(IP)m 10(multicast)m 104 1065 p (addresses)s 10(AllSPFRouters)m 11(or)m 10(AllDRouters.)m cmsy10.300 @sf 62 1149 p 15 c t-rom.300 @sf 21(The)m 10(IP)m 11(protocol)m 10(speci\014ed)m 11(must)m 10(be)m 11(OSPF)m 10(\(89\).)m cmsy10.300 @sf 62 1232 p 15 c t-rom.300 @sf 21(Locally)m 10(originated)m 10(packets)m 10(should)m 10(not)m 10(be)m 10(passed)m 10(on)m 10(to)m 10(OSPF)m -2 r 46 c 9(That)m 10(is,)m 10(the)m 10(source)m 10(IP)m 10(address)m 10(should)m 10(be)m 10(examined)m 104 1281 p (to)s 10(make)m 11(sure)m 10(this)m 10(is)m 11(not)m 10 r 97 c 11(multicast)m 10(packet)m 11(that)m 10(the)m 10(router)m 11(itself)m 10(generated.)m 0 1391 p (Next,)s 16(the)m 14(OSPF)m 15(packet)m 15(header)m 14(is)m 15(veri\014ed.)m 27(The)m 14(\014elds)m 15(speci\014ed)m 14(in)m 15(the)m 15(header)m 14(must)m 15(match)m 15(those)m 14(con\014gured)m 15(for)m 15(the)m 0 1440 p (receiving)s 10(interface.)m 14(If)m 11(they)m 10(do)m 11(not,)m 10(the)m 10(packet)m 11(should)m 10(be)m 11(discarded:)m cmsy10.300 @sf 62 1550 p 15 c t-rom.300 @sf 21(The)m 10(version)m 11(number)m 10(\014eld)m 11(must)m 10(specify)m 11(protocol)m 10(version)m 10(2.)m cmsy10.300 @sf 62 1633 p 15 c t-rom.300 @sf 21(The)m 11(16-bit)m 10(checksum)m 11(of)m 11(the)m 11(OSPF)m 10(packet')m -1 r 115 c 10(contents)m 10(must)m 11(be)m 11(veri\014ed.)m 15(Remember)m 10(that)m 11(the)m 11(64-bit)m 10(authentication)m 104 1682 p (\014eld)s 10(must)m 11(be)m 10(excluded)m 10(from)m 11(the)m 10(checksum)m 11(calculation.)m cmsy10.300 @sf 62 1765 p 15 c t-rom.300 @sf 21(The)m 11(Area)m 12(ID)m 11(found)m 12(in)m 11(the)m 11(OSPF)m 12(header)m 11(must)m 11(be)m 12(veri\014ed.)m 17(If)m 11(both)m 11(of)m 12(the)m 11(following)m 11(cases)m 12(fail,)m 11(the)m 12(packet)m 11(should)m 104 1815 p (be)s 10(discarded.)m 14(The)m 10(Area)m 11(ID)m 10(speci\014ed)m 11(in)m 10(the)m 11(header)m 10(must)m 10(either:)m 143 1898 p (1.)s t-ita.300 @sf 21(Match)m 14(the)m 14(Ar)m -1(ea)m 13(ID)m 14(of)m 14(the)m 14 r 114 c -1(eceiving)m 13(interface)m t-rom.300 @sf 46 c 25(In)m 13(this)m 14(case,)m 15(the)m 14(packet)m 14(has)m 14(been)m 14(sent)m 14(over)m 14 r 97 c 14(single)m 13(hop.)m 195 1948 p (Therefore,)s 14(the)m 13(packet')m -2 r 115 c 12(IP)m 13(source)m 13(address)m 13(must)m 13(be)m 13(on)m 13(the)m 13(same)m 13(network)m 13(as)m 13(the)m 12(receiving)m 13(interface.)m 22(This)m 195 1998 p (can)s 9(be)m 9(determined)m 9(by)m 9(comparing)m 9(the)m 10(packet')m -2 r 115 c 8(IP)m 9(source)m 9(address)m 9(to)m 10(the)m 9(interface')m -2 r 115 c 8(IP)m 9(address,)m 10(after)m 9(masking)m 195 2048 p (both)s 11(addresses)m 10(with)m 10(the)m 11(interface)m 10(mask.)m 143 2114 p (2.)s t-ita.300 @sf 21(Indicate)m 10(the)m 9(backbone.)m t-rom.300 @sf 14(In)m 10(this)m 9(case,)m 10(the)m 10(packet)m 9(has)m 10(been)m 10(sent)m 9(over)m 10 r 97 c 10(virtual)m 10(link.)m 13(The)m 10(receiving)m 10(router)m 9(must)m 195 2164 p (be)s 10(an)m 9(area)m 10(border)m 9(router)m 44 c 8(and)m 10(the)m 9(router)m 10(ID)m 10(speci\014ed)m 9(in)m 10(the)m 9(packet)m 10(\(the)m 9(source)m 10(router\))m 9(must)m 10(be)m 9(the)m 10(other)m 10(end)m 195 2214 p (of)s 10 r 97 c 9(con\014gured)m 10(virtual)m 10(link.)m 14(The)m 9(receiving)m 10(interface)m 10(must)m 9(also)m 10(attach)m 10(to)m 9(the)m 10(virtual)m 10(link')m -2 r 115 c 9(con\014gured)m 10(transit)m 195 2264 p (area.)s 15(If)m 11(all)m 11(of)m 10(these)m 11(checks)m 11(succeed,)m 11(the)m 11(packet)m 10(is)m 11(accepted)m 11(and)m 11(is)m 10(from)m 11(now)m 11(on)m 11(associated)m 11(with)m 10(the)m 11(virtual)m 195 2313 p (link)s 11(\(and)m 10(the)m 10(backbone)m 11(area\).)m cmsy10.300 @sf 62 2396 p 15 c t-rom.300 @sf 21(Packets)m 13(whose)m 12(IP)m 13(destination)m 13(is)m 12(AllDRouters)m 13(should)m 12(only)m 13(be)m 13(accepted)m 12(if)m 13(the)m 12(state)m 13(of)m 13(the)m 12(receiving)m 13(interface)m 13(is)m t-bol.300 @sf 104 2446 p (DR)s t-rom.300 @sf 10(or)m t-bol.300 @sf 11(Backup)m t-rom.300 @sf 10(\(see)m 10(Section)m 11(9.1\).)m cmsy10.300 @sf 62 2529 p 15 c t-rom.300 @sf 21(The)m 10(Authentication)m 11(type)m 10(speci\014ed)m 11(must)m 10(match)m 11(the)m 10(authentication)m 10(type)m 11(speci\014ed)m 10(for)m 11(the)m 10(associated)m 10(area.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(31])m @eop 30 @bop0 30 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p 86 c -3(ersion)m 10 r 35 c t-rom.300 @sf 61(Set)m 11(to)m 10(2,)m 10(the)m 11(version)m 10(number)m 11(of)m 10(the)m 11(protocol)m 10(as)m 10(documented)m 11(in)m 10(this)m 11(speci\014cation.)m t-bol.300 @sf 0 278 p (Packet)s 10(type)m t-rom.300 @sf 21(The)m 11(type)m 10(of)m 10(OSPF)m 11(packet,)m 10(such)m 11(as)m 10(Link)m 11(state)m 10(Update)m 10(or)m 11(Hello)m 10(Packet.)m t-bol.300 @sf 0 361 p (Packet)s 10(length)m t-rom.300 @sf 21(The)m 11(length)m 10(of)m 10(the)m 11(entire)m 10(OSPF)m 11(packet)m 10(in)m 11(bytes,)m 10(including)m 10(the)m 11(standard)m 10(header)m -1 r 46 c t-bol.300 @sf 0 444 p (Router)s 10(ID)m t-rom.300 @sf 47(The)m 10(identity)m 10(of)m 11(the)m 10(router)m 11(itself)m 10(\(who)m 11(is)m 10(originating)m 10(the)m 11(packet\).)m t-bol.300 @sf 0 527 p (Ar)s (ea)s 10(ID)m t-rom.300 @sf 84(The)m 10(area)m 11(that)m 10(the)m 10(packet)m 11(is)m 10(being)m 11(sent)m 10(into.)m t-bol.300 @sf 0 610 p (Checksum)s t-rom.300 @sf 40(The)m 15(standard)m 15(IP)m 14(16-bit)m 15(one')m -2 r 115 c 14(complement)m 14(checksum)m 15(of)m 15(the)m 14(entire)m 15(OSPF)m 14(packet,)m 16(excluding)m 14(the)m 15(64-bit)m 228 660 p (authentication)s 12(\014eld.)m 20(This)m 12(checksum)m 13(should)m 12(be)m 12(calculated)m 13(before)m 12(handing)m 12(the)m 13(packet)m 12(to)m 13(the)m 12(appropriate)m 228 710 p (authentication)s 10(procedure.)m t-bol.300 @sf 0 793 p (Autype)s 10(and)m 11(Authentication)m t-rom.300 @sf 21(Each)m 10(OSPF)m 10(packet)m 10(exchange)m 9(is)m 10(authenticated.)m 14(Authentication)m 10(types)m 10(are)m 10(assigned)m 10(by)m 10(the)m 228 843 p (protocol)s 10(and)m 10(documented)m 10(in)m 10(Appendix)m 10(E.)m 14 r 65 c 10(dif)m (ferent)s 9(authentication)m 11(scheme)m 10(can)m 10(be)m 10(used)m 10(for)m 10(each)m 10(OSPF)m 228 892 p (area.)s 19(The)m 12(64-bit)m 13(authentication)m 12(\014eld)m 12(is)m 12(set)m 12(by)m 13(the)m 12(appropriate)m 12(authentication)m 12(procedure)m 12(\(determined)m 13(by)m 228 942 p (Autype\).)s 28(This)m 15(procedure)m 15(should)m 15(be)m 15(the)m 15(last)m 15(called)m 15(when)m 15(forming)m 15(the)m 15(packet)m 15(to)m 15(be)m 15(sent.)m 28(The)m 15(setting)m 228 992 p (of)s 15(the)m 14(authentication)m 15(\014eld)m 15(is)m 14(determined)m 15(by)m 15(the)m 14(packet)m 15(contents)m 15(and)m 14(the)m 15(authentication)m 15(key)m 14(\(which)m 15(is)m 228 1042 p (con\014gurable)s 10(on)m 11 r 97 c 10(per)m (-interface)s 10(basis\).)m 0 1151 p (The)s 8(IP)m 8(destination)m 9(address)m 8(for)m 8(the)m 8(packet)m 8(is)m 9(selected)m 8(as)m 8(follows.)m 13(On)m 8(physical)m 8(point-to-point)m 9(networks,)m 8(the)m 8(IP)m 9(destination)m 0 1201 p (is)s 12(always)m 12(set)m 12(to)m 12(the)m 12(the)m 12(address)m 12(AllSPFRouters.)m 19(On)m 12(all)m 12(other)m 12(network)m 12(types)m 12(\(including)m 12(virtual)m 12(links\),)m 12(the)m 12(majority)m 12(of)m 0 1251 p (OSPF)s 11(packets)m 11(are)m 11(sent)m 11(as)m 11(unicasts,)m 11(i.e.,)m 11(sent)m 11(directly)m 11(to)m 11(the)m 11(other)m 11(end)m 11(of)m 11(the)m 11(adjacency)m -2 r 46 c 15(In)m 11(this)m 11(case,)m 11(the)m 11(IP)m 11(destination)m 0 1301 p (is)s 13(just)m 13(the)m t-bol.300 @sf 13(neighbor)m 13(IP)m 13(addr)m (ess)s t-rom.300 @sf 13(associated)m 13(with)m 13(the)m 13(other)m 13(end)m 13(of)m 13(the)m 14(adjacency)m 13(\(see)m 13(Section)m 13(10\).)m 22(The)m 13(only)m 13(packets)m 0 1350 p (not)s 12(sent)m 11(as)m 12(unicasts)m 11(are)m 12(on)m 12(broadcast)m 11(networks;)m 12(on)m 12(these)m 12(networks)m 11(Hello)m 12(packets)m 12(are)m 11(sent)m 12(to)m 11(the)m 12(multicast)m 12(destination)m 0 1400 p (AllSPFRouters,)s 10(the)m 10(Designated)m 10(Router)m 10(and)m 10(its)m 10(Backup)m 10(send)m 10(both)m 10(Link)m 10(State)m 10(Update)m 10(Packets)m 10(and)m 10(Link)m 10(State)m 10(Acknowl-)m 0 1450 p (edgment)s 9(Packets)m 9(to)m 8(the)m 9(multicast)m 9(address)m 9(AllSPFRouters,)m 9(while)m 9(all)m 9(other)m 9(routers)m 8(send)m 9(both)m 9(their)m 9(Link)m 9(State)m 9(Update)m 8(and)m 0 1500 p (Link)s 10(State)m 11(Acknowledgment)m 10(Packets)m 11(to)m 10(the)m 10(multicast)m 11(address)m 10(AllDRouters.)m 0 1567 p (Retransmissions)s 10(of)m 11(Link)m 10(State)m 11(Update)m 10(packets)m 10(are)m 11(AL)m -2 r 87 c -5 r 65 c -4(YS)m 10(sent)m 10(as)m 11(unicasts.)m 0 1635 p (The)s 9(IP)m 9(source)m 9(address)m 9(should)m 8(be)m 9(set)m 9(to)m 9(the)m 9(IP)m 9(address)m 9(of)m 9(the)m 9(sending)m 8(interface.)m 14(Interfaces)m 9(to)m 9(unnumbered)m 9(point-to-point)m 0 1685 p (networks)s 8(have)m 8(no)m 8(associated)m 7(IP)m 8(address.)m 13(On)m 8(these)m 8(interfaces,)m 8(the)m 8(IP)m 8(source)m 8(should)m 8(be)m 7(set)m 8(to)m 8(any)m 8(of)m 8(the)m 8(other)m 7(IP)m 8(addresses)m 0 1735 p (belonging)s 11(to)m 12(the)m 11(router)m -1 r 46 c 16(For)m 12(this)m 11(reason,)m 12(there)m 11(must)m 12(be)m 11(at)m 12(least)m 11(one)m 11(IP)m 12(address)m 11(assigned)m 12(to)m 11(the)m 12(router)m -2 r 46 c t-rom.210 @sf 1691 1720 p 50 c t-rom.300 @sf 1724 1735 p (Note)s 12(that,)m 11(for)m 0 1785 p (most)s 9(purposes,)m 9(virtual)m 8(links)m 9(act)m 9(precisely)m 9(the)m 8(same)m 9(as)m 9(unnumbered)m 8(point-to-point)m 9(networks.)m 13(However)m 44 c 8(each)m 9(virtual)m 8(link)m 0 1834 p (does)s 11(have)m 10(an)m t-bol.300 @sf 11(interface)m 11(IP)m 11(addr)m (ess)s t-rom.300 @sf 9(\(discovered)m 11(during)m 11(the)m 11(routing)m 10(table)m 11(build)m 11(process\))m 10(which)m 11(is)m 11(used)m 11(as)m 10(the)m 11(IP)m 11(source)m 0 1884 p (when)s 10(sending)m 11(packets)m 10(over)m 11(the)m 10(virtual)m 10(link.)m 0 1952 p (For)s 10(more)m 11(information)m 10(on)m 11(the)m 10(format)m 10(of)m 11(speci\014c)m 10(packet)m 11(types,)m 10(consult)m 11(the)m 10(sections)m 10(listed)m 11(in)m 10 r 84 c -2(able)m 10(10.)m t-bol.360 @sf 0 2098 p (8.2)s 50(Receiving)m 12(pr)m (otocol)s 12(packets)m t-rom.300 @sf 0 2193 p (Whenever)s 12 r 97 c 12(protocol)m 12(packet)m 13(is)m 12(received)m 12(by)m 12(the)m 12(router)m 12(it)m 13(is)m 12(marked)m 12(with)m 12(the)m 12(interface)m 12(it)m 13(was)m 12(received)m 12(on.)m 19(For)m 12(routers)m 0 2243 p (that)s 9(have)m 9(virtual)m 10(links)m 9(con\014gured,)m 9(it)m 9(may)m 10(not)m 9(be)m 9(immediately)m 9(obvious)m 9(which)m 10(interface)m 9(to)m 9(associate)m 9(the)m 9(packet)m 10(with.)m 13(For)m 0 2293 p (example,)s 10(consider)m 11(the)m 10(router)m 11 r 82 c -2(T1)m -1 r 49 c 9(depicted)m 10(in)m 11(Figure)m 10(6.)m 14(If)m 11 r 82 c -2(T1)m -1 r 49 c 9(receives)m 10(an)m 11(OSPF)m 10(protocol)m 11(packet)m 10(on)m 11(its)m 10(interface)m 10(to)m 0 2343 p (network)s 12(N8,)m 13(it)m 12(may)m 13(want)m 12(to)m 12(associate)m 13(the)m 12(packet)m 12(with)m 13(the)m 12(interface)m 12(to)m 13(area)m 12(2,)m 13(or)m 12(with)m 13(the)m 12(virtual)m 12(link)m 13(to)m 12(router)m 12 r 82 c -1(T10)m 0 2393 p (\(which)s 9(is)m 10(part)m 9(of)m 9(the)m 10(backbone\).)m 13(In)m 10(the)m 9(following,)m 9(we)m 10(assume)m 9(that)m 9(the)m 10(packet)m 9(is)m 9(initially)m 10(associated)m 9(with)m 9(the)m 10(non-virtual)m 0 2442 p (link.)s t-rom.210 @sf 89 2427 p 51 c 0 2469 p 780 2 ru t-rom.180 @sf 45 2497 p 50 c t-rom.240 @sf 60 2509 p (It)s 9(is)m 10(possible)m 9(for)m 10(all)m 9(of)m 10 r 97 c 9(router)m 1 r 39 c 115 c 8(interfaces)m 10(to)m 9(be)m 9(unnumbered)m 10(point-to-point)m 9(links.)m 15(In)m 9(this)m 10(case,)m 10(an)m 9(IP)m 9(address)m 10(must)m 9(be)m 10(assigned)m 9(to)m 10(the)m 9(router)m -1 r 46 c 0 2548 p (This)s 8(address)m 9(will)m 8(then)m 8(be)m 9(advertised)m 8(in)m 8(the)m 9(router)m 1 r 39 c -1 r 115 c 7(router)m 9(links)m 8(advertisement)m 8(as)m 9 r 97 c 8(host)m 8(route.)m t-rom.180 @sf 45 2577 p 51 c t-rom.240 @sf 60 2589 p (Note)s 8(that)m 9(in)m 8(these)m 8(cases)m 9(both)m 8(interfaces,)m 8(the)m 9(non-virtual)m 8(and)m 8(the)m 9(virtual,)m 8(would)m 8(have)m 9(the)m 8(same)m 8(IP)m 9(address.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(30])m @eop 29 @bop0 29 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 38600707 2828615 6183485 33417134 47954903 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/figure10-11.fig %%Creator: f2ps %%CreationDate: Fri Jun 8 17:21:27 1990 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 43 94 508 729 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y translate xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix } def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth newpath 428.572 557.580 moveto 436.000 554.000 lineto 431.130 560.655 lineto stroke newpath 462.633 586.000 41.633 129.770 -129.770 arc stroke newpath 444.605 560.840 moveto 440.000 554.000 lineto 447.283 557.869 lineto stroke newpath 473.961 516.301 50.740 46.326 132.014 arc stroke newpath 432.429 545.567 moveto 436.000 553.000 lineto 429.351 548.122 lineto stroke newpath 479.703 516.723 56.798 -143.577 140.305 arcn stroke newpath 503.501 546.855 moveto 509.000 553.000 lineto 501.256 550.165 lineto stroke newpath 472.716 606.507 64.649 -125.690 -55.858 arc stroke newpath 444.060 613.738 moveto 437.000 618.000 lineto 441.223 610.917 lineto stroke newpath 405.316 586.487 44.687 -46.635 44.845 arc stroke newpath 439.746 488.914 moveto 434.000 483.000 lineto 441.854 485.514 lineto stroke newpath 411.490 519.320 42.729 56.619 -58.211 arcn stroke newpath 157.422 253.854 35.422 -107.111 105.426 arcn stroke newpath 300.511 253.326 36.527 -70.007 71.668 arc stroke % Ellipse newpath 408 95 4 4 0 360 DrawEllipse stroke % Ellipse newpath 520 95 4 4 0 360 DrawEllipse stroke % Ellipse newpath 407 330 4 4 0 360 DrawEllipse stroke % Ellipse newpath 471 331 4 4 0 360 DrawEllipse stroke % Ellipse newpath 539 331 4 4 0 360 DrawEllipse stroke % Ellipse newpath 439 203 4 4 0 360 DrawEllipse stroke % Ellipse newpath 510 203 4 4 0 360 DrawEllipse stroke % Ellipse newpath 537 555 27 27 0 360 DrawEllipse stroke % Ellipse newpath 435 645 27 27 0 360 DrawEllipse stroke % Ellipse newpath 431 455 27 27 0 360 DrawEllipse stroke % Ellipse newpath 295 646 27 27 0 360 DrawEllipse stroke % Ellipse newpath 288 454 27 27 0 360 DrawEllipse stroke % Ellipse newpath 133 558 27 27 0 360 DrawEllipse stroke % Ellipse newpath 137 457 27 27 0 360 DrawEllipse stroke % Polyline newpath 317 630 moveto 365 557 lineto 435 553 lineto stroke newpath 426.899 551.460 moveto 435.000 553.000 lineto 427.127 555.453 lineto stroke % Polyline newpath 226 560 moveto 293 619 lineto stroke newpath 288.318 612.212 moveto 293.000 619.000 lineto 285.674 615.214 lineto stroke % Polyline newpath 228 558 moveto 283 482 lineto stroke newpath 276.690 487.308 moveto 283.000 482.000 lineto 279.930 489.653 lineto stroke % Polyline newpath 135 485 moveto 135 530 lineto stroke newpath 137.000 522.000 moveto 135.000 530.000 lineto 133.000 522.000 lineto stroke % Polyline newpath 201 74 moveto 169 74 lineto 169 106 lineto 201 106 lineto closepath stroke % Polyline newpath 304 75 moveto 272 75 lineto 272 107 lineto 304 107 lineto closepath stroke % Polyline newpath 202 89 moveto 271 89 lineto stroke % Polyline newpath 412 96 moveto 514 96 lineto stroke % Polyline newpath 100 241 moveto 68 241 lineto 68 273 lineto 100 273 lineto closepath stroke % Polyline newpath 284 314 moveto 252 314 lineto 252 346 lineto 284 346 lineto closepath stroke % Polyline newpath 200 313 moveto 168 313 lineto 168 345 lineto 200 345 lineto closepath stroke % Polyline newpath 282 166 moveto 250 166 lineto 250 198 lineto 282 198 lineto closepath stroke % Polyline newpath 201 166 moveto 169 166 lineto 169 198 lineto 201 198 lineto closepath stroke % Polyline newpath 147 288 moveto 311 288 lineto stroke % Polyline newpath 147 219 moveto 311 219 lineto stroke % Polyline newpath 100 255 moveto 122 255 lineto stroke % Polyline newpath 185 198 moveto 185 218 lineto stroke % Polyline newpath 265 198 moveto 265 219 lineto stroke % Polyline newpath 185 288 moveto 185 313 lineto stroke % Polyline newpath 269 289 moveto 269 314 lineto stroke % Polyline newpath 438 207 moveto 410 325 lineto stroke % Polyline newpath 444 204 moveto 505 204 lineto 505 203 lineto stroke % Polyline newpath 442 207 moveto 470 326 lineto 470 325 lineto stroke % Polyline newpath 442 206 moveto 537 325 lineto stroke [4.000000] 0 setdash % Polyline newpath 510 207 moveto 412 326 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 511 207 moveto 473 326 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 511 207 moveto 539 328 lineto stroke [] 0 setdash % Polyline newpath 157 558 moveto 228 558 lineto stroke newpath 220.000 556.000 moveto 228.000 558.000 lineto 220.000 560.000 lineto stroke /Courier findfont 12.222222 scalefont setfont 450 578 moveto 1 -1 scale (Nbr Chgs) show 1 -1 scale 48 512 moveto 1 -1 scale (Unloop Ind) show 1 -1 scale 168 736 moveto 1 -1 scale (* Loop Ind forces Loopback state) show 1 -1 scale 181 399 moveto 1 -1 scale (Figure 10: The graph of adjacencies) show 1 -1 scale 175 92 moveto 1 -1 scale (RT1) show 1 -1 scale 278 94 moveto 1 -1 scale (RT2) show 1 -1 scale 176 185 moveto 1 -1 scale (RT3) show 1 -1 scale 256 184 moveto 1 -1 scale (RT4) show 1 -1 scale 172 331 moveto 1 -1 scale (RT5) show 1 -1 scale 259 329 moveto 1 -1 scale (RT6) show 1 -1 scale 73 259 moveto 1 -1 scale (RT7) show 1 -1 scale 396 82 moveto 1 -1 scale (RT1) show 1 -1 scale 511 82 moveto 1 -1 scale (RT2) show 1 -1 scale 499 190 moveto 1 -1 scale (RT3) show 1 -1 scale 527 354 moveto 1 -1 scale (RT4) show 1 -1 scale 395 355 moveto 1 -1 scale (RT5) show 1 -1 scale 460 354 moveto 1 -1 scale (RT6) show 1 -1 scale 428 191 moveto 1 -1 scale (RT7) show 1 -1 scale 227 107 moveto 1 -1 scale (N1) show 1 -1 scale 223 253 moveto 1 -1 scale (N2) show 1 -1 scale 173 769 moveto 1 -1 scale (Figure 11: Interface state changes) show 1 -1 scale 412 648 moveto 1 -1 scale (Backup) show 1 -1 scale 518 566 moveto 1 -1 scale (Other) show 1 -1 scale 528 550 moveto 1 -1 scale (DR) show 1 -1 scale 422 457 moveto 1 -1 scale (DR) show 1 -1 scale 282 658 moveto 1 -1 scale (ing) show 1 -1 scale 279 643 moveto 1 -1 scale (Wait-) show 1 -1 scale 121 466 moveto 1 -1 scale (Back) show 1 -1 scale 119 452 moveto 1 -1 scale (Loop-) show 1 -1 scale 277 459 moveto 1 -1 scale (P-P) show 1 -1 scale 112 559 moveto 1 -1 scale (Down) show 1 -1 scale 181 549 moveto 1 -1 scale (Up) show 1 -1 scale 340 609 moveto 1 -1 scale (Wait) show 1 -1 scale 337 624 moveto 1 -1 scale (Timer) show 1 -1 scale 162 534 moveto 1 -1 scale (Interface) show 1 -1 scale 305 571 moveto 1 -1 scale (Backup) show 1 -1 scale 312 585 moveto 1 -1 scale (Seen) show 1 -1 scale 398 509 moveto 1 -1 scale (Nbr) show 1 -1 scale 391 522 moveto 1 -1 scale (Chgs) show 1 -1 scale 397 586 moveto 1 -1 scale (Nbr) show 1 -1 scale 390 602 moveto 1 -1 scale (Chgs) show 1 -1 scale 168 719 moveto 1 -1 scale (* Interface Down forces Down state) show 1 -1 scale showpage $F2psEnd endTexFig 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(29])m @eop 28 @bop0 28 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (which)s 13(can)m 14(potentially)m 13(take)m 13(quite)m 14 r 97 c 13(long)m 13(time.)m 23(During)m 13(this)m 13(time,)m 14(the)m 14(network)m 13(would)m 13(not)m 13(be)m 14(available)m 13(for)m 13(transit)m 14(data)m 0 245 p (traf)s (\014c.)s 14(The)m 11(Backup)m 11(Designated)m 10(obviates)m 11(the)m 11(need)m 10(to)m 11(form)m 11(these)m 11(adjacencies,)m 10(since)m 11(they)m 11(already)m 11(exist.)m 15(This)m 10(means)m 11(the)m 0 295 p (period)s 14(of)m 13(disruption)m 14(in)m 14(transit)m 14(traf)m (\014c)s 13(lasts)m 13(only)m 14(as)m 14(long)m 14(as)m 13(it)m 14(take)m 14(to)m 14(\015ood)m 13(the)m 14(new)m 14(link)m 14(state)m 13(advertisements)m 14(\(which)m 0 345 p (announce)s 10(the)m 11(new)m 10(Designated)m 11(Router\).)m 0 408 p (The)s 7(Backup)m 7(Designated)m 7(Router)m 7(does)m 7(not)m 7(generate)m 7 r 97 c 7(network)m 7(links)m 7(advertisement)m 7(for)m 8(the)m 7(network.)m 12(\(If)m 7(it)m 7(did,)m 8(the)m 7(transition)m 0 458 p (to)s 14 r 97 c 13(new)m 14(Designated)m 14(Router)m 13(would)m 14(be)m 14(even)m 13(faster)m -1 r 46 c 22(However)m 44 c 13(this)m 14(is)m 14 r 97 c 13(tradeof)m 102 c 13(between)m 14(database)m 13(size)m 14(and)m 14(speed)m 13(of)m 0 507 p (conver)s (gence)s 10(when)m 10(the)m 10(Designated)m 11(Router)m 10(disappears.\))m 0 571 p (The)s 11(Backup)m 11(Designated)m 11(Router)m 11(is)m 11(also)m 11(elected)m 12(by)m 11(the)m 11(Hello)m 11(Protocol.)m 16(Each)m 11(Hello)m 11(Packet)m 11(has)m 11 r 97 c 11(\014eld)m 11(that)m 11(speci\014es)m 11(the)m 0 621 p (Backup)s 10(Designated)m 11(Router)m 10(for)m 11(the)m 10(network.)m 0 684 p (In)s 13(some)m 12(steps)m 13(of)m 12(the)m 13(\015ooding)m 12(procedure,)m 13(the)m 13(Backup)m 12(Designated)m 13(Router)m 12(plays)m 13 r 97 c 12(passive)m 13(role,)m 13(letting)m 13(the)m 12(Designated)m 0 734 p (Router)s 16(do)m 15(more)m 16(of)m 15(the)m 16(work.)m 29(This)m 16(cuts)m 15(down)m 16(on)m 15(the)m 16(amount)m 15(of)m 16(local)m 16(routing)m 15(traf)m (\014c.)s 29(See)m 15(Section)m 16(13.3)m 15(for)m 16(more)m 0 784 p (information.)s t-bol.360 @sf 0 914 p (7.5)s 50(The)m 12(graph)m 13(of)m 12(adjacencies)m t-rom.300 @sf 0 1005 p (An)s 10(adjacency)m 11(is)m 10(bound)m 11(to)m 10(the)m 11(network)m 10(that)m 11(the)m 10(two)m 11(routers)m 10(have)m 11(in)m 10(common.)m 14(If)m 11(two)m 10(routers)m 11(have)m 10(multiple)m 11(networks)m 10(in)m 0 1055 p (common,)s 10(they)m 11(may)m 10(have)m 11(multiple)m 10(adjacencies)m 10(between)m 11(them.)m 0 1118 p (One)s 13(can)m 12(picture)m 13(the)m 12(collection)m 13(of)m 12(adjacencies)m 13(on)m 13 r 97 c 12(network)m 13(as)m 12(forming)m 13(an)m 12(undirected)m 13(graph.)m 20(The)m 13(vertices)m 12(consist)m 13(of)m 0 1168 p (routers,)s 11(with)m 11(an)m 12(edge)m 11(joining)m 11(two)m 11(routers)m 11(if)m 11(they)m 11(are)m 12(adjacent.)m 16(The)m 11(graph)m 11(of)m 11(adjacencies)m 11(describes)m 11(the)m 11(\015ow)m 11(of)m 12(routing)m 0 1218 p (protocol)s 10(packets,)m 11(and)m 10(in)m 11(particular)m 10(Link)m 10(State)m 11(Updates,)m 10(through)m 11(the)m 10(Autonomous)m 11(System.)m 0 1281 p 84 c -2(wo)m 14(graphs)m 14(are)m 15(possible,)m 15(depending)m 15(on)m 15(whether)m 14(the)m 15(common)m 14(network)m 15(is)m 15(multi-access.)m 26(On)m 15(physical)m 14(point-to-point)m 0 1331 p (networks)s 13(\(and)m 13(virtual)m 13(links\),)m 13(the)m 13(two)m 13(routers)m 13(joined)m 13(by)m 13(the)m 13(network)m 13(will)m 13(be)m 13(adjacent)m 13(after)m 13(their)m 13(databases)m 13(have)m 13(been)m 0 1381 p (synchronized.)s 14(On)m 9(multi-access)m 10(networks,)m 10(both)m 10(the)m 9(Designated)m 10(Router)m 10(and)m 10(the)m 9(Backup)m 10(Designated)m 10(Router)m 9(are)m 10(adjacent)m 0 1431 p (to)s 10(all)m 11(other)m 10(routers)m 11(attached)m 10(to)m 10(the)m 11(network,)m 10(and)m 11(these)m 10(account)m 11(for)m 10(all)m 10(adjacencies.)m 0 1494 p (These)s 13(graphs)m 12(are)m 13(shown)m 13(in)m 13(Figure)m 12(10.)m 21(It)m 13(is)m 13(assumed)m 13(that)m 12(router)m 13 r 82 c -1(T7)m 11(has)m 13(become)m 13(the)m 12(Designated)m 13(Router)m 44 c 12(and)m 13(router)m 0 1544 p 82 c -2(T3)m 11(the)m 12(Backup)m 12(Designated)m 12(Router)m 44 c 11(for)m 12(the)m 12(network)m 12(N2.)m 18(The)m 12(Backup)m 12(Designated)m 12(Router)m 12(performs)m 12 r 97 c 11(lesser)m 12(function)m 0 1594 p (during)s 12(the)m 11(\015ooding)m 12(procedure)m 12(than)m 11(the)m 12(Designated)m 12(Router)m 12(\(see)m 11(Section)m 12(13.3\).)m 18(This)m 11(is)m 12(the)m 12(reason)m 11(for)m 12(the)m 12(dashed)m 11(lines)m 0 1644 p (connecting)s 10(the)m 11(Backup)m 10(Designated)m 11(Router)m 10 r 82 c -1(T3.)m t-bol.420 @sf 0 1795 p 56 c 58(Pr)m (otocol)s 14(Packet)m 14(Pr)m (ocessing)s t-rom.300 @sf 0 1901 p (This)s 10(section)m 11(discusses)m 10(the)m 10(general)m 10(processing)m 11(of)m 10(routing)m 10(protocol)m 10(packets.)m 14(It)m 11(is)m 10(very)m 10(important)m 10(that)m 11(the)m 10(router)m 10(topolog-)m 0 1951 p (ical)s 12(databases)m 12(remain)m 12(synchronized.)m 19(For)m 12(this)m 12(reason,)m 12(routing)m 12(protocol)m 12(packets)m 12(should)m 12(get)m 12(preferential)m 12(treatment)m 12(over)m 0 2001 p (ordinary)s 10(data)m 11(packets,)m 10(both)m 11(in)m 10(sending)m 10(and)m 11(receiving.)m 0 2064 p (Routing)s 15(protocol)m 14(packets)m 15(are)m 15(sent)m 14(along)m 15(adjacencies)m 15(only)m 14(\(with)m 15(the)m 15(exception)m 14(of)m 15(Hello)m 14(packets,)m 16(which)m 15(are)m 14(used)m 15(to)m 0 2114 p (discover)s 12(the)m 12(adjacencies\).)m 19(This)m 12(means)m 12(that)m 12(all)m 12(protocol)m 12(packets)m 12(travel)m 12 r 97 c 12(single)m 12(IP)m 12(hop,)m 12(except)m 12(those)m 12(sent)m 12(over)m 12(virtual)m 0 2164 p (links.)s 0 2227 p (All)s 12(routing)m 12(protocol)m 12(packets)m 13(begin)m 12(with)m 12 r 97 c 12(standard)m 12(header)m -1 r 46 c 18(The)m 12(sections)m 12(below)m 12(give)m 13(the)m 12(details)m 12(on)m 12(how)m 12(to)m 12(\014ll)m 13(in)m 12(and)m 0 2277 p (verify)s 11(this)m 12(standard)m 11(header)m -1 r 46 c 16(Then,)m 11(for)m 12(each)m 11(packet)m 11(type,)m 12(the)m 12(section)m 11(is)m 11(listed)m 12(that)m 11(gives)m 11(more)m 12(details)m 11(on)m 12(that)m 11(particular)m 0 2327 p (packet)s 10(type')m -1 r 115 c 10(processing.)m t-bol.360 @sf 0 2457 p (8.1)s 50(Sending)m 12(pr)m (otocol)s 12(packets)m t-rom.300 @sf 0 2549 p (When)s 10 r 97 c 10(router)m 10(sends)m 10 r 97 c 10(routing)m 9(protocol)m 10(packet,)m 10(it)m 10(\014lls)m 10(in)m 10(the)m 10(\014elds)m 10(of)m 10(that)m 10(standard)m 10(header)m 9(as)m 10(follows.)m 14(For)m 10(more)m 10(details)m 0 2599 p (on)s 10(the)m 11(header)m 10(format)m 11(consult)m 10(Section)m 10(A.3.1:)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(28])m @eop 27 @bop0 27 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (Request)s 13(packets)m 13(that)m 13(are)m 13(not)m 13(satis\014ed)m 13(are)m 13(retransmitted)m 12(at)m 13(\014xed)m 13(intervals)m 13(of)m 13(time)m 13(RxmtInterval.)m 22(When)m 12(the)m 13(Database)m 0 245 p (Description)s 9(Process)m 9(has)m 9(completed)m 9(and)m 9(all)m 9(Link)m 9(State)m 9(Requests)m 9(have)m 9(been)m 9(satis\014ed,)m 9(the)m 9(databases)m 9(are)m 9(deemed)m 9(synchro-)m 0 295 p (nized)s 11(and)m 10(the)m 11(routers)m 11(are)m 10(marked)m 11(fully)m 11(adjacent.)m 14(At)m 11(this)m 11(time)m 11(the)m 10(adjacency)m 11(is)m 11(fully)m 10(functional)m 11(and)m 11(is)m 10(advertised)m 11(in)m 11(the)m 0 345 p (two)s 10(routers')m 11(link)m 10(state)m 11(advertisements.)m 0 412 p (The)s 12(adjacency)m 13(is)m 12(used)m 12(by)m 13(the)m 12(\015ooding)m 13(procedure)m 12(as)m 12(soon)m 13(as)m 12(the)m 12(Database)m 13(Exchange)m 12(Process)m 13(begins.)m 19(This)m 13(simpli\014es)m 0 461 p (database)s 10(synchronization,)m 11(and)m 10(guarantees)m 11(that)m 10(it)m 10(\014nishes)m 11(in)m 10 r 97 c 11(predictable)m 10(period)m 11(of)m 10(time.)m t-bol.360 @sf 0 597 p (7.3)s 50(The)m 12(Designated)m 13(Router)m t-rom.300 @sf 0 692 p (Every)s 13(multi-access)m 13(network)m 13(has)m 14 r 97 c 13(Designated)m 13(Router)m -1 r 46 c 21(The)m 13(Designated)m 13(Router)m 13(performs)m 13(two)m 13(main)m 14(functions)m 13(for)m 13(the)m 0 742 p (routing)s 10(protocol:)m cmsy10.300 @sf 62 849 p 15 c t-rom.300 @sf 21(The)m 11(Designated)m 11(Router)m 11(originates)m 11 r 97 c 12(network)m 11(links)m 11(advertisement)m 11(on)m 11(behalf)m 11(of)m 11(the)m 11(network.)m 16(This)m 11(advertisement)m 104 899 p (lists)s 15(the)m 14(set)m 15(of)m 15(routers)m 15(\(including)m 14(the)m 15(Designated)m 15(Router)m 15(itself\))m 14(currently)m 15(attached)m 15(to)m 14(the)m 15(network.)m 27(The)m 15(Link)m 104 949 p (State)s 10(ID)m 10(for)m 10(this)m 10(advertisement)m 10(\(see)m 10(Section)m 10(12.1.4\))m 10(is)m 10(the)m 10(IP)m 10(interface)m 9(address)m 10(of)m 10(the)m 10(Designated)m 10(Router)m -1 r 46 c 13(The)m 10(IP)m 104 998 p (network)s 10(number)m 11(can)m 10(then)m 10(be)m 11(obtained)m 10(by)m 11(using)m 10(the)m 11(subnet/network)m 10(mask.)m cmsy10.300 @sf 62 1081 p 15 c t-rom.300 @sf 21(The)m 11(Designated)m 12(router)m 11(becomes)m 12(adjacent)m 11(to)m 12(all)m 11(other)m 11(routers)m 12(on)m 11(the)m 12(network.)m 17(Since)m 11(the)m 11(link)m 12(state)m 11(databases)m 12(are)m 104 1131 p (synchronized)s 10(across)m 10(adjacencies)m 11(\(through)m 10(adjacency)m 10(bring-up)m 10(and)m 11(then)m 10(the)m 10(\015ooding)m 11(procedure\),)m 10(the)m 10(Designated)m 104 1180 p (Router)s 10(plays)m 11 r 97 c 10(central)m 10(part)m 11(in)m 10(the)m 11(synchronization)m 10(process.)m 0 1287 p (The)s 12(Designated)m 12(Router)m 12(is)m 12(elected)m 12(by)m 12(the)m 12(Hello)m 12(Protocol.)m 18 r 65 c 12(router)m 2 r 39 c -1 r 115 c 11(Hello)m 12(Packet)m 12(contains)m 12(its)m 12(Router)m 12(Priority)m -2 r 44 c 11(which)m 0 1337 p (is)s 12(con\014gurable)m 13(on)m 12 r 97 c 13(per)m (-interface)s 11(basis.)m 20(In)m 13(general,)m 13(when)m 12 r 97 c 13(router)m 1 r 39 c -1 r 115 c 11(interface)m 13(to)m 12 r 97 c 13(network)m 12(\014rst)m 12(becomes)m 13(functional,)m 0 1387 p (it)s 14(checks)m 15(to)m 14(see)m 14(whether)m 14(there)m 15(is)m 14(currently)m 14 r 97 c 14(Designated)m 15(Router)m 14(for)m 14(the)m 15(network.)m 25(If)m 14(there)m 15(is,)m 15(it)m 14(accepts)m 14(that)m 15(Desig-)m 0 1437 p (nated)s 11(Router)m -1 r 44 c 10(regardless)m 11(of)m 11(its)m 11(Router)m 11(Priority)m -2 r 46 c 14(\(This)m 11(makes)m 11(it)m 11(harder)m 11(to)m 11(predict)m 11(the)m 11(identity)m 10(of)m 11(the)m 11(Designated)m 11(Router)m -1 r 44 c 0 1487 p (but)s 12(ensures)m 12(that)m 12(the)m 13(Designated)m 12(Router)m 12(changes)m 12(less)m 12(often.)m 19(See)m 13(below)m -2(.\))m 18(Otherwise,)m 13(the)m 12(router)m 12(itself)m 12(becomes)m 12(Desig-)m 0 1536 p (nated)s 11(Router)m 11(if)m 11(it)m 10(has)m 11(the)m 11(highest)m 11(Router)m 11(Priority)m 11(on)m 11(the)m 10(network.)m 16 r 65 c 11(more)m 10(detailed)m 11(\(and)m 11(more)m 11(accurate\))m 11(description)m 11(of)m 0 1586 p (Designated)s 10(Router)m 11(election)m 10(is)m 11(presented)m 10(in)m 10(Section)m 11(9.4.)m 0 1653 p (The)s 10(Designated)m 10(Router)m 10(is)m 9(the)m 10(endpoint)m 10(of)m 10(many)m 10(adjacencies.)m 14(In)m 9(order)m 10(to)m 10(optimize)m 10(the)m 10(\015ooding)m 10(procedure)m 10(on)m 9(broadcast)m 0 1703 p (networks,)s 12(the)m 12(Designated)m 12(Router)m 11(multicasts)m 12(its)m 12(Link)m 12(State)m 11(Update)m 12(Packets)m 12(to)m 12(the)m 11(address)m 12(AllSPFRouters,)m 12(rather)m 12(than)m 0 1753 p (sending)s 10(separate)m 11(packets)m 10(over)m 11(each)m 10(adjacency)m -2 r 46 c 0 1820 p (Section)s 10 r 50 c 9(of)m 10(this)m 9(document)m 10(discusses)m 9(the)m 10(directed)m 9(graph)m 10(representation)m 10(of)m 9(an)m 10(area.)m 13(Router)m 10(nodes)m 9(are)m 10(labelled)m 10(with)m 9(their)m 0 1870 p (Router)s 12(ID.)m 12(Broadcast)m 12(network)m 12(nodes)m 12(are)m 12(actually)m 12(labelled)m 12(with)m 12(the)m 11(IP)m 12(address)m 12(of)m 12(their)m 12(Designated)m 12(Router)m -1 r 46 c 17(It)m 12(follows)m 0 1919 p (that)s 13(when)m 13(the)m 12(Designated)m 13(Router)m 13(changes,)m 14(it)m 12(appears)m 13(as)m 13(if)m 13(the)m 13(network)m 13(node)m 12(on)m 13(the)m 13(graph)m 13(is)m 13(replaced)m 12(by)m 13(an)m 13(entirely)m 0 1969 p (new)s 12(node.)m 20(This)m 12(will)m 13(cause)m 12(the)m 13(network)m 12(and)m 12(all)m 13(its)m 12(attached)m 12(routers)m 13(to)m 12(originate)m 12(new)m 13(link)m 12(state)m 13(advertisements.)m 19(Until)m 0 2019 p (the)s 11(topological)m 12(databases)m 11(again)m 11(conver)m (ge,)s 11(some)m 12(temporary)m 11(loss)m 11(of)m 12(connectivity)m 11(may)m 11(result.)m 17(This)m 11(may)m 12(result)m 11(in)m 11(ICMP)m 0 2069 p (unreachable)s 13(messages)m 14(being)m 13(sent)m 13(in)m 13(response)m 14(to)m 13(data)m 13(traf)m (\014c.)s 22(For)m 13(that)m 13(reason,)m 14(the)m 13(Designated)m 14(Router)m 13(should)m 13(change)m 0 2119 p (only)s 11(infrequently)m -2 r 46 c 14(Router)m 11(Priorities)m 11(should)m 11(be)m 11(con\014gured)m 11(so)m 11(that)m 11(the)m 11(most)m 10(dependable)m 11(router)m 11(on)m 11 r 97 c 11(network)m 11(eventually)m 0 2169 p (becomes)s 10(Designated)m 11(Router)m -1 r 46 c t-bol.360 @sf 0 2304 p (7.4)s 50(The)m 12(Backup)m 13(Designated)m 12(Router)m t-rom.300 @sf 0 2399 p (In)s 12(order)m 12(to)m 12(make)m 12(the)m 12(transition)m 12(to)m 12 r 97 c 12(new)m 12(Designated)m 12(Router)m 12(smoother)m -1 r 44 c 12(there)m 12(is)m 12 r 97 c 12(Backup)m 12(Designated)m 12(Router)m 12(for)m 12(each)m 0 2449 p (multi-access)s 14(network.)m 24(The)m 14(Backup)m 14(Designated)m 14(Router)m 13(is)m 14(also)m 14(adjacent)m 14(to)m 14(all)m 14(routers)m 14(on)m 13(the)m 14(network,)m 15(and)m 14(becomes)m 0 2499 p (Designated)s 12(Router)m 12(when)m 13(the)m 12(previous)m 12(Designated)m 12(Router)m 12(fails.)m 19(If)m 12(there)m 13(were)m 12(no)m 12(Backup)m 12(Designated)m 12(Router)m 44 c 11(when)m 12 r 97 c 0 2549 p (new)s 10(Designated)m 10(Router)m 10(became)m 10(necessary)m -2 r 44 c 9(new)m 10(adjacencies)m 10(would)m 10(have)m 10(to)m 10(be)m 10(formed)m 10(between)m 10(the)m 10(router)m 10(and)m 10(all)m 10(other)m 0 2599 p (routers)s 11(attached)m 11(to)m 11(the)m 11(network.)m 15(Part)m 11(of)m 11(the)m 11(adjacency)m 11(forming)m 11(process)m 11(is)m 11(the)m 11(synchronizing)m 11(of)m 11(topological)m 11(databases,)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(27])m @eop 26 @bop0 26 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p 55 c 58(Bringing)m 15(Up)m 14(Adjacencies)m t-rom.300 @sf 0 303 p (OSPF)s 10(creates)m 10(adjacencies)m 11(between)m 10(neighboring)m 10(routers)m 10(for)m 10(the)m 10(purpose)m 11(of)m 10(exchanging)m 10(routing)m 10(information.)m 14(Not)m 10(every)m 0 352 p (two)s 12(neighboring)m 11(routers)m 12(will)m 11(become)m 12(adjacent.)m 17(This)m 12(section)m 11(covers)m 12(the)m 12(generalities)m 11(involved)m 12(in)m 11(creating)m 12(adjacencies.)m 0 402 p (For)s 10(further)m 11(details)m 10(consult)m 11(Section)m 10(10.)m t-bol.360 @sf 0 534 p (7.1)s 50(The)m 12(Hello)m 13(Pr)m (otocol)s t-rom.300 @sf 0 627 p (The)s 9(Hello)m 9(Protocol)m 8(is)m 9(responsible)m 9(for)m 9(establishing)m 9(and)m 8(maintaining)m 9(neighbor)m 9(relationships.)m 13(It)m 9(also)m 9(ensures)m 9(that)m 9(commu-)m 0 677 p (nication)s 10(between)m 10(neighbors)m 9(is)m 10(bidirectional.)m 14(Hello)m 10(packets)m 9(are)m 10(sent)m 10(periodically)m 10(out)m 10(all)m 9(router)m 10(interfaces.)m 14(Bidirectional)m 0 727 p (communication)s 10(is)m 11(indicated)m 10(when)m 11(the)m 10(router)m 10(sees)m 11(itself)m 10(listed)m 11(in)m 10(the)m 11(neighbor)m 1 r 39 c -1 r 115 c 9(Hello)m 11(Packet.)m 0 791 p (On)s 12(multi-access)m 13(networks,)m 13(the)m 12(Hello)m 13(Protocol)m 12(elects)m 13 r 97 c 12(Designated)m 13(Router)m 12(for)m 13(the)m 12(network.)m 20(Among)m 13(other)m 12(things,)m 13(the)m 0 841 p (Designated)s 10(Router)m 11(controls)m 10(what)m 11(adjacencies)m 10(will)m 10(be)m 11(formed)m 10(over)m 11(the)m 10(network)m 11(\(see)m 10(below\).)m 0 905 p (The)s 12(Hello)m 11(Protocol)m 12(works)m 11(dif)m (ferently)s 11(on)m 12(broadcast)m 12(networks,)m 11(as)m 12(compared)m 12(to)m 11(non-broadcast)m 12(networks.)m 17(On)m 12(broadcast)m 0 955 p (networks,)s 9(each)m 10(router)m 9(advertises)m 9(itself)m 9(by)m 9(periodically)m 10(multicasting)m 9(Hello)m 9(Packets.)m 13(This)m 10(allows)m 9(neighbors)m 9(to)m 9(be)m 9(discov-)m 0 1005 p (ered)s 12(dynamically)m -2 r 46 c 19(These)m 12(Hello)m 12(Packets)m 12(contain)m 12(the)m 12(router)m 2 r 39 c -1 r 115 c 11(view)m 12(of)m 12(the)m 12(Designated)m 12(Router)m 2 r 39 c -1 r 115 c 11(identity)m -2 r 44 c 12(and)m 12(the)m 12(list)m 12(of)m 0 1055 p (routers)s 10(whose)m 11(Hellos)m 10(have)m 11(been)m 10(seen)m 10(recently)m -1 r 46 c 0 1119 p (On)s 9(non-broadcast)m 10(networks)m 9(some)m 9(con\014guration)m 9(information)m 10(is)m 9(necessary)m 9(for)m 10(the)m 9(operation)m 9(of)m 10(the)m 9(Hello)m 9(Protocol.)m 14(Each)m 0 1169 p (router)s 10(that)m 10(may)m 11(potentially)m 10(become)m 10(Designated)m 10(Router)m 10(has)m 11 r 97 c 10(list)m 10(of)m 10(all)m 10(other)m 11(routers)m 10(attached)m 10(to)m 10(the)m 10(network.)m 14 r 65 c 10(router)m 44 c 0 1219 p (having)s 13(Designated)m 13(Router)m 13(potential,)m 13(sends)m 13(hellos)m 13(to)m 12(all)m 13(other)m 13(potential)m 13(Designated)m 13(Routers)m 13(when)m 12(its)m 13(interface)m 13(to)m 13(the)m 0 1269 p (non-broadcast)s 10(network)m 10(\014rst)m 10(becomes)m 11(operational.)m 13(This)m 10(is)m 11(an)m 10(attempt)m 10(to)m 10(\014nd)m 10(the)m 10(Designated)m 10(Router)m 10(for)m 11(the)m 10(network.)m 13(If)m 0 1319 p (the)s 10(router)m 11(itself)m 10(is)m 11(elected)m 10(Designated)m 10(Router)m 44 c 9(it)m 11(begins)m 10(sending)m 10(hellos)m 11(to)m 10(all)m 11(other)m 10(routers)m 11(attached)m 10(to)m 10(the)m 11(network.)m 0 1383 p (After)s 15 r 97 c 15(neighbor)m 14(has)m 15(been)m 15(discovered,)m 16(bidirectional)m 14(communication)m 15(ensured,)m 16(and)m 15(\(if)m 15(on)m 14 r 97 c 15(multi-access)m 15(network\))m 15 r 97 c 0 1433 p (Designated)s 15(Router)m 16(elected,)m 16 r 97 c 16(decision)m 15(is)m 15(made)m 16(regarding)m 15(whether)m 15(or)m 15(not)m 16(an)m 15(adjacency)m 15(should)m 16(be)m 15(formed)m 15(with)m 16(the)m 0 1483 p (neighbor)s 14(\(see)m 13(Section)m 14(10.4\).)m 23(An)m 14(attempt)m 14(is)m 13(always)m 14(made)m 13(to)m 14(establish)m 14(adjacencies)m 13(over)m 14(point-to-point)m 14(networks)m 13(and)m 0 1533 p (virtual)s 10(links.)m 13(The)m 10(\014rst)m 10(step)m 9(in)m 10(bringing)m 10(up)m 9(an)m 10(adjacency)m 9(is)m 10(to)m 10(synchronize)m 9(the)m 10(neighbors')m 10(topological)m 9(databases.)m 14(This)m 10(is)m 0 1582 p (covered)s 10(in)m 11(the)m 10(next)m 11(section.)m t-bol.360 @sf 0 1715 p (7.2)s 50(The)m 12(Synchr)m (onization)s 12(of)m 13(Databases)m t-rom.300 @sf 0 1807 p (In)s 14(an)m 13(SPF-based)m 14(routing)m 13(algorithm,)m 15(it)m 14(is)m 13(very)m 14(important)m 13(for)m 14(all)m 14(routers')m 13(topological)m 14(databases)m 13(to)m 14(stay)m 14(synchronized.)m 0 1857 p (OSPF)s 11(simpli\014es)m 11(this)m 11(by)m 11(requiring)m 11(only)m 11(adjacent)m 11(routers)m 12(to)m 11(remain)m 11(synchronized.)m 15(The)m 12(synchronization)m 11(process)m 11(begins)m 0 1907 p (as)s 11(soon)m 11(as)m 11(the)m 11(routers)m 11(attempt)m 11(to)m 11(bring)m 11(up)m 11(the)m 11(adjacency)m -1 r 46 c 14(Each)m 11(router)m 11(describes)m 11(its)m 11(database)m 11(by)m 11(sending)m 11 r 97 c 11(sequence)m 11(of)m 0 1957 p (Database)s 9(Description)m 9(packets)m 9(to)m 9(its)m 9(neighbor)m -1 r 46 c 12(Each)m 9(Database)m 9(Description)m 9(Packet)m 9(describes)m 9 r 97 c 9(set)m 9(of)m 9(link)m 9(state)m 9(advertise-)m 0 2006 p (ments)s 12(belonging)m 11(to)m 12(the)m 11(database.)m 17(When)m 12(the)m 11(neighbor)m 12(sees)m 11 r 97 c 12(link)m 11(state)m 12(advertisement)m 11(that)m 12(is)m 11(more)m 12(recent)m 12(than)m 11(its)m 12(own)m 0 2056 p (database)s 10(copy)m -1 r 44 c 9(it)m 11(makes)m 10 r 97 c 10(note)m 11(that)m 10(this)m 11(newer)m 10(advertisement)m 10(should)m 11(be)m 10(requested.)m 0 2121 p (This)s 11(sending)m 12(and)m 11(receiving)m 12(of)m 11(Database)m 11(Description)m 12(packets)m 11(is)m 11(called)m 12(the)m 11(\\Database)m 12(Exchange)m 11(Process".)m 17(During)m 11(this)m 0 2171 p (process,)s 11(the)m 11(two)m 11(routers)m 10(form)m 11 r 97 c 11(master/slave)m 11(relationship.)m 15(Each)m 11(Database)m 11(Description)m 11(Packet)m 10(has)m 11 r 97 c 11(sequence)m 11(number)m -1 r 46 c 0 2220 p (Database)s 7(Description)m 8(Packets)m 7(sent)m 8(by)m 7(the)m 8(master)m 7(\(polls\))m 7(are)m 8(acknowledged)m 7(by)m 8(the)m 7(slave)m 8(through)m 7(echoing)m 8(of)m 7(the)m 7(sequence)m 0 2270 p (number)s -1 r 46 c 17(Both)m 12(polls)m 12(and)m 12(their)m 13(responses)m 12(contain)m 12(summaries)m 12(of)m 12(link)m 12(state)m 12(data.)m 18(The)m 12(master)m 12(is)m 12(the)m 12(only)m 12(one)m 13(allowed)m 12(to)m 0 2320 p (retransmit)s 15(Database)m 15(Description)m 15(Packets.)m 27(It)m 15(does)m 15(so)m 15(only)m 15(at)m 15(\014xed)m 15(intervals,)m 16(the)m 15(length)m 15(of)m 15(which)m 15(is)m 14(the)m 15(con\014gured)m 0 2370 p (constant)s 10(RxmtInterval.)m 0 2434 p (Each)s 12(Database)m 12(Description)m 12(contains)m 12(an)m 12(indication)m 12(that)m 12(there)m 12(are)m 12(more)m 12(packets)m 12(to)m 12(follow)m 12 r 124 c 12(the)m 12(M-bit.)m 19(The)m 12(Database)m 0 2484 p (Exchange)s 10(Process)m 11(is)m 10(over)m 11(when)m 10 r 97 c 10(router)m 11(has)m 10(received)m 11(and)m 10(sent)m 11(Database)m 10(Description)m 10(Packets)m 11(with)m 10(the)m 11(M-bit)m 10(of)m (f.)s 0 2549 p (During)s 9(and)m 9(after)m 9(the)m 10(Database)m 9(Exchange)m 9(Process,)m 9(each)m 9(router)m 9(has)m 10 r 97 c 9(list)m 9(of)m 9(those)m 9(link)m 9(state)m 9(advertisements)m 10(for)m 9(which)m 9(the)m 0 2599 p (neighbor)s 9(has)m 8(more)m 9(up-to-date)m 8(instances.)m 14(These)m 8(advertisements)m 9(are)m 8(requested)m 9(in)m 8(Link)m 9(State)m 8(Request)m 9(Packets.)m 13(Link)m 9(State)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(26])m @eop 25 @bop0 25 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p 54 c 58(The)m 15(Ar)m (ea)s 13(Data)m 15(Structur)m 101 c t-rom.300 @sf 0 306 p (The)s 10(area)m 10(data)m 11(structure)m 10(contains)m 10(all)m 10(the)m 11(information)m 10(used)m 10(to)m 10(run)m 10(the)m 11(basic)m 10(routing)m 10(algorithm.)m 14(Remember)m 10(that)m 10(each)m 11(area)m 0 355 p (maintains)s 10(its)m 11(own)m 10(topological)m 11(database.)m 14(Router)m 10(interfaces)m 10(and)m 11(adjacencies)m 10(belong)m 11(to)m 10 r 97 c 10(single)m 11(area.)m 0 423 p (The)s 12(backbone)m 12(has)m 11(all)m 12(the)m 12(properties)m 12(of)m 12(an)m 12(area.)m 18(For)m 11(that)m 12(reason)m 12(it)m 12(is)m 12(also)m 12(represented)m 11(by)m 12(an)m 12(area)m 12(data)m 12(structure.)m 18(Note)m 0 473 p (that)s 10(some)m 11(items)m 10(in)m 11(the)m 10(structure)m 10(apply)m 11(dif)m (ferently)s 10(to)m 10(the)m 10(backbone)m 11(than)m 10(to)m 11(areas.)m 0 540 p (The)s 9(area)m 9(topological)m 9(\(or)m 8(link)m 9(state\))m 9(database)m 9(consists)m 9(of)m 9(the)m 9(collection)m 8(of)m 9(router)m 9(links,)m 9(network)m 9(links)m 9(and)m 9(summary)m 9(links)m 0 590 p (advertisements)s 10(that)m 9(have)m 10(originated)m 10(from)m 9(the)m 10(area')m -1 r 115 c 9(routers.)m 13(This)m 10(information)m 10(is)m 9(\015ooded)m 10(throughout)m 10 r 97 c 9(single)m 10(area)m 10(only)m -2 r 46 c 0 640 p (The)s 10(list)m 11(of)m 10(AS)m 11(external)m 10(advertisements)m 10(is)m 11(also)m 10(considered)m 11(to)m 10(be)m 11(part)m 10(of)m 10(each)m 11(area')m -1 r 115 c 9(topological)m 10(database.)m t-bol.300 @sf 0 748 p (Ar)s (ea)s 10(ID)m t-rom.300 @sf 20 r 65 c 12(32-bit)m 11(number)m 11(identifying)m 11(the)m 11(area.)m 17 r 48 c 11(is)m 11(reserved)m 11(for)m 11(the)m 12(area)m 11(ID)m 11(of)m 11(the)m 11(backbone.)m 17(If)m 11(assigning)m 11(subnetted)m 104 798 p (networks)s 10(as)m 11(separate)m 10(areas,)m 10(the)m 11(IP)m 10(network)m 11(number)m 10(could)m 11(be)m 10(used)m 10(as)m 11(the)m 10(Area)m 11(ID.)m t-bol.300 @sf 0 881 p (List)s 10(of)m 11(component)m 10(addr)m (ess)s 10(ranges)m t-rom.300 @sf 21(The)m 13(address)m 13(ranges)m 13(that)m 14(de\014ne)m 13(the)m 13(area.)m 23(Each)m 13(address)m 13(range)m 13(is)m 14(speci\014ed)m 13(by)m 13(an)m 104 931 p ([address,mask])s 11(pair)m -1 r 46 c 16(Each)m 12(network)m 11(is)m 12(then)m 11(assigned)m 11(to)m 12(an)m 11(area)m 12(depending)m 11(on)m 12(the)m 11(address)m 12(range)m 11(that)m 12(it)m 11(falls)m 12(into)m 104 981 p (\(speci\014ed)s 13(address)m 13(ranges)m 13(are)m 13(not)m 13(allowed)m 13(to)m 14(overlap\).)m 22(As)m 13(an)m 13(example,)m 14(if)m 13(an)m 13(IP)m 13(subnetted)m 13(network)m 13(is)m 13(to)m 13(be)m 13(its)m 104 1030 p (own)s 9(separate)m 10(OSPF)m 10(area,)m 9(the)m 10(area)m 10(is)m 9(de\014ned)m 10(to)m 9(consist)m 10(of)m 10 r 97 c 9(single)m 10(address)m 9(range)m 10 r 45 c 10(an)m 9(IP)m 10(network)m 9(number)m 10(with)m 10(its)m 104 1080 p (natural)s 10(\(class)m 11(A,)m 10 r 66 c 10(or)m 11(C\))m 10(mask.)m t-bol.300 @sf 0 1163 p (Associated)s 10 r 114 c (outer)s 10(interfaces)m t-rom.300 @sf 21(This)m 12(router)m 1 r 39 c -1 r 115 c 11(interfaces)m 12(connecting)m 12(to)m 13(the)m 12(area.)m 18 r 65 c 13(router)m 12(interface)m 12(belongs)m 12(to)m 12(one)m 12(and)m 104 1213 p (only)s 14(one)m 14(area)m 14(\(or)m 14(the)m 14(backbone\).)m 25(For)m 14(the)m 14(backbone)m 14(structure)m 14(this)m 14(list)m 15(includes)m 14(all)m 14(the)m 14(virtual)m 14(adjacencies.)m 25 r 65 c 104 1263 p (virtual)s 10(adjacency)m 10(is)m 11(identi\014ed)m 10(by)m 10(the)m 10(router)m 11(ID)m 10(of)m 10(its)m 10(other)m 11(endpoint;)m 10(its)m 10(cost)m 10(is)m 11(the)m 10(cost)m 10(of)m 11(the)m 10(shortest)m 10(intra-area)m 104 1312 p (path)s 10(that)m 11(exists)m 10(between)m 10(the)m 11(two)m 10(routers.)m t-bol.300 @sf 0 1395 p (List)s 10(of)m 11 r 114 c (outer)s 9(links)m 11(advertisements)m t-rom.300 @sf 21 r 65 c 9(router)m 9(links)m 9(advertisement)m 9(is)m 9(generated)m 9(by)m 9(each)m 9(router)m 9(in)m 9(the)m 9(area.)m 13(It)m 9(describes)m 104 1445 p (the)s 10(state)m 11(of)m 10(the)m 10(router)m 2 r 39 c -1 r 115 c 9(interfaces)m 11(to)m 10(the)m 10(area.)m t-bol.300 @sf 0 1528 p (List)s 10(of)m 11(network)m 10(links)m 11(advertisements)m t-rom.300 @sf 20(One)m 15(network)m 15(links)m 15(advertisement)m 15(is)m 14(generated)m 15(for)m 15(each)m 15(transit)m 15(multi-access)m 104 1578 p (network)s 10(in)m 11(the)m 10(area.)m 14(It)m 10(describes)m 11(the)m 10(set)m 11(of)m 10(routers)m 10(currently)m 11(connected)m 10(to)m 11(the)m 10(network.)m t-bol.300 @sf 0 1661 p (List)s 10(of)m 11(summary)m 10(links)m 11(advertisements)m t-rom.300 @sf 20(Summary)m 12(link)m 11(advertisements)m 11(originate)m 12(from)m 11(the)m 11(area')m -1 r 115 c 10(area)m 12(border)m 11(routers.)m 104 1710 p (They)s 10(describe)m 11(routes)m 10(to)m 10(destinations)m 11(internal)m 10(to)m 11(the)m 10(Autonomous)m 11(System,)m 10(yet)m 10(external)m 11(to)m 10(the)m 11(area.)m t-bol.300 @sf 0 1793 p (Shortest-path)s 10(tr)m (ee)s t-rom.300 @sf 20(The)m 9(shortest-path)m 8(tree)m 9(for)m 8(the)m 9(area,)m 8(with)m 9(this)m 8(router)m 9(itself)m 8(as)m 8(root.)m 14(Derived)m 8(from)m 9(the)m 8(collected)m 8(router)m 104 1843 p (links)s 10(and)m 11(network)m 10(links)m 10(advertisements)m 11(by)m 10(the)m 11(Dijkstra)m 10(algorithm.)m t-bol.300 @sf 0 1926 p (Authentication)s 10(type)m t-rom.300 @sf 21(The)m 11(type)m 12(of)m 11(authentication)m 11(used)m 11(for)m 11(this)m 12(area.)m 16(Authentication)m 11(types)m 11(are)m 12(de\014ned)m 11(in)m 11(Appendix)m 11(E.)m 104 1976 p (All)s 9(OSPF)m 10(packet)m 10(exchanges)m 10(are)m 9(authenticated.)m 14(Dif)m (ferent)s 9(authentication)m 10(schemes)m 9(may)m 10(be)m 10(used)m 9(in)m 10(dif)m (ferent)s 9(areas.)m t-bol.300 @sf 0 2058 p (External)s 10 r 114 c (outing)s 10(capability)m t-rom.300 @sf 21(Whether)m 10(AS)m 10(external)m 10(advertisements)m 11(will)m 10(be)m 10(\015ooded)m 10(into/throughout)m 10(the)m 10(area.)m 14(This)m 10(is)m 11 r 97 c 104 2108 p (con\014gurable)s 12(parameter)m -1 r 46 c 18(If)m 12(AS)m 12(external)m 12(advertisements)m 12(are)m 13(excluded)m 12(from)m 12(the)m 12(area,)m 13(the)m 12(area)m 12(is)m 12(called)m 12 r 97 c 13(\\stub".)m 104 2158 p (Internal)s 13(to)m 14(stub)m 14(areas,)m 14(routing)m 14(to)m 13(external)m 14(destinations)m 14(will)m 13(be)m 14(based)m 13(solely)m 14(on)m 14 r 97 c 13(default)m 14(summary)m 14(route.)m 23(The)m 104 2208 p (backbone)s 11(cannot)m 11(be)m 11(con\014gured)m 10(as)m 11 r 97 c 11(stub)m 11(area.)m 16(Also,)m 11(virtual)m 11(links)m 11(cannot)m 11(be)m 10(con\014gured)m 11(through)m 11(stub)m 11(areas.)m 16(For)m 104 2258 p (more)s 10(information,)m 11(see)m 10(Section)m 10(3.6.)m t-bol.300 @sf 0 2341 p (StubDefaultCost)s t-rom.300 @sf 21(If)m 13(the)m 13(area)m 13(has)m 13(been)m 13(con\014gured)m 14(as)m 13 r 97 c 13(stub)m 13(area,)m 14(and)m 13(the)m 13(router)m 13(itself)m 13(is)m 13(an)m 14(area)m 13(border)m 13(router)m -1 r 44 c 13(then)m 104 2390 p (the)s 9(StubDefaultCost)m 10(indicates)m 9(the)m 9(cost)m 10(of)m 9(the)m 10(default)m 9(summary)m 10(link)m 9(that)m 9(the)m 10(router)m 9(should)m 10(advertise)m 9(into)m 9(the)m 10(area.)m 104 2440 p (There)s 10(can)m 11(be)m 10 r 97 c 10(separate)m 11(cost)m 10(con\014gured)m 11(for)m 10(each)m 11(IP)m 10 r 84 c (OS.)s 13(See)m 10(Section)m 11(12.4.3)m 10(for)m 11(more)m 10(information.)m 0 2549 p (Unless)s 12(otherwise)m 11(speci\014ed,)m 12(the)m 12(remaining)m 11(sections)m 12(of)m 11(this)m 12(document)m 11(refer)m 12(to)m 11(the)m 12(operation)m 12(of)m 11(the)m 12(protocol)m 11(in)m 12 r 97 c 11(single)m 0 2599 p (area.)s 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(25])m @eop 24 @bop0 24 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 18779374 65781 20392345 45652541 48415375 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/figure9.fig %%Creator: f2ps %%CreationDate: Fri Jun 8 17:21:26 1990 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 1 310 694 736 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y translate xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix } def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Ellipse newpath 433 91 68 28 0 360 DrawEllipse stroke % Ellipse newpath 288 192 68 28 0 360 DrawEllipse stroke % Ellipse newpath 388 322 68 28 0 360 DrawEllipse stroke % Ellipse newpath 157 320 68 28 0 360 DrawEllipse stroke % Ellipse newpath 384 450 68 28 0 360 DrawEllipse stroke % Ellipse newpath 232 451 68 28 0 360 DrawEllipse stroke % Ellipse newpath 81 450 68 28 0 360 DrawEllipse stroke % Ellipse newpath 692 124 68 28 0 360 DrawEllipse stroke % Ellipse newpath 642 222 68 28 0 360 DrawEllipse stroke % Ellipse newpath 702 329 68 28 0 360 DrawEllipse stroke % Ellipse newpath 702 455 68 28 0 360 DrawEllipse stroke % Ellipse newpath 549 327 68 28 0 360 DrawEllipse stroke % Ellipse newpath 545 455 68 28 0 360 DrawEllipse stroke [4.000000] 0 setdash % Polyline newpath 356 196 moveto 518 301 lineto stroke [] 0 setdash newpath 512.375 294.971 moveto 518.000 301.000 lineto 510.199 298.327 lineto stroke % Polyline newpath 395 115 moveto 322 166 lineto stroke newpath 329.703 163.058 moveto 322.000 166.000 lineto 327.413 159.779 lineto stroke % Polyline newpath 321 216 moveto 378 293 lineto stroke newpath 374.848 285.380 moveto 378.000 293.000 lineto 371.633 287.760 lineto stroke % Polyline newpath 256 217 moveto 169 291 lineto stroke newpath 176.390 287.340 moveto 169.000 291.000 lineto 173.798 284.293 lineto stroke % Polyline newpath 387 350 moveto 387 420 lineto stroke newpath 389.000 412.000 moveto 387.000 420.000 lineto 385.000 412.000 lineto stroke % Polyline newpath 179 347 moveto 233 422 lineto stroke newpath 229.949 414.339 moveto 233.000 422.000 lineto 226.702 416.676 lineto stroke % Polyline newpath 143 348 moveto 84 422 lineto stroke newpath 90.551 416.992 moveto 84.000 422.000 lineto 87.423 414.498 lineto stroke % Polyline newpath 502 89 moveto 624 120 lineto stroke newpath 616.739 116.091 moveto 624.000 120.000 lineto 615.754 119.968 lineto stroke % Polyline newpath 498 97 moveto 598 200 lineto stroke newpath 593.862 192.867 moveto 598.000 200.000 lineto 590.992 195.653 lineto stroke % Polyline newpath 663 250 moveto 688 300 lineto stroke newpath 686.211 291.950 moveto 688.000 300.000 lineto 682.633 293.739 lineto stroke % Polyline newpath 614 249 moveto 560 299 lineto stroke newpath 567.229 295.032 moveto 560.000 299.000 lineto 564.511 292.097 lineto stroke % Polyline newpath 698 358 moveto 697 426 lineto stroke newpath 699.117 418.030 moveto 697.000 426.000 lineto 695.118 417.971 lineto stroke % Polyline newpath 543 355 moveto 543 425 lineto stroke newpath 545.000 417.000 moveto 543.000 425.000 lineto 541.000 417.000 lineto stroke /Courier findfont 12.222222 scalefont setfont 276 529 moveto 1 -1 scale (Figure 9: Router RT10's Data Structures) show 1 -1 scale 418 96 moveto 1 -1 scale (RT10) show 1 -1 scale 261 196 moveto 1 -1 scale (Area 2) show 1 -1 scale 330 328 moveto 1 -1 scale (Interface to N8) show 1 -1 scale 99 325 moveto 1 -1 scale (Interface to N6) show 1 -1 scale 32 453 moveto 1 -1 scale (Neighbor RT8) show 1 -1 scale 185 454 moveto 1 -1 scale (Neighbor RT7) show 1 -1 scale 335 455 moveto 1 -1 scale (Neighbor RT11) show 1 -1 scale 642 129 moveto 1 -1 scale (Routing Table) show 1 -1 scale 609 225 moveto 1 -1 scale (Backbone) show 1 -1 scale 656 334 moveto 1 -1 scale (Interface Ib) show 1 -1 scale 659 460 moveto 1 -1 scale (Neighbor RT6) show 1 -1 scale 500 325 moveto 1 -1 scale (Virtual Link) show 1 -1 scale 516 343 moveto 1 -1 scale (to RT11) show 1 -1 scale 495 458 moveto 1 -1 scale (Neighbor RT11) show 1 -1 scale showpage $F2psEnd endTexFig t-bol.300 @sf 0 1555 p (List)s 10(of)m 11(external)m 10 r 114 c (outes)s t-rom.300 @sf 20(These)m 12(are)m 12(routes)m 12(to)m 12(destinations)m 13(external)m 12(to)m 12(the)m 12(Autonomous)m 12(System,)m 12(that)m 12(have)m 12(been)m 12(gained)m 104 1605 p (either)s 9(through)m 9(direct)m 9(experience)m 9(with)m 9(another)m 10(routing)m 9(protocol)m 9(\(such)m 9(as)m 9(EGP\),)m 9(or)m 9(through)m 9(con\014guration)m 10(informa-)m 104 1654 p (tion,)s 9(or)m 8(through)m 8 r 97 c 8(combination)m 9(of)m 8(the)m 8(two)m 9(\(e.g.,)m 8(dynamic)m 9(external)m 8(info.)m 13(to)m 9(be)m 8(advertised)m 8(by)m 9(OSPF)m 8(with)m 8(con\014gured)m 104 1704 p (metric\).)s 18(Any)m 12(router)m 11(having)m 12(these)m 12(external)m 12(routes)m 11(is)m 12(called)m 12(an)m 12(AS)m 12(boundary)m 11(router)m -1 r 46 c 17(These)m 12(routes)m 12(are)m 11(advertised)m 104 1754 p (by)s 10(the)m 11(router)m 10(to)m 10(the)m 11(entire)m 10(AS)m 11(through)m 10(AS)m 11(external)m 10(link)m 10(advertisements.)m t-bol.300 @sf 0 1837 p (List)s 10(of)m 11(AS)m 10(external)m 11(link)m 10(advertisements)m t-rom.300 @sf 21(Part)m 11(of)m 12(the)m 11(topological)m 11(database.)m 17(These)m 12(have)m 11(have)m 12(originated)m 11(from)m 11(the)m 12(AS)m 104 1887 p (boundary)s 12(routers.)m 19(They)m 12(comprise)m 12(routes)m 12(to)m 12(destinations)m 12(external)m 12(to)m 12(the)m 12(Autonomous)m 12(System.)m 19(Note)m 12(that,)m 12(if)m 13(the)m 104 1937 p (router)s 10(is)m 10(itself)m 10(an)m 10(AS)m 10(boundary)m 10(router)m -1 r 44 c 9(some)m 10(of)m 10(these)m 10(AS)m 10(external)m 10(link)m 10(advertisements)m 10(have)m 10(been)m 10(self)m 10(originated.)m t-bol.300 @sf 0 2020 p (The)s 10 r 114 c (outing)s 10(table)m t-rom.300 @sf 21(Derived)m 12(from)m 13(the)m 13(topological)m 12(database.)m 20(Each)m 13(destination)m 13(that)m 12(the)m 13(router)m 12(can)m 13(forward)m 13(to)m 12(is)m 13(repre-)m 104 2069 p (sented)s 13(by)m 13 r 97 c 13(cost)m 13(and)m 13 r 97 c 13(set)m 13(of)m 13(paths.)m 21 r 65 c 13(path)m 13(is)m 13(described)m 13(by)m 13(its)m 13(type)m 13(and)m 13(next)m 13(hop.)m 22(For)m 13(more)m 13(information,)m 13(see)m 104 2119 p (Section)s 10 r 49 c (1.)s t-bol.300 @sf 0 2202 p 84 c (OS)s 10(capability)m t-rom.300 @sf 20(This)m 10(item)m 11(indicates)m 10(whether)m 10(the)m 10(router)m 10(will)m 10(calculate)m 10(separate)m 10(routes)m 10(based)m 10(on)m 10 r 84 c (OS.)s 13(This)m 10(is)m 10 r 97 c 10(con\014g-)m 104 2252 p (urable)s 10(parameter)m -1 r 46 c 13(For)m 10(more)m 11(information,)m 10(see)m 10(Sections)m 11(4.5)m 10(and)m 11(16.9.)m 0 2361 p (Figure)s 10 r 57 c 10(shows)m 11(the)m 10(collection)m 10(of)m 10(data)m 10(structures)m 10(present)m 11(in)m 10 r 97 c 10(typical)m 10(router)m -1 r 46 c 13(The)m 10(router)m 10(pictured)m 10(is)m 11 r 82 c -2(T10,)m 9(from)m 10(the)m 11(map)m 0 2411 p (in)s 11(Figure)m 11(6.)m 15(Note)m 11(that)m 11(router)m 11 r 82 c -1(T10)m 9(has)m 11 r 97 c 11(virtual)m 11(link)m 11(con\014gured)m 11(to)m 11(router)m 11 r 82 c -2(T1)m -1(1,)m 10(with)m 11(Area)m 11 r 50 c 11(as)m 11(the)m 11(link')m -2 r 115 c 10(transit)m 11(area.)m 0 2461 p (This)s 13(is)m 13(indicated)m 13(by)m 13(the)m 13(dashed)m 12(line)m 13(in)m 13(Figure)m 13(9.)m 22(When)m 12(the)m 13(virtual)m 13(link)m 13(becomes)m 13(active,)m 14(through)m 13(the)m 12(building)m 13(of)m 13(the)m 0 2511 p (shortest)s 13(path)m 14(tree)m 13(for)m 13(Area)m 13(2,)m 14(it)m 14(becomes)m 13(an)m 13(interface)m 13(to)m 14(the)m 13(backbone)m 13(\(see)m 13(the)m 14(two)m 13(backbone)m 13(interfaces)m 13(depicted)m 14(in)m 0 2561 p (Figure)s 10(9\).)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(24])m @eop 23 @bop0 23 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (4.5)s 50(Optional)m 12(OSPF)m 13(capabilities)m t-rom.300 @sf 0 284 p (The)s 12(OSPF)m 13(protocol)m 12(de\014nes)m 12(several)m 13(optional)m 12(capabilities.)m 19 r 65 c 13(router)m 12(indicates)m 12(the)m 13(optional)m 12(capabilities)m 12(that)m 13(it)m 12(supports)m 0 333 p (in)s 14(its)m 13(OSPF)m 14(Hello)m 14(packets,)m 14(Database)m 14(Description)m 14(packets)m 14(and)m 13(in)m 14(its)m 14(link)m 13(state)m 14(advertisements.)m 24(This)m 14(enables)m 13(routers)m 0 383 p (supporting)s 10 r 97 c 11(mix)m 10(of)m 11(optional)m 10(capabilities)m 10(to)m 11(coexist)m 10(in)m 11 r 97 c 10(single)m 11(Autonomous)m 10(System.)m 0 444 p (Some)s 13(capabilities)m 13(must)m 12(be)m 13(supported)m 13(by)m 13(all)m 13(routers)m 13(attached)m 12(to)m 13 r 97 c 13(speci\014c)m 13(area.)m 21(In)m 13(this)m 12(case,)m 14 r 97 c 13(router)m 13(will)m 12(not)m 13(accept)m 0 494 p 97 c 14(neighbor)m 1 r 39 c -1 r 115 c 13(Hello)m 14(unless)m 14(there)m 14(is)m 14 r 97 c 13(match)m 14(in)m 14(reported)m 14(capabilities)m 14(\(i.e.,)m 15 r 97 c 14(capability)m 14(mismatch)m 13(prevents)m 14 r 97 c 14(neighbor)m 0 543 p (relationship)s 10(from)m 11(forming\).)m 14(An)m 10(example)m 11(of)m 10(this)m 10(is)m 11(the)m 10(external)m 11(routing)m 10(capability)m 10(\(see)m 11(below\).)m 0 604 p (Other)s 10(capabilities)m 10(can)m 10(be)m 10(negotiated)m 10(during)m 10(the)m 10(database)m 10(synchronization)m 10(process.)m 14(This)m 10(is)m 10(accomplished)m 10(by)m 10(specifying)m 0 654 p (the)s 8(optional)m 8(capabilities)m 8(in)m 9(Database)m 8(Description)m 8(packets.)m 13 r 65 c 8(capability)m 8(mismatch)m 8(with)m 9 r 97 c 8(neighbor)m 8(is)m 8(this)m 8(case)m 8(will)m 9(result)m 0 704 p (in)s 10(only)m 11 r 97 c 10(subset)m 11(of)m 10(link)m 10(state)m 11(advertisements)m 10(being)m 11(exchanged)m 10(between)m 11(the)m 10(two)m 10(neighbors.)m 0 764 p (The)s 13(routing)m 13(table)m 12(build)m 13(process)m 13(can)m 13(also)m 12(be)m 13(af)m (fected)s 12(by)m 13(the)m 13(presence/absence)m 13(of)m 12(optional)m 13(capabilities.)m 21(For)m 13(example,)m 0 814 p (since)s 12(the)m 11(optional)m 12(capabilities)m 12(are)m 12(reported)m 11(in)m 12(link)m 12(state)m 11(advertisements,)m 12(routers)m 12(incapable)m 12(of)m 12(certain)m 11(functions)m 12(can)m 12(be)m 0 864 p (avoided)s 10(when)m 11(building)m 10(the)m 11(shortest)m 10(path)m 10(tree.)m 14(An)m 11(example)m 10(of)m 11(this)m 10(is)m 10(the)m 11 r 84 c (OS)s 10(routing)m 10(capability)m 10(\(see)m 11(below\).)m 0 924 p (The)s 10(current)m 11(OSPF)m 10(optional)m 11(capabilities)m 10(are)m 10(listed)m 11(below)m -2 r 46 c 13(See)m 11(Section)m 10(A.2)m 10(for)m 11(more)m 10(information.)m t-bol.300 @sf 0 1010 p (External)s 10 r 114 c (outing)s 10(capability)m t-rom.300 @sf 21(Entire)m 12(OSPF)m 12(areas)m 12(can)m 12(be)m 12(con\014gured)m 12(as)m 13(\\stubs")m 12(\(see)m 12(Section)m 12(3.6\).)m 19(AS)m 12(external)m 12(adver-)m 104 1060 p (tisements)s 12(will)m 12(not)m 13(be)m 12(\015ooded)m 12(into)m 13(stub)m 12(areas.)m 20(This)m 12(capability)m 12(is)m 13(represented)m 12(by)m 12(the)m t-bol.300 @sf 13(E-bit)m t-rom.300 @sf 12(in)m 12(the)m 13(OSPF)m 12(options)m 104 1109 p (\014eld)s 11(\(see)m 11(Section)m 11(A.2\).)m 16(In)m 12(order)m 11(to)m 11(ensure)m 11(consistent)m 11(con\014guration)m 11(of)m 12(stub)m 11(areas,)m 11(all)m 11(routers)m 11(interfacing)m 12(to)m 11(such)m 104 1159 p (an)s 10(area)m 11(must)m 10(have)m 10(the)m t-bol.300 @sf 11(E-bit)m t-rom.300 @sf 10(clear)m 11(in)m 10(their)m 11(Hello)m 10(packets)m 10(\(see)m 11(Sections)m 10(9.5)m 11(and)m 10(10.5\).)m t-bol.300 @sf 0 1236 p 84 c (OS)s 10(capability)m t-rom.300 @sf 20(All)m 13(OSPF)m 13(implementations)m 13(must)m 13(be)m 13(able)m 13(to)m 13(calculate)m 13(separate)m 13(routes)m 13(based)m 13(on)m 13(IP)m 13 r 84 c -2(ype)m 12(of)m 13(Service.)m 104 1285 p (However)s -1 r 44 c 14(to)m 14(save)m 14(routing)m 14(table)m 14(space)m 14(and)m 14(processing)m 14(resources,)m 15(an)m 14(OSPF)m 14(router)m 14(can)m 14(be)m 14(con\014gured)m 14(to)m 14(ignore)m 104 1335 p 84 c (OS)s 13(when)m 15(forwarding)m 14(packets.)m 26(In)m 14(this)m 15(case,)m 15(the)m 15(router)m 14(calculates)m 14(routes)m 15(for)m 14 r 84 c (OS)s 14 r 48 c 14(only)m -1 r 46 c 24(This)m 15(capability)m 14(is)m 104 1385 p (represented)s 9(by)m 10(the)m t-bol.300 @sf 10 r 84 c -3(-bit)m t-rom.300 @sf 9(in)m 9(the)m 10(OSPF)m 10(options)m 9(\014eld)m 10(\(see)m 9(Section)m 10(A.2\).)m 14 r 84 c (OS-capable)s 9(routers)m 9(will)m 10(attempt)m 10(to)m 9(avoid)m 104 1435 p (non-T)s (OS-capable)s 9(routers)m 11(when)m 10(calculating)m 11(non-zero)m 10 r 84 c (OS)s 10(paths.)m t-bol.420 @sf 0 1583 p 53 c 58(Pr)m (otocol)s 14(Data)m 14(Structur)m (es)s t-rom.300 @sf 0 1686 p (The)s 10(OSPF)m 11(protocol)m 10(is)m 10(described)m 11(in)m 10(this)m 10(speci\014cation)m 11(in)m 10(terms)m 10(of)m 11(its)m 10(operation)m 10(on)m 11(various)m 10(protocol)m 11(data)m 10(structures.)m 14(The)m 0 1736 p (following)s 11(list)m 11(comprises)m 11(the)m 11(top-level)m 11(OSPF)m 11(data)m 11(structures.)m 16(Any)m 11(initialization)m 11(that)m 11(needs)m 11(to)m 11(be)m 11(done)m 11(is)m 11(noted.)m 16(Areas,)m 0 1786 p (OSPF)s 10(interfaces)m 11(and)m 10(neighbors)m 11(also)m 10(have)m 10(associated)m 11(data)m 10(structures)m 11(that)m 10(are)m 11(described)m 10(later)m 10(in)m 11(this)m 10(speci\014cation.)m t-bol.300 @sf 0 1871 p (Router)s 10(ID)m t-rom.300 @sf 21 r 97 c 9(32-bit)m 9(number)m 8(that)m 9(uniquely)m 9(identi\014es)m 8(this)m 9(router)m 9(in)m 9(the)m 8(AS.)m 9(One)m 9(possible)m 8(implementation)m 9(strategy)m 9(would)m 104 1921 p (be)s 10(to)m 11(use)m 10(the)m 10(smallest)m 11(IP)m 10(interface)m 11(address)m 10(belonging)m 11(to)m 10(the)m 10(router)m -1 r 46 c t-bol.300 @sf 0 1997 p (Pointers)s 10(to)m 11(ar)m (ea)s 9(structur)m (es)s t-rom.300 @sf 21(Each)m 11(one)m 12(of)m 12(the)m 12(areas)m 12(to)m 11(which)m 12(the)m 12(router)m 12(is)m 12(connected)m 11(has)m 12(its)m 12(own)m 12(data)m 12(structure.)m 18(This)m 104 2047 p (data)s 12(structure)m 12(describes)m 12(the)m 11(working)m 12(of)m 12(the)m 12(basic)m 12(algorithm.)m 18(Remember)m 12(that)m 12(each)m 12(area)m 12(runs)m 12 r 97 c 12(separate)m 12(copy)m 12(of)m 104 2097 p (the)s 10(basic)m 11(algorithm.)m t-bol.300 @sf 0 2173 p (Pointer)s 10(to)m 11(the)m 10(backbone)m 11(structur)m 101 c t-rom.300 @sf 20(The)m 7(basic)m 8(algorithm)m 7(operates)m 7(on)m 8(the)m 7(backbone)m 8(as)m 7(if)m 7(it)m 8(were)m 7(an)m 8(area.)m 13(For)m 7(this)m 7(reason)m 104 2223 p (the)s 10(backbone)m 11(is)m 10(represented)m 10(as)m 11(an)m 10(area)m 11(structure.)m t-bol.300 @sf 0 2300 p 86 c -1(irtual)m 10(links)m 10(con\014gur)m (ed)s t-rom.300 @sf 20(The)m 12(virtual)m 12(links)m 13(con\014gured)m 12(with)m 12(this)m 12(router)m 12(as)m 12(one)m 12(endpoint.)m 19(In)m 12(order)m 12(to)m 12(have)m 12(con\014gured)m 104 2349 p (virtual)s 11(links,)m 11(the)m 11(router)m 11(itself)m 11(must)m 11(be)m 11(an)m 11(area)m 12(border)m 11(router)m -2 r 46 c 15 r 86 c -1(irtual)m 10(links)m 11(are)m 11(identi\014ed)m 11(by)m 11(the)m 11(Router)m 11(ID)m 11(of)m 11(the)m 104 2399 p (other)s 9(endpoint)m 10 r 123 c 9(which)m 10(is)m 9(another)m 9(area)m 10(border)m 9(router)m -1 r 46 c 13(These)m 9(two)m 9(endpoint)m 10(routers)m 9(must)m 10(be)m 9(attached)m 10(to)m 9 r 97 c 10(common)m 104 2449 p (area,)s 14(called)m 14(the)m 14(virtual)m 13(link')m -1 r 115 c 13(transit)m 13(area.)m 24 r 86 c -1(irtual)m 12(links)m 14(are)m 14(part)m 13(of)m 14(the)m 14(backbone,)m 14(and)m 14(behave)m 14(as)m 13(if)m 14(they)m 14(were)m 104 2499 p (unnumbered)s 12(point-to-point)m 13(networks)m 12(between)m 13(the)m 12(two)m 13(routers.)m 20 r 65 c 12(virtual)m 13(link)m 12(uses)m 13(the)m 12(intra-area)m 13(routing)m 12(of)m 13(its)m 104 2549 p (transit)s 10(area)m 11(to)m 10(forward)m 11(packets.)m 14 r 86 c -2(irtual)m 10(links)m 10(are)m 10(brought)m 11(up)m 10(and)m 11(down)m 10(through)m 11(the)m 10(building)m 11(of)m 10(the)m 10(shortest-path)m 104 2599 p (trees)s 10(for)m 11(the)m 10(transit)m 10(area.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(23])m @eop 22 @bop0 22 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 113 201 p 1725 2 ru 112 259 p 2 59 ru t-ita.300 @sf 138 236 p (LS)s 10(type)m 312 259 p 2 59 ru 337 236 p (Advertisement)s 11(name)m 737 259 p 2 59 ru 762 236 p (Advertisement)s 11(description)m 1836 259 p 2 59 ru 113 261 p 1725 2 ru 112 420 p 2 159 ru t-rom.300 @sf 138 296 p 49 c 312 420 p 2 159 ru 337 296 p (Router)s 11(links)m 10(advs.)m 737 420 p 2 159 ru 762 296 p (Originated)s 19(by)m 18(all)m 19(routers.)m 38(This)m 18(advertisement)m 18(describes)m 19(the)m 762 346 p (collected)s 15(states)m 14(of)m 15(the)m 14(router)m 2 r 39 c -1 r 115 c 13(interfaces)m 15(to)m 14(an)m 15(area.)m 26(Flooded)m 762 396 p (throughout)s 11 r 97 c 10(single)m 11(area)m 10(only)m -2 r 46 c 1836 420 p 2 159 ru 113 421 p 1725 2 ru 112 580 p 2 159 ru 138 456 p 50 c 312 580 p 2 159 ru 337 456 p (Network)s 11(links)m 10(advs.)m 737 580 p 2 159 ru 762 456 p (Originated)s 9(for)m 9(multi-access)m 8(networks)m 9(by)m 9(the)m 8(Designated)m 9(Router)m -1 r 46 c 762 506 p (This)s 11(advertisement)m 11(contains)m 11(the)m 11(list)m 11(of)m 11(routers)m 11(connected)m 11(to)m 11(the)m 762 556 p (network.)s 14(Flooded)m 11(throughout)m 10 r 97 c 10(single)m 11(area)m 10(only)m -1 r 46 c 1836 580 p 2 159 ru 113 581 p 1725 2 ru 112 889 p 2 308 ru 138 616 p (3,4)s 312 889 p 2 308 ru 337 616 p (Summary)s 11(link)m 10(advs.)m 737 889 p 2 308 ru 762 616 p (Originated)s 10(by)m 11(area)m 10(border)m 10(routers,)m 10(and)m 10(\015ooded)m 11(throughout)m 10(their)m 762 666 p (associated)s 12(area.)m 18(Each)m 12(summary)m 11(link)m 12(advertisement)m 12(describes)m 12 r 97 c 762 716 p (route)s 8(to)m 7 r 97 c 7(destination)m 7(outside)m 7(the)m 8(area,)m 7(yet)m 8(still)m 7(inside)m 7(the)m 7(AS)m 7(\(i.e.,)m 762 766 p (an)s 14(inter)m (-area)s 12(route\).)m 22 r 84 c -1(ype)m 12 r 51 c 13(advertisements)m 13(describe)m 14(routes)m 13(to)m 762 815 p (networks.)s 15 r 84 c -2(ype)m 10 r 52 c 10(advertisements)m 11(describe)m 10(routes)m 11(to)m 11(AS)m 10(bound-)m 762 865 p (ary)s 11(routers.)m 1836 889 p 2 308 ru 113 891 p 1725 2 ru 112 1099 p 2 209 ru 138 926 p 53 c 312 1099 p 2 209 ru 337 926 p (AS)s 11(external)m 10(link)m 11(advs.)m 737 1099 p 2 209 ru 762 926 p (Originated)s 10(by)m 9(AS)m 9(boundary)m 9(routers,)m 10(and)m 9(\015ooded)m 9(throughout)m 10(the)m 762 976 p (AS.)s 11(Each)m 10(external)m 10(advertisement)m 11(describes)m 10 r 97 c 10(route)m 11(to)m 10 r 97 c 10(destina-)m 762 1025 p (tion)s 11(in)m 11(another)m 10(Autonomous)m 11(System.)m 15(Default)m 10(routes)m 11(for)m 10(the)m 11(AS)m 762 1075 p (can)s 11(also)m 10(be)m 11(described)m 10(by)m 10(AS)m 11(external)m 10(advertisements.)m 1836 1099 p 2 209 ru 113 1101 p 1725 2 ru 634 1238 p 84 c -1(able)m 9(9:)m 14(OSPF)m 10(link)m 11(state)m 10(advertisements.)m t-bol.300 @sf 0 1363 p (IP)s 10(multicast)m t-rom.300 @sf 21(Certain)m 10(OSPF)m 10(packets)m 9(use)m 10(IP)m 10(multicast.)m 14(Support)m 9(for)m 10(receiving)m 10(and)m 10(sending)m 9(IP)m 10(multicasts,)m 10(along)m 10(with)m 10(the)m 104 1413 p (appropriate)s 13(lower)m (-level)s 13(protocol)m 13(support,)m 14(is)m 13(required.)m 23(These)m 13(IP)m 14(multicast)m 13(packets)m 14(never)m 13(travel)m 13(more)m 14(than)m 13(one)m 104 1463 p (hop.)s 14(For)m 10(information)m 10(on)m 11(IP)m 10(multicast,)m 11(see)m 10([RFC)m 11 r 49 c -1 r 49 c -2(12].)m t-bol.300 @sf 0 1546 p (Lower)s -1(-level)m 10(pr)m (otocol)s 10(support)m t-rom.300 @sf 20(The)m 8(lower)m 8(level)m 8(protocols)m 7(referred)m 8(to)m 8(here)m 8(are)m 7(the)m 8(network)m 8(access)m 8(protocols,)m 8(such)m 8(as)m 7(the)m 104 1596 p (Ethernet)s 9(data)m 9(link)m 9(layer)m -1 r 46 c 12(Indications)m 10(must)m 9(be)m 9(passed)m 9(from)m 9(from)m 9(these)m 10(protocols)m 9(to)m 9(OSPF)m 9(as)m 9(the)m 9(network)m 10(interface)m 104 1646 p (goes)s 13(up)m 13(and)m 14(down.)m 22(For)m 14(example,)m 14(on)m 13(an)m 13(ethernet)m 13(it)m 14(would)m 13(be)m 13(valuable)m 14(to)m 13(know)m 13(when)m 14(the)m 13(ethernet)m 13(transceiver)m 104 1695 p (cable)s 10(becomes)m 11(unplugged.)m t-bol.300 @sf 0 1778 p (Non-br)s (oadcast)s 10(lower)m -1(-level)m 10(pr)m (otocol)s 9(support)m t-rom.300 @sf 21(Remember)m 18(that)m 19(non-broadcast)m 18(networks)m 18(are)m 18(multi-access)m 19(networks)m 104 1828 p (such)s 12(as)m 12 r 97 c 12(X.25)m 12(PDN.)m 11(On)m 12(these)m 12(networks,)m 13(the)m 12(Hello)m 12(Protocol)m 11(can)m 12(be)m 12(aided)m 12(by)m 12(providing)m 12(an)m 12(indication)m 12(to)m 12(OSPF)m 104 1878 p (when)s 9(an)m 9(attempt)m 10(is)m 9(made)m 10(to)m 9(send)m 9 r 97 c 10(packet)m 9(to)m 9 r 97 c 10(dead)m 9(or)m 9(non-existent)m 10(router)m -2 r 46 c 13(For)m 9(example,)m 10(on)m 9 r 97 c 9(PDN)m 10 r 97 c 9(dead)m 9(router)m 104 1928 p (may)s 9(be)m 9(indicated)m 9(by)m 9(the)m 9(reception)m 9(of)m 9 r 97 c 9(X.25)m 10(clear)m 9(with)m 9(an)m 9(appropriate)m 9(cause)m 9(and)m 9(diagnostic,)m 9(and)m 9(this)m 9(information)m 104 1978 p (would)s 10(be)m 11(passed)m 10(to)m 10(OSPF)m -2 r 46 c t-bol.300 @sf 0 2061 p (List)s 10(manipulation)m 11(primitives)m t-rom.300 @sf 21(Much)m 11(of)m 12(the)m 11(OSPF)m 12(functionality)m 11(is)m 11(described)m 12(in)m 11(terms)m 12(of)m 11(its)m 12(operation)m 11(on)m 12(lists)m 11(of)m 12(link)m 104 2110 p (state)s 15(advertisements.)m 28(For)m 15(example,)m 16(the)m 16(advertisements)m 15(that)m 15(will)m 15(be)m 15(retransmitted)m 15(to)m 15(an)m 16(adjacent)m 15(router)m 15(until)m 104 2160 p (acknowledged)s 15(are)m 15(described)m 15(as)m 15 r 97 c 15(list.)m 27(Any)m 16(particular)m 15(advertisement)m 15(may)m 15(be)m 15(on)m 15(many)m 15(such)m 15(lists.)m 27(An)m 15(OSPF)m 104 2210 p (implementation)s 13(needs)m 14(to)m 14(be)m 14(able)m 13(to)m 14(manipulate)m 14(these)m 13(lists,)m 15(adding)m 13(and)m 14(deleting)m 14(constituent)m 14(advertisements)m 13(as)m 104 2260 p (necessary)s -2 r 46 c t-bol.300 @sf 0 2343 p 84 c -3(asking)m 10(support)m t-rom.300 @sf 20(Certain)m 13(procedures)m 13(described)m 13(in)m 14(this)m 13(speci\014cation)m 13(invoke)m 13(other)m 13(procedures.)m 21(At)m 14(times,)m 13(these)m 13(other)m 104 2393 p (procedures)s 11(should)m 11(be)m 11(executed)m 11(in-line,)m 12(that)m 11(is,)m 11(before)m 11(the)m 12(current)m 11(procedure)m 11(is)m 11(\014nished.)m 16(This)m 11(is)m 11(indicated)m 12(in)m 11(the)m 104 2443 p (text)s 11(by)m 12(instructions)m 11(to)m t-ita.300 @sf 12(execute)m t-rom.300 @sf 11 r 97 c 12(procedure.)m 17(At)m 11(other)m 12(times,)m 11(the)m 12(other)m 11(procedures)m 12(are)m 11(to)m 12(be)m 11(executed)m 12(only)m 11(when)m 104 2492 p (the)s 10(current)m 11(procedure)m 10(has)m 10(\014nished.)m 14(This)m 11(is)m 10(indicated)m 11(by)m 10(instructions)m 10(to)m t-ita.300 @sf 11(schedule)m t-rom.300 @sf 10 r 97 c 11(task.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(22])m @eop 21 @bop0 21 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (4.3)s 50(Routing)m 12(pr)m (otocol)s 12(packets)m t-rom.300 @sf 0 285 p (The)s 16(OSPF)m 16(protocol)m 16(runs)m 16(directly)m 16(over)m 16(IP)m -3 r 44 c 15(using)m 16(IP)m 16(protocol)m 16(89.)m 31(OSPF)m 16(does)m 16(not)m 16(provide)m 16(any)m 16(explicit)m 16(fragmenta-)m 0 334 p (tion/reassembly)s 15(support.)m 29(When)m 16(fragmentation)m 15(is)m 15(necessary)m -1 r 44 c 15(IP)m 16(fragmentation/reassembly)m 15(is)m 15(used.)m 29(OSPF)m 15(protocol)m 0 384 p (packets)s 10(have)m 10(been)m 10(designed)m 10(so)m 10(that)m 10(lar)m (ge)s 9(protocol)m 10(packets)m 10(can)m 10(generally)m 10(be)m 10(split)m 10(into)m 10(several)m 10(smaller)m 10(protocol)m 10(packets.)m 0 434 p (This)s 10(practice)m 11(is)m 10(recommended;)m 11(IP)m 10(fragmentation)m 10(should)m 11(be)m 10(avoided)m 11(whenever)m 10(possible.)m 0 496 p (Routing)s 8(protocol)m 7(packets)m 8(should)m 7(always)m 8(be)m 7(sent)m 8(with)m 7(the)m 8(IP)m 7 r 84 c (OS)s 7(\014eld)m 7(set)m 8(to)m 7(0.)m 13(If)m 8(at)m 7(all)m 8(possible,)m 8(routing)m 8(protocol)m 7(packets)m 0 545 p (should)s 9(be)m 9(given)m 9(preference)m 9(over)m 9(regular)m 9(IP)m 9(data)m 9(traf)m (\014c,)s 9(both)m 9(when)m 9(being)m 9(sent)m 9(and)m 9(received.)m 13(As)m 9(an)m 9(aid)m 9(to)m 9(accomplishing)m 0 595 p (this,)s 14(OSPF)m 14(protocol)m 13(packets)m 13(should)m 14(have)m 13(their)m 14(IP)m 13(precedence)m 14(\014eld)m 13(set)m 14(to)m 13(the)m 13(value)m 14(Internetwork)m 13(Control)m 14(\(see)m 13([RFC)m 0 645 p (791]\).)s 0 707 p (All)s 10(OSPF)m 10(protocol)m 10(packets)m 11(share)m 10 r 97 c 10(common)m 10(protocol)m 10(header)m 10(that)m 11(is)m 10(described)m 10(in)m 10(Appendix)m 10(A.)m 10(The)m 11(OSPF)m 10(packet)m 10(types)m 0 756 p (are)s 10(listed)m 11(below)m 10(in)m 11 r 84 c -2(able)m 9(8.)m 14(Their)m 10(formats)m 11(are)m 10(also)m 11(described)m 10(in)m 11(Appendix)m 10(A.)m 436 857 p 1078 2 ru 435 907 p 2 50 ru t-ita.300 @sf 461 892 p 84 c -2(ype)m 563 907 p 2 50 ru 589 892 p (Packet)s 10(name)m 970 907 p 2 50 ru 996 892 p (Pr)s -1(otocol)m 10(function)m 1513 907 p 2 50 ru 436 908 p 1078 2 ru 435 958 p 2 50 ru t-rom.300 @sf 490 943 p 49 c 563 958 p 2 50 ru 589 943 p (Hello)s 970 958 p 2 50 ru 996 943 p (Discover/maintain)s 10(neighbors)m 1513 958 p 2 50 ru 435 1008 p 2 50 ru 490 993 p 50 c 563 1008 p 2 50 ru 589 993 p (Database)s 10(Description)m 970 1008 p 2 50 ru 996 993 p (Summarize)s 10(database)m 11(contents)m 1513 1008 p 2 50 ru 435 1058 p 2 50 ru 490 1043 p 51 c 563 1058 p 2 50 ru 589 1043 p (Link)s 10(State)m 11(Request)m 970 1058 p 2 50 ru 996 1043 p (Database)s 10(download)m 1513 1058 p 2 50 ru 435 1108 p 2 50 ru 490 1093 p 52 c 563 1108 p 2 50 ru 589 1093 p (Link)s 10(State)m 11(Update)m 970 1108 p 2 50 ru 996 1093 p (Database)s 10(update)m 1513 1108 p 2 50 ru 435 1157 p 2 50 ru 490 1143 p 53 c 563 1157 p 2 50 ru 589 1143 p (Link)s 10(State)m 11(Ack)m 970 1157 p 2 50 ru 996 1143 p (Flooding)s 10(acknowledgment)m 1513 1157 p 2 50 ru 436 1159 p 1078 2 ru 737 1296 p 84 c -2(able)m 9(8:)m 14(OSPF)m 11(packet)m 10(types.)m 0 1399 p (OSPF')s -1 r 115 c 12(Hello)m 13(protocol)m 13(uses)m 13(Hello)m 12(packets)m 13(to)m 13(discover)m 13(and)m 13(maintain)m 13(neighbor)m 13(relationships.)m 22(The)m 13(Database)m 13(Descrip-)m 0 1449 p (tion)s 14(and)m 13(Link)m 14(State)m 13(Request)m 14(packets)m 14(are)m 13(used)m 14(in)m 13(the)m 14(forming)m 13(of)m 14(adjacencies.)m 23(OSPF')m -1 r 115 c 13(reliable)m 13(update)m 14(mechanism)m 13(is)m 0 1499 p (implemented)s 10(by)m 11(the)m 10(Link)m 11(State)m 10(Update)m 10(and)m 11(Link)m 10(State)m 11(Acknowledgment)m 10(packets.)m 0 1560 p (Each)s 12(Link)m 13(State)m 12(Update)m 13(packet)m 12(carries)m 13 r 97 c 12(set)m 13(of)m 12(new)m 13(link)m 12(state)m 13(advertisements)m 12(one)m 13(hop)m 12(further)m 13(away)m 12(from)m 13(their)m 12(point)m 0 1610 p (of)s 11(origination.)m 17 r 65 c 11(single)m 11(Link)m 12(State)m 11(Update)m 11(packet)m 12(may)m 11(contain)m 11(the)m 12(link)m 11(state)m 11(advertisements)m 11(of)m 12(several)m 11(routers.)m 17(Each)m 0 1660 p (advertisement)s 8(is)m 8(tagged)m 7(with)m 8(the)m 8(ID)m 8(of)m 7(the)m 8(originating)m 8(router)m 8(and)m 7 r 97 c 8(checksum)m 8(of)m 8(its)m 7(link)m 8(state)m 8(contents.)m 13(The)m 8(\014ve)m 8(dif)m (ferent)s 0 1710 p (types)s 10(of)m 11(OSPF)m 10(link)m 11(state)m 10(advertisements)m 10(are)m 11(listed)m 10(below)m 11(in)m 10 r 84 c -2(able)m 10(9.)m 0 1780 p (As)s 12(mentioned)m 11(above,)m 12(OSPF)m 12(routing)m 11(packets)m 12(\(with)m 11(the)m 12(exception)m 11(of)m 12(Hellos\))m 11(are)m 12(sent)m 12(only)m 11(over)m 12(adjacencies.)m 17(Note)m 12(that)m 0 1830 p (this)s 11(means)m 11(that)m 11(all)m 12(protocol)m 11(packets)m 11(travel)m 11 r 97 c 11(single)m 11(IP)m 12(hop,)m 11(except)m 11(those)m 11(that)m 11(are)m 11(sent)m 12(over)m 11(virtual)m 11(adjacencies.)m 16(The)m 11(IP)m 0 1880 p (source)s 12(address)m 12(of)m 12(an)m 12(OSPF)m 12(protocol)m 12(packet)m 12(is)m 12(one)m 12(end)m 12(of)m 12 r 97 c 13(router)m 12(adjacency)m -2 r 44 c 11(and)m 12(the)m 12(IP)m 12(destination)m 12(address)m 13(is)m 12(either)m 0 1930 p (the)s 10(other)m 11(end)m 10(of)m 11(the)m 10(adjacency)m 10(or)m 11(an)m 10(IP)m 11(multicast)m 10(address.)m t-bol.360 @sf 0 2058 p (4.4)s 50(Basic)m 12(implementation)m 13 r 114 c (equir)s -1(ements)m t-rom.300 @sf 0 2147 p (An)s 10(implementation)m 11(of)m 10(OSPF)m 11(requires)m 10(the)m 10(following)m 11(pieces)m 10(of)m 11(system)m 10(support:)m t-bol.300 @sf 0 2236 p 84 c (imers)s t-rom.300 @sf 20 r 84 c -2(wo)m 13(dif)m (ferent)s 14(kind)m 14(of)m 15(timers)m 14(are)m 14(required.)m 26(The)m 14(\014rst)m 14(kind,)m 16(called)m 14(single)m 14(shot)m 15(timers,)m 15(\014re)m 14(once)m 15(and)m 14(cause)m 14 r 97 c 104 2286 p (protocol)s 11(event)m 11(to)m 12(be)m 11(processed.)m 16(The)m 12(second)m 11(kind,)m 12(called)m 11(interval)m 11(timers,)m 12(\014re)m 11(at)m 11(continuous)m 11(intervals.)m 17(These)m 11(are)m 104 2336 p (used)s 12(for)m 13(the)m 12(sending)m 13(of)m 12(packets)m 13(at)m 13(regular)m 12(intervals.)m 20 r 65 c 13(good)m 12(example)m 13(of)m 12(this)m 13(is)m 13(the)m 12(regular)m 13(broadcast)m 12(of)m 13(Hello)m 104 2386 p (packets)s 10(\(on)m 11(broadcast)m 10(networks\).)m 14(The)m 10(granularity)m 11(of)m 10(both)m 11(kinds)m 10(of)m 10(timers)m 11(is)m 10(one)m 11(second.)m 104 2449 p (Interval)s 12(timers)m 13(should)m 12(be)m 13(implemented)m 12(to)m 12(avoid)m 13(drift.)m 20(In)m 12(some)m 13(router)m 12(implementations,)m 13(packet)m 12(processing)m 13(can)m 104 2499 p (af)s (fect)s 12(timer)m 12(execution.)m 20(When)m 13(multiple)m 13(routers)m 12(are)m 13(attached)m 12(to)m 13 r 97 c 12(single)m 13(network,)m 13(all)m 12(doing)m 13(broadcasts,)m 13(this)m 13(can)m 104 2549 p (lead)s 11(to)m 12(the)m 12(synchronization)m 11(of)m 12(routing)m 12(packets)m 11(\(which)m 12(should)m 12(be)m 11(avoided\).)m 18(If)m 12(timers)m 11(cannot)m 12(be)m 12(implemented)m 11(to)m 104 2599 p (avoid)s 10(drift,)m 11(small)m 10(random)m 10(amounts)m 11(should)m 10(be)m 11(added)m 10(to/subtracted)m 11(from)m 10(the)m 10(timer)m 11(interval)m 10(at)m 11(each)m 10(\014ring.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(21])m @eop 20 @bop0 20 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p 52 c 58(Functional)m 15(Summary)m t-rom.300 @sf 0 305 p 65 c 11(separate)m 10(copy)m 11(of)m 10(OSPF')m -1 r 115 c 10(basic)m 10(routing)m 11(algorithm)m 10(runs)m 11(in)m 11(each)m 10(area.)m 15(Routers)m 10(having)m 11(interfaces)m 10(to)m 11(multiple)m 11(areas)m 10(run)m 0 355 p (multiple)s 10(copies)m 11(of)m 10(the)m 11(algorithm.)m 14 r 65 c 10(brief)m 10(summary)m 11(of)m 10(the)m 11(routing)m 10(algorithm)m 10(follows.)m 0 422 p (When)s 11 r 97 c 10(router)m 11(starts,)m 11(it)m 10(\014rst)m 11(initializes)m 11(the)m 10(routing)m 11(protocol)m 11(data)m 10(structures.)m 15(The)m 10(router)m 11(then)m 11(waits)m 10(for)m 11(indications)m 11(from)m 0 472 p (the)s 10(lower)m (-level)s 10(protocols)m 10(that)m 11(its)m 10(interfaces)m 11(are)m 10(functional.)m 0 539 p 65 c 12(router)m 11(then)m 12(uses)m 11(the)m 12(OSPF')m -1 r 115 c 10(Hello)m 12(Protocol)m 11(to)m 12(acquire)m 11(neighbors.)m 18(The)m 11(router)m 12(sends)m 12(Hello)m 11(packets)m 12(to)m 11(its)m 12(neighbors,)m 0 589 p (and)s 11(in)m 10(turn)m 11(receives)m 10(their)m 11(Hello)m 10(packets.)m 15(On)m 10(broadcast)m 11(and)m 10(point-to-point)m 11(networks,)m 10(the)m 11(router)m 10(dynamically)m 11(detects)m 11(its)m 0 638 p (neighboring)s 9(routers)m 9(by)m 9(sending)m 9(its)m 9(Hello)m 9(packets)m 9(to)m 9(the)m 9(multicast)m 9(address)m 9(AllSPFRouters.)m 14(On)m 9(non-broadcast)m 9(networks,)m 0 688 p (some)s 11(con\014guration)m 11(information)m 11(is)m 11(necessary)m 11(in)m 11(order)m 11(to)m 10(discover)m 11(neighbors.)m 16(On)m 11(all)m 11(multi-access)m 11(networks)m 11(\(broadcast)m 0 738 p (or)s 10(non-broadcast\),)m 11(the)m 10(Hello)m 11(Protocol)m 10(also)m 10(elects)m 11 r 97 c 10(Designated)m 11(router)m 10(for)m 11(the)m 10(network.)m 0 805 p (The)s 13(router)m 14(will)m 13(attempt)m 14(to)m 13(form)m 14(adjacencies)m 13(with)m 14(some)m 13(of)m 14(its)m 13(newly)m 14(acquired)m 13(neighbors.)m 23 r 84 c -2(opological)m 13(databases)m 13(are)m 0 855 p (synchronized)s 11(between)m 11(pairs)m 11(of)m 11(adjacent)m 12(routers.)m 16(On)m 11(multi-access)m 11(networks,)m 11(the)m 11(Designated)m 11(Router)m 11(determines)m 12(which)m 0 905 p (routers)s 10(should)m 11(become)m 10(adjacent.)m 0 972 p (Adjacencies)s 11(control)m 10(the)m 11(distribution)m 11(of)m 10(routing)m 11(protocol)m 11(packets.)m 15(Routing)m 10(protocol)m 11(packets)m 11(are)m 10(sent)m 11(and)m 11(received)m 10(only)m 0 1022 p (on)s 10(adjacencies.)m 14(In)m 11(particular)m -1 r 44 c 9(distribution)m 11(of)m 10(topological)m 11(database)m 10(updates)m 11(proceeds)m 10(along)m 10(adjacencies.)m 0 1089 p 65 c 11(router)m 12(periodically)m 11(advertises)m 12(its)m 11(state,)m 12(which)m 11(is)m 11(also)m 12(called)m 11(link)m 11(state.)m 17(Link)m 12(state)m 11(is)m 11(also)m 12(advertised)m 11(when)m 11 r 97 c 12(router)m 1 r 39 c -1 r 115 c 0 1139 p (state)s 12(changes.)m 21 r 65 c 12(router)m 2 r 39 c -2 r 115 c 12(adjacencies)m 12(are)m 13(re\015ected)m 12(in)m 13(the)m 12(contents)m 13(of)m 12(its)m 13(link)m 12(state)m 13(advertisements.)m 20(This)m 12(relationship)m 0 1188 p (between)s 10(adjacencies)m 11(and)m 10(link)m 11(state)m 10(allows)m 10(the)m 11(protocol)m 10(to)m 11(detect)m 10(dead)m 11(routers)m 10(in)m 10 r 97 c 11(timely)m 10(fashion.)m 0 1255 p (Link)s 7(state)m 8(advertisements)m 7(are)m 7(\015ooded)m 8(throughout)m 7(the)m 7(area.)m 13(The)m 8(\015ooding)m 7(algorithm)m 7(is)m 8(reliable,)m 7(ensuring)m 8(that)m 7(all)m 7(routers)m 8(in)m 0 1305 p (an)s 8(area)m 8(have)m 8(exactly)m 8(the)m 7(same)m 8(topological)m 8(database.)m 13(This)m 8(database)m 8(consists)m 8(of)m 8(the)m 8(collection)m 7(of)m 8(link)m 8(state)m 8(advertisements)m 0 1355 p (received)s 12(from)m 12(each)m 11(router)m 12(belonging)m 12(to)m 12(the)m 12(area.)m 18(From)m 12(this)m 11(database)m 12(each)m 12(router)m 12(calculates)m 12 r 97 c 11(shortest-path)m 12(tree,)m 12(with)m 0 1405 p (itself)s 10(as)m 11(root.)m 14(This)m 10(shortest-path)m 11(tree)m 10(in)m 10(turn)m 11(yields)m 10 r 97 c 11(routing)m 10(table)m 10(for)m 11(the)m 10(protocol.)m t-bol.360 @sf 0 1541 p (4.1)s 50(Inter)m -1(-ar)m -1(ea)m 12 r 114 c (outing)s t-rom.300 @sf 0 1636 p (The)s 9(previous)m 9(section)m 10(described)m 9(the)m 9(operation)m 9(of)m 9(the)m 10(protocol)m 9(within)m 9 r 97 c 9(single)m 10(area.)m 13(For)m 9(intra-area)m 9(routing,)m 10(no)m 9(other)m 9(rout-)m 0 1686 p (ing)s 8(information)m 8(is)m 9(pertinent.)m 13(In)m 8(order)m 8(to)m 8(be)m 8(able)m 9(to)m 8(route)m 8(to)m 8(destinations)m 8(outside)m 8(of)m 9(the)m 8(area,)m 8(the)m 9(area)m 8(border)m 8(routers)m 8(inject)m 0 1735 p (additional)s 9(routing)m 10(information)m 9(into)m 9(the)m 9(area.)m 14(This)m 9(additional)m 9(information)m 10(is)m 9 r 97 c 9(distillation)m 10(of)m 9(the)m 9(rest)m 9(of)m 10(the)m 9(Autonomous)m 0 1785 p (System')s -1 r 115 c 9(topology)m -2 r 46 c 0 1852 p (This)s 10(distillation)m 10(is)m 9(accomplished)m 10(as)m 10(follows:)m 13(Each)m 10(area)m 10(border)m 10(router)m 9(is)m 10(by)m 10(de\014nition)m 10(connected)m 9(to)m 10(the)m 10(backbone.)m 14(Each)m 0 1902 p (area)s 12(border)m 13(router)m 12(summarizes)m 12(the)m 13(topology)m 12(of)m 12(its)m 13(attached)m 12(areas)m 12(for)m 13(transmission)m 12(on)m 12(the)m 13(backbone,)m 12(and)m 13(hence)m 12(to)m 12(all)m 0 1952 p (other)s 12(area)m 11(border)m 12(routers.)m 18 r 65 c 12(area)m 11(border)m 12(router)m 12(then)m 12(has)m 11(complete)m 12(topological)m 12(information)m 12(concerning)m 11(the)m 12(backbone,)m 0 2002 p (and)s 11(the)m 10(area)m 11(summaries)m 11(from)m 10(each)m 11(of)m 11(the)m 10(other)m 11(area)m 11(border)m 10(routers.)m 15(From)m 10(this)m 11(information,)m 11(the)m 11(router)m 10(calculates)m 11(paths)m 0 2052 p (to)s 10(all)m 10(destinations)m 10(not)m 10(contained)m 10(in)m 10(its)m 10(attached)m 10(areas.)m 14(The)m 10(router)m 10(then)m 10(advertises)m 10(these)m 10(paths)m 10(to)m 10(its)m 10(attached)m 10(areas.)m 14(This)m 0 2101 p (enables)s 10(the)m 11(area')m -1 r 115 c 9(internal)m 10(routers)m 11(to)m 10(pick)m 11(the)m 10(best)m 10(exit)m 11(router)m 10(when)m 11(forwarding)m 10(traf)m (\014c)s 10(to)m 10(destinations)m 11(in)m 10(other)m 10(areas.)m t-bol.360 @sf 0 2237 p (4.2)s 50(AS)m 12(external)m 13 r 114 c (outes)s t-rom.300 @sf 0 2332 p (Routers)s 13(that)m 13(have)m 14(information)m 13(regarding)m 13(other)m 13(Autonomous)m 14(Systems)m 13(can)m 13(\015ood)m 13(this)m 13(information)m 14(throughout)m 13(the)m 13(AS.)m 0 2382 p (This)s 8(external)m 9(routing)m 8(information)m 8(is)m 9(distributed)m 8(verbatim)m 8(to)m 9(every)m 8(participating)m 8(router)m -1 r 46 c 12(There)m 9(is)m 8(one)m 8(exception:)m 13(external)m 0 2432 p (routing)s 10(information)m 11(is)m 10(not)m 11(\015ooded)m 10(into)m 10(\\stub")m 11(areas)m 10(\(see)m 11(Section)m 10(3.6\).)m 0 2499 p 84 c -2 r 111 c 7(utilize)m 9(external)m 8(routing)m 9(information,)m 8(the)m 9(path)m 8(to)m 9(all)m 8(routers)m 9(advertising)m 8(external)m 8(information)m 9(must)m 8(be)m 9(known)m 8(through-)m 0 2549 p (out)s 10(the)m 11(AS)m 10(\(excepting)m 11(the)m 10(stub)m 11(areas\).)m 14(For)m 10(that)m 11(reason,)m 10(the)m 11(locations)m 10(of)m 11(these)m 10(AS)m 11(boundary)m 10(routers)m 11(are)m 10(summarized)m 11(by)m 0 2599 p (the)s 10(\(non-stub\))m 11(area)m 10(border)m 11(routers.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(20])m @eop 19 @bop0 19 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (In)s 12(the)m 12(previous)m 12(section,)m 12(an)m 12(area)m 12(was)m 12(described)m 11(as)m 12 r 97 c 12(list)m 12(of)m 12(address)m 12(ranges.)m 18(Any)m 12(particular)m 12(address)m 12(range)m 12(must)m 12(still)m 11(be)m 0 245 p (completely)s 12(contained)m 13(in)m 12 r 97 c 12(single)m 12(component)m 13(of)m 12(the)m 12(area)m 12(partition.)m 20(This)m 12(has)m 12(to)m 13(do)m 12(with)m 12(the)m 12(way)m 13(the)m 12(area)m 12(contents)m 12(are)m 0 295 p (summarized)s 10(to)m 9(the)m 10(backbone.)m 14(Also,)m 9(the)m 10(backbone)m 10(itself)m 9(must)m 10(not)m 9(partition.)m 14(If)m 10(it)m 9(does,)m 10(parts)m 10(of)m 9(the)m 10(Autonomous)m 10(System)m 0 345 p (will)s 10(become)m 11(unreachable.)m 14(Backbone)m 10(partitions)m 11(can)m 10(be)m 10(repaired)m 11(by)m 10(con\014guring)m 11(virtual)m 10(links)m 10(\(see)m 11(Section)m 10(15\).)m 0 412 p (Another)s 8(way)m 8(to)m 9(think)m 8(about)m 8(area)m 8(partitions)m 8(is)m 9(to)m 8(look)m 8(at)m 8(the)m 9(Autonomous)m 8(System)m 8(graph)m 8(that)m 8(was)m 9(introduced)m 8(in)m 8(Section)m 8(2.)m 0 462 p (Area)s 11(IDs)m 11(can)m 11(be)m 11(viewed)m 11(as)m 12(colors)m 11(for)m 11(the)m 11(graph')m -1 r 115 c 10(edges.)m t-rom.210 @sf 934 447 p 49 c t-rom.300 @sf 966 462 p (Each)s 11(edge)m 11(of)m 11(the)m 12(graph)m 11(connects)m 11(to)m 11 r 97 c 11(network,)m 11(or)m 11(is)m 11(itself)m 12 r 97 c 0 512 p (point-to-point)s 10(network.)m 14(In)m 11(either)m 10(case,)m 11(the)m 10(edge)m 10(is)m 11(colored)m 10(with)m 11(the)m 10(network')m -1 r 115 c 9(Area)m 11(ID.)m 0 580 p 65 c 10(group)m 11(of)m 10(edges,)m 10(all)m 10(having)m 11(the)m 10(same)m 10(color)m 44 c 9(and)m 10(interconnected)m 10(by)m 11(vertices,)m 10(represents)m 10(an)m 10(area.)m 14(If)m 11(the)m 10(topology)m 10(of)m 10(the)m 0 629 p (Autonomous)s 10(System)m 11(is)m 10(intact,)m 11(the)m 10(graph)m 10(will)m 11(have)m 10(several)m 11(regions)m 10(of)m 11(color)m -1 r 44 c 9(each)m 11(color)m 10(being)m 11 r 97 c 10(distinct)m 10(Area)m 11(ID.)m 0 697 p (When)s 9(the)m 8(AS)m 9(topology)m 8(changes,)m 9(one)m 9(of)m 9(the)m 8(areas)m 9(may)m 8(become)m 9(partitioned.)m 13(The)m 9(graph)m 9(of)m 8(the)m 9(AS)m 8(will)m 9(then)m 9(have)m 8(multiple)m 0 747 p (regions)s 10(of)m 9(the)m 10(same)m 9(color)m 10(\(Area)m 10(ID\).)m 9(The)m 10(routing)m 9(in)m 10(the)m 10(Autonomous)m 9(System)m 10(will)m 9(continue)m 10(to)m 10(function)m 9(as)m 10(long)m 10(as)m 9(these)m 0 797 p (regions)s 10(of)m 11(same)m 10(color)m 11(are)m 10(connected)m 10(by)m 11(the)m 10(single)m 11(backbone)m 10(region.)m 0 2520 p 780 2 ru t-rom.180 @sf 45 2547 p 49 c t-rom.240 @sf 60 2559 p (The)s 9(graph')m -1 r 115 c 8(vertices)m 9(represent)m 8(either)m 9(routers,)m 9(transit)m 9(networks,)m 9(or)m 8(stub)m 9(networks.)m 13(Since)m 8(routers)m 9(may)m 9(belong)m 9(to)m 9(multiple)m 8(areas,)m 9(it)m 9(is)m 9(not)m 9(possible)m 0 2598 p (to)s 8(color)m 9(the)m 8(graph')m -1 r 115 c 7(vertices.)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(19])m @eop 18 @bop0 18 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (There)s 13(are)m 13(many)m 13(possible)m 13(ways)m 12(of)m 13(dividing)m 13(up)m 13 r 97 c 13(class)m 13(A,)m 13(B,)m 13(and)m 13 r 67 c 13(network)m 12(into)m 13(variable)m 13(sized)m 13(subnets.)m 21(The)m 13(precise)m 0 245 p (procedure)s 11(for)m 11(doing)m 11(so)m 10(is)m 11(beyond)m 11(the)m 11(scope)m 11(of)m 11(this)m 11(speci\014cation.)m 15(The)m 11(speci\014cation)m 11(however)m 11(establishes)m 10(the)m 11(following)m 0 295 p (guideline:)s 13(When)m 9(an)m 8(IP)m 9(packet)m 8(is)m 9(forwarded,)m 9(it)m 9(is)m 8(always)m 9(forwarded)m 8(to)m 9(the)m 9(network)m 8(that)m 9(is)m 8(the)m 9(best)m 9(match)m 8(for)m 9(the)m 8(packet')m -1 r 115 c 0 345 p (destination.)s 17(Here)m 11(best)m 12(match)m 11(is)m 12(synonymous)m 11(with)m 12(the)m 11(longest)m 12(or)m 11(most)m 11(speci\014c)m 12(match.)m 17(For)m 11(example,)m 12(the)m 12(default)m 11(route)m 0 394 p (with)s 15(destination)m 16(of)m 15(0.0.0.0)m 15(and)m 15(mask)m c-med.300 @sf 16(0x00000000)m t-rom.300 @sf 15(is)m 15(always)m 15 r 97 c 16(match)m 15(for)m 15(every)m 15(IP)m 16(destination.)m 28 r 89 c -3(et)m 14(it)m 15(is)m 15(always)m 0 444 p (less)s 13(speci\014c)m 13(than)m 13(any)m 13(other)m 13(match.)m 22(Subnet)m 14(masks)m 13(must)m 13(be)m 13(assigned)m 13(so)m 13(that)m 13(the)m 13(best)m 13(match)m 13(for)m 13(any)m 14(IP)m 13(destination)m 13(is)m 0 494 p (unambiguous.)s 0 561 p (The)s 14(OSPF)m 13(area)m 14(concept)m 13(is)m 14(modelled)m 14(after)m 13(an)m 14(IP)m 14(subnetted)m 13(network.)m 24(OSPF)m 13(areas)m 14(have)m 14(been)m 13(loosely)m 14(de\014ned)m 13(to)m 14(be)m 14 r 97 c 0 610 p (collection)s 10(of)m 11(networks.)m 14(In)m 10(actuality)m -1 r 44 c 9(an)m 10(OSPF)m 11(area)m 10(is)m 11(speci\014ed)m 10(to)m 11(be)m 10 r 97 c 10(list)m 11(of)m 10(address)m 11(ranges)m 10(\(see)m 11(Section)m 10(C.2)m 11(for)m 10(more)m 0 660 p (details\).)s 17(Each)m 11(address)m 11(range)m 12(is)m 11(de\014ned)m 12(as)m 11(an)m 11([address,mask])m 12(pair)m -2 r 46 c 16(Many)m 11(separate)m 12(networks)m 11(may)m 12(then)m 11(be)m 11(contained)m 12(in)m 0 710 p 97 c 12(single)m 12(address)m 12(range,)m 12(just)m 12(as)m 12 r 97 c 12(subnetted)m 12(network)m 12(is)m 11(composed)m 12(of)m 12(many)m 12(separate)m 12(subnets.)m 19(Area)m 11(border)m 12(routers)m 12(then)m 0 760 p (summarize)s 13(the)m 12(area)m 13(contents)m 12(\(for)m 13(distribution)m 12(to)m 13(the)m 12(backbone\))m 13(by)m 12(advertising)m 13 r 97 c 12(single)m 13(route)m 13(for)m 12(each)m 13(address)m 12(range.)m 0 810 p (The)s 10(cost)m 11(of)m 10(the)m 11(route)m 10(is)m 10(the)m 11(minimum)m 10(cost)m 11(to)m 10(any)m 11(of)m 10(the)m 10(networks)m 11(falling)m 10(in)m 11(the)m 10(speci\014ed)m 10(range.)m 0 876 p (For)s 9(example,)m 9(an)m 9(IP)m 9(subnetted)m 9(network)m 9(can)m 10(be)m 9(con\014gured)m 9(as)m 9 r 97 c 9(single)m 9(OSPF)m 9(area.)m 13(In)m 9(that)m 9(case,)m 9(the)m 10(area)m 9(would)m 9(be)m 9(de\014ned)m 0 926 p (as)s 13 r 97 c 14(single)m 13(address)m 14(range:)m 20 r 97 c 13(class)m 14(A,)m 13(B,)m 14(or)m 13 r 67 c 14(network)m 13(number)m 14(along)m 13(with)m 14(its)m 13(natural)m 14(IP)m 13(mask.)m 24(Inside)m 13(the)m 13(area,)m 15(any)m 0 976 p (number)s 9(of)m 9(variable)m 10(sized)m 9(subnets)m 9(could)m 9(be)m 9(de\014ned.)m 14(External)m 9(to)m 9(the)m 10(area,)m 9 r 97 c 9(single)m 10(route)m 9(for)m 9(the)m 9(entire)m 9(subnetted)m 10(network)m 0 1026 p (would)s 11(be)m 12(distributed,)m 12(hiding)m 11(even)m 12(the)m 11(fact)m 11(that)m 12(the)m 11(network)m 12(is)m 11(subnetted)m 12(at)m 11(all.)m 17(The)m 12(cost)m 11(of)m 12(this)m 11(route)m 12(is)m 11(the)m 11(minimum)m 0 1076 p (of)s 10(the)m 11(set)m 10(of)m 11(costs)m 10(to)m 10(the)m 11(component)m 10(subnets.)m t-bol.360 @sf 0 1211 p (3.6)s 50(Supporting)m 12(stub)m 13(ar)m (eas)s t-rom.300 @sf 0 1305 p (In)s 12(some)m 12(Autonomous)m 12(Systems,)m 12(the)m 12(majority)m 12(of)m 12(the)m 12(topological)m 12(database)m 12(may)m 12(consist)m 12(of)m 12(external)m 12(advertisements.)m 18(An)m 0 1355 p (OSPF)s 14(external)m 13(advertisement)m 14(is)m 14(usually)m 13(\015ooded)m 14(throughout)m 14(the)m 13(entire)m 14(AS.)m 24(However)m -1 r 44 c 13(OSPF)m 14(allows)m 14(certain)m 13(areas)m 14(to)m 0 1405 p (be)s 15(con\014gured)m 15(as)m 16(\\stub)m 15(areas".)m 28(External)m 15(advertisements)m 15(are)m 15(not)m 16(\015ooded)m 15(into/throughout)m 15(stub)m 15(areas;)m 18(routing)m 15(to)m 15(AS)m 0 1455 p (external)s 12(destinations)m 12(in)m 12(these)m 12(areas)m 12(is)m 12(based)m 12(on)m 12 r 97 c 12(\(per)m (-area\))s 11(default)m 12(only)m -1 r 46 c 17(This)m 12(reduces)m 12(the)m 12(topological)m 12(database)m 12(size,)m 0 1505 p (and)s 10(therefore)m 11(the)m 10(memory)m 11(requirements,)m 10(for)m 10 r 97 c 11(stub)m 10(area')m -1 r 115 c 9(internal)m 11(routers.)m 0 1571 p (In)s 15(order)m 15(to)m 15(take)m 15(advantage)m 15(of)m 15(the)m 15(OSPF)m 15(stub)m 15(area)m 15(support,)m 17(default)m 15(routing)m 15(must)m 15(be)m 15(used)m 15(in)m 15(the)m 15(stub)m 15(area.)m 28(This)m 15(is)m 0 1621 p (accomplished)s 13(as)m 12(follows.)m 21(One)m 12(or)m 13(more)m 13(of)m 12(the)m 13(stub)m 13(area')m -2 r 115 c 12(area)m 13(border)m 12(routers)m 13(must)m 12(advertise)m 13 r 97 c 13(default)m 12(route)m 13(into)m 13(the)m 0 1671 p (stub)s 11(area)m 11(via)m 11(summary)m 11(advertisements.)m 16(These)m 12(summary)m 11(defaults)m 11(are)m 11(\015ooded)m 11(throughout)m 11(the)m 11(stub)m 11(area,)m 12(but)m 11(no)m 11(further)m -1 r 46 c 0 1721 p (\(For)s 11(this)m 10(reason)m 11(these)m 11(defaults)m 11(pertain)m 10(only)m 11(to)m 11(the)m 10(particular)m 11(stub)m 11(area\).)m 15(These)m 10(summary)m 11(default)m 11(routes)m 10(will)m 11(match)m 11(any)m 0 1770 p (destination)s 10(that)m 11(is)m 10(not)m 11(explicitly)m 10(reachable)m 10(by)m 11(an)m 10(intra-area)m 11(or)m 10(inter)m (-area)s 10(path)m 10(\(i.e.,)m 11(AS)m 10(external)m 10(destinations\).)m 0 1837 p (An)s 13(area)m 13(can)m 13(be)m 14(con\014gured)m 13(as)m 13(stub)m 13(when)m 13(there)m 13(is)m 14 r 97 c 13(single)m 13(exit)m 13(point)m 13(from)m 13(the)m 14(area,)m 13(or)m 14(when)m 13(the)m 13(choice)m 13(of)m 13(exit)m 13(point)m 0 1887 p (need)s 12(not)m 12(be)m 11(made)m 12(on)m 12 r 97 c 12(per)m (-external-destination)s 11(basis.)m 18(For)m 12(example,)m 12(area)m 12 r 51 c 12(in)m 11(Figure)m 12 r 54 c 12(could)m 12(be)m 12(con\014gured)m 11(as)m 12 r 97 c 12(stub)m 0 1937 p (area,)s 11(because)m 11(all)m 11(external)m 11(traf)m (\014c)s 10(must)m 11(travel)m 11(though)m 11(its)m 11(single)m 11(area)m 11(border)m 11(router)m 11 r 82 c -2(T1)m -1(1.)m 14(If)m 11(area)m 11 r 51 c 11(were)m 11(con\014gured)m 11(as)m 11 r 97 c 0 1986 p (stub,)s 11(router)m 10 r 82 c -1(T1)m -2 r 49 c 10(would)m 10(advertise)m 11 r 97 c 10(default)m 11(route)m 10(for)m 11(distribution)m 10(inside)m 11(area)m 10 r 51 c 11(\(in)m 10 r 97 c 11(summary)m 10(advertisement\),)m 11(instead)m 0 2036 p (of)s 10(\015ooding)m 11(the)m 10(external)m 11(advertisements)m 10(for)m 10(networks)m 11(N12-N15)m 10(into/throughout)m 11(the)m 10(area.)m 0 2103 p (The)s 12(OSPF)m 12(protocol)m 12(ensures)m 12(that)m 13(all)m 12(routers)m 12(belonging)m 12(to)m 12(an)m 12(area)m 12(agree)m 12(on)m 12(whether)m 12(the)m 13(area)m 12(has)m 12(been)m 12(con\014gured)m 12(as)m 12 r 97 c 0 2153 p (stub.)s 14(This)m 10(guarantees)m 11(that)m 10(no)m 11(confusion)m 10(will)m 10(arise)m 11(in)m 10(the)m 11(\015ooding)m 10(of)m 10(external)m 11(advertisements.)m 0 2219 p (There)s 12(are)m 12 r 97 c 11(couple)m 12(of)m 12(restrictions)m 12(on)m 12(the)m 12(use)m 11(of)m 12(stub)m 12(areas.)m 18 r 86 c -1(irtual)m 11(links)m 11(cannot)m 12(be)m 12(con\014gured)m 12(through)m 12(stub)m 12(areas.)m 18(In)m 0 2269 p (addition,)s 10(AS)m 11(boundary)m 10(routers)m 11(cannot)m 10(be)m 10(placed)m 11(internal)m 10(to)m 11(stub)m 10(areas.)m t-bol.360 @sf 0 2404 p (3.7)s 50(Partitions)m 12(of)m 13(ar)m (eas)s t-rom.300 @sf 0 2499 p (OSPF)s 11(does)m 11(not)m 10(actively)m 11(attempt)m 11(to)m 11(repair)m 11(area)m 10(partitions.)m 15(When)m 11(an)m 11(area)m 11(becomes)m 11(partitioned,)m 11(each)m 10(component)m 11(simply)m 0 2549 p (becomes)s 12 r 97 c 12(separate)m 12(area.)m 19(The)m 12(backbone)m 12(then)m 12(performs)m 12(routing)m 12(between)m 12(the)m 12(new)m 12(areas.)m 19(Some)m 12(destinations)m 12(reachable)m 0 2599 p (via)s 10(intra-area)m 11(routing)m 10(before)m 11(the)m 10(partition)m 10(will)m 11(now)m 10(require)m 11(inter)m (-area)s 9(routing.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(18])m @eop 17 @bop0 17 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 655 201 p 641 2 ru 654 251 p 2 50 ru t-ita.300 @sf 681 236 p (Destination)s 900 251 p 2 50 ru 926 236 p (RT3)s 10(adv)m -2 r 46 c 1097 251 p 2 50 ru 1123 236 p (RT4)s 10(adv)m -2 r 46 c 1294 251 p 2 50 ru 655 252 p 641 2 ru 654 302 p 2 50 ru t-rom.300 @sf 739 287 p (Ia,Ib)s 900 302 p 2 50 ru 979 287 p (15)s 1097 302 p 2 50 ru 1176 287 p (22)s 1294 302 p 2 50 ru 654 352 p 2 50 ru 752 337 p (N6)s 900 352 p 2 50 ru 979 337 p (16)s 1097 352 p 2 50 ru 1176 337 p (15)s 1294 352 p 2 50 ru 654 402 p 2 50 ru 752 387 p (N7)s 900 402 p 2 50 ru 979 387 p (20)s 1097 402 p 2 50 ru 1176 387 p (19)s 1294 402 p 2 50 ru 654 452 p 2 50 ru 752 437 p (N8)s 900 452 p 2 50 ru 979 437 p (18)s 1097 452 p 2 50 ru 1176 437 p (18)s 1294 452 p 2 50 ru 654 501 p 2 50 ru 680 486 p (N9-N1)s -1(1,H1)m 900 501 p 2 50 ru 979 486 p (19)s 1097 501 p 2 50 ru 1176 486 p (26)s 1294 501 p 2 50 ru 654 551 p 2 50 ru 246 r 2 50 ru 197 r 2 50 ru 197 r 2 50 ru 654 601 p 2 50 ru 742 586 p 82 c -1(T5)m 900 601 p 2 50 ru 979 586 p (14)s 1097 601 p 2 50 ru 1186 586 p 56 c 1294 601 p 2 50 ru 654 651 p 2 50 ru 742 636 p 82 c -1(T7)m 900 651 p 2 50 ru 979 636 p (20)s 1097 651 p 2 50 ru 1176 636 p (14)s 1294 651 p 2 50 ru 655 653 p 641 2 ru 395 790 p 84 c -2(able)m 10(6:)m 13(Destinations)m 11(advertised)m 10(into)m 11(Area)m 10 r 49 c 11(by)m 10(routers)m 10 r 82 c -1(T3)m 9(and)m 11 r 82 c -2(T4.)m 0 923 p (The)s 11(information)m 12(imported)m 11(into)m 12(Area)m 11 r 49 c 12(by)m 11(routers)m 12 r 82 c -2(T3)m 11(and)m 11 r 82 c -1(T4)m 10(enables)m 12(an)m 11(internal)m 12(router)m -1 r 44 c 11(such)m 11(as)m 12 r 82 c -2(T1,)m 11(to)m 12(choose)m 11(an)m 0 973 p (area)s 10(border)m 11(router)m 10(intelligently)m -2 r 46 c 13(Router)m 10 r 82 c -1(T1)m 9(would)m 10(use)m 11 r 82 c -2(T4)m 10(for)m 10(traf)m (\014c)s 9(to)m 11(network)m 10(N6,)m 10 r 82 c -1(T3)m 9(for)m 10(traf)m (\014c)s 10(to)m 10(network)m 11(N10,)m 0 1023 p (and)s 10(would)m 11(load)m 10(share)m 11(between)m 10(the)m 10(two)m 11(for)m 10(traf)m (\014c)s 10(to)m 10(network)m 11(N8.)m 0 1090 p (Router)s 12 r 82 c -2(T1)m 11(can)m 12(also)m 12(determine)m 11(in)m 12(this)m 12(manner)m 12(the)m 12(shortest)m 11(path)m 12(to)m 12(the)m 12(AS)m 12(boundary)m 11(routers)m 12 r 82 c -1(T5)m 10(and)m 12 r 82 c -1(T7.)m 17(Then,)m 12(by)m 0 1140 p (looking)s 13(at)m 14 r 82 c -2(T5)m 13(and)m 13 r 82 c -1(T7')m -3 r 115 c 13(external)m 13(advertisements,)m 14(router)m 14 r 82 c -2(T1)m 12(can)m 14(decide)m 13(between)m 14 r 82 c -2(T5)m 12(or)m 14 r 82 c -2(T7)m 13(when)m 13(sending)m 14(to)m 13 r 97 c 0 1190 p (destination)s 10(in)m 11(another)m 10(Autonomous)m 11(System)m 10(\(one)m 10(of)m 11(the)m 10(networks)m 11(N12-N15\).)m 0 1258 p (Note)s 9(that)m 8 r 97 c 9(failure)m 8(of)m 9(the)m 8(line)m 9(between)m 8(routers)m 9 r 82 c -2(T6)m 8(and)m 9 r 82 c -2(T10)m 8(will)m 8(cause)m 9(the)m 8(backbone)m 9(to)m 8(become)m 9(disconnected.)m 13(Con\014g-)m 0 1308 p (uring)s 8(another)m 8(virtual)m 8(link)m 8(between)m 8(routers)m 8 r 82 c -2(T7)m 7(and)m 8 r 82 c -1(T10)m 7(will)m 8(give)m 8(the)m 8(backbone)m 8(more)m 8(connectivity)m 8(and)m 8(more)m 8(resistance)m 0 1357 p (to)s 11(such)m 11(failures.)m 16(Also,)m 12 r 97 c 11(virtual)m 11(link)m 11(between)m 11 r 82 c -1(T7)m 10(and)m 11 r 82 c -1(T10)m 10(would)m 11(allow)m 11 r 97 c 11(much)m 12(shorter)m 11(path)m 11(between)m 11(the)m 11(third)m 11(area)m 0 1407 p (\(containing)s 10(N9\))m 11(and)m 10(the)m 11(router)m 10 r 82 c -1(T7,)m 9(which)m 10(is)m 11(advertising)m 10 r 97 c 11(good)m 10(route)m 10(to)m 11(external)m 10(network)m 11(N12.)m t-bol.360 @sf 0 1544 p (3.5)s 50(IP)m 12(subnetting)m 13(support)m t-rom.300 @sf 0 1639 p (OSPF)s 14(attaches)m 14(an)m 15(IP)m 14(address)m 14(mask)m 14(to)m 14(each)m 14(advertised)m 15(route.)m 25(The)m 14(mask)m 14(indicates)m 14(the)m 15(range)m 14(of)m 14(addresses)m 14(being)m 14(de-)m 0 1689 p (scribed)s 12(by)m 13(the)m 12(particular)m 12(route.)m 19(For)m 13(example,)m 12 r 97 c 13(summary)m 12(advertisement)m 12(for)m 12(the)m 13(destination)m 12(128.185.0.0)m 12(with)m 12 r 97 c 13(mask)m 0 1739 p (of)s c-med.300 @sf 10(0xffff0000)m t-rom.300 @sf 9(actually)m 10(is)m 9(describing)m 10 r 97 c 9(single)m 10(route)m 9(to)m 10(the)m 10(collection)m 9(of)m 10(destinations)m 9(128.185.0.0)m 10 r 45 c 9(128.185.255.255.)m 0 1789 p (Similarly)s -2 r 44 c 12(host)m 13(routes)m 12(are)m 12(always)m 13(advertised)m 12(with)m 13 r 97 c 12(mask)m 13(of)m c-med.300 @sf 12(0xffffffff)m t-rom.300 @sf 44 c 13(indicating)m 12(the)m 13(presence)m 12(of)m 13(only)m 12 r 97 c 12(single)m 0 1839 p (destination.)s 0 1906 p (Including)s 12(the)m 12(mask)m 11(with)m 12(each)m 12(advertised)m 12(destination)m 12(enables)m 11(the)m 12(implementation)m 12(of)m 12(what)m 12(is)m 11(commonly)m 12(referred)m 12(to)m 12(as)m 0 1956 p (variable-length)s 8(subnet)m 9(masks.)m 13(This)m 8(means)m 8(that)m 8 r 97 c 9(single)m 8(IP)m 8(class)m 8(A,)m 9(B,)m 8(or)m 8 r 67 c 8(network)m 9(number)m 8(can)m 8(be)m 8(broken)m 9(up)m 8(into)m 8(many)m 0 2006 p (subnets)s 13(of)m 13(various)m 13(sizes.)m 21(For)m 13(example,)m 13(the)m 13(network)m 13(128.185.0.0)m 13(could)m 13(be)m 13(broken)m 13(up)m 13(into)m 13(64)m 12(variable-sized)m 13(subnets:)m 0 2056 p (16)s 11(subnets)m 11(of)m 10(size)m 11(4K,)m 11(16)m 11(subnets)m 11(of)m 10(size)m 11(256,)m 11(and)m 11(32)m 11(subnets)m 11(of)m 10(size)m 11(8.)m 15 r 84 c -2(able)m 10 r 55 c 11(shows)m 11(some)m 11(of)m 10(the)m 11(resulting)m 11(network)m 0 2106 p (addresses)s 10(together)m 11(with)m 10(their)m 11(masks:)m 530 2212 p 890 2 ru 529 2262 p 2 50 ru t-ita.300 @sf 555 2247 p (Network)s 11(addr)m -1(ess)m 859 2262 p 2 50 ru 885 2247 p (IP)s 10(addr)m (ess)s 9(mask)m 1183 2262 p 2 50 ru 1208 2247 p (Subnet)s 11(size)m 1419 2262 p 2 50 ru 530 2263 p 890 2 ru 529 2313 p 2 50 ru t-rom.300 @sf 586 2298 p (128.185.16.0)s 859 2313 p 2 50 ru c-med.300 @sf 897 2298 p (0xfffff000)s 1183 2313 p 2 50 ru t-rom.300 @sf 1276 2298 p (4K)s 1419 2313 p 2 50 ru 529 2363 p 2 50 ru 596 2348 p (128.185.1.0)s 859 2363 p 2 50 ru c-med.300 @sf 897 2348 p (0xffffff00)s 1183 2363 p 2 50 ru t-rom.300 @sf 1270 2348 p (256)s 1419 2363 p 2 50 ru 529 2413 p 2 50 ru 596 2398 p (128.185.0.8)s 859 2413 p 2 50 ru c-med.300 @sf 897 2398 p (0xfffffff8)s 1183 2413 p 2 50 ru t-rom.300 @sf 1291 2398 p 56 c 1419 2413 p 2 50 ru 530 2414 p 890 2 ru 678 2551 p 84 c -1(able)m 9(7:)m 14(Some)m 10(sample)m 11(subnet)m 10(sizes.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(17])m @eop 16 @bop0 16 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 38600707 3946905 4999413 32298844 48875847 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/figure7-8.fig %%Creator: f2ps %%CreationDate: Sat Jul 27 20:22:49 1991 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 60 76 491 743 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y translate xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix } def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth newpath 209.388 157.018 moveto 205.000 164.000 lineto 205.587 155.775 lineto stroke newpath 253.315 179.806 50.834 -88.100 -161.885 arcn stroke newpath 250.791 137.393 moveto 256.000 131.000 lineto 254.412 139.092 lineto stroke newpath 200.346 104.885 61.476 83.786 25.138 arcn stroke newpath 216.181 91.032 moveto 208.000 90.000 lineto 215.704 87.060 lineto stroke newpath 213.356 134.590 44.910 -13.639 -96.849 arcn stroke newpath 247.440 121.706 moveto 255.000 125.000 lineto 246.780 125.651 lineto stroke newpath 266.550 56.045 69.915 150.003 99.509 arcn stroke newpath 323.046 121.294 moveto 329.000 127.000 lineto 321.062 124.767 lineto stroke newpath 295.000 186.500 68.529 -119.745 -60.255 arc stroke newpath 267.411 133.186 moveto 261.000 128.000 lineto 269.098 129.559 lineto stroke newpath 297.328 49.857 86.174 68.436 114.933 arc stroke newpath 270.027 188.422 moveto 275.000 195.000 lineto 267.517 191.536 lineto stroke newpath 310.471 151.000 56.517 -158.188 128.874 arcn stroke newpath 264.170 138.114 moveto 260.000 131.000 lineto 267.027 135.315 lineto stroke newpath 212.029 178.000 67.158 14.663 -44.414 arcn stroke newpath 342.873 694.397 moveto 351.000 693.000 lineto 344.487 698.057 lineto stroke [1 3.200000] 0 setdash newpath 223.000 402.674 317.290 99.067 66.208 arcn stroke [] 0 setdash newpath 184.039 711.163 moveto 176.000 713.000 lineto 182.229 707.596 lineto stroke [1 3.200000] 0 setdash newpath 294.153 945.832 261.096 -77.425 -116.906 arcn stroke [] 0 setdash newpath 386.989 469.566 moveto 382.000 463.000 lineto 389.492 466.446 lineto stroke newpath 234.906 646.350 235.062 -7.418 -51.261 arcn stroke newpath 461.326 610.016 moveto 467.000 616.000 lineto 459.178 613.391 lineto stroke newpath 569.224 455.443 190.337 178.026 122.484 arcn stroke newpath 337.683 541.073 moveto 336.000 533.000 lineto 341.284 539.331 lineto stroke newpath 119.903 637.515 240.045 11.653 -25.811 arcn stroke newpath 349.400 678.174 moveto 352.000 686.000 lineto 346.023 680.319 lineto stroke newpath 497.795 593.417 172.707 -159.524 147.584 arcn stroke newpath 348.038 525.157 moveto 340.000 527.000 lineto 346.225 521.592 lineto stroke newpath 308.453 464.950 69.610 -2.429 63.051 arc stroke newpath 367.893 463.506 moveto 376.000 462.000 lineto 369.555 467.144 lineto stroke newpath 403.196 521.507 65.427 175.184 -114.561 arc stroke newpath 189.329 534.780 moveto 182.000 531.000 lineto 190.245 530.886 lineto stroke newpath 259.689 200.945 339.075 77.514 103.245 arc stroke newpath 326.338 526.140 moveto 333.000 531.000 lineto 324.835 529.847 lineto stroke newpath 255.743 721.533 205.600 -111.317 -67.929 arc stroke newpath 245.035 465.303 moveto 238.000 461.000 lineto 246.232 461.486 lineto stroke newpath 303.468 252.320 218.709 70.909 107.418 arc stroke newpath 365.643 453.275 moveto 373.000 457.000 lineto 364.756 457.175 lineto stroke newpath 310.484 731.790 281.811 -105.326 -77.183 arc stroke % Ellipse newpath 145 89 3 3 0 360 DrawEllipse stroke % Ellipse newpath 203 89 3 3 0 360 DrawEllipse stroke % Ellipse newpath 143 167 3 3 0 360 DrawEllipse stroke % Ellipse newpath 204 167 3 3 0 360 DrawEllipse stroke % Ellipse newpath 258 127 3 3 0 360 DrawEllipse stroke % Ellipse newpath 332 128 3 3 0 360 DrawEllipse stroke % Ellipse newpath 276 199 3 3 0 360 DrawEllipse stroke % Ellipse newpath 276 254 3 3 0 360 DrawEllipse stroke % Ellipse newpath 128 313 3 3 0 360 DrawEllipse stroke % Ellipse newpath 491 301 3 3 0 360 DrawEllipse stroke % Ellipse newpath 470 619 3 3 0 360 DrawEllipse stroke % Ellipse newpath 296 668 3 3 0 360 DrawEllipse stroke % Ellipse newpath 286 575 3 3 0 360 DrawEllipse stroke % Ellipse newpath 353 689 3 3 0 360 DrawEllipse stroke % Ellipse newpath 336 530 3 3 0 360 DrawEllipse stroke % Ellipse newpath 378 458 3 3 0 360 DrawEllipse stroke % Ellipse newpath 177 530 3 3 0 360 DrawEllipse stroke % Ellipse newpath 233 459 3 3 0 360 DrawEllipse stroke % Ellipse newpath 172 714 3 3 0 360 DrawEllipse stroke [4.000000] 0 setdash % Polyline newpath 172 711 moveto 133 653 lineto stroke [] 0 setdash newpath 135.804 660.755 moveto 133.000 653.000 lineto 139.124 658.523 lineto stroke [4.000000] 0 setdash % Polyline newpath 171 716 moveto 101 745 lineto stroke [] 0 setdash newpath 109.156 743.786 moveto 101.000 745.000 lineto 107.625 740.090 lineto stroke [4.000000] 0 setdash % Polyline newpath 278 200 moveto 437 191 lineto stroke [] 0 setdash newpath 428.900 189.455 moveto 437.000 191.000 lineto 429.126 193.449 lineto stroke [4.000000] 0 setdash % Polyline newpath 334 127 moveto 415 91 lineto stroke [] 0 setdash newpath 406.877 92.421 moveto 415.000 91.000 lineto 408.502 96.077 lineto stroke [4.000000] 0 setdash % Polyline newpath 335 128 moveto 440 131 lineto stroke [] 0 setdash newpath 432.060 128.772 moveto 440.000 131.000 lineto 431.946 132.771 lineto stroke [4.000000] 0 setdash % Polyline newpath 333 128 moveto 423 117 lineto stroke [] 0 setdash newpath 414.816 115.985 moveto 423.000 117.000 lineto 415.302 119.956 lineto stroke % Polyline newpath 200 89 moveto 150 89 lineto stroke newpath 158.000 91.000 moveto 150.000 89.000 lineto 158.000 87.000 lineto stroke % Polyline newpath 201 167 moveto 147 167 lineto stroke newpath 155.000 169.000 moveto 147.000 167.000 lineto 155.000 165.000 lineto stroke % Polyline newpath 276 202 moveto 276 250 lineto stroke newpath 278.000 242.000 moveto 276.000 250.000 lineto 274.000 242.000 lineto stroke [4.000000] 0 setdash % Polyline newpath 278 202 moveto 368 253 lineto stroke [] 0 setdash newpath 362.026 247.316 moveto 368.000 253.000 lineto 360.054 250.796 lineto stroke [4.000000] 0 setdash % Polyline newpath 276 200 moveto 379 237 lineto stroke [] 0 setdash newpath 372.147 232.413 moveto 379.000 237.000 lineto 370.795 236.178 lineto stroke [4.000000] 0 setdash % Polyline newpath 279 199 moveto 382 224 lineto stroke [] 0 setdash newpath 374.698 220.169 moveto 382.000 224.000 lineto 373.754 224.057 lineto stroke [4.000000] 0 setdash % Polyline newpath 279 199 moveto 382 207 lineto stroke [] 0 setdash newpath 374.179 204.387 moveto 382.000 207.000 lineto 373.869 208.375 lineto stroke [4.000000] 0 setdash % Polyline newpath 279 196 moveto 399 180 lineto stroke [] 0 setdash newpath 390.806 179.075 moveto 399.000 180.000 lineto 391.335 183.040 lineto stroke [4.000000] 0 setdash % Polyline newpath 276 196 moveto 372 168 lineto stroke [] 0 setdash newpath 363.760 168.320 moveto 372.000 168.000 lineto 364.880 172.160 lineto stroke [4.000000] 0 setdash % Polyline newpath 335 129 moveto 449 146 lineto stroke [] 0 setdash newpath 441.382 142.842 moveto 449.000 146.000 lineto 440.793 146.798 lineto stroke [4.000000] 0 setdash % Polyline newpath 330 126 moveto 438 100 lineto stroke [] 0 setdash newpath 429.754 99.928 moveto 438.000 100.000 lineto 430.690 103.817 lineto stroke [4.000000] 0 setdash % Polyline newpath 331 125 moveto 417 75 lineto stroke [] 0 setdash newpath 409.079 77.292 moveto 417.000 75.000 lineto 411.089 80.750 lineto stroke [4.000000] 0 setdash % Polyline newpath 331 125 moveto 387 71 lineto stroke [] 0 setdash newpath 379.853 75.113 moveto 387.000 71.000 lineto 382.630 77.993 lineto stroke [4.000000] 0 setdash % Polyline newpath 99 274 moveto 126 310 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 123 256 moveto 130 310 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 148 264 moveto 133 311 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 493 299 moveto 517 261 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 495 301 moveto 525 298 lineto stroke [] 0 setdash % Polyline newpath 350 690 moveto 301 670 lineto stroke newpath 307.651 674.875 moveto 301.000 670.000 lineto 309.163 671.172 lineto stroke % Polyline newpath 334 533 moveto 289 572 lineto stroke newpath 296.355 568.272 moveto 289.000 572.000 lineto 293.736 565.249 lineto stroke [4.000000] 0 setdash % Polyline newpath 472 617 moveto 496 579 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 474 619 moveto 504 616 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 398 409 moveto 383 456 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 373 401 moveto 380 455 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 349 419 moveto 376 455 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 231 457 moveto 176 427 lineto stroke [] 0 setdash newpath 182.065 432.587 moveto 176.000 427.000 lineto 183.981 429.075 lineto stroke [4.000000] 0 setdash % Polyline newpath 231 459 moveto 162 442 lineto stroke [] 0 setdash newpath 169.289 445.856 moveto 162.000 442.000 lineto 170.246 441.972 lineto stroke [4.000000] 0 setdash % Polyline newpath 232 460 moveto 155 462 lineto stroke [] 0 setdash newpath 163.049 463.792 moveto 155.000 462.000 lineto 162.945 459.793 lineto stroke [4.000000] 0 setdash % Polyline newpath 232 460 moveto 150 482 lineto stroke [] 0 setdash newpath 158.245 481.859 moveto 150.000 482.000 lineto 157.208 477.995 lineto stroke [4.000000] 0 setdash % Polyline newpath 172 528 moveto 110 508 lineto stroke [] 0 setdash newpath 117.000 512.359 moveto 110.000 508.000 lineto 118.228 508.553 lineto stroke [4.000000] 0 setdash % Polyline newpath 173 531 moveto 102 526 lineto stroke [] 0 setdash newpath 109.840 528.557 moveto 102.000 526.000 lineto 110.121 524.567 lineto stroke [4.000000] 0 setdash % Polyline newpath 354 688 moveto 422 690 lineto stroke [] 0 setdash newpath 414.062 687.766 moveto 422.000 690.000 lineto 413.945 691.764 lineto stroke [4.000000] 0 setdash % Polyline newpath 354 689 moveto 414 708 lineto stroke [] 0 setdash newpath 406.977 703.678 moveto 414.000 708.000 lineto 405.769 707.491 lineto stroke [4.000000] 0 setdash % Polyline newpath 354 689 moveto 421 731 lineto stroke [] 0 setdash newpath 415.284 725.056 moveto 421.000 731.000 lineto 413.159 728.446 lineto stroke [4.000000] 0 setdash % Polyline newpath 471 622 moveto 465 684 lineto stroke [] 0 setdash newpath 467.761 676.230 moveto 465.000 684.000 lineto 463.780 675.845 lineto stroke [4.000000] 0 setdash % Polyline newpath 471 624 moveto 491 689 lineto stroke [] 0 setdash newpath 490.559 680.766 moveto 491.000 689.000 lineto 486.736 681.942 lineto stroke [4.000000] 0 setdash % Polyline newpath 470 620 moveto 512 688 lineto stroke [] 0 setdash newpath 509.498 680.143 moveto 512.000 688.000 lineto 506.095 682.245 lineto stroke [4.000000] 0 setdash % Polyline newpath 169 714 moveto 91 697 lineto stroke [] 0 setdash newpath 98.391 700.658 moveto 91.000 697.000 lineto 99.242 696.750 lineto stroke [4.000000] 0 setdash % Polyline newpath 168 714 moveto 91 723 lineto stroke [] 0 setdash newpath 99.178 724.058 moveto 91.000 723.000 lineto 98.714 720.085 lineto stroke [4.000000] 0 setdash % Polyline newpath 176 533 moveto 105 547 lineto stroke [] 0 setdash newpath 113.236 547.415 moveto 105.000 547.000 lineto 112.462 543.490 lineto stroke [4.000000] 0 setdash % Polyline newpath 177 534 moveto 109 568 lineto stroke [] 0 setdash newpath 117.050 566.211 moveto 109.000 568.000 lineto 115.261 562.633 lineto stroke /Courier findfont 12.222222 scalefont setfont 128 700 moveto 1 -1 scale (7) show 1 -1 scale 117 735 moveto 1 -1 scale (3) show 1 -1 scale 71 698 moveto 1 -1 scale (N7) show 1 -1 scale 83 750 moveto 1 -1 scale (N6) show 1 -1 scale 384 199 moveto 1 -1 scale (15) show 1 -1 scale 408 134 moveto 1 -1 scale (18) show 1 -1 scale 385 125 moveto 1 -1 scale (19) show 1 -1 scale 402 113 moveto 1 -1 scale (15) show 1 -1 scale 383 107 moveto 1 -1 scale (22) show 1 -1 scale 417 92 moveto 1 -1 scale (Ia,Ib) show 1 -1 scale 283 662 moveto 1 -1 scale (Ia) show 1 -1 scale 272 588 moveto 1 -1 scale (Ib) show 1 -1 scale 439 196 moveto 1 -1 scale (Ia,Ib) show 1 -1 scale 315 671 moveto 1 -1 scale (5) show 1 -1 scale 303 573 moveto 1 -1 scale (7) show 1 -1 scale 199 789 moveto 1 -1 scale (Figure 8: The backbone database) show 1 -1 scale 204 340 moveto 1 -1 scale (Figure 7: Area 1's Database) show 1 -1 scale 319 237 moveto 1 -1 scale (19) show 1 -1 scale 346 234 moveto 1 -1 scale (18) show 1 -1 scale 339 219 moveto 1 -1 scale (20) show 1 -1 scale 354 210 moveto 1 -1 scale (16) show 1 -1 scale 362 190 moveto 1 -1 scale (20) show 1 -1 scale 334 183 moveto 1 -1 scale (14) show 1 -1 scale 390 146 moveto 1 -1 scale (26) show 1 -1 scale 376 92 moveto 1 -1 scale (14) show 1 -1 scale 358 89 moveto 1 -1 scale (8) show 1 -1 scale 464 318 moveto 1 -1 scale (RT7) show 1 -1 scale 280 226 moveto 1 -1 scale (2) show 1 -1 scale 166 183 moveto 1 -1 scale (3) show 1 -1 scale 293 147 moveto 1 -1 scale (1) show 1 -1 scale 267 164 moveto 1 -1 scale (1) show 1 -1 scale 237 166 moveto 1 -1 scale (1) show 1 -1 scale 217 118 moveto 1 -1 scale (1) show 1 -1 scale 169 103 moveto 1 -1 scale (3) show 1 -1 scale 304 110 moveto 1 -1 scale (RT4) show 1 -1 scale 269 274 moveto 1 -1 scale (N4) show 1 -1 scale 284 177 moveto 1 -1 scale (RT3) show 1 -1 scale 260 118 moveto 1 -1 scale (N3) show 1 -1 scale 194 187 moveto 1 -1 scale (RT2) show 1 -1 scale 194 78 moveto 1 -1 scale (RT1) show 1 -1 scale 120 171 moveto 1 -1 scale (N2) show 1 -1 scale 121 93 moveto 1 -1 scale (N1) show 1 -1 scale 354 268 moveto 1 -1 scale (N9-N11,H1) show 1 -1 scale 386 245 moveto 1 -1 scale (N8) show 1 -1 scale 388 229 moveto 1 -1 scale (N7) show 1 -1 scale 387 211 moveto 1 -1 scale (N6) show 1 -1 scale 404 186 moveto 1 -1 scale (RT7) show 1 -1 scale 380 173 moveto 1 -1 scale (RT5) show 1 -1 scale 434 160 moveto 1 -1 scale (N9-N11,H1) show 1 -1 scale 446 135 moveto 1 -1 scale (N8) show 1 -1 scale 428 120 moveto 1 -1 scale (N7) show 1 -1 scale 441 107 moveto 1 -1 scale (N6) show 1 -1 scale 424 76 moveto 1 -1 scale (RT7) show 1 -1 scale 388 66 moveto 1 -1 scale (RT5) show 1 -1 scale 78 269 moveto 1 -1 scale (N12) show 1 -1 scale 105 250 moveto 1 -1 scale (N13) show 1 -1 scale 145 256 moveto 1 -1 scale (N14) show 1 -1 scale 112 285 moveto 1 -1 scale (8) show 1 -1 scale 130 280 moveto 1 -1 scale (8) show 1 -1 scale 144 296 moveto 1 -1 scale (8) show 1 -1 scale 140 317 moveto 1 -1 scale (RT5) show 1 -1 scale 513 291 moveto 1 -1 scale (N15) show 1 -1 scale 497 274 moveto 1 -1 scale (2) show 1 -1 scale 511 313 moveto 1 -1 scale (9) show 1 -1 scale 523 256 moveto 1 -1 scale (N12) show 1 -1 scale 492 609 moveto 1 -1 scale (N15) show 1 -1 scale 489 574 moveto 1 -1 scale (N12) show 1 -1 scale 185 520 moveto 1 -1 scale (RT3) show 1 -1 scale 224 447 moveto 1 -1 scale (RT4) show 1 -1 scale 390 462 moveto 1 -1 scale (RT5) show 1 -1 scale 311 518 moveto 1 -1 scale (RT6) show 1 -1 scale 429 627 moveto 1 -1 scale (RT7) show 1 -1 scale 362 674 moveto 1 -1 scale (RT10) show 1 -1 scale 163 735 moveto 1 -1 scale (RT11) show 1 -1 scale 363 608 moveto 1 -1 scale (5) show 1 -1 scale 439 521 moveto 1 -1 scale (6) show 1 -1 scale 408 548 moveto 1 -1 scale (6) show 1 -1 scale 300 446 moveto 1 -1 scale (8) show 1 -1 scale 302 484 moveto 1 -1 scale (8) show 1 -1 scale 336 494 moveto 1 -1 scale (6) show 1 -1 scale 373 507 moveto 1 -1 scale (7) show 1 -1 scale 316 611 moveto 1 -1 scale (7) show 1 -1 scale 254 555 moveto 1 -1 scale (6) show 1 -1 scale 253 511 moveto 1 -1 scale (8) show 1 -1 scale 476 592 moveto 1 -1 scale (2) show 1 -1 scale 490 631 moveto 1 -1 scale (9) show 1 -1 scale 394 441 moveto 1 -1 scale (8) show 1 -1 scale 380 425 moveto 1 -1 scale (8) show 1 -1 scale 362 430 moveto 1 -1 scale (8) show 1 -1 scale 395 401 moveto 1 -1 scale (N14) show 1 -1 scale 328 414 moveto 1 -1 scale (N12) show 1 -1 scale 357 393 moveto 1 -1 scale (N13) show 1 -1 scale 160 425 moveto 1 -1 scale (N1) show 1 -1 scale 144 446 moveto 1 -1 scale (N2) show 1 -1 scale 137 467 moveto 1 -1 scale (N3) show 1 -1 scale 131 490 moveto 1 -1 scale (N4) show 1 -1 scale 90 510 moveto 1 -1 scale (N1) show 1 -1 scale 84 530 moveto 1 -1 scale (N2) show 1 -1 scale 86 551 moveto 1 -1 scale (N3) show 1 -1 scale 90 575 moveto 1 -1 scale (N4) show 1 -1 scale 90 643 moveto 1 -1 scale (N9-N11,H1) show 1 -1 scale 67 728 moveto 1 -1 scale (N8) show 1 -1 scale 426 738 moveto 1 -1 scale (N8) show 1 -1 scale 458 697 moveto 1 -1 scale (N8) show 1 -1 scale 424 698 moveto 1 -1 scale (N6) show 1 -1 scale 417 717 moveto 1 -1 scale (N7) show 1 -1 scale 514 701 moveto 1 -1 scale (N6) show 1 -1 scale 486 705 moveto 1 -1 scale (N7) show 1 -1 scale 245 684 moveto 1 -1 scale (3) show 1 -1 scale 269 712 moveto 1 -1 scale (2) show 1 -1 scale 201 437 moveto 1 -1 scale (4) show 1 -1 scale 185 446 moveto 1 -1 scale (4) show 1 -1 scale 176 459 moveto 1 -1 scale (1) show 1 -1 scale 171 473 moveto 1 -1 scale (3) show 1 -1 scale 141 514 moveto 1 -1 scale (4) show 1 -1 scale 125 526 moveto 1 -1 scale (4) show 1 -1 scale 120 540 moveto 1 -1 scale (1) show 1 -1 scale 129 553 moveto 1 -1 scale (2) show 1 -1 scale 155 680 moveto 1 -1 scale (1) show 1 -1 scale 114 718 moveto 1 -1 scale (2) show 1 -1 scale 384 724 moveto 1 -1 scale (3) show 1 -1 scale 401 687 moveto 1 -1 scale (1) show 1 -1 scale 401 702 moveto 1 -1 scale (5) show 1 -1 scale 500 662 moveto 1 -1 scale (1) show 1 -1 scale 488 670 moveto 1 -1 scale (5) show 1 -1 scale 469 668 moveto 1 -1 scale (4) show 1 -1 scale showpage $F2psEnd endTexFig 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(16])m @eop 15 @bop0 15 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 682 201 p 586 2 ru 681 251 p 2 50 ru t-ita.300 @sf 707 236 p (Network)s 872 251 p 2 50 ru 898 236 p (RT3)s 11(adv)m -2 r 46 c 1070 251 p 2 50 ru 1095 236 p (RT4)s 11(adv)m -2 r 46 c 1267 251 p 2 50 ru 682 252 p 586 2 ru 681 302 p 2 50 ru t-rom.300 @sf 752 287 p (N1)s 872 302 p 2 50 ru 961 287 p 52 c 1070 302 p 2 50 ru 1159 287 p 52 c 1267 302 p 2 50 ru 681 352 p 2 50 ru 752 337 p (N2)s 872 352 p 2 50 ru 961 337 p 52 c 1070 352 p 2 50 ru 1159 337 p 52 c 1267 352 p 2 50 ru 681 402 p 2 50 ru 752 387 p (N3)s 872 402 p 2 50 ru 961 387 p 49 c 1070 402 p 2 50 ru 1159 387 p 49 c 1267 402 p 2 50 ru 681 452 p 2 50 ru 752 437 p (N4)s 872 452 p 2 50 ru 961 437 p 50 c 1070 452 p 2 50 ru 1159 437 p 51 c 1267 452 p 2 50 ru 682 453 p 586 2 ru 380 590 p 84 c -2(able)m 10(4:)m 13(Networks)m 11(advertised)m 10(to)m 11(the)m 10(backbone)m 11(by)m 10(routers)m 10 r 82 c -1(T3)m 9(and)m 11 r 82 c -2(T4.)m 0 716 p (The)s 10(topological)m 11(database)m 10(for)m 10(the)m 11(backbone)m 10(is)m 11(shown)m 10(in)m 10(Figure)m 11(8.)m 14(The)m 10(set)m 10(of)m 11(routers)m 10(pictured)m 10(are)m 11(the)m 10(backbone)m 10(routers.)m 0 766 p (Router)s 10 r 82 c -2(T1)m -1 r 49 c 9(is)m 10 r 97 c 10(backbone)m 10(router)m 9(because)m 10(it)m 10(belongs)m 10(to)m 10(two)m 10(areas.)m 14(In)m 10(order)m 10(to)m 9(make)m 10(the)m 10(backbone)m 10(connected,)m 10 r 97 c 10(virtual)m 0 816 p (link)s 10(has)m 11(been)m 10(con\014gured)m 11(between)m 10(routers)m 10(R10)m 11(and)m 10(R1)m (1.)s 0 879 p (Again,)s 10(routers)m 10 r 82 c -2(T3,)m 9 r 82 c -2(T4,)m 9 r 82 c -1(T7,)m 9 r 82 c -2(T10)m 9(and)m 9 r 82 c -1(T1)m -2 r 49 c 9(are)m 10(area)m 9(border)m 10(routers.)m 14(As)m 10(routers)m 9 r 82 c -1(T3)m 8(and)m 10 r 82 c -1(T4)m 8(did)m 10(above,)m 10(they)m 10(have)m 0 929 p (condensed)s 10(the)m 10(routing)m 10(information)m 9(of)m 10(their)m 10(attached)m 10(areas)m 10(for)m 10(distribution)m 10(via)m 10(the)m 9(backbone;)m 10(these)m 10(are)m 10(the)m 10(dashed)m 10(stubs)m 0 979 p (that)s 9(appear)m 10(in)m 9(Figure)m 9(8.)m 14(Remember)m 9(that)m 10(the)m 9(third)m 10(area)m 9(has)m 9(been)m 10(con\014gured)m 9(to)m 9(condense)m 10(networks)m 9(N9-N1)m 49 c 8(and)m 9(Host)m 10(H1)m 0 1028 p (into)s 11 r 97 c 11(single)m 11(route.)m 16(This)m 11(yields)m 11 r 97 c 11(single)m 11(dashed)m 11(line)m 11(for)m 11(networks)m 11(N9-N1)m 49 c 10(and)m 11(Host)m 11(H1)m 11(in)m 11(Figure)m 11(8.)m 16(Routers)m 11 r 82 c -2(T5)m 10(and)m 0 1078 p 82 c -2(T7)m 10(are)m 10(AS)m 11(boundary)m 10(routers;)m 11(their)m 10(externally)m 10(derived)m 11(information)m 10(also)m 11(appears)m 10(on)m 10(the)m 11(graph)m 10(in)m 11(Figure)m 10 r 56 c 11(as)m 10(stubs.)m 0 1142 p (The)s 12(backbone)m 12(enables)m 12(the)m 12(exchange)m 12(of)m 12(summary)m 12(information)m 12(between)m 11(area)m 12(border)m 12(routers.)m 19(Every)m 12(area)m 12(border)m 12(router)m 0 1192 p (hears)s 13(the)m 13(area)m 13(summaries)m 13(from)m 14(all)m 13(other)m 13(area)m 13(border)m 13(routers.)m 22(It)m 13(then)m 13(forms)m 13 r 97 c 13(picture)m 14(of)m 13(the)m 13(distance)m 13(to)m 13(all)m 13(networks)m 0 1241 p (outside)s 9(of)m 10(its)m 9(area)m 10(by)m 9(examining)m 9(the)m 10(collected)m 9(advertisements,)m 10(and)m 9(adding)m 9(in)m 10(the)m 9(backbone)m 10(distance)m 9(to)m 9(each)m 10(advertising)m 0 1291 p (router)s -1 r 46 c 0 1355 p (Again)s 11(using)m 10(routers)m 11 r 82 c -1(T3)m 9(and)m 11 r 82 c -1(T4)m 9(as)m 11(an)m 11(example,)m 10(the)m 11(procedure)m 11(goes)m 11(as)m 10(follows:)m 15(They)m 10(\014rst)m 11(calculate)m 11(the)m 11(SPF)m 10(tree)m 11(for)m 0 1404 p (the)s 12(backbone.)m 19(This)m 12(gives)m 12(the)m 12(distances)m 12(to)m 12(all)m 12(other)m 12(area)m 12(border)m 12(routers.)m 19(Also)m 12(noted)m 12(are)m 12(the)m 12(distances)m 12(to)m 12(networks)m 12(\(Ia)m 0 1454 p (and)s 10(Ib\))m 11(and)m 10(AS)m 11(boundary)m 10(routers)m 10(\(R)m -1(T5)m 9(and)m 11 r 82 c -2(T7\))m 10(that)m 10(belong)m 11(to)m 10(the)m 10(backbone.)m 14(This)m 11(calculation)m 10(is)m 11(shown)m 10(in)m 10 r 84 c -2(able)m 10(5.)m 652 1556 p 647 2 ru 651 1606 p 2 50 ru t-ita.300 @sf 677 1591 p (Ar)s -1(ea)m 9(bor)m (der)s 902 1606 p 2 50 ru 928 1591 p (dist)s 10(fr)m (om)s 1100 1606 p 2 50 ru 1126 1591 p (dist)s 10(fr)m (om)s 1298 1606 p 2 50 ru 651 1656 p 2 50 ru 677 1641 p 114 c -1(outer)m 902 1656 p 2 50 ru 967 1641 p (RT3)s 1100 1656 p 2 50 ru 1165 1641 p (RT4)s 1298 1656 p 2 50 ru 652 1658 p 647 2 ru 651 1708 p 2 50 ru t-rom.300 @sf 677 1693 p (to)s 10 r 82 c -2(T3)m 902 1708 p 2 50 ru 992 1693 p 42 c 1100 1708 p 2 50 ru 1179 1693 p (21)s 1298 1708 p 2 50 ru 651 1757 p 2 50 ru 677 1742 p (to)s 10 r 82 c -2(T4)m 902 1757 p 2 50 ru 981 1742 p (22)s 1100 1757 p 2 50 ru 1189 1742 p 42 c 1298 1757 p 2 50 ru 651 1807 p 2 50 ru 677 1792 p (to)s 10 r 82 c -2(T7)m 902 1807 p 2 50 ru 981 1792 p (20)s 1100 1807 p 2 50 ru 1179 1792 p (14)s 1298 1807 p 2 50 ru 651 1857 p 2 50 ru 677 1842 p (to)s 10 r 82 c -2(T10)m 902 1857 p 2 50 ru 981 1842 p (15)s 1100 1857 p 2 50 ru 1179 1842 p (22)s 1298 1857 p 2 50 ru 651 1907 p 2 50 ru 677 1892 p (to)s 10 r 82 c -2(T1)m -1 r 49 c 902 1907 p 2 50 ru 981 1892 p (18)s 1100 1907 p 2 50 ru 1179 1892 p (25)s 1298 1907 p 2 50 ru 651 1957 p 2 50 ru 251 r 2 50 ru 198 r 2 50 ru 198 r 2 50 ru 651 2006 p 2 50 ru 677 1992 p (to)s 10(Ia)m 902 2006 p 2 50 ru 981 1992 p (20)s 1100 2006 p 2 50 ru 1179 1992 p (27)s 1298 2006 p 2 50 ru 651 2056 p 2 50 ru 677 2041 p (to)s 10(Ib)m 902 2056 p 2 50 ru 981 2041 p (15)s 1100 2056 p 2 50 ru 1179 2041 p (22)s 1298 2056 p 2 50 ru 651 2106 p 2 50 ru 251 r 2 50 ru 198 r 2 50 ru 198 r 2 50 ru 651 2156 p 2 50 ru 677 2141 p (to)s 10 r 82 c -2(T5)m 902 2156 p 2 50 ru 981 2141 p (14)s 1100 2156 p 2 50 ru 1189 2141 p 56 c 1298 2156 p 2 50 ru 651 2206 p 2 50 ru 677 2191 p (to)s 10 r 82 c -2(T7)m 902 2206 p 2 50 ru 981 2191 p (20)s 1100 2206 p 2 50 ru 1179 2191 p (14)s 1298 2206 p 2 50 ru 652 2207 p 647 2 ru 434 2344 p 84 c -1(able)m 9(5:)m 14(Backbone)m 10(distances)m 11(calculated)m 10(by)m 11(routers)m 10 r 82 c -2(T3)m 10(and)m 10 r 82 c -1(T4.)m 0 2449 p (Next,)s 16(by)m 15(looking)m 15(at)m 15(the)m 15(area)m 15(summaries)m 15(from)m 15(these)m 15(area)m 15(border)m 15(routers,)m 16 r 82 c -1(T3)m 14(and)m 15 r 82 c -2(T4)m 14(can)m 16(determine)m 15(the)m 15(distance)m 0 2499 p (to)s 13(all)m 13(networks)m 13(outside)m 14(their)m 13(area.)m 22(These)m 13(distances)m 13(are)m 13(then)m 14(advertised)m 13(internally)m 13(to)m 13(the)m 13(area)m 13(by)m 13 r 82 c -1(T3)m 12(and)m 13 r 82 c -1(T4.)m 21(The)m 0 2549 p (advertisements)s 11(that)m 11(router)m 12 r 82 c -2(T3)m 10(and)m 11 r 82 c -1(T4)m 10(will)m 11(make)m 12(into)m 11(Area)m 11 r 49 c 11(are)m 11(shown)m 11(in)m 12 r 84 c -2(able)m 10(6.)m 16(Note)m 11(that)m 12 r 84 c -2(able)m 10 r 54 c 11(assumes)m 11(that)m 0 2599 p (an)s 10(area)m 11(range)m 10(has)m 11(been)m 10(con\014gured)m 10(for)m 11(the)m 10(backbone)m 11(which)m 10(groups)m 11(I5)m 10(and)m 10(I6)m 11(into)m 10 r 97 c 11(single)m 10(advertisement.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(15])m @eop 14 @bop0 14 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 38600707 4078469 4275814 37364039 48481157 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/figure6.fig %%Creator: f2ps %%CreationDate: Fri Jun 8 17:21:23 1990 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 62 65 568 737 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y translate xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix } def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth newpath 583.955 735.955 6.045 89.574 -80.047 arcn stroke newpath 514.965 736.310 6.973 106.369 -115.169 arc stroke newpath 387.045 627.000 6.127 170.607 18.565 arcn stroke newpath 386.690 558.000 6.764 -171.499 -17.586 arc stroke newpath 174.965 744.310 6.973 106.369 -115.168 arc stroke newpath 243.955 743.955 6.045 89.574 -80.047 arcn stroke newpath 175.965 443.310 6.973 106.369 -115.168 arc stroke newpath 244.955 442.955 6.045 89.574 -80.047 arcn stroke newpath 242.965 347.310 6.973 106.369 -115.168 arc stroke newpath 311.955 346.955 6.045 89.573 -80.047 arcn stroke newpath 122.045 144.000 6.127 170.607 18.565 arcn stroke newpath 121.690 75.000 6.764 -171.499 -17.586 arc stroke newpath 122.690 202.000 6.764 -171.499 -17.586 arc stroke newpath 123.045 271.000 6.127 170.607 18.565 arcn stroke % Ellipse newpath 276 175 39 39 0 360 DrawEllipse stroke % Ellipse newpath 209 590 39 39 0 360 DrawEllipse stroke % Ellipse newpath 553 590 39 39 0 360 DrawEllipse stroke [4.000000] 0 setdash % Polyline newpath 365 540 moveto 598 540 lineto 598 777 lineto 365 777 lineto closepath stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 70 406 moveto 272 406 lineto 272 776 lineto 70 776 lineto closepath stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 73 56 moveto 339 56 lineto 339 388 lineto 73 388 lineto closepath stroke [] 0 setdash % Polyline newpath 513 730 moveto 584 730 lineto stroke % Polyline newpath 513 742 moveto 584 742 lineto stroke % Polyline newpath 393 557 moveto 393 628 lineto stroke % Polyline newpath 381 557 moveto 381 628 lineto stroke % Polyline newpath 173 750 moveto 244 750 lineto stroke % Polyline newpath 173 738 moveto 244 738 lineto stroke % Polyline newpath 174 449 moveto 245 449 lineto stroke % Polyline newpath 174 437 moveto 245 437 lineto stroke % Polyline newpath 241 353 moveto 312 353 lineto stroke % Polyline newpath 241 341 moveto 312 341 lineto stroke % Polyline newpath 128 74 moveto 128 145 lineto stroke % Polyline newpath 116 74 moveto 116 145 lineto stroke % Polyline newpath 117 201 moveto 117 272 lineto stroke % Polyline newpath 129 201 moveto 129 272 lineto stroke % Polyline newpath 165 94 moveto 203 94 lineto 203 127 lineto 165 127 lineto closepath stroke % Polyline newpath 166 218 moveto 204 218 lineto 204 251 lineto 166 251 lineto closepath stroke % Polyline newpath 260 265 moveto 298 265 lineto 298 298 lineto 260 298 lineto closepath stroke % Polyline newpath 354 157 moveto 392 157 lineto 392 190 lineto 354 190 lineto closepath stroke % Polyline newpath 191 482 moveto 229 482 lineto 229 515 lineto 191 515 lineto closepath stroke % Polyline newpath 190 669 moveto 228 669 lineto 228 702 lineto 190 702 lineto closepath stroke % Polyline newpath 92 669 moveto 130 669 lineto 130 702 lineto 92 702 lineto closepath stroke % Polyline newpath 302 576 moveto 340 576 lineto 340 609 lineto 302 609 lineto closepath stroke % Polyline newpath 447 157 moveto 485 157 lineto 485 190 lineto 447 190 lineto closepath stroke % Polyline newpath 447 264 moveto 485 264 lineto 485 297 lineto 447 297 lineto closepath stroke % Polyline newpath 447 575 moveto 485 575 lineto 485 608 lineto 447 608 lineto closepath stroke % Polyline newpath 536 477 moveto 574 477 lineto 574 510 lineto 536 510 lineto closepath stroke % Polyline newpath 533 660 moveto 571 660 lineto 571 693 lineto 533 693 lineto closepath stroke % Polyline newpath 128 107 moveto 165 107 lineto stroke % Polyline newpath 204 112 moveto 246 152 lineto stroke % Polyline newpath 129 236 moveto 164 236 lineto stroke % Polyline newpath 204 236 moveto 253 208 lineto stroke % Polyline newpath 278 215 moveto 278 265 lineto stroke % Polyline newpath 278 299 moveto 278 340 lineto stroke % Polyline newpath 315 174 moveto 354 174 lineto stroke % Polyline newpath 392 175 moveto 447 175 lineto stroke % Polyline newpath 299 283 moveto 447 283 lineto stroke % Polyline newpath 466 190 moveto 467 263 lineto stroke % Polyline newpath 465 298 moveto 465 575 lineto stroke % Polyline newpath 485 176 moveto 554 176 lineto 554 476 lineto stroke % Polyline newpath 554 511 moveto 554 550 lineto stroke % Polyline newpath 485 594 moveto 513 594 lineto stroke % Polyline newpath 551 629 moveto 551 659 lineto stroke % Polyline newpath 550 694 moveto 550 730 lineto stroke % Polyline newpath 393 593 moveto 446 593 lineto stroke % Polyline newpath 340 593 moveto 380 593 lineto stroke % Polyline newpath 210 450 moveto 210 482 lineto stroke % Polyline newpath 210 516 moveto 210 550 lineto stroke % Polyline newpath 248 591 moveto 302 591 lineto stroke % Polyline newpath 209 630 moveto 209 668 lineto stroke % Polyline newpath 209 703 moveto 209 738 lineto stroke % Polyline newpath 130 688 moveto 189 688 lineto stroke [4.000000] 0 setdash % Polyline newpath 434 120 moveto 461 156 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 458 102 moveto 465 156 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 483 110 moveto 468 157 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 575 494 moveto 599 456 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 575 496 moveto 605 493 lineto stroke [] 0 setdash /Courier findfont 12.222222 scalefont setfont 448 534 moveto 1 -1 scale (Ib) show 1 -1 scale 446 312 moveto 1 -1 scale (Ia) show 1 -1 scale 177 802 moveto 1 -1 scale (Figure 6: A sample OSPF area configuration) show 1 -1 scale 79 429 moveto 1 -1 scale (Area 3) show 1 -1 scale 377 770 moveto 1 -1 scale (Area 2) show 1 -1 scale 282 73 moveto 1 -1 scale (Area 1) show 1 -1 scale 93 113 moveto 1 -1 scale (N1) show 1 -1 scale 93 241 moveto 1 -1 scale (N2) show 1 -1 scale 173 114 moveto 1 -1 scale (RT1) show 1 -1 scale 173 241 moveto 1 -1 scale (RT2) show 1 -1 scale 268 181 moveto 1 -1 scale (N3) show 1 -1 scale 267 286 moveto 1 -1 scale (RT3) show 1 -1 scale 270 373 moveto 1 -1 scale (N4) show 1 -1 scale 361 179 moveto 1 -1 scale (RT4) show 1 -1 scale 455 179 moveto 1 -1 scale (RT5) show 1 -1 scale 454 285 moveto 1 -1 scale (RT6) show 1 -1 scale 543 500 moveto 1 -1 scale (RT7) show 1 -1 scale 545 597 moveto 1 -1 scale (N6) show 1 -1 scale 539 683 moveto 1 -1 scale (RT8) show 1 -1 scale 450 596 moveto 1 -1 scale (RT10) show 1 -1 scale 378 653 moveto 1 -1 scale (N8) show 1 -1 scale 307 599 moveto 1 -1 scale (RT11) show 1 -1 scale 202 597 moveto 1 -1 scale (N9) show 1 -1 scale 200 431 moveto 1 -1 scale (N11) show 1 -1 scale 198 505 moveto 1 -1 scale (RT9) show 1 -1 scale 194 691 moveto 1 -1 scale (RT12) show 1 -1 scale 103 692 moveto 1 -1 scale (H1) show 1 -1 scale 196 767 moveto 1 -1 scale (N10) show 1 -1 scale 146 703 moveto 1 -1 scale (SLIP) show 1 -1 scale 413 115 moveto 1 -1 scale (N12) show 1 -1 scale 440 96 moveto 1 -1 scale (N13) show 1 -1 scale 480 102 moveto 1 -1 scale (N14) show 1 -1 scale 604 462 moveto 1 -1 scale (N12) show 1 -1 scale 609 503 moveto 1 -1 scale (N15) show 1 -1 scale 542 760 moveto 1 -1 scale (N7) show 1 -1 scale 152 121 moveto 1 -1 scale (3) show 1 -1 scale 214 113 moveto 1 -1 scale (1) show 1 -1 scale 212 245 moveto 1 -1 scale (1) show 1 -1 scale 266 259 moveto 1 -1 scale (1) show 1 -1 scale 341 171 moveto 1 -1 scale (1) show 1 -1 scale 155 232 moveto 1 -1 scale (3) show 1 -1 scale 543 525 moveto 1 -1 scale (1) show 1 -1 scale 491 586 moveto 1 -1 scale (1) show 1 -1 scale 555 654 moveto 1 -1 scale (1) show 1 -1 scale 289 587 moveto 1 -1 scale (1) show 1 -1 scale 214 532 moveto 1 -1 scale (1) show 1 -1 scale 212 663 moveto 1 -1 scale (1) show 1 -1 scale 470 565 moveto 1 -1 scale (5) show 1 -1 scale 433 588 moveto 1 -1 scale (3) show 1 -1 scale 346 588 moveto 1 -1 scale (2) show 1 -1 scale 216 477 moveto 1 -1 scale (3) show 1 -1 scale 214 716 moveto 1 -1 scale (2) show 1 -1 scale 172 683 moveto 1 -1 scale (10) show 1 -1 scale 555 706 moveto 1 -1 scale (4) show 1 -1 scale 560 472 moveto 1 -1 scale (6) show 1 -1 scale 491 171 moveto 1 -1 scale (6) show 1 -1 scale 398 170 moveto 1 -1 scale (8) show 1 -1 scale 435 169 moveto 1 -1 scale (8) show 1 -1 scale 473 258 moveto 1 -1 scale (6) show 1 -1 scale 471 203 moveto 1 -1 scale (7) show 1 -1 scale 471 315 moveto 1 -1 scale (7) show 1 -1 scale 431 278 moveto 1 -1 scale (6) show 1 -1 scale 306 278 moveto 1 -1 scale (8) show 1 -1 scale 283 310 moveto 1 -1 scale (2) show 1 -1 scale 447 131 moveto 1 -1 scale (8) show 1 -1 scale 465 126 moveto 1 -1 scale (8) show 1 -1 scale 479 142 moveto 1 -1 scale (8) show 1 -1 scale 590 481 moveto 1 -1 scale (2) show 1 -1 scale 589 506 moveto 1 -1 scale (9) show 1 -1 scale showpage $F2psEnd endTexFig 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(14])m @eop 13 @bop0 13 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (The)s 14(correct)m 13(area)m 14(border)m 13(router)m 14(to)m 13(use)m 14(as)m 13(the)m 14(packet)m 13(exits)m 14(the)m 13(source)m 14(area)m 13(is)m 14(chosen)m 13(in)m 14(exactly)m 13(the)m 14(same)m 13(way)m 14(routers)m 0 245 p (advertising)s 15(external)m 15(routes)m 16(are)m 15(chosen.)m 28(Each)m 15(area)m 15(border)m 15(router)m 16(in)m 15(an)m 15(area)m 15(summarizes)m 15(for)m 15(the)m 16(area)m 15(its)m 15(cost)m 15(to)m 15(all)m 0 295 p (networks)s 11(external)m 10(to)m 11(the)m 11(area.)m 15(After)m 11(the)m 10(SPF)m 11(tree)m 11(is)m 11(calculated)m 10(for)m 11(the)m 11(area,)m 11(routes)m 10(to)m 11(all)m 11(other)m 11(networks)m 10(are)m 11(calculated)m 0 345 p (by)s 10(examining)m 11(the)m 10(summaries)m 11(of)m 10(the)m 10(area)m 11(border)m 10(routers.)m t-bol.360 @sf 0 479 p (3.3)s 50(Classi\014cation)m 12(of)m 13 r 114 c (outers)s t-rom.300 @sf 0 574 p (Before)s 10(the)m 11(introduction)m 10(of)m 11(areas,)m 10(the)m 11(only)m 10(OSPF)m 10(routers)m 11(having)m 10 r 97 c 11(specialized)m 10(function)m 11(were)m 10(those)m 10(advertising)m 11(external)m 0 624 p (routing)s 13(information,)m 14(such)m 13(as)m 13(router)m 13 r 82 c -1(T5)m 12(in)m 13(Figure)m 13(2.)m 22(When)m 14(the)m 13(AS)m 13(is)m 13(split)m 13(into)m 13(OSPF)m 14(areas,)m 13(the)m 13(routers)m 14(are)m 13(further)m 0 673 p (divided)s 10(according)m 11(to)m 10(function)m 11(into)m 10(the)m 10(following)m 11(four)m 10(overlapping)m 11(categories:)m t-bol.300 @sf 0 779 p (Internal)s 10 r 114 c (outers)s t-rom.300 @sf 20 r 65 c 11(router)m 11(with)m 10(all)m 11(directly)m 11(connected)m 10(networks)m 11(belonging)m 11(to)m 10(the)m 11(same)m 11(area.)m 15(Routers)m 10(with)m 11(only)m 11(back-)m 104 828 p (bone)s 10(interfaces)m 11(also)m 10(belong)m 10(to)m 11(this)m 10(category)m -1 r 46 c 12(These)m 11(routers)m 10(run)m 11 r 97 c 10(single)m 11(copy)m 10(of)m 10(the)m 11(basic)m 10(routing)m 11(algorithm.)m t-bol.300 @sf 0 910 p (Ar)s (ea)s 10(border)m 10 r 114 c (outers)s t-rom.300 @sf 20 r 65 c 13(router)m 12(that)m 13(attaches)m 13(to)m 13(multiple)m 12(areas.)m 21(Area)m 13(border)m 12(routers)m 13(run)m 13(multiple)m 13(copies)m 12(of)m 13(the)m 13(basic)m 104 960 p (algorithm,)s 12(one)m 11(copy)m 12(for)m 11(each)m 12(attached)m 12(area)m 11(and)m 12(an)m 11(additional)m 12(copy)m 12(for)m 11(the)m 12(backbone.)m 17(Area)m 12(border)m 11(routers)m 12(con-)m 104 1010 p (dense)s 10(the)m 10(topological)m 10(information)m 9(of)m 10(their)m 10(attached)m 10(areas)m 10(for)m 10(distribution)m 10(to)m 10(the)m 10(backbone.)m 14(The)m 9(backbone)m 10(in)m 10(turn)m 104 1060 p (distributes)s 10(the)m 11(information)m 10(to)m 10(the)m 11(other)m 10(areas.)m t-bol.300 @sf 0 1142 p (Backbone)s 10 r 114 c (outers)s t-rom.300 @sf 20 r 65 c 10(router)m 9(that)m 9(has)m 9(an)m 9(interface)m 9(to)m 9(the)m 9(backbone.)m 14(This)m 9(includes)m 9(all)m 9(routers)m 9(that)m 10(interface)m 9(to)m 9(more)m 9(than)m 104 1191 p (one)s 11(area)m 12(\(i.e.,)m 12(area)m 11(border)m 12(routers\).)m 17(However)m -1 r 44 c 11(backbone)m 11(routers)m 12(do)m 11(not)m 12(have)m 11(to)m 12(be)m 11(area)m 12(border)m 11(routers.)m 17(Routers)m 104 1241 p (with)s 10(all)m 11(interfaces)m 10(connected)m 10(to)m 11(the)m 10(backbone)m 11(are)m 10(considered)m 11(to)m 10(be)m 10(internal)m 11(routers.)m t-bol.300 @sf 0 1323 p (AS)s 10(boundary)m 11 r 114 c (outers)s t-rom.300 @sf 20 r 65 c 9(router)m 9(that)m 8(exchanges)m 9(routing)m 9(information)m 9(with)m 9(routers)m 9(belonging)m 8(to)m 9(other)m 9(Autonomous)m 9(Sys-)m 104 1373 p (tems.)s 13(Such)m 10 r 97 c 10(router)m 10(has)m 10(AS)m 10(external)m 10(routes)m 9(that)m 10(are)m 10(advertised)m 10(throughout)m 10(the)m 10(Autonomous)m 10(System.)m 13(The)m 10(path)m 10(to)m 104 1423 p (each)s 11(AS)m 12(boundary)m 11(router)m 12(is)m 11(known)m 12(by)m 11(every)m 11(router)m 12(in)m 11(the)m 12(AS.)m 11(This)m 12(classi\014cation)m 11(is)m 12(completely)m 11(independent)m 12(of)m 104 1472 p (the)s 12(previous)m 12(classi\014cations:)m 17(AS)m 12(boundary)m 12(routers)m 12(may)m 13(be)m 12(internal)m 12(or)m 12(area)m 12(border)m 12(routers,)m 13(and)m 12(may)m 12(or)m 12(may)m 12(not)m 104 1522 p (participate)s 10(in)m 11(the)m 10(backbone.)m t-bol.360 @sf 0 1657 p (3.4)s 50 r 65 c 12(sample)m 13(ar)m (ea)s 12(con\014guration)m t-rom.300 @sf 0 1752 p (Figure)s 14 r 54 c 14(shows)m 14 r 97 c 14(sample)m 14(area)m 15(con\014guration.)m 24(The)m 15(\014rst)m 14(area)m 14(consists)m 14(of)m 14(networks)m 14(N1-N4,)m 15(along)m 14(with)m 14(their)m 14(attached)m 0 1801 p (routers)s 12 r 82 c -1(T1-R)m -3(T4.)m 19(The)m 13(second)m 12(area)m 12(consists)m 13(of)m 12(networks)m 12(N6-N8,)m 13(along)m 13(with)m 12(their)m 12(attached)m 13(routers)m 12 r 82 c -1(T7,)m 12 r 82 c -2(T8,)m 12 r 82 c -2(T10,)m 0 1851 p 82 c -2(T1)m -1(1.)m 15(The)m 11(third)m 11(area)m 12(consists)m 11(of)m 11(networks)m 11(N9-N1)m 49 c 10(and)m 11(host)m 11(H1,)m 12(along)m 11(with)m 11(their)m 11(attached)m 11(routers)m 11 r 82 c -1(T9,)m 10 r 82 c -1(T1)m -2(1,)m 11 r 82 c -2(T12.)m 0 1901 p (The)s 10(third)m 10(area)m 9(has)m 10(been)m 10(con\014gured)m 10(so)m 9(that)m 10(networks)m 10(N9-N1)m -1 r 49 c 9(and)m 10(host)m 10(H1)m 9(will)m 10(all)m 10(be)m 10(grouped)m 10(into)m 9 r 97 c 10(single)m 10(route,)m 10(when)m 0 1951 p (advertised)s 10(external)m 11(to)m 10(the)m 11(area)m 10(\(see)m 10(Section)m 11(3.5)m 10(for)m 11(more)m 10(details\).)m 0 2017 p (In)s 9(Figure)m 10(6,)m 9(routers)m 10 r 82 c -2(T1,)m 9 r 82 c -2(T2,)m 9 r 82 c -2(T5,)m 9 r 82 c -2(T6,)m 9 r 82 c -2(T8,)m 9 r 82 c -2(T9)m 9(and)m 9 r 82 c -1(T12)m 8(are)m 9(internal)m 10(routers.)m 13(Routers)m 9 r 82 c -1(T3,)m 8 r 82 c -1(T4,)m 8 r 82 c -1(T7,)m 9 r 82 c -2(T10)m 8(and)m 0 2067 p 82 c -2(T1)m -1 r 49 c 9(are)m 11(area)m 10(border)m 11(routers.)m 14(Finally)m 10(as)m 10(before,)m 11(routers)m 10 r 82 c -1(T5)m 9(and)m 11 r 82 c -2(T7)m 9(are)m 11(AS)m 10(boundary)m 11(routers.)m 0 2134 p (Figure)s 9 r 55 c 9(shows)m 9(the)m 8(resulting)m 9(topological)m 9(database)m 9(for)m 9(the)m 9(Area)m 9(1.)m 13(The)m 9(\014gure)m 9(completely)m 9(describes)m 9(that)m 8(area')m -1 r 115 c 8(intra-area)m 0 2183 p (routing.)s 16(It)m 11(also)m 11(shows)m 11(the)m 11(complete)m 11(view)m 11(of)m 11(the)m 11(internet)m 11(for)m 11(the)m 11(two)m 11(internal)m 11(routers)m 11 r 82 c -1(T1)m 10(and)m 11 r 82 c -2(T2.)m 15(It)m 11(is)m 11(the)m 11(job)m 11(of)m 11(the)m 0 2233 p (area)s 10(border)m 11(routers,)m 10 r 82 c -2(T3)m 10(and)m 10 r 82 c -2(T4,)m 10(to)m 10(advertise)m 10(into)m 10(Area)m 11 r 49 c 10(the)m 10(distances)m 10(to)m 11(all)m 10(destinations)m 10(external)m 11(to)m 10(the)m 10(area.)m 14(These)m 0 2283 p (are)s 13(indicated)m 13(in)m 13(Figure)m 13 r 55 c 13(by)m 13(the)m 13(dashed)m 14(stub)m 13(routes.)m 21(Also,)m 14 r 82 c -1(T3)m 12(and)m 13 r 82 c -2(T4)m 12(must)m 13(advertise)m 14(into)m 13(Area)m 13 r 49 c 13(the)m 13(location)m 13(of)m 0 2333 p (the)s 12(AS)m 13(boundary)m 12(routers)m 13 r 82 c -2(T5)m 11(and)m 13 r 82 c -2(T7.)m 19(Finally)m -2 r 44 c 12(external)m 13(advertisements)m 12(from)m 12 r 82 c -1(T5)m 11(and)m 13 r 82 c -2(T7)m 11(are)m 13(\015ooded)m 12(throughout)m 0 2383 p (the)s 10(entire)m 11(AS,)m 10(and)m 10(in)m 11(particular)m 10(throughout)m 11(Area)m 10(1.)m 14(These)m 10(advertisements)m 10(are)m 11(included)m 10(in)m 11(Area)m 10(1')m -1 r 115 c 9(database,)m 10(and)m 11(yield)m 0 2432 p (routes)s 10(to)m 11(networks)m 10(N12-N15.)m 0 2499 p (Routers)s 12 r 82 c -1(T3)m 11(and)m 12 r 82 c -2(T4)m 11(must)m 12(also)m 12(summarize)m 12(Area)m 12(1')m -1 r 115 c 11(topology)m 12(for)m 12(distribution)m 12(to)m 12(the)m 12(backbone.)m 19(Their)m 12(backbone)m 12(ad-)m 0 2549 p (vertisements)s 13(are)m 13(shown)m 12(in)m 13 r 84 c -2(able)m 12(4.)m 21(These)m 13(summaries)m 13(show)m 13(which)m 12(networks)m 13(are)m 13(contained)m 13(in)m 13(Area)m 12 r 49 c 13(\(i.e.,)m 14(networks)m 0 2599 p (N1-N4\),)s 10(and)m 11(the)m 10(distance)m 11(to)m 10(these)m 10(networks)m 11(from)m 10(the)m 11(routers)m 10 r 82 c -1(T3)m 9(and)m 10 r 82 c -1(T4)m 9(respectively)m -1 r 46 c 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(13])m @eop 12 @bop0 12 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p 51 c 58(Splitting)m 15(the)m 14(AS)m 15(into)m 15(Ar)m (eas)s t-rom.300 @sf 0 305 p (OSPF)s 13(allows)m 12(collections)m 13(of)m 12(contiguous)m 13(networks)m 12(and)m 13(hosts)m 12(to)m 13(be)m 12(grouped)m 13(together)m -2 r 46 c 20(Such)m 12 r 97 c 13(group,)m 13(together)m 12(with)m 13(the)m 0 355 p (routers)s 10(having)m 11(interfaces)m 10(to)m 11(any)m 10(one)m 10(of)m 11(the)m 10(included)m 10(networks,)m 11(is)m 10(called)m 11(an)m 10(area.)m 14(Each)m 10(area)m 11(runs)m 10 r 97 c 10(separate)m 11(copy)m 10(of)m 10(the)m 0 405 p (basic)s 10(SPF)m 10(routing)m 11(algorithm.)m 13(This)m 11(means)m 10(that)m 10(each)m 10(area)m 10(has)m 11(its)m 10(own)m 10(topological)m 10(database)m 10(and)m 11(corresponding)m 10(graph,)m 10(as)m 0 455 p (explained)s 10(in)m 11(the)m 10(previous)m 11(section.)m 0 522 p (The)s 13(topology)m 12(of)m 13(an)m 12(area)m 13(is)m 12(invisible)m 13(from)m 12(the)m 13(outside)m 12(of)m 13(the)m 12(area.)m 20(Conversely)m -1 r 44 c 12(routers)m 12(internal)m 13(to)m 12 r 97 c 13(given)m 12(area)m 13(know)m 0 571 p (nothing)s 14(of)m 14(the)m 14(detailed)m 14(topology)m 15(external)m 14(to)m 14(the)m 14(area.)m 25(This)m 14(isolation)m 14(of)m 14(knowledge)m 14(enables)m 14(the)m 14(protocol)m 14(to)m 15(ef)m (fect)s 13 r 97 c 0 621 p (marked)s 10(reduction)m 11(in)m 10(routing)m 11(traf)m (\014c)s 9(as)m 11(compared)m 10(to)m 11(treating)m 10(the)m 10(entire)m 11(Autonomous)m 10(System)m 11(as)m 10 r 97 c 10(single)m 11(SPF)m 10(domain.)m 0 688 p 87 c -1(ith)m 10(the)m 11(introduction)m 11(of)m 10(areas,)m 11(it)m 11(is)m 11(no)m 10(longer)m 11(true)m 11(that)m 11(all)m 10(routers)m 11(in)m 11(the)m 10(AS)m 11(have)m 11(an)m 11(identical)m 10(topological)m 11(database.)m 15 r 65 c 0 738 p (router)s 8(actually)m 8(has)m 8 r 97 c 8(separate)m 8(topological)m 9(database)m 8(for)m 8(each)m 8(area)m 8(it)m 8(is)m 8(connected)m 8(to.)m 13(\(Routers)m 8(connected)m 9(to)m 8(multiple)m 8(areas)m 0 788 p (are)s 11(called)m 11(area)m 12(border)m 11(routers\).)m 16 r 84 c -2(wo)m 10(routers)m 12(belonging)m 11(to)m 11(the)m 11(same)m 11(area)m 12(have,)m 11(for)m 11(that)m 11(area,)m 12(identical)m 11(area)m 11(topological)m 0 838 p (databases.)s 0 905 p (Routing)s 13(in)m 13(the)m 13(Autonomous)m 13(System)m 13(takes)m 13(place)m 13(on)m 13(two)m 13(levels,)m 14(depending)m 13(on)m 13(whether)m 13(the)m 13(source)m 13(and)m 13(destination)m 13(of)m 0 955 p 97 c 13(packet)m 14(reside)m 13(in)m 14(the)m 13(same)m 13(area)m 14(\(intra-area)m 13(routing)m 13(is)m 14(used\))m 13(or)m 14(dif)m (ferent)s 12(areas)m 14(\(inter)m (-area)s 12(routing)m 13(is)m 14(used\).)m 23(In)m 13(intra-)m 0 1004 p (area)s 9(routing,)m 9(the)m 9(packet)m 9(is)m 9(routed)m 9(solely)m 9(on)m 9(information)m 9(obtained)m 9(within)m 9(the)m 9(area;)m 9(no)m 9(routing)m 9(information)m 9(obtained)m 9(from)m 0 1054 p (outside)s 9(the)m 8(area)m 9(can)m 8(be)m 9(used.)m 13(This)m 9(protects)m 9(intra-area)m 8(routing)m 9(from)m 8(the)m 9(injection)m 9(of)m 8(bad)m 9(routing)m 8(information.)m 14 r 87 c -3 r 101 c 8(discuss)m 0 1104 p (inter)s (-area)s 10(routing)m 10(in)m 10(Section)m 11(3.2.)m t-bol.360 @sf 0 1240 p (3.1)s 50(The)m 12(backbone)m 13(of)m 12(the)m 13(Autonomous)m 12(System)m t-rom.300 @sf 0 1335 p (The)s 8(backbone)m 9(consists)m 8(of)m 8(those)m 8(networks)m 9(not)m 8(contained)m 8(in)m 8(any)m 9(area,)m 8(their)m 8(attached)m 9(routers,)m 8(and)m 9(those)m 8(routers)m 8(that)m 8(belong)m 0 1385 p (to)s 10(multiple)m 11(areas.)m 14(The)m 10(backbone)m 11(must)m 10(be)m 10(contiguous.)m 0 1452 p (It)s 10(is)m 10(possible)m 10(to)m 10(de\014ne)m 10(areas)m 10(in)m 9(such)m 10 r 97 c 10(way)m 10(that)m 10(the)m 10(backbone)m 10(is)m 10(no)m 10(longer)m 10(contiguous.)m 14(In)m 9(this)m 10(case)m 10(the)m 10(system)m 10(adminis-)m 0 1502 p (trator)s 10(must)m 11(restore)m 10(backbone)m 11(connectivity)m 10(by)m 10(con\014guring)m 11(virtual)m 10(links.)m 0 1569 p 86 c -2(irtual)m 10(links)m 11(can)m 11(be)m 10(con\014gured)m 11(between)m 11(any)m 10(two)m 11(backbone)m 11(routers)m 11(that)m 10(have)m 11(an)m 11(interface)m 10(to)m 11 r 97 c 11(common)m 11(non-backbone)m 0 1619 p (area.)s 22 r 86 c -1(irtual)m 12(links)m 14(belong)m 13(to)m 13(the)m 13(backbone.)m 23(The)m 13(protocol)m 13(treats)m 14(two)m 13(routers)m 13(joined)m 13(by)m 14 r 97 c 13(virtual)m 13(link)m 14(as)m 13(if)m 13(they)m 13(were)m 0 1668 p (connected)s 12(by)m 12(an)m 12(unnumbered)m 12(point-to-point)m 12(network.)m 18(On)m 12(the)m 12(graph)m 12(of)m 12(the)m 12(backbone,)m 12(two)m 12(such)m 12(routers)m 12(are)m 12(joined)m 12(by)m 0 1718 p (arcs)s 10(whose)m 10(costs)m 10(are)m 9(the)m 10(intra-area)m 10(distances)m 10(between)m 10(the)m 10(two)m 10(routers.)m 13(The)m 10(routing)m 10(protocol)m 10(traf)m (\014c)s 9(that)m 10(\015ows)m 10(along)m 10(the)m 0 1768 p (virtual)s 10(link)m 11(uses)m 10(intra-area)m 11(routing)m 10(only)m -2 r 46 c 0 1835 p (The)s 13(backbone)m 14(is)m 13(responsible)m 14(for)m 13(distributing)m 14(routing)m 13(information)m 14(between)m 13(areas.)m 23(The)m 13(backbone)m 14(itself)m 13(has)m 14(all)m 13(of)m 14(the)m 0 1885 p (properties)s 11(of)m 10(an)m 11(area.)m 14(The)m 10(topology)m 11(of)m 10(the)m 11(backbone)m 10(is)m 11(invisible)m 11(to)m 10(each)m 11(of)m 10(the)m 11(areas,)m 10(while)m 11(the)m 10(backbone)m 11(itself)m 10(knows)m 0 1935 p (nothing)s 10(of)m 11(the)m 10(topology)m 11(of)m 10(the)m 10(areas.)m t-bol.360 @sf 0 2070 p (3.2)s 50(Inter)m -1(-ar)m -1(ea)m 12 r 114 c (outing)s t-rom.300 @sf 0 2166 p (When)s 10(routing)m 10 r 97 c 11(packet)m 10(between)m 10(two)m 10(areas)m 10(the)m 11(backbone)m 10(is)m 10(used.)m 14(The)m 10(path)m 10(that)m 10(the)m 11(packet)m 10(will)m 10(travel)m 10(can)m 10(be)m 11(broken)m 10(up)m 0 2215 p (into)s 10(three)m 10(contiguous)m 10(pieces:)m 14(an)m 10(intra-area)m 10(path)m 10(from)m 10(the)m 10(source)m 10(to)m 10(an)m 10(area)m 10(border)m 10(router)m -1 r 44 c 9 r 97 c 10(backbone)m 10(path)m 10(between)m 10(the)m 0 2265 p (source)s 12(and)m 12(destination)m 12(areas,)m 12(and)m 12(then)m 12(another)m 12(intra-area)m 12(path)m 12(to)m 11(the)m 12(destination.)m 19(The)m 12(algorithm)m 12(\014nds)m 11(the)m 12(set)m 12(of)m 12(such)m 0 2315 p (paths)s 10(that)m 11(have)m 10(the)m 11(smallest)m 10(cost.)m 0 2382 p (Looking)s 14(at)m 14(this)m 14(another)m 14(way)m -2 r 44 c 14(inter)m (-area)s 14(routing)m 14(can)m 14(be)m 14(pictured)m 14(as)m 14(forcing)m 14 r 97 c 14(star)m 14(con\014guration)m 14(on)m 14(the)m 14(Autonomous)m 0 2432 p (System,)s 10(with)m 11(the)m 10(backbone)m 11(as)m 10(hub)m 10(and)m 11(and)m 10(each)m 11(of)m 10(the)m 11(areas)m 10(as)m 10(spokes.)m 0 2499 p (The)s 11(topology)m 11(of)m 10(the)m 11(backbone)m 11(dictates)m 11(the)m 11(backbone)m 11(paths)m 10(used)m 11(between)m 11(areas.)m 15(The)m 11(topology)m 11(of)m 11(the)m 11(backbone)m 10(can)m 11(be)m 0 2549 p (enhanced)s 9(by)m 10(adding)m 9(virtual)m 9(links.)m 14(This)m 9(gives)m 10(the)m 9(system)m 9(administrator)m 10(some)m 9(control)m 9(over)m 10(the)m 9(routes)m 9(taken)m 10(by)m 9(inter)m (-area)s 0 2599 p (traf)s (\014c.)s 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(12])m @eop 11 @bop0 11 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (This)s 10(section)m 10(has)m 10(assumed)m 10(that)m 10(packets)m 9(destined)m 10(for)m 10(external)m 10(destinations)m 10(are)m 10(always)m 10(routed)m 10(through)m 10(the)m 10(advertising)m 10(AS)m 0 245 p (boundary)s 10(router)m -1 r 46 c 13(This)m 10(is)m 10(not)m 11(always)m 10(desirable.)m 14(For)m 10(example,)m 10(suppose)m 11(in)m 10(Figure)m 10 r 50 c 10(there)m 11(is)m 10(an)m 10(additional)m 11(router)m 10(attached)m 0 295 p (to)s 9(network)m 9(N6,)m 9(called)m 9(Router)m 9 r 82 c -1(TX.)m 8(Suppose)m 9(further)m 9(that)m 9 r 82 c -2(TX)m 8(does)m 9(not)m 9(participate)m 9(in)m 9(OSPF)m 9(routing,)m 9(but)m 9(does)m 9(exchange)m 0 345 p (EGP)s 9(information)m 10(with)m 9(the)m 9(AS)m 10(boundary)m 9(router)m 10 r 82 c -2(T7.)m 13(Then,)m 9(router)m 9 r 82 c -1(T7)m 8(would)m 10(end)m 9(up)m 9(advertising)m 10(OSPF)m 9(external)m 10(routes)m 0 394 p (for)s 15(all)m 14(destinations)m 15(that)m 14(should)m 15(be)m 14(routed)m 15(to)m 14 r 82 c -1(TX.)m 13(An)m 15(extra)m 14(hop)m 15(will)m 14(sometimes)m 15(be)m 14(introduced)m 15(if)m 14(packets)m 15(for)m 14(these)m 0 444 p (destinations)s 10(need)m 11(always)m 10(be)m 11(routed)m 10(\014rst)m 10(to)m 11(router)m 10 r 82 c -1(T7)m 9(\(the)m 11(advertising)m 10(router\).)m 0 512 p 84 c -2 r 111 c 13(deal)m 14(with)m 14(this)m 14(situation,)m 14(the)m 14(OSPF)m 14(protocol)m 14(allows)m 14(an)m 14(AS)m 14(boundary)m 13(router)m 14(to)m 14(specify)m 14 r 97 c 14(\\forwarding)m 14(address")m 14(in)m 0 562 p (its)s 13(external)m 12(advertisements.)m 21(In)m 12(the)m 13(above)m 12(example,)m 14(Router)m 12 r 82 c -1(T7)m 11(would)m 13(specify)m 12 r 82 c -1(TX')m -2 r 115 c 11(IP)m 13(address)m 12(as)m 13(the)m 13(\\forwarding)m 0 611 p (address")s 10(for)m 11(all)m 10(those)m 11(destinations)m 10(whose)m 10(packets)m 11(should)m 10(be)m 11(routed)m 10(directly)m 11(to)m 10 r 82 c -2(TX.)m 0 679 p (The)s 11(\\forwarding)m 11(address")m 11(has)m 12(one)m 11(other)m 11(application.)m 16(It)m 11(enables)m 11(routers)m 11(in)m 11(the)m 11(Autonomous)m 12(System')m -2 r 115 c 10(interior)m 12(to)m 11(func-)m 0 729 p (tion)s 10(as)m 10(\\route)m 9(servers".)m 14(For)m 10(example,)m 10(in)m 9(Figure)m 10 r 50 c 10(the)m 10(router)m 9 r 82 c -1(T6)m 9(could)m 9(become)m 10 r 97 c 10(route)m 10(server)m -1 r 44 c 9(gaining)m 10(external)m 9(routing)m 0 779 p (information)s 13(through)m 12 r 97 c 13(combination)m 13(of)m 13(static)m 12(con\014guration)m 13(and)m 13(external)m 13(routing)m 12(protocols.)m 21 r 82 c -1(T6)m 11(would)m 13(then)m 13(start)m 13(ad-)m 0 829 p (vertising)s 11(itself)m 11(as)m 11(an)m 11(AS)m 11(boundary)m 11(router)m 44 c 10(and)m 11(would)m 11(originate)m 11 r 97 c 11(collection)m 11(of)m 11(OSPF)m 11(external)m 11(advertisements.)m 16(In)m 11(each)m 0 878 p (external)s 10(advertisement,)m 9(router)m 10 r 82 c -2(T6)m 9(would)m 9(specify)m 10(the)m 10(correct)m 9(Autonomous)m 10(System)m 9(exit)m 10(point)m 9(to)m 10(use)m 9(for)m 10(the)m 9(destination)m 0 928 p (through)s 10(appropriate)m 11(setting)m 10(of)m 11(the)m 10(advertisement')m -1 r 115 c 9(\\forwarding)m 11(address")m 10(\014eld.)m t-bol.360 @sf 0 1065 p (2.3)s 50(Equal-cost)m 12(multipath)m t-rom.300 @sf 0 1161 p (The)s 11(above)m 11(discussion)m 10(has)m 11(been)m 11(simpli\014ed)m 11(by)m 10(considering)m 11(only)m 11 r 97 c 11(single)m 11(route)m 10(to)m 11(any)m 11(destination.)m 15(In)m 11(reality)m -2 r 44 c 10(if)m 10(multiple)m 0 1210 p (equal-cost)s 12(routes)m 11(to)m 12 r 97 c 11(destination)m 12(exist,)m 12(they)m 11(are)m 12(all)m 11(discovered)m 12(and)m 12(used.)m 17(This)m 11(requires)m 12(no)m 12(conceptual)m 11(changes)m 12(to)m 11(the)m 0 1260 p (algorithm,)s 10(and)m 11(its)m 10(discussion)m 11(is)m 10(postponed)m 10(until)m 11(we)m 10(consider)m 11(the)m 10(tree-building)m 11(process)m 10(in)m 10(more)m 11(detail.)m 0 1328 p 87 c -1(ith)m 10(equal)m 10(cost)m 11(multipath,)m 10 r 97 c 10(router)m 11(potentially)m 10(has)m 11(several)m 10(available)m 10(next)m 11(hops)m 10(towards)m 11(any)m 10(given)m 11(destination.)m t-bol.360 @sf 0 1465 p (2.4)s 50 r 84 c (OS-based)s 12 r 114 c (outing)s t-rom.300 @sf 0 1560 p (OSPF)s 11(can)m 11(calculate)m 10 r 97 c 11(separate)m 11(set)m 11(of)m 11(routes)m 10(for)m 11(each)m 11(IP)m 11 r 84 c -2(ype)m 10(of)m 10(Service.)m 15(The)m 11(IP)m 11 r 84 c (OS)s 10(values)m 11(are)m 11(represented)m 10(in)m 11(OSPF)m 0 1610 p (exactly)s 11(as)m 11(they)m 11(appear)m 10(in)m 11(the)m 11(IP)m 11(packet)m 11(header)m -1 r 46 c 14(This)m 11(means)m 10(that,)m 11(for)m 11(any)m 11(destination,)m 11(there)m 11(can)m 11(potentially)m 11(be)m 10(multiple)m 0 1660 p (routing)s 10(table)m 11(entries,)m 10(one)m 11(for)m 10(each)m 10(IP)m 11 r 84 c (OS.)s 0 1727 p (Up)s 8(to)m 7(this)m 8(point,)m 8(all)m 8(examples)m 8(shown)m 8(have)m 7(assumed)m 8(that)m 8(routes)m 7(do)m 8(not)m 8(vary)m 7(on)m 8 r 84 c (OS.)s 7(In)m 8(order)m 8(to)m 7(dif)m (ferentiate)s 7(routes)m 8(based)m 0 1777 p (on)s 13 r 84 c (OS,)s 11(separate)m 13(interface)m 13(costs)m 12(can)m 13(be)m 12(con\014gured)m 13(for)m 13(each)m 12 r 84 c (OS.)s 12(For)m 13(example,)m 13(in)m 13(Figure)m 12 r 50 c 13(there)m 12(could)m 13(be)m 13(multiple)m 0 1827 p (costs)s 10(\(one)m 11(for)m 10(each)m 11 r 84 c (OS\))s 9(listed)m 11(for)m 10(each)m 11(interface.)m 13 r 65 c 11(cost)m 10(for)m 11 r 84 c (OS)s 9 r 48 c 11(must)m 10(always)m 11(be)m 10(speci\014ed.)m 0 1895 p (When)s 10(interface)m 10(costs)m 10(vary)m 9(based)m 10(on)m 10 r 84 c (OS,)s 9 r 97 c 10(separate)m 10(shortest)m 10(path)m 10(tree)m 9(is)m 10(calculated)m 10(for)m 10(each)m 10 r 84 c (OS)s 9(\(see)m 10(Section)m 10(2.1\).)m 13(In)m 0 1945 p (addition,)s 12(external)m 11(costs)m 11(can)m 12(vary)m 11(based)m 11(on)m 12 r 84 c (OS.)s 10(For)m 12(example,)m 11(in)m 12(Figure)m 11 r 50 c 11(router)m 12 r 82 c -2(T7)m 11(could)m 11(advertise)m 11 r 97 c 12(separate)m 11(type)m 0 1994 p 49 c 12(external)m 12(metric)m 11(for)m 12(each)m 12 r 84 c (OS.)s 11(Then,)m 12(when)m 12(calculating)m 12(the)m 12 r 84 c (OS)s 11 r 88 c 12(distance)m 11(to)m 12(network)m 12(N15)m 12(the)m 12(cost)m 11(of)m 12(the)m 12(shortest)m 0 2044 p 84 c (OS)s 10 r 88 c 10(path)m 10(to)m 11 r 82 c -2(T7)m 10(would)m 10(be)m 11(added)m 10(to)m 10(the)m 11 r 84 c (OS)s 10 r 88 c 10(cost)m 10(advertised)m 11(by)m 10 r 82 c -1(T7)m 9(\(see)m 11(Section)m 10(2.2\).)m 0 2112 p (All)s 11(OSPF)m 10(implementations)m 11(must)m 10(be)m 11(capable)m 10(of)m 11(calculating)m 10(routes)m 11(based)m 11(on)m 10 r 84 c (OS.)s 10(However)m -1 r 44 c 10(OSPF)m 10(routers)m 11(can)m 11(be)m 10(con-)m 0 2162 p (\014gured)s 9(to)m 9(route)m 8(all)m 9(packets)m 9(on)m 9(the)m 9 r 84 c (OS)s 8 r 48 c 9(path)m 8(\(see)m 9(Appendix)m 9(C\),)m 9(eliminating)m 9(the)m 9(need)m 8(to)m 9(calculate)m 9(non-zero)m 9 r 84 c (OS)s 8(paths.)m 0 2212 p (This)s 13(can)m 13(be)m 12(used)m 13(to)m 13(conserve)m 13(routing)m 12(table)m 13(space)m 13(and)m 13(processing)m 13(resources)m 12(in)m 13(the)m 13(router)m -1 r 46 c 20(These)m 12 r 84 c (OS-0-only)s 12(routers)m 0 2261 p (can)s 10(be)m 10(mixed)m 10(with)m 11(routers)m 10(that)m 10(do)m 10(route)m 10(based)m 10(on)m 10 r 84 c (OS.)s 10 r 84 c (OS-0-only)s 9(routers)m 10(will)m 11(be)m 10(avoided)m 10(as)m 10(much)m 10(as)m 10(possible)m 10(when)m 0 2311 p (forwarding)s 10(traf)m (\014c)s 10(requesting)m 10 r 97 c 11(non-zero)m 10 r 84 c (OS.)s 0 2379 p (It)s 10(may)m 10(be)m 10(the)m 10(case)m 10(that)m 10(no)m 10(path)m 10(exists)m 10(for)m 10(some)m 9(non-zero)m 10 r 84 c (OS,)s 10(even)m 10(if)m 10(the)m 9(router)m 10(is)m 10(calculating)m 10(non-zero)m 10 r 84 c (OS)s 9(paths.)m 14(In)m 0 2429 p (that)s 10(case,)m 11(packets)m 10(requesting)m 11(that)m 10(non-zero)m 10 r 84 c (OS)s 10(are)m 11(routed)m 10(along)m 10(the)m 11 r 84 c (OS)s 9 r 48 c 11(path)m 10(\(see)m 11(Section)m 10 r 49 c (1.1\).)s 0 2723 p ([J.)s 10(Moy])m 1648([Page)m 10 r 49 c -1(1])m @eop 10 @bop0 cmmi10.300 @sf [<0000038000000F0000003C000000F0000003C000000F0000003C000000F0000003C000000F0000 003C000000F0000000F00000003C0000000F00000003C0000000F00000003C0000000F00000003 C0000000F00000003C0000000F0000000380> 32 24 -3 2 32.286] 60 @dc 10 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 650 201 p 651 2 ru 649 251 p 2 50 ru t-ita.300 @sf 675 236 p (Destination)s 893 251 p 2 50 ru 919 236 p (Next)s 10(Hop)m 1101 251 p 2 50 ru 1127 236 p (Distance)s 1299 251 p 2 50 ru 650 252 p 651 2 ru 649 302 p 2 50 ru t-rom.300 @sf 746 287 p (N1)s 893 302 p 2 50 ru 962 287 p 82 c -1(T3)m 1101 302 p 2 50 ru 1180 287 p (10)s 1299 302 p 2 50 ru 649 352 p 2 50 ru 746 337 p (N2)s 893 352 p 2 50 ru 962 337 p 82 c -1(T3)m 1101 352 p 2 50 ru 1180 337 p (10)s 1299 352 p 2 50 ru 649 402 p 2 50 ru 746 387 p (N3)s 893 402 p 2 50 ru 962 387 p 82 c -1(T3)m 1101 402 p 2 50 ru 1191 387 p 55 c 1299 402 p 2 50 ru 649 452 p 2 50 ru 746 437 p (N4)s 893 452 p 2 50 ru 962 437 p 82 c -1(T3)m 1101 452 p 2 50 ru 1191 437 p 56 c 1299 452 p 2 50 ru 649 501 p 2 50 ru 754 486 p (Ib)s 893 501 p 2 50 ru 988 486 p 42 c 1101 501 p 2 50 ru 1191 486 p 55 c 1299 501 p 2 50 ru 649 551 p 2 50 ru 756 536 p (Ia)s 893 551 p 2 50 ru 952 536 p 82 c -2(T10)m 1101 551 p 2 50 ru 1180 536 p (12)s 1299 551 p 2 50 ru 649 601 p 2 50 ru 746 586 p (N6)s 893 601 p 2 50 ru 952 586 p 82 c -2(T10)m 1101 601 p 2 50 ru 1191 586 p 56 c 1299 601 p 2 50 ru 649 651 p 2 50 ru 746 636 p (N7)s 893 651 p 2 50 ru 952 636 p 82 c -2(T10)m 1101 651 p 2 50 ru 1180 636 p (12)s 1299 651 p 2 50 ru 649 701 p 2 50 ru 746 686 p (N8)s 893 701 p 2 50 ru 952 686 p 82 c -2(T10)m 1101 701 p 2 50 ru 1180 686 p (10)s 1299 701 p 2 50 ru 649 751 p 2 50 ru 746 736 p (N9)s 893 751 p 2 50 ru 952 736 p 82 c -2(T10)m 1101 751 p 2 50 ru 1181 736 p 49 c 49 c 1299 751 p 2 50 ru 649 800 p 2 50 ru 736 785 p (N10)s 893 800 p 2 50 ru 952 785 p 82 c -2(T10)m 1101 800 p 2 50 ru 1180 785 p (13)s 1299 800 p 2 50 ru 649 850 p 2 50 ru 737 835 p (N1)s -1 r 49 c 893 850 p 2 50 ru 952 835 p 82 c -2(T10)m 1101 850 p 2 50 ru 1180 835 p (14)s 1299 850 p 2 50 ru 649 900 p 2 50 ru 746 885 p (H1)s 893 900 p 2 50 ru 952 885 p 82 c -2(T10)m 1101 900 p 2 50 ru 1180 885 p (21)s 1299 900 p 2 50 ru 649 950 p 2 50 ru 244 r 2 50 ru 208 r 2 50 ru 198 r 2 50 ru 649 1000 p 2 50 ru 736 985 p 82 c -1(T5)m 893 1000 p 2 50 ru 962 985 p 82 c -1(T5)m 1101 1000 p 2 50 ru 1191 985 p 54 c 1299 1000 p 2 50 ru 649 1049 p 2 50 ru 736 1034 p 82 c -1(T7)m 893 1049 p 2 50 ru 952 1034 p 82 c -2(T10)m 1101 1049 p 2 50 ru 1191 1034 p 56 c 1299 1049 p 2 50 ru 650 1051 p 651 2 ru 346 1188 p 84 c -2(able)m 10(2:)m 14(The)m 10(portion)m 11(of)m 10(router)m 10 r 82 c -1(T6')m -2 r 115 c 9(routing)m 10(table)m 11(listing)m 10(local)m 11(destinations.)m 0 1318 p (Here)s 15(is)m 14(an)m 15(example)m 15(of)m 15 r 84 c -2(ype)m 13 r 49 c 15(external)m 15(metric)m 15(processing.)m 26(Suppose)m 15(that)m 15(the)m 15(routers)m 14 r 82 c -1(T7)m 14(and)m 14 r 82 c -1(T5)m 14(in)m 14(Figure)m 15 r 50 c 15(are)m 0 1368 p (advertising)s 12 r 84 c -2(ype)m 11 r 49 c 12(external)m 12(metrics.)m 19(For)m 12(each)m 12(external)m 12(route,)m 13(the)m 12(distance)m 12(from)m 12(Router)m 12 r 82 c -1(T6)m 11(is)m 12(calculated)m 12(as)m 12(the)m 12(sum)m 0 1418 p (of)s 10(the)m 10(external)m 10(route')m -2 r 115 c 9(cost)m 10(and)m 10(the)m 10(distance)m 10(from)m 10(Router)m 10 r 82 c -2(T6)m 9(to)m 10(the)m 10(advertising)m 10(router)m -2 r 46 c 13(For)m 10(every)m 10(external)m 10(destination,)m 0 1468 p (the)s 10(router)m 9(advertising)m 10(the)m 10(shortest)m 10(route)m 9(is)m 10(discovered,)m 10(and)m 10(the)m 10(next)m 9(hop)m 10(to)m 10(the)m 10(advertising)m 9(router)m 10(becomes)m 10(the)m 10(next)m 9(hop)m 0 1517 p (to)s 10(the)m 11(destination.)m 0 1583 p (Both)s 9(Router)m 10 r 82 c -2(T5)m 8(and)m 10 r 82 c -2(T7)m 9(are)m 9(advertising)m 9(an)m 10(external)m 9(route)m 9(to)m 9(destination)m 10(network)m 9(N12.)m 14(Router)m 9 r 82 c -2(T7)m 9(is)m 9(preferred)m 9(since)m 0 1633 p (it)s 9(is)m 8(advertising)m 9(N12)m 8(at)m 9 r 97 c 9(distance)m 8(of)m 9(10)m 8(\(8+2\))m 9(to)m 9(Router)m 8 r 82 c -1(T6,)m 8(which)m 8(is)m 9(better)m 8(than)m 9(router)m 9 r 82 c -2(T5')m -2 r 115 c 7(14)m 9(\(6+8\).)m 13 r 84 c -2(able)m 8 r 51 c 9(shows)m 0 1683 p (the)s 10(entries)m 11(that)m 10(are)m 11(added)m 10(to)m 10(the)m 11(routing)m 10(table)m 11(when)m 10(external)m 11(routes)m 10(are)m 10(examined:)m 650 1787 p 651 2 ru 649 1837 p 2 50 ru t-ita.300 @sf 675 1822 p (Destination)s 893 1837 p 2 50 ru 919 1822 p (Next)s 10(Hop)m 1101 1837 p 2 50 ru 1127 1822 p (Distance)s 1299 1837 p 2 50 ru 650 1839 p 651 2 ru 649 1889 p 2 50 ru t-rom.300 @sf 736 1874 p (N12)s 893 1889 p 2 50 ru 952 1874 p 82 c -2(T10)m 1101 1889 p 2 50 ru 1180 1874 p (10)s 1299 1889 p 2 50 ru 649 1938 p 2 50 ru 736 1923 p (N13)s 893 1938 p 2 50 ru 962 1923 p 82 c -1(T5)m 1101 1938 p 2 50 ru 1180 1923 p (14)s 1299 1938 p 2 50 ru 649 1988 p 2 50 ru 736 1973 p (N14)s 893 1988 p 2 50 ru 962 1973 p 82 c -1(T5)m 1101 1988 p 2 50 ru 1180 1973 p (14)s 1299 1988 p 2 50 ru 649 2038 p 2 50 ru 736 2023 p (N15)s 893 2038 p 2 50 ru 952 2023 p 82 c -2(T10)m 1101 2038 p 2 50 ru 1180 2023 p (17)s 1299 2038 p 2 50 ru 650 2040 p 651 2 ru 320 2177 p 84 c -2(able)m 9(3:)m 14(The)m 11(portion)m 10(of)m 10(router)m 11 r 82 c -2(T6')m -2 r 115 c 9(routing)m 11(table)m 10(listing)m 11(external)m 10(destinations.)m 0 2284 p (Processing)s 11(of)m 12 r 84 c -2(ype)m 10 r 50 c 11(external)m 12(metrics)m 11(is)m 11(simpler)m -1 r 46 c 15(The)m 12(AS)m 11(boundary)m 11(router)m 12(advertising)m 11(the)m 11(smallest)m 12(external)m 11(metric)m 11(is)m 0 2333 p (chosen,)s 13(regardless)m 12(of)m 12(the)m 12(internal)m 13(distance)m 12(to)m 12(the)m 13(AS)m 12(boundary)m 12(router)m -1 r 46 c 18(Suppose)m 12(in)m 13(our)m 12(example)m 12(both)m 12(router)m 13 r 82 c -2(T5)m 11(and)m 0 2383 p (router)s 11 r 82 c -2(T7)m 10(were)m 10(advertising)m 11 r 84 c -2(ype)m 9 r 50 c 11(external)m 11(routes.)m 14(Then)m 10(all)m 11(traf)m (\014c)s 10(destined)m 10(for)m 11(network)m 10(N12)m 11(would)m 11(be)m 10(forwarded)m 11(to)m 0 2433 p (router)s 11 r 82 c -2(T7,)m 11(since)m 10 r 50 c cmmi10.300 @sf 13 r 60 c t-rom.300 @sf 13(8.)m 15(When)m 11(several)m 11(equal-cost)m 11 r 84 c -2(ype)m 10 r 50 c 11(routes)m 11(exist,)m 11(the)m 11(internal)m 11(distance)m 11(to)m 11(the)m 11(advertising)m 11(routers)m 0 2483 p (is)s 10(used)m 11(to)m 10(break)m 11(the)m 10(tie.)m 0 2549 p (Both)s 13 r 84 c -2(ype)m 12 r 49 c 13(and)m 12 r 84 c -2(ype)m 12 r 50 c 13(external)m 13(metrics)m 13(can)m 13(be)m 12(present)m 13(in)m 13(the)m 13(AS)m 13(at)m 13(the)m 12(same)m 13(time.)m 21(In)m 13(that)m 13(event,)m 14 r 84 c -2(ype)m 11 r 49 c 13(external)m 0 2599 p (metrics)s 10(always)m 11(take)m 10(precedence.)m 0 2723 p ([J.)s 10(Moy])m 1646([Page)m 10(10])m @eop 9 @bop0 9 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 38600707 3354869 9998827 34338078 44994723 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/figure5.fig %%Creator: f2ps %%CreationDate: Fri Jun 8 17:21:22 1990 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 51 152 522 684 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y translate xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix } def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth % Ellipse newpath 66 515 3 3 0 360 DrawEllipse stroke % Ellipse newpath 130 586 3 3 0 360 DrawEllipse stroke % Ellipse newpath 133 449 3 3 0 360 DrawEllipse stroke % Ellipse newpath 132 518 3 3 0 360 DrawEllipse stroke % Ellipse newpath 132 387 3 3 0 360 DrawEllipse stroke % Ellipse newpath 237 450 3 3 0 360 DrawEllipse stroke % Ellipse newpath 111 156 3 3 0 360 DrawEllipse stroke % Ellipse newpath 169 156 3 3 0 360 DrawEllipse stroke % Ellipse newpath 109 234 3 3 0 360 DrawEllipse stroke % Ellipse newpath 170 234 3 3 0 360 DrawEllipse stroke % Ellipse newpath 224 194 3 3 0 360 DrawEllipse stroke % Ellipse newpath 298 195 3 3 0 360 DrawEllipse stroke % Ellipse newpath 242 266 3 3 0 360 DrawEllipse stroke % Ellipse newpath 242 321 3 3 0 360 DrawEllipse stroke % Ellipse newpath 443 194 3 3 0 360 DrawEllipse stroke % Ellipse newpath 401 266 3 3 0 360 DrawEllipse stroke % Ellipse newpath 418 425 3 3 0 360 DrawEllipse stroke % Ellipse newpath 351 311 3 3 0 360 DrawEllipse stroke % Ellipse newpath 361 404 3 3 0 360 DrawEllipse stroke % Ellipse newpath 535 355 3 3 0 360 DrawEllipse stroke % Ellipse newpath 534 442 3 3 0 360 DrawEllipse stroke % Ellipse newpath 329 451 3 3 0 360 DrawEllipse stroke % Ellipse newpath 534 519 3 3 0 360 DrawEllipse stroke % Ellipse newpath 533 582 3 3 0 360 DrawEllipse stroke % Ellipse newpath 133 325 3 3 0 360 DrawEllipse stroke % Polyline newpath 129 518 moveto 69 516 lineto stroke newpath 76.929 518.265 moveto 69.000 516.000 lineto 77.062 514.268 lineto stroke % Polyline newpath 131 521 moveto 131 582 lineto stroke newpath 133.000 574.000 moveto 131.000 582.000 lineto 129.000 574.000 lineto stroke [4.000000] 0 setdash % Polyline newpath 414 155 moveto 441 191 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 438 137 moveto 445 191 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 463 145 moveto 448 192 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 539 355 moveto 569 352 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 537 353 moveto 561 315 lineto stroke [] 0 setdash % Polyline newpath 166 156 moveto 116 156 lineto stroke newpath 124.000 158.000 moveto 116.000 156.000 lineto 124.000 154.000 lineto stroke % Polyline newpath 167 234 moveto 113 234 lineto stroke newpath 121.000 236.000 moveto 113.000 234.000 lineto 121.000 232.000 lineto stroke % Polyline newpath 242 269 moveto 242 317 lineto stroke newpath 244.000 309.000 moveto 242.000 317.000 lineto 240.000 309.000 lineto stroke % Polyline newpath 399 269 moveto 354 308 lineto stroke newpath 361.355 304.272 moveto 354.000 308.000 lineto 358.736 301.249 lineto stroke % Polyline newpath 415 426 moveto 366 406 lineto stroke newpath 372.651 410.875 moveto 366.000 406.000 lineto 374.163 407.171 lineto stroke % Polyline newpath 534 523 moveto 534 579 lineto stroke newpath 536.000 571.000 moveto 534.000 579.000 lineto 532.000 571.000 lineto stroke % Polyline newpath 132 385 moveto 132 328 lineto stroke newpath 130.000 336.000 moveto 132.000 328.000 lineto 134.000 336.000 lineto stroke % Polyline newpath 402 270 moveto 418 420 lineto stroke newpath 419.140 411.833 moveto 418.000 420.000 lineto 415.163 412.257 lineto stroke % Polyline newpath 402 263 moveto 441 198 lineto stroke newpath 435.169 203.831 moveto 441.000 198.000 lineto 438.599 205.889 lineto stroke % Polyline newpath 398 267 moveto 246 267 lineto stroke newpath 254.000 269.000 moveto 246.000 267.000 lineto 254.000 265.000 lineto stroke % Polyline newpath 241 263 moveto 225 198 lineto stroke newpath 224.970 206.246 moveto 225.000 198.000 lineto 228.854 205.290 lineto stroke % Polyline newpath 222 196 moveto 174 233 lineto stroke newpath 181.557 229.700 moveto 174.000 233.000 lineto 179.115 226.532 lineto stroke % Polyline newpath 222 193 moveto 172 158 lineto stroke newpath 177.407 164.226 moveto 172.000 158.000 lineto 179.701 160.949 lineto stroke % Polyline newpath 227 195 moveto 294 195 lineto stroke newpath 286.000 193.000 moveto 294.000 195.000 lineto 286.000 197.000 lineto stroke % Polyline newpath 421 425 moveto 530 441 lineto stroke newpath 522.375 437.859 moveto 530.000 441.000 lineto 521.794 441.817 lineto stroke % Polyline newpath 416 427 moveto 334 449 lineto stroke newpath 342.245 448.859 moveto 334.000 449.000 lineto 341.208 444.995 lineto stroke % Polyline newpath 534 440 moveto 535 359 lineto stroke newpath 532.901 366.975 moveto 535.000 359.000 lineto 536.901 367.024 lineto stroke % Polyline newpath 534 446 moveto 534 516 lineto stroke newpath 536.000 508.000 moveto 534.000 516.000 lineto 532.000 508.000 lineto stroke % Polyline newpath 326 451 moveto 241 451 lineto stroke newpath 249.000 453.000 moveto 241.000 451.000 lineto 249.000 449.000 lineto stroke % Polyline newpath 234 451 moveto 138 449 lineto stroke newpath 145.957 451.166 moveto 138.000 449.000 lineto 146.040 447.167 lineto stroke % Polyline newpath 133 446 moveto 132 391 lineto stroke newpath 130.146 399.035 moveto 132.000 391.000 lineto 134.145 398.962 lineto stroke % Polyline newpath 132 452 moveto 132 515 lineto stroke newpath 134.000 507.000 moveto 132.000 515.000 lineto 130.000 507.000 lineto stroke /Courier findfont 12.222222 scalefont setfont 340 407 moveto 1 -1 scale (Ia) show 1 -1 scale 340 327 moveto 1 -1 scale (Ib) show 1 -1 scale 178 705 moveto 1 -1 scale (Figure 5: The SPF tree for router RT6) show 1 -1 scale 57 506 moveto 1 -1 scale (H1) show 1 -1 scale 96 591 moveto 1 -1 scale (N10) show 1 -1 scale 136 551 moveto 1 -1 scale (2) show 1 -1 scale 87 513 moveto 1 -1 scale (10) show 1 -1 scale 143 522 moveto 1 -1 scale (RT12) show 1 -1 scale 103 454 moveto 1 -1 scale (N9) show 1 -1 scale 102 392 moveto 1 -1 scale (RT9) show 1 -1 scale 393 150 moveto 1 -1 scale (N12) show 1 -1 scale 420 131 moveto 1 -1 scale (N13) show 1 -1 scale 460 137 moveto 1 -1 scale (N14) show 1 -1 scale 427 166 moveto 1 -1 scale (8) show 1 -1 scale 445 161 moveto 1 -1 scale (8) show 1 -1 scale 459 177 moveto 1 -1 scale (8) show 1 -1 scale 555 367 moveto 1 -1 scale (9) show 1 -1 scale 541 328 moveto 1 -1 scale (2) show 1 -1 scale 246 293 moveto 1 -1 scale (2) show 1 -1 scale 398 348 moveto 1 -1 scale (7) show 1 -1 scale 411 233 moveto 1 -1 scale (6) show 1 -1 scale 539 551 moveto 1 -1 scale (4) show 1 -1 scale 135 362 moveto 1 -1 scale (3) show 1 -1 scale 374 450 moveto 1 -1 scale (3) show 1 -1 scale 478 430 moveto 1 -1 scale (1) show 1 -1 scale 132 250 moveto 1 -1 scale (3) show 1 -1 scale 233 231 moveto 1 -1 scale (1) show 1 -1 scale 135 170 moveto 1 -1 scale (3) show 1 -1 scale 527 605 moveto 1 -1 scale (N7) show 1 -1 scale 100 329 moveto 1 -1 scale (N11) show 1 -1 scale 219 436 moveto 1 -1 scale (RT11) show 1 -1 scale 327 471 moveto 1 -1 scale (N8) show 1 -1 scale 427 410 moveto 1 -1 scale (RT10) show 1 -1 scale 545 524 moveto 1 -1 scale (RT8) show 1 -1 scale 548 446 moveto 1 -1 scale (N6) show 1 -1 scale 494 363 moveto 1 -1 scale (RT7) show 1 -1 scale 376 254 moveto 1 -1 scale (RT6) show 1 -1 scale 455 198 moveto 1 -1 scale (RT5) show 1 -1 scale 289 183 moveto 1 -1 scale (RT4) show 1 -1 scale 235 341 moveto 1 -1 scale (N4) show 1 -1 scale 250 256 moveto 1 -1 scale (RT3) show 1 -1 scale 226 185 moveto 1 -1 scale (N3) show 1 -1 scale 160 254 moveto 1 -1 scale (RT2) show 1 -1 scale 160 145 moveto 1 -1 scale (RT1) show 1 -1 scale 86 238 moveto 1 -1 scale (N2) show 1 -1 scale 87 160 moveto 1 -1 scale (N1) show 1 -1 scale 554 310 moveto 1 -1 scale (N12) show 1 -1 scale 557 345 moveto 1 -1 scale (N15) show 1 -1 scale 369 307 moveto 1 -1 scale (7) show 1 -1 scale 381 409 moveto 1 -1 scale (5) show 1 -1 scale 317 279 moveto 1 -1 scale (6) show 1 -1 scale 178 464 moveto 1 -1 scale (1) show 1 -1 scale showpage $F2psEnd endTexFig 0 2723 p ([J.)s 10(Moy])m 1667([Page)m 10(9])m @eop 8 @bop0 8 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 38600707 3486433 4736286 34666987 47823339 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/figure3-4.fig %%Creator: f2ps %%CreationDate: Fri Jun 8 17:21:20 1990 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 53 72 527 727 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y translate xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix } def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth newpath 129.446 350.005 moveto 136.000 345.000 lineto 132.573 352.500 lineto stroke newpath 168.346 370.817 41.386 135.160 -141.405 arc stroke newpath 145.178 391.538 moveto 139.000 397.000 lineto 141.881 389.273 lineto stroke newpath 101.435 371.199 45.572 -36.644 34.483 arc stroke newpath 251.957 409.702 moveto 246.000 404.000 lineto 253.939 406.228 lineto stroke newpath 291.350 324.539 91.491 62.920 119.714 arc stroke newpath 324.041 398.300 moveto 330.000 404.000 lineto 322.060 401.775 lineto stroke newpath 287.598 478.361 85.601 -118.312 -60.307 arc stroke newpath 543.170 405.955 moveto 541.000 398.000 lineto 546.659 403.998 lineto stroke newpath 478.377 433.137 71.807 30.888 -29.296 arcn stroke newpath 537.003 461.318 moveto 540.000 469.000 lineto 533.741 463.632 lineto stroke newpath 591.077 432.774 62.620 -146.267 144.654 arcn stroke newpath 347.417 407.604 moveto 340.000 404.000 lineto 348.240 403.689 lineto stroke newpath 358.611 315.505 90.431 45.496 101.877 arc stroke newpath 413.252 375.177 moveto 421.000 378.000 lineto 412.835 379.156 lineto stroke newpath 409.578 487.019 109.616 -130.768 -84.019 arc stroke newpath 545.453 317.873 moveto 543.000 310.000 lineto 548.869 315.793 lineto stroke newpath 478.587 349.226 75.417 35.481 -31.340 arcn stroke newpath 537.290 385.212 moveto 540.000 393.000 lineto 533.944 387.404 lineto stroke newpath 601.833 352.500 73.916 -146.776 146.776 arcn stroke newpath 431.882 385.779 moveto 426.000 380.000 lineto 433.910 382.331 lineto stroke newpath 500.623 253.091 147.223 76.096 120.456 arc stroke newpath 531.221 390.118 moveto 537.000 396.000 lineto 529.133 393.530 lineto stroke newpath 461.663 519.093 144.318 -103.897 -58.532 arc stroke newpath 457.988 158.566 moveto 453.000 152.000 lineto 460.492 155.446 lineto stroke newpath 305.906 335.350 235.062 -7.418 -51.261 arcn stroke newpath 532.326 299.016 moveto 538.000 305.000 lineto 530.178 302.391 lineto stroke newpath 640.224 144.443 190.337 178.026 122.484 arcn stroke newpath 408.683 230.073 moveto 407.000 222.000 lineto 412.284 228.331 lineto stroke newpath 190.903 326.515 240.045 11.653 -25.811 arcn stroke newpath 420.400 367.174 moveto 423.000 375.000 lineto 417.023 369.319 lineto stroke newpath 568.795 282.417 172.707 -159.524 147.584 arcn stroke newpath 419.038 214.157 moveto 411.000 216.000 lineto 417.225 210.592 lineto stroke newpath 379.453 153.950 69.610 -2.429 63.051 arc stroke newpath 438.893 152.506 moveto 447.000 151.000 lineto 440.555 156.144 lineto stroke newpath 474.196 210.507 65.427 175.184 -114.561 arc stroke newpath 260.329 223.780 moveto 253.000 220.000 lineto 261.245 219.886 lineto stroke newpath 330.689 -110.055 339.075 77.514 103.245 arc stroke newpath 397.338 215.140 moveto 404.000 220.000 lineto 395.835 218.847 lineto stroke newpath 326.743 410.533 205.600 -111.318 -67.929 arc stroke newpath 316.034 154.303 moveto 309.000 150.000 lineto 317.232 150.486 lineto stroke newpath 374.468 -58.680 218.709 70.909 107.418 arc stroke newpath 436.643 142.275 moveto 444.000 146.000 lineto 435.756 146.175 lineto stroke newpath 381.484 420.790 281.811 -105.326 -77.183 arc stroke newpath 236.170 158.114 moveto 232.000 151.000 lineto 239.027 155.315 lineto stroke newpath 184.029 198.000 67.158 14.663 -44.414 arcn stroke newpath 242.027 208.422 moveto 247.000 215.000 lineto 239.517 211.536 lineto stroke newpath 282.471 171.000 56.517 -158.188 128.874 arcn stroke newpath 239.411 153.186 moveto 233.000 148.000 lineto 241.098 149.559 lineto stroke newpath 269.328 69.857 86.174 68.436 114.933 arc stroke newpath 295.046 141.294 moveto 301.000 147.000 lineto 293.062 144.767 lineto stroke newpath 267.000 206.500 68.529 -119.745 -60.255 arc stroke newpath 219.440 141.706 moveto 227.000 145.000 lineto 218.780 145.651 lineto stroke newpath 238.550 76.045 69.915 150.003 99.509 arcn stroke newpath 188.181 111.032 moveto 180.000 110.000 lineto 187.704 107.060 lineto stroke newpath 185.356 154.590 44.910 -13.639 -96.849 arcn stroke newpath 222.791 157.393 moveto 228.000 151.000 lineto 226.412 159.092 lineto stroke newpath 172.346 124.885 61.476 83.786 25.138 arcn stroke newpath 181.388 177.018 moveto 177.000 184.000 lineto 177.587 175.775 lineto stroke newpath 225.315 199.806 50.834 -88.100 -161.885 arcn stroke newpath 235.454 400.083 moveto 239.000 402.000 lineto 235.091 401.015 lineto stroke newpath 191.000 525.278 132.293 -111.274 -68.726 arc stroke newpath 148.426 408.168 moveto 142.000 403.000 lineto 150.102 404.536 lineto stroke newpath 192.113 294.405 119.600 66.397 114.772 arc stroke newpath 144.454 412.488 moveto 141.000 405.000 lineto 147.572 409.981 lineto stroke newpath 101.951 436.398 50.106 40.591 -38.802 arcn stroke newpath 133.174 461.620 moveto 138.000 468.000 lineto 133.174 461.620 lineto stroke newpath 178.137 437.639 50.326 -141.047 142.895 arcn stroke % Ellipse newpath 139 278 3 3 0 360 DrawEllipse stroke % Ellipse newpath 539 535 3 3 0 360 DrawEllipse stroke % Ellipse newpath 540 472 3 3 0 360 DrawEllipse stroke % Ellipse newpath 335 404 3 3 0 360 DrawEllipse stroke % Ellipse newpath 540 395 3 3 0 360 DrawEllipse stroke % Ellipse newpath 541 308 3 3 0 360 DrawEllipse stroke % Ellipse newpath 367 357 3 3 0 360 DrawEllipse stroke % Ellipse newpath 357 264 3 3 0 360 DrawEllipse stroke % Ellipse newpath 424 378 3 3 0 360 DrawEllipse stroke % Ellipse newpath 407 219 3 3 0 360 DrawEllipse stroke % Ellipse newpath 449 147 3 3 0 360 DrawEllipse stroke % Ellipse newpath 248 274 3 3 0 360 DrawEllipse stroke % Ellipse newpath 248 219 3 3 0 360 DrawEllipse stroke % Ellipse newpath 304 148 3 3 0 360 DrawEllipse stroke % Ellipse newpath 230 147 3 3 0 360 DrawEllipse stroke % Ellipse newpath 176 187 3 3 0 360 DrawEllipse stroke % Ellipse newpath 115 187 3 3 0 360 DrawEllipse stroke % Ellipse newpath 175 109 3 3 0 360 DrawEllipse stroke % Ellipse newpath 117 109 3 3 0 360 DrawEllipse stroke % Ellipse newpath 243 403 3 3 0 360 DrawEllipse stroke % Ellipse newpath 138 340 3 3 0 360 DrawEllipse stroke % Ellipse newpath 138 471 3 3 0 360 DrawEllipse stroke % Ellipse newpath 139 402 3 3 0 360 DrawEllipse stroke % Ellipse newpath 136 539 3 3 0 360 DrawEllipse stroke % Ellipse newpath 72 468 3 3 0 360 DrawEllipse stroke % Ellipse newpath 115 652 3 3 0 360 DrawEllipse stroke % Ellipse newpath 179 723 3 3 0 360 DrawEllipse stroke % Ellipse newpath 182 586 3 3 0 360 DrawEllipse stroke % Ellipse newpath 181 655 3 3 0 360 DrawEllipse stroke % Ellipse newpath 395 718 3 3 0 360 DrawEllipse stroke % Ellipse newpath 395 587 3 3 0 360 DrawEllipse stroke % Ellipse newpath 396 649 3 3 0 360 DrawEllipse stroke % Ellipse newpath 500 650 3 3 0 360 DrawEllipse stroke % Polyline newpath 395 647 moveto 395 591 lineto stroke newpath 393.000 599.000 moveto 395.000 591.000 lineto 397.000 599.000 lineto stroke % Polyline newpath 180 652 moveto 182 590 lineto stroke newpath 179.743 597.931 moveto 182.000 590.000 lineto 183.741 598.060 lineto stroke % Polyline newpath 399 650 moveto 493 650 lineto stroke newpath 485.000 648.000 moveto 493.000 650.000 lineto 485.000 652.000 lineto stroke % Polyline newpath 397 653 moveto 396 714 lineto stroke newpath 398.131 706.034 moveto 396.000 714.000 lineto 394.131 705.968 lineto stroke % Polyline newpath 397 647 moveto 397 653 lineto 396 714 lineto stroke newpath 398.131 706.034 moveto 396.000 714.000 lineto 394.131 705.968 lineto stroke % Polyline newpath 397 647 moveto 397 653 lineto 396 714 lineto stroke newpath 398.131 706.034 moveto 396.000 714.000 lineto 394.131 705.968 lineto stroke % Polyline newpath 138 338 moveto 138 281 lineto stroke newpath 136.000 289.000 moveto 138.000 281.000 lineto 140.000 289.000 lineto stroke % Polyline newpath 540 476 moveto 540 532 lineto stroke newpath 542.000 524.000 moveto 540.000 532.000 lineto 538.000 524.000 lineto stroke % Polyline newpath 421 379 moveto 372 359 lineto stroke newpath 378.651 363.875 moveto 372.000 359.000 lineto 380.163 360.172 lineto stroke % Polyline newpath 405 222 moveto 360 261 lineto stroke newpath 367.355 257.272 moveto 360.000 261.000 lineto 364.736 254.249 lineto stroke % Polyline newpath 248 222 moveto 248 270 lineto stroke newpath 250.000 262.000 moveto 248.000 270.000 lineto 246.000 262.000 lineto stroke % Polyline newpath 173 187 moveto 119 187 lineto stroke newpath 127.000 189.000 moveto 119.000 187.000 lineto 127.000 185.000 lineto stroke % Polyline newpath 172 109 moveto 122 109 lineto stroke newpath 130.000 111.000 moveto 122.000 109.000 lineto 130.000 107.000 lineto stroke [4.000000] 0 setdash % Polyline newpath 543 306 moveto 567 268 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 545 308 moveto 575 305 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 469 98 moveto 454 145 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 444 90 moveto 451 144 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 420 108 moveto 447 144 lineto stroke [] 0 setdash % Polyline newpath 137 474 moveto 137 535 lineto stroke newpath 139.000 527.000 moveto 137.000 535.000 lineto 135.000 527.000 lineto stroke % Polyline newpath 135 471 moveto 75 469 lineto stroke newpath 82.929 471.265 moveto 75.000 469.000 lineto 83.062 467.268 lineto stroke % Polyline newpath 178 655 moveto 118 653 lineto stroke newpath 125.929 655.265 moveto 118.000 653.000 lineto 126.062 651.268 lineto stroke % Polyline newpath 180 658 moveto 180 719 lineto stroke newpath 182.000 711.000 moveto 180.000 719.000 lineto 178.000 711.000 lineto stroke /Courier findfont 12.222222 scalefont setfont 355 350 moveto 1 -1 scale (Ia) show 1 -1 scale 343 280 moveto 1 -1 scale (Ib) show 1 -1 scale 387 362 moveto 1 -1 scale (5) show 1 -1 scale 375 260 moveto 1 -1 scale (7) show 1 -1 scale 150 794 moveto 1 -1 scale (Figure 4: Individual link state components) show 1 -1 scale 178 532 moveto 1 -1 scale (Figure 3: The resulting directed graph) show 1 -1 scale 563 298 moveto 1 -1 scale (N15) show 1 -1 scale 560 263 moveto 1 -1 scale (N12) show 1 -1 scale 331 750 moveto 1 -1 scale (A network links advertisement) show 1 -1 scale 59 752 moveto 1 -1 scale (A router links advertisement) show 1 -1 scale 511 657 moveto 1 -1 scale (RT11) show 1 -1 scale 93 113 moveto 1 -1 scale (N1) show 1 -1 scale 92 191 moveto 1 -1 scale (N2) show 1 -1 scale 166 98 moveto 1 -1 scale (RT1) show 1 -1 scale 166 207 moveto 1 -1 scale (RT2) show 1 -1 scale 232 138 moveto 1 -1 scale (N3) show 1 -1 scale 256 209 moveto 1 -1 scale (RT3) show 1 -1 scale 241 294 moveto 1 -1 scale (N4) show 1 -1 scale 295 136 moveto 1 -1 scale (RT4) show 1 -1 scale 461 151 moveto 1 -1 scale (RT5) show 1 -1 scale 382 207 moveto 1 -1 scale (RT6) show 1 -1 scale 500 316 moveto 1 -1 scale (RT7) show 1 -1 scale 554 399 moveto 1 -1 scale (N6) show 1 -1 scale 551 477 moveto 1 -1 scale (RT8) show 1 -1 scale 433 363 moveto 1 -1 scale (RT10) show 1 -1 scale 333 424 moveto 1 -1 scale (N8) show 1 -1 scale 225 389 moveto 1 -1 scale (RT11) show 1 -1 scale 106 282 moveto 1 -1 scale (N11) show 1 -1 scale 533 558 moveto 1 -1 scale (N7) show 1 -1 scale 141 123 moveto 1 -1 scale (3) show 1 -1 scale 187 139 moveto 1 -1 scale (1) show 1 -1 scale 209 186 moveto 1 -1 scale (1) show 1 -1 scale 239 184 moveto 1 -1 scale (1) show 1 -1 scale 265 167 moveto 1 -1 scale (1) show 1 -1 scale 138 203 moveto 1 -1 scale (3) show 1 -1 scale 519 351 moveto 1 -1 scale (1) show 1 -1 scale 478 372 moveto 1 -1 scale (1) show 1 -1 scale 553 439 moveto 1 -1 scale (1) show 1 -1 scale 434 297 moveto 1 -1 scale (5) show 1 -1 scale 387 414 moveto 1 -1 scale (3) show 1 -1 scale 286 389 moveto 1 -1 scale (2) show 1 -1 scale 141 315 moveto 1 -1 scale (3) show 1 -1 scale 545 504 moveto 1 -1 scale (4) show 1 -1 scale 510 210 moveto 1 -1 scale (6) show 1 -1 scale 479 237 moveto 1 -1 scale (6) show 1 -1 scale 371 135 moveto 1 -1 scale (8) show 1 -1 scale 373 173 moveto 1 -1 scale (8) show 1 -1 scale 407 183 moveto 1 -1 scale (6) show 1 -1 scale 444 196 moveto 1 -1 scale (7) show 1 -1 scale 387 300 moveto 1 -1 scale (7) show 1 -1 scale 325 244 moveto 1 -1 scale (6) show 1 -1 scale 324 200 moveto 1 -1 scale (8) show 1 -1 scale 252 246 moveto 1 -1 scale (2) show 1 -1 scale 547 281 moveto 1 -1 scale (2) show 1 -1 scale 561 320 moveto 1 -1 scale (9) show 1 -1 scale 465 130 moveto 1 -1 scale (8) show 1 -1 scale 451 114 moveto 1 -1 scale (8) show 1 -1 scale 433 119 moveto 1 -1 scale (8) show 1 -1 scale 466 90 moveto 1 -1 scale (N14) show 1 -1 scale 426 84 moveto 1 -1 scale (N13) show 1 -1 scale 399 103 moveto 1 -1 scale (N12) show 1 -1 scale 150 374 moveto 1 -1 scale (1) show 1 -1 scale 108 345 moveto 1 -1 scale (RT9) show 1 -1 scale 109 407 moveto 1 -1 scale (N9) show 1 -1 scale 149 475 moveto 1 -1 scale (RT12) show 1 -1 scale 187 428 moveto 1 -1 scale (1) show 1 -1 scale 155 442 moveto 1 -1 scale (1) show 1 -1 scale 93 466 moveto 1 -1 scale (10) show 1 -1 scale 142 504 moveto 1 -1 scale (2) show 1 -1 scale 102 544 moveto 1 -1 scale (N10) show 1 -1 scale 63 459 moveto 1 -1 scale (H1) show 1 -1 scale 106 643 moveto 1 -1 scale (H1) show 1 -1 scale 145 728 moveto 1 -1 scale (N10) show 1 -1 scale 185 688 moveto 1 -1 scale (2) show 1 -1 scale 136 650 moveto 1 -1 scale (10) show 1 -1 scale 169 624 moveto 1 -1 scale (1) show 1 -1 scale 192 659 moveto 1 -1 scale (RT12) show 1 -1 scale 152 591 moveto 1 -1 scale (N9) show 1 -1 scale 366 654 moveto 1 -1 scale (N9) show 1 -1 scale 365 592 moveto 1 -1 scale (RT9) show 1 -1 scale 406 722 moveto 1 -1 scale (RT12) show 1 -1 scale showpage $F2psEnd endTexFig 0 2723 p ([J.)s 10(Moy])m 1667([Page)m 10(8])m @eop 7 @bop0 7 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 38600707 5394104 4407377 37364039 48086466 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/figure2.fig %%Creator: f2ps %%CreationDate: Fri Jun 8 17:21:17 1990 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 82 67 568 731 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y translate xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix } def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth newpath 583.955 735.955 6.045 89.574 -80.047 arcn stroke newpath 514.965 736.310 6.973 106.369 -115.169 arc stroke newpath 387.045 627.000 6.127 170.607 18.565 arcn stroke newpath 386.690 558.000 6.764 -171.499 -17.586 arc stroke newpath 174.965 744.310 6.973 106.369 -115.168 arc stroke newpath 243.955 743.955 6.045 89.574 -80.047 arcn stroke newpath 175.965 443.310 6.973 106.369 -115.168 arc stroke newpath 244.955 442.955 6.045 89.574 -80.047 arcn stroke newpath 242.965 347.310 6.973 106.369 -115.168 arc stroke newpath 311.955 346.955 6.045 89.573 -80.047 arcn stroke newpath 122.045 144.000 6.127 170.607 18.565 arcn stroke newpath 121.690 75.000 6.764 -171.499 -17.586 arc stroke newpath 122.690 202.000 6.764 -171.499 -17.586 arc stroke newpath 123.045 271.000 6.127 170.607 18.565 arcn stroke % Ellipse newpath 276 175 39 39 0 360 DrawEllipse stroke % Ellipse newpath 209 590 39 39 0 360 DrawEllipse stroke % Ellipse newpath 553 590 39 39 0 360 DrawEllipse stroke % Polyline newpath 513 730 moveto 584 730 lineto stroke % Polyline newpath 513 742 moveto 584 742 lineto stroke % Polyline newpath 393 557 moveto 393 628 lineto stroke % Polyline newpath 381 557 moveto 381 628 lineto stroke % Polyline newpath 173 750 moveto 244 750 lineto stroke % Polyline newpath 173 738 moveto 244 738 lineto stroke % Polyline newpath 174 449 moveto 245 449 lineto stroke % Polyline newpath 174 437 moveto 245 437 lineto stroke % Polyline newpath 241 353 moveto 312 353 lineto stroke % Polyline newpath 241 341 moveto 312 341 lineto stroke % Polyline newpath 128 74 moveto 128 145 lineto stroke % Polyline newpath 116 74 moveto 116 145 lineto stroke % Polyline newpath 117 201 moveto 117 272 lineto stroke % Polyline newpath 129 201 moveto 129 272 lineto stroke % Polyline newpath 165 94 moveto 203 94 lineto 203 127 lineto 165 127 lineto closepath stroke % Polyline newpath 166 218 moveto 204 218 lineto 204 251 lineto 166 251 lineto closepath stroke % Polyline newpath 260 265 moveto 298 265 lineto 298 298 lineto 260 298 lineto closepath stroke % Polyline newpath 354 157 moveto 392 157 lineto 392 190 lineto 354 190 lineto closepath stroke % Polyline newpath 191 482 moveto 229 482 lineto 229 515 lineto 191 515 lineto closepath stroke % Polyline newpath 190 669 moveto 228 669 lineto 228 702 lineto 190 702 lineto closepath stroke % Polyline newpath 92 669 moveto 130 669 lineto 130 702 lineto 92 702 lineto closepath stroke % Polyline newpath 302 576 moveto 340 576 lineto 340 609 lineto 302 609 lineto closepath stroke % Polyline newpath 447 157 moveto 485 157 lineto 485 190 lineto 447 190 lineto closepath stroke % Polyline newpath 447 264 moveto 485 264 lineto 485 297 lineto 447 297 lineto closepath stroke % Polyline newpath 447 575 moveto 485 575 lineto 485 608 lineto 447 608 lineto closepath stroke % Polyline newpath 536 477 moveto 574 477 lineto 574 510 lineto 536 510 lineto closepath stroke % Polyline newpath 533 660 moveto 571 660 lineto 571 693 lineto 533 693 lineto closepath stroke % Polyline newpath 128 107 moveto 165 107 lineto stroke % Polyline newpath 204 112 moveto 246 152 lineto stroke % Polyline newpath 129 236 moveto 164 236 lineto stroke % Polyline newpath 204 236 moveto 253 208 lineto stroke % Polyline newpath 278 215 moveto 278 265 lineto stroke % Polyline newpath 278 299 moveto 278 340 lineto stroke % Polyline newpath 315 174 moveto 354 174 lineto stroke % Polyline newpath 392 175 moveto 447 175 lineto stroke % Polyline newpath 299 283 moveto 447 283 lineto stroke % Polyline newpath 466 190 moveto 467 263 lineto stroke % Polyline newpath 465 298 moveto 465 575 lineto stroke % Polyline newpath 485 176 moveto 554 176 lineto 554 476 lineto stroke % Polyline newpath 554 511 moveto 554 550 lineto stroke % Polyline newpath 485 594 moveto 513 594 lineto stroke % Polyline newpath 551 629 moveto 551 659 lineto stroke % Polyline newpath 550 694 moveto 550 730 lineto stroke % Polyline newpath 393 593 moveto 446 593 lineto stroke % Polyline newpath 340 593 moveto 380 593 lineto stroke % Polyline newpath 210 450 moveto 210 482 lineto stroke % Polyline newpath 210 516 moveto 210 550 lineto stroke % Polyline newpath 248 591 moveto 302 591 lineto stroke % Polyline newpath 209 630 moveto 209 668 lineto stroke % Polyline newpath 209 703 moveto 209 738 lineto stroke % Polyline newpath 130 688 moveto 189 688 lineto stroke [4.000000] 0 setdash % Polyline newpath 434 120 moveto 461 156 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 458 102 moveto 465 156 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 483 110 moveto 468 157 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 575 494 moveto 599 456 lineto stroke [] 0 setdash [4.000000] 0 setdash % Polyline newpath 575 496 moveto 605 493 lineto stroke [] 0 setdash /Courier findfont 12.222222 scalefont setfont 448 571 moveto 1 -1 scale (Ib) show 1 -1 scale 448 310 moveto 1 -1 scale (Ia) show 1 -1 scale 188 799 moveto 1 -1 scale (Figure 2: A sample Autonomous System) show 1 -1 scale 93 113 moveto 1 -1 scale (N1) show 1 -1 scale 93 241 moveto 1 -1 scale (N2) show 1 -1 scale 173 114 moveto 1 -1 scale (RT1) show 1 -1 scale 173 241 moveto 1 -1 scale (RT2) show 1 -1 scale 268 181 moveto 1 -1 scale (N3) show 1 -1 scale 267 286 moveto 1 -1 scale (RT3) show 1 -1 scale 270 373 moveto 1 -1 scale (N4) show 1 -1 scale 361 179 moveto 1 -1 scale (RT4) show 1 -1 scale 455 179 moveto 1 -1 scale (RT5) show 1 -1 scale 454 285 moveto 1 -1 scale (RT6) show 1 -1 scale 543 500 moveto 1 -1 scale (RT7) show 1 -1 scale 545 597 moveto 1 -1 scale (N6) show 1 -1 scale 539 683 moveto 1 -1 scale (RT8) show 1 -1 scale 450 596 moveto 1 -1 scale (RT10) show 1 -1 scale 378 653 moveto 1 -1 scale (N8) show 1 -1 scale 307 599 moveto 1 -1 scale (RT11) show 1 -1 scale 202 597 moveto 1 -1 scale (N9) show 1 -1 scale 200 431 moveto 1 -1 scale (N11) show 1 -1 scale 198 505 moveto 1 -1 scale (RT9) show 1 -1 scale 194 691 moveto 1 -1 scale (RT12) show 1 -1 scale 103 692 moveto 1 -1 scale (H1) show 1 -1 scale 196 767 moveto 1 -1 scale (N10) show 1 -1 scale 146 703 moveto 1 -1 scale (SLIP) show 1 -1 scale 413 115 moveto 1 -1 scale (N12) show 1 -1 scale 440 96 moveto 1 -1 scale (N13) show 1 -1 scale 480 102 moveto 1 -1 scale (N14) show 1 -1 scale 604 462 moveto 1 -1 scale (N12) show 1 -1 scale 609 503 moveto 1 -1 scale (N15) show 1 -1 scale 542 760 moveto 1 -1 scale (N7) show 1 -1 scale 152 121 moveto 1 -1 scale (3) show 1 -1 scale 214 113 moveto 1 -1 scale (1) show 1 -1 scale 212 245 moveto 1 -1 scale (1) show 1 -1 scale 266 259 moveto 1 -1 scale (1) show 1 -1 scale 341 171 moveto 1 -1 scale (1) show 1 -1 scale 155 232 moveto 1 -1 scale (3) show 1 -1 scale 543 525 moveto 1 -1 scale (1) show 1 -1 scale 491 586 moveto 1 -1 scale (1) show 1 -1 scale 555 654 moveto 1 -1 scale (1) show 1 -1 scale 289 587 moveto 1 -1 scale (1) show 1 -1 scale 214 532 moveto 1 -1 scale (1) show 1 -1 scale 212 663 moveto 1 -1 scale (1) show 1 -1 scale 470 565 moveto 1 -1 scale (5) show 1 -1 scale 433 588 moveto 1 -1 scale (3) show 1 -1 scale 346 588 moveto 1 -1 scale (2) show 1 -1 scale 216 477 moveto 1 -1 scale (3) show 1 -1 scale 214 716 moveto 1 -1 scale (2) show 1 -1 scale 172 683 moveto 1 -1 scale (10) show 1 -1 scale 555 706 moveto 1 -1 scale (4) show 1 -1 scale 560 472 moveto 1 -1 scale (6) show 1 -1 scale 491 171 moveto 1 -1 scale (6) show 1 -1 scale 398 170 moveto 1 -1 scale (8) show 1 -1 scale 435 169 moveto 1 -1 scale (8) show 1 -1 scale 473 258 moveto 1 -1 scale (6) show 1 -1 scale 471 203 moveto 1 -1 scale (7) show 1 -1 scale 471 315 moveto 1 -1 scale (7) show 1 -1 scale 431 278 moveto 1 -1 scale (6) show 1 -1 scale 306 278 moveto 1 -1 scale (8) show 1 -1 scale 283 310 moveto 1 -1 scale (2) show 1 -1 scale 447 131 moveto 1 -1 scale (8) show 1 -1 scale 465 126 moveto 1 -1 scale (8) show 1 -1 scale 479 142 moveto 1 -1 scale (8) show 1 -1 scale 590 481 moveto 1 -1 scale (2) show 1 -1 scale 589 506 moveto 1 -1 scale (9) show 1 -1 scale showpage $F2psEnd endTexFig 0 2723 p ([J.)s 10(Moy])m 1667([Page)m 10(7])m @eop 6 @bop0 6 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (Figure)s 13 r 50 c 14(shows)m 13 r 97 c 13(sample)m 14(map)m 13(of)m 13(an)m 13(Autonomous)m 14(System.)m 22(The)m 14(rectangle)m 13(labelled)m 13(H1)m 14(indicates)m 13 r 97 c 13(host,)m 14(which)m 13(has)m 14 r 97 c 0 245 p (SLIP)s 12(connection)m 13(to)m 12(router)m 13 r 82 c -2(T12.)m 19(Router)m 13 r 82 c -2(T12)m 12(is)m 12(therefore)m 13(advertising)m 12 r 97 c 13(host)m 12(route.)m 20(Lines)m 13(between)m 12(routers)m 13(indicate)m 0 295 p (physical)s 13(point-to-point)m 12(networks.)m 21(The)m 13(only)m 12(point-to-point)m 13(network)m 13(that)m 12(has)m 13(been)m 13(assigned)m 12(interface)m 13(addresses)m 13(is)m 12(the)m 0 345 p (one)s 12(joining)m 12(routers)m 12 r 82 c -1(T6)m 11(and)m 12 r 82 c -2(T10.)m 18(Routers)m 13 r 82 c -2(T5)m 11(and)m 12 r 82 c -1(T7)m 11(have)m 12(EGP)m 12(connections)m 12(to)m 12(other)m 12(Autonomous)m 12(Systems.)m 19 r 65 c 0 394 p (set)s 10(of)m 11(EGP-learned)m 10(routes)m 11(have)m 10(been)m 10(displayed)m 11(for)m 10(both)m 11(of)m 10(these)m 11(routers.)m 0 462 p 65 c 9(cost)m 9(is)m 9(associated)m 8(with)m 9(the)m 9(output)m 9(side)m 9(of)m 9(each)m 8(router)m 9(interface.)m 14(This)m 8(cost)m 9(is)m 9(con\014gurable)m 9(by)m 9(the)m 9(system)m 8(administrator)m -1 r 46 c 0 512 p (The)s 12(lower)m 12(the)m 12(cost,)m 12(the)m 12(more)m 12(likely)m 12(the)m 12(interface)m 12(is)m 12(to)m 12(be)m 12(used)m 12(to)m 12(forward)m 12(data)m 12(traf)m (\014c.)s 18(Costs)m 12(are)m 12(also)m 12(associated)m 12(with)m 0 562 p (the)s 10(externally)m 11(derived)m 10(routing)m 11(data)m 10(\(e.g.,)m 10(the)m 11(EGP-learned)m 10(routes\).)m 0 629 p (The)s 12(directed)m 11(graph)m 12(resulting)m 12(from)m 12(the)m 11(map)m 12(in)m 12(Figure)m 11 r 50 c 12(is)m 12(depicted)m 12(in)m 11(Figure)m 12(3.)m 18(Arcs)m 12(are)m 11(labelled)m 12(with)m 12(the)m 12(cost)m 11(of)m 12(the)m 0 679 p (corresponding)s 14(router)m 14(output)m 14(interface.)m 24(Arcs)m 14(having)m 14(no)m 14(labelled)m 14(cost)m 14(have)m 14 r 97 c 14(cost)m 14(of)m 14(0.)m 24(Note)m 14(that)m 14(arcs)m 14(leading)m 14(from)m 0 729 p (networks)s 10(to)m 11(routers)m 10(always)m 11(have)m 10(cost)m 11(0;)m 10(they)m 10(are)m 11(signi\014cant)m 10(nonetheless.)m 14(Note)m 11(also)m 10(that)m 10(the)m 11(externally)m 10(derived)m 11(routing)m 0 779 p (data)s 10(appears)m 11(on)m 10(the)m 11(graph)m 10(as)m 10(stubs.)m 0 846 p (The)s 11(topological)m 10(database)m 11(\(or)m 11(what)m 10(has)m 11(been)m 11(referred)m 10(to)m 11(above)m 11(as)m 10(the)m 11(directed)m 11(graph\))m 10(is)m 11(pieced)m 11(together)m 10(from)m 11(link)m 11(state)m 0 896 p (advertisements)s 11(generated)m 12(by)m 11(the)m 11(routers.)m 17(The)m 11(neighborhood)m 11(of)m 12(each)m 11(transit)m 11(vertex)m 12(is)m 11(represented)m 11(in)m 12 r 97 c 11(single,)m 12(separate)m 0 946 p (link)s 11(state)m 12(advertisement.)m 16(Figure)m 11 r 52 c 12(shows)m 11(graphically)m 11(the)m 11(link)m 12(state)m 11(representation)m 11(of)m 11(the)m 12(two)m 11(kinds)m 11(of)m 11(transit)m 12(vertices:)m 0 996 p (routers)s 10(and)m 10(multi-access)m 10(networks.)m 13(Router)m 10 r 82 c -1(T12)m 9(has)m 9(an)m 10(interface)m 10(to)m 10(two)m 10(broadcast)m 10(networks)m 10(and)m 9 r 97 c 10(SLIP)m 10(line)m 10(to)m 10 r 97 c 10(host.)m 0 1046 p (Network)s 11(N6)m 11(is)m 10 r 97 c 11(broadcast)m 11(network)m 11(with)m 11(three)m 10(attached)m 11(routers.)m 15(The)m 11(cost)m 11(of)m 11(all)m 10(links)m 11(from)m 11(network)m 11(N6)m 10(to)m 11(its)m 11(attached)m 0 1096 p (routers)s 10(is)m 9(0.)m 14(Note)m 9(that)m 10(the)m 9(link)m 10(state)m 9(advertisement)m 10(for)m 9(network)m 10(N6)m 9(is)m 10(actually)m 9(generated)m 10(by)m 9(one)m 10(of)m 10(the)m 9(attached)m 10(routers:)m 0 1145 p (the)s 10(router)m 11(that)m 10(has)m 11(been)m 10(elected)m 10(Designated)m 11(Router)m 10(for)m 11(the)m 10(network.)m t-bol.360 @sf 0 1282 p (2.1)s 50(The)m 12(shortest-path)m 13(tr)m (ee)s t-rom.300 @sf 0 1378 p (When)s 13(no)m 13(OSPF)m 13(areas)m 13(are)m 13(con\014gured,)m 13(each)m 13(router)m 13(in)m 13(the)m 13(Autonomous)m 13(System)m 13(has)m 13(an)m 12(identical)m 13(topological)m 13(database,)m 0 1427 p (leading)s 12(to)m 11(an)m 12(identical)m 12(graphical)m 11(representation.)m 18 r 65 c 11(router)m 12(generates)m 12(its)m 11(routing)m 12(table)m 12(from)m 11(this)m 12(graph)m 12(by)m 11(calculating)m 12 r 97 c 0 1477 p (tree)s 12(of)m 12(shortest)m 11(paths)m 12(with)m 12(the)m 12(router)m 12(itself)m 11(as)m 12(root.)m 18(Obviously)m -1 r 44 c 11(the)m 11(shortest-path)m 12(tree)m 12(depends)m 12(on)m 12(the)m 11(router)m 12(doing)m 12(the)m 0 1527 p (calculation.)s 14(The)m 10(shortest-path)m 11(tree)m 10(for)m 11(router)m 10 r 82 c -2(T6)m 10(in)m 10(our)m 11(example)m 10(is)m 11(depicted)m 10(in)m 10(Figure)m 11(5.)m 0 1595 p (The)s 9(tree)m 8(gives)m 9(the)m 8(entire)m 9(route)m 9(to)m 8(any)m 9(destination)m 8(network)m 9(or)m 9(host.)m 13(However)m -1 r 44 c 8(only)m 9(the)m 8(next)m 9(hop)m 9(to)m 8(the)m 9(destination)m 8(is)m 9(used)m 0 1645 p (in)s 11(the)m 12(forwarding)m 11(process.)m 17(Note)m 11(also)m 11(that)m 12(the)m 11(best)m 11(route)m 12(to)m 11(any)m 11(router)m 12(has)m 11(also)m 11(been)m 12(calculated.)m 16(For)m 12(the)m 11(processing)m 11(of)m 0 1694 p (external)s 11(data,)m 11(we)m 10(note)m 11(the)m 11(next)m 11(hop)m 10(and)m 11(distance)m 11(to)m 11(any)m 11(router)m 10(advertising)m 11(external)m 11(routes.)m 15(The)m 11(resulting)m 10(routing)m 11(table)m 0 1744 p (for)s 10(router)m 11 r 82 c -2(T6)m 9(is)m 11(pictured)m 10(in)m 10 r 84 c -2(able)m 10(2.)m 14(Note)m 10(that)m 10(there)m 11(is)m 10 r 97 c 10(separate)m 10(route)m 11(for)m 10(each)m 10(end)m 11(of)m 10 r 97 c 10(numbered)m 11(serial)m 10(line)m 10(\(in)m 11(this)m 0 1794 p (case,)s 10(the)m 11(serial)m 10(line)m 11(between)m 10(routers)m 10 r 82 c -1(T6)m 9(and)m 11 r 82 c -2(T10\).)m 0 1869 p (Routes)s 11(to)m 10(networks)m 11(belonging)m 11(to)m 11(other)m 10(AS'es)m 11(\(such)m 11(as)m 10(N12\))m 11(appear)m 11(as)m 10(dashed)m 11(lines)m 11(on)m 11(the)m 10(shortest)m 11(path)m 11(tree)m 10(in)m 11(Figure)m 0 1919 p (5.)s 14(Use)m 10(of)m 11(this)m 10(externally)m 11(derived)m 10(routing)m 10(information)m 11(is)m 10(considered)m 11(in)m 10(the)m 10(next)m 11(section.)m t-bol.360 @sf 0 2056 p (2.2)s 50(Use)m 12(of)m 13(external)m 12 r 114 c (outing)s 12(information)m t-rom.300 @sf 0 2151 p (After)s 9(the)m 10(tree)m 9(is)m 9(created)m 9(the)m 10(external)m 9(routing)m 9(information)m 10(is)m 9(examined.)m 13(This)m 10(external)m 9(routing)m 9(information)m 10(may)m 9(originate)m 0 2201 p (from)s 15(another)m 15(routing)m 15(protocol)m 15(such)m 15(as)m 15(EGP)m -4 r 44 c 14(or)m 15(be)m 15(statically)m 15(con\014gured)m 15(\(static)m 15(routes\).)m 28(Default)m 15(routes)m 15(can)m 15(also)m 15(be)m 0 2251 p (included)s 10(as)m 11(part)m 10(of)m 11(the)m 10(Autonomous)m 10(System')m -1 r 115 c 10(external)m 10(routing)m 10(information.)m 0 2319 p (External)s 8(routing)m 8(information)m 8(is)m 8(\015ooded)m 8(unaltered)m 8(throughout)m 8(the)m 9(AS.)m 8(In)m 8(our)m 8(example,)m 8(all)m 8(the)m 8(routers)m 9(in)m 8(the)m 8(Autonomous)m 0 2368 p (System)s 10(know)m 11(that)m 10(router)m 11 r 82 c -2(T7)m 10(has)m 10(two)m 10(external)m 11(routes,)m 10(with)m 11(metrics)m 10 r 50 c 10(and)m 11(9.)m 0 2436 p (OSPF)s 11(supports)m 12(two)m 11(types)m 12(of)m 11(external)m 11(metrics.)m 17 r 84 c -2(ype)m 10 r 49 c 12(external)m 11(metrics)m 12(are)m 11(equivalent)m 11(to)m 12(the)m 11(link)m 11(state)m 12(metric.)m 17 r 84 c -2(ype)m 10 r 50 c 0 2486 p (external)s 11(metrics)m 11(are)m 12(greater)m 11(than)m 11(the)m 11(cost)m 11(of)m 11(any)m 12(path)m 11(internal)m 11(to)m 11(the)m 11(AS.)m 11(Use)m 12(of)m 11 r 84 c -2(ype)m 10 r 50 c 11(external)m 11(metrics)m 11(assumes)m 12(that)m 0 2536 p (routing)s 11(between)m 11(AS'es)m 11(is)m 11(the)m 11(major)m 11(cost)m 11(of)m 11(routing)m 11 r 97 c 11(packet,)m 11(and)m 11(eliminates)m 11(the)m 11(need)m 11(for)m 11(conversion)m 11(of)m 10(external)m 11(costs)m 0 2585 p (to)s 10(internal)m 11(link)m 10(state)m 11(metrics.)m 0 2723 p ([J.)s 10(Moy])m 1667([Page)m 10(6])m @eop 5 @bop0 5 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 199 p 30785863 38600707 5394104 7367557 34469642 47954903 startTexFig %!PS-Adobe-1.0 %%Title: ../ospf-fig/figure1.fig %%Creator: f2ps %%CreationDate: Fri Jun 8 17:21:13 1990 %%For: jmoy@sonny.proteon.com (John Moy,,2478,) %%Pages: 1 %%BoundingBox: 82 112 524 729 %%EndComments /$F2psDict 32 dict def $F2psDict begin $F2psDict /mtrx matrix put /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y translate xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix } def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def %%EndProlog $F2psBegin 0.000000 792.000000 translate 0.900 -0.900 scale 0.700 setlinewidth newpath 460.711 335.666 moveto 467.000 341.000 lineto 458.941 339.252 lineto stroke newpath 436.973 401.833 67.840 -118.119 -63.729 arc stroke newpath 409.993 351.563 moveto 405.000 345.000 lineto 412.494 348.441 lineto stroke newpath 436.396 305.813 50.212 49.509 128.701 arc stroke newpath 476.142 354.624 moveto 473.000 347.000 lineto 479.361 352.248 lineto stroke newpath 435.957 374.347 46.044 38.484 -36.437 arcn stroke newpath 467.480 394.543 moveto 471.000 402.000 lineto 464.385 397.077 lineto stroke newpath 505.200 374.000 44.200 -140.692 140.692 arcn stroke newpath 483.197 349.441 moveto 477.000 344.000 lineto 485.028 345.884 lineto stroke newpath 510.009 279.899 72.101 64.543 117.246 arc stroke newpath 534.793 336.606 moveto 540.000 343.000 lineto 532.397 339.808 lineto stroke newpath 506.810 387.354 55.397 -125.045 -53.193 arc stroke newpath 479.431 331.838 moveto 473.000 337.000 lineto 476.245 329.419 lineto stroke newpath 441.675 313.213 39.333 -41.793 37.212 arc stroke newpath 461.985 292.641 moveto 468.000 287.000 lineto 465.347 294.808 lineto stroke newpath 505.147 310.943 44.195 140.592 -147.196 arc stroke newpath 408.390 92.212 moveto 402.000 87.000 lineto 410.091 88.592 lineto stroke newpath 464.723 -46.487 147.489 66.726 115.168 arc stroke newpath 517.041 83.300 moveto 523.000 89.000 lineto 515.060 86.775 lineto stroke newpath 458.706 201.760 129.802 -115.904 -60.309 arc stroke newpath 248.132 343.500 30.872 -67.392 67.392 arc stroke newpath 124.342 344.500 32.377 -114.336 114.336 arcn stroke newpath 259.132 619.500 30.872 -67.392 67.392 arc stroke newpath 135.342 620.500 32.377 -114.336 114.336 arcn stroke % Ellipse newpath 479 641 3 3 0 360 DrawEllipse stroke % Ellipse newpath 479 558 3 3 0 360 DrawEllipse stroke % Ellipse newpath 472 406 3 3 0 360 DrawEllipse stroke % Ellipse newpath 470 283 3 3 0 360 DrawEllipse stroke % Ellipse newpath 544 344 3 3 0 360 DrawEllipse stroke % Ellipse newpath 472 342 3 3 0 360 DrawEllipse stroke % Ellipse newpath 401 343 3 3 0 360 DrawEllipse stroke % Ellipse newpath 527 89 3 3 0 360 DrawEllipse stroke % Ellipse newpath 528 164 3 3 0 360 DrawEllipse stroke % Ellipse newpath 399 161 3 3 0 360 DrawEllipse stroke % Ellipse newpath 399 86 3 3 0 360 DrawEllipse stroke % Polyline newpath 527 93 moveto 527 160 lineto stroke newpath 529.000 152.000 moveto 527.000 160.000 lineto 525.000 152.000 lineto stroke % Polyline newpath 478 562 moveto 478 636 lineto stroke newpath 480.000 628.000 moveto 478.000 636.000 lineto 476.000 628.000 lineto stroke % Polyline newpath 398 90 moveto 398 157 lineto stroke newpath 400.000 149.000 moveto 398.000 157.000 lineto 396.000 149.000 lineto stroke % Polyline newpath 142 88 moveto 207 88 lineto stroke % Polyline newpath 208 71 moveto 248 71 lineto 248 105 lineto 208 105 lineto closepath stroke % Polyline newpath 101 71 moveto 141 71 lineto 141 105 lineto 101 105 lineto closepath stroke % Polyline newpath 111 314 moveto 259 314 lineto stroke % Polyline newpath 111 374 moveto 258 373 lineto stroke % Polyline newpath 118 248 moveto 157 248 lineto 157 281 lineto 118 281 lineto closepath stroke % Polyline newpath 219 249 moveto 258 249 lineto 258 282 lineto 219 282 lineto closepath stroke % Polyline newpath 118 414 moveto 157 414 lineto 157 447 lineto 118 447 lineto closepath stroke % Polyline newpath 217 413 moveto 256 413 lineto 256 446 lineto 217 446 lineto closepath stroke % Polyline newpath 138 282 moveto 138 314 lineto stroke % Polyline newpath 239 283 moveto 239 313 lineto stroke % Polyline newpath 139 375 moveto 139 413 lineto stroke % Polyline newpath 237 374 moveto 237 412 lineto stroke % Polyline newpath 122 590 moveto 270 590 lineto stroke % Polyline newpath 122 650 moveto 269 649 lineto stroke % Polyline newpath 180 515 moveto 219 515 lineto 219 548 lineto 180 548 lineto closepath stroke % Polyline newpath 198 549 moveto 198 589 lineto stroke /Courier findfont 12.222222 scalefont setfont 393 178 moveto 1 -1 scale (Ib) show 1 -1 scale 522 181 moveto 1 -1 scale (Ia) show 1 -1 scale 188 103 moveto 1 -1 scale (Ib) show 1 -1 scale 148 83 moveto 1 -1 scale (Ia) show 1 -1 scale 487 325 moveto 1 -1 scale (N2) show 1 -1 scale 543 91 moveto 1 -1 scale (RT2) show 1 -1 scale 362 89 moveto 1 -1 scale (RT1) show 1 -1 scale 216 87 moveto 1 -1 scale (RT2) show 1 -1 scale 107 89 moveto 1 -1 scale (RT1) show 1 -1 scale 177 343 moveto 1 -1 scale (N2) show 1 -1 scale 365 348 moveto 1 -1 scale (RT5) show 1 -1 scale 460 431 moveto 1 -1 scale (RT6) show 1 -1 scale 560 347 moveto 1 -1 scale (RT4) show 1 -1 scale 460 265 moveto 1 -1 scale (RT3) show 1 -1 scale 124 266 moveto 1 -1 scale (RT3) show 1 -1 scale 224 431 moveto 1 -1 scale (RT6) show 1 -1 scale 126 431 moveto 1 -1 scale (RT5) show 1 -1 scale 227 264 moveto 1 -1 scale (RT4) show 1 -1 scale 188 533 moveto 1 -1 scale (RT7) show 1 -1 scale 188 620 moveto 1 -1 scale (N3) show 1 -1 scale 468 545 moveto 1 -1 scale (RT7) show 1 -1 scale 470 665 moveto 1 -1 scale (N3) show 1 -1 scale 213 206 moveto 1 -1 scale (Physical point-to-point networks) show 1 -1 scale 235 486 moveto 1 -1 scale (Multi-access networks) show 1 -1 scale 228 703 moveto 1 -1 scale (Stub multi-access networks) show 1 -1 scale 206 749 moveto 1 -1 scale (Figure 1: Network map components) show 1 -1 scale showpage $F2psEnd endTexFig 0 2723 p ([J.)s 10(Moy])m 1667([Page)m 10(5])m @eop 4 @bop0 4 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m 0 195 p (The)s 9(vertices)m 8(of)m 9(the)m 8(graph)m 9(can)m 9(be)m 8(further)m 9(typed)m 9(according)m 8(to)m 9(function.)m 13(Only)m 9(some)m 8(of)m 9(these)m 8(types)m 9(carry)m 9(transit)m 8(data)m 9(traf)m (\014c;)s 0 245 p (that)s 11(is,)m 11(traf)m (\014c)s 10(that)m 10(is)m 11(neither)m 11(locally)m 10(originated)m 11(nor)m 11(locally)m 11(destined.)m 14 r 86 c -3(ertices)m 10(that)m 10(can)m 11(carry)m 11(transit)m 10(traf)m (\014c)s 10(are)m 11(indicated)m 0 295 p (on)s 10(the)m 11(graph)m 10(by)m 11(having)m 10(both)m 10(incoming)m 11(and)m 10(outgoing)m 11(edges.)m 627 400 p 696 2 ru 626 449 p 2 50 ru t-ita.300 @sf 652 434 p 86 c -4(ertex)m 10(type)m 860 449 p 2 50 ru 895 434 p 86 c -4(ertex)m 10(name)m 1133 449 p 2 50 ru 1159 434 p 84 c -1(ransit?)m 1322 449 p 2 50 ru 627 451 p 696 2 ru 626 501 p 2 50 ru t-rom.300 @sf 734 486 p 49 c 860 501 p 2 50 ru 941 486 p (Router)s 1133 501 p 2 50 ru 1201 486 p (yes)s 1322 501 p 2 50 ru 626 551 p 2 50 ru 734 536 p 50 c 860 551 p 2 50 ru 925 536 p (Network)s 1133 551 p 2 50 ru 1201 536 p (yes)s 1322 551 p 2 50 ru 626 601 p 2 50 ru 734 586 p 51 c 860 601 p 2 50 ru 886 586 p (Stub)s 10(network)m 1133 601 p 2 50 ru 1208 586 p (no)s 1322 601 p 2 50 ru 627 602 p 696 2 ru 739 739 p 84 c -2(able)m 10(1:)m 14(OSPF)m 10(vertex)m 10(types.)m 0 847 p (OSPF)s 10(supports)m 11(the)m 10(following)m 11(types)m 10(of)m 10(physical)m 11(networks:)m t-bol.300 @sf 0 944 p (Point-to-point)s 10(networks)m t-rom.300 @sf 21 r 65 c 12(network)m 11(that)m 12(joins)m 11 r 97 c 12(single)m 12(pair)m 11(of)m 12(routers.)m 17 r 65 c 12(56Kb)m 11(serial)m 12(line)m 11(is)m 12(an)m 12(example)m 11(of)m 12 r 97 c 11(point-)m 104 993 p (to-point)s 10(network.)m t-bol.300 @sf 0 1075 p (Br)s (oadcast)s 10(networks)m t-rom.300 @sf 20(Networks)m 15(supporting)m 14(many)m 14(\(more)m 14(than)m 14(two\))m 14(attached)m 15(routers,)m 15(together)m 14(with)m 14(the)m 14(capability)m 14(to)m 104 1125 p (address)s 10 r 97 c 10(single)m 10(physical)m 10(message)m 10(to)m 10(all)m 10(of)m 10(the)m 10(attached)m 10(routers)m 9(\(broadcast\).)m 14(Neighboring)m 10(routers)m 10(are)m 10(discovered)m 104 1175 p (dynamically)s 9(on)m 9(these)m 10(nets)m 9(using)m 9(OSPF')m -1 r 115 c 8(Hello)m 10(Protocol.)m 13(The)m 9(Hello)m 10(Protocol)m 9(itself)m 9(takes)m 10(advantage)m 9(of)m 9(the)m 10(broad-)m 104 1225 p (cast)s 9(capability)m -2 r 46 c 13(The)m 9(protocol)m 9(makes)m 9(further)m 9(use)m 9(of)m 9(multicast)m 9(capabilities,)m 9(if)m 9(they)m 9(exist.)m 14(An)m 9(ethernet)m 9(is)m 9(an)m 9(example)m 104 1274 p (of)s 10 r 97 c 11(broadcast)m 10(network.)m t-bol.300 @sf 0 1356 p (Non-br)s (oadcast)s 10(networks)m t-rom.300 @sf 20(Networks)m 11(supporting)m 11(many)m 10(\(more)m 11(than)m 10(two\))m 11(attached)m 11(routers,)m 10(but)m 11(having)m 10(no)m 11(broadcast)m 11(ca-)m 104 1406 p (pability)s -2 r 46 c 22(Neighboring)m 14(routers)m 13(are)m 14(also)m 13(discovered)m 13(on)m 14(these)m 13(nets)m 14(using)m 13(OSPF')m -1 r 115 c 12(Hello)m 14(Protocol.)m 23(However)m -1 r 44 c 14(due)m 104 1456 p (to)s 11(the)m 10(lack)m 11(of)m 11(broadcast)m 11(capability)m -2 r 44 c 10(some)m 10(con\014guration)m 11(information)m 11(is)m 11(necessary)m 10(for)m 11(the)m 11(correct)m 11(operation)m 11(of)m 10(the)m 104 1506 p (Hello)s 11(Protocol.)m 16(On)m 12(these)m 11(networks,)m 11(OSPF)m 11(protocol)m 12(packets)m 11(that)m 11(are)m 11(normally)m 11(multicast)m 12(need)m 11(to)m 11(be)m 11(sent)m 12(to)m 11(each)m 104 1555 p (neighboring)s 10(router)m 44 c 9(in)m 10(turn.)m 14(An)m 11(X.25)m 10(Public)m 10(Data)m 11(Network)m 10(\(PDN\))m 11(is)m 10(an)m 11(example)m 10(of)m 10 r 97 c 11(non-broadcast)m 10(network.)m 0 1652 p (The)s 12(neighborhood)m 12(of)m 12(each)m 12(network)m 12(node)m 13(in)m 12(the)m 12(graph)m 12(depends)m 12(on)m 12(whether)m 12(the)m 12(network)m 12(has)m 12(multi-access)m 12(capabilities)m 0 1702 p (\(either)s 13(broadcast)m 13(or)m 14(non-broadcast\))m 13(and,)m 14(if)m 13(so,)m 14(the)m 13(number)m 13(of)m 13(routers)m 14(having)m 13(an)m 13(interface)m 13(to)m 13(the)m 14(network.)m 22(The)m 13(three)m 0 1752 p (cases)s 15(are)m 16(depicted)m 15(in)m 16(Figure)m 15(1.)m 29(Rectangles)m 16(indicate)m 15(routers.)m 29(Circles)m 15(and)m 16(oblongs)m 15(indicate)m 16(multi-access)m 15(networks.)m 0 1802 p (Router)s 12(names)m 12(are)m 12(pre\014xed)m 12(with)m 12(the)m 12(letters)m 12 r 82 c -1 r 84 c 11(and)m 12(network)m 12(names)m 12(with)m 12(N.)m 12(Router)m 12(interface)m 12(names)m 12(are)m 12(pre\014xed)m 12(by)m 12(I.)m 0 1852 p (Lines)s 9(between)m 10(routers)m 9(indicate)m 10(point-to-point)m 9(networks.)m 14(The)m 9(left)m 10(side)m 9(of)m 9(the)m 10(\014gure)m 9(shows)m 10 r 97 c 9(network)m 10(with)m 9(its)m 9(connected)m 0 1901 p (routers,)s 10(with)m 11(the)m 10(resulting)m 11(graph)m 10(shown)m 10(on)m 11(the)m 10(right.)m 0 1968 p 84 c -2(wo)m 10(routers)m 10(joined)m 11(by)m 10 r 97 c 11(point-to-point)m 10(network)m 11(are)m 10(represented)m 11(in)m 10(the)m 11(directed)m 10(graph)m 11(as)m 10(being)m 11(directly)m 10(connected)m 11(by)m 11 r 97 c 0 2018 p (pair)s 10(of)m 10(edges,)m 10(one)m 11(in)m 10(each)m 10(direction.)m 14(Interfaces)m 10(to)m 10(physical)m 10(point-to-point)m 10(networks)m 10(need)m 11(not)m 10(be)m 10(assigned)m 10(IP)m 10(addresses.)m 0 2067 p (Such)s 12 r 97 c 12(point-to-point)m 13(network)m 12(is)m 12(called)m 12(unnumbered.)m 20(The)m 12(graphical)m 12(representation)m 12(of)m 13(point-to-point)m 12(networks)m 12(is)m 12(de-)m 0 2117 p (signed)s 10(so)m 9(that)m 10(unnumbered)m 9(networks)m 10(can)m 9(be)m 10(supported)m 9(naturally)m -1 r 46 c 12(When)m 10(interface)m 9(addresses)m 10(exist,)m 10(they)m 9(are)m 10(modelled)m 9(as)m 0 2167 p (stub)s 9(routes.)m 14(Note)m 9(that)m 9(each)m 9(router)m 10(would)m 9(then)m 9(have)m 9 r 97 c 9(stub)m 10(connection)m 9(to)m 9(the)m 9(other)m 9(router)m 2 r 39 c -1 r 115 c 8(interface)m 9(address)m 9(\(see)m 9(Figure)m 0 2217 p (1\).)s 0 2283 p (When)s 14(multiple)m 15(routers)m 14(are)m 14(attached)m 14(to)m 15 r 97 c 14(multi-access)m 14(network,)m 16(the)m 14(directed)m 14(graph)m 15(shows)m 14(all)m 14(routers)m 14(bidirectionally)m 0 2333 p (connected)s 9(to)m 10(the)m 9(network)m 10(vertex)m 9(\(again,)m 10(see)m 9(Figure)m 9(1\).)m 14(If)m 9(only)m 10 r 97 c 9(single)m 9(router)m 10(is)m 9(attached)m 10(to)m 9 r 97 c 9(multi-access)m 10(network,)m 9(the)m 0 2383 p (network)s 10(will)m 11(appear)m 10(in)m 11(the)m 10(directed)m 10(graph)m 11(as)m 10 r 97 c 11(stub)m 10(connection.)m 0 2449 p (Each)s 12(network)m 13(\(stub)m 12(or)m 12(transit\))m 12(in)m 13(the)m 12(graph)m 12(has)m 13(an)m 12(IP)m 12(address)m 13(and)m 12(associated)m 12(network)m 12(mask.)m 20(The)m 12(mask)m 13(indicates)m 12(the)m 0 2499 p (number)s 10(of)m 11(nodes)m 10(on)m 10(the)m 11(network.)m 14(Hosts)m 10(attached)m 10(directly)m 11(to)m 10(routers)m 11(\(referred)m 10(to)m 10(as)m 11(host)m 10(routes\))m 10(appear)m 11(on)m 10(the)m 11(graph)m 10(as)m 0 2549 p (stub)s 11(networks.)m 16(The)m 11(network)m 11(mask)m 11(for)m 11 r 97 c 11(host)m 11(route)m 11(is)m 11(always)m c-med.300 @sf 11(0xffffffff)m t-rom.300 @sf 44 c 11(which)m 11(indicates)m 11(the)m 11(presence)m 11(of)m 11 r 97 c 11(single)m 0 2599 p (node.)s 0 2723 p ([J.)s 10(Moy])m 1667([Page)m 10(4])m @eop 3 @bop0 3 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (Lower)s -1(-level)m 10(pr)m (otocols)s t-rom.300 @sf 20(The)m 10(underlying)m 10(network)m 10(access)m 11(protocols)m 10(that)m 10(provide)m 10(services)m 10(to)m 10(the)m 11(Internet)m 10(Protocol)m 10(and)m 10(in)m 104 245 p (turn)s 9(the)m 9(OSPF)m 9(protocol.)m 13(Examples)m 9(of)m 9(these)m 9(are)m 9(the)m 8(X.25)m 9(packet)m 9(and)m 9(frame)m 9(levels)m 9(for)m 9(PDNs,)m 9(and)m 9(the)m 9(ethernet)m 9(data)m 104 295 p (link)s 10(layer)m 11(for)m 10(ethernets.)m t-bol.360 @sf 0 431 p (1.3)s 50(Brief)m 12(history)m 13(of)m 12(SPF-based)m 13 r 114 c (outing)s 12(technology)m t-rom.300 @sf 0 527 p (OSPF)s 9(is)m 9(an)m 9(SPF-based)m 9(routing)m 8(protocol.)m 14(Such)m 9(protocols)m 9(are)m 8(also)m 9(referred)m 9(to)m 9(in)m 9(the)m 9(literature)m 9(as)m 9(link-state)m 8(or)m 9(distributed-)m 0 577 p (database)s 14(protocols.)m 26(This)m 14(section)m 14(gives)m 14 r 97 c 14(brief)m 15(description)m 14(of)m 14(the)m 14(developments)m 15(in)m 14(SPF-based)m 14(technology)m 14(that)m 15(have)m 0 627 p (in\015uenced)s 10(the)m 11(OSPF)m 10(protocol.)m 0 694 p (The)s 8(\014rst)m 9(SPF-based)m 8(routing)m 9(protocol)m 8(was)m 9(developed)m 8(for)m 9(use)m 8(in)m 9(the)m 8(ARP)m -3(ANET)m 8(packet)m 8(switching)m 9(network.)m 13(This)m 9(protocol)m 0 744 p (is)s 13(described)m 14(in)m 13([McQuillan].)m 23(It)m 13(has)m 14(formed)m 13(the)m 13(starting)m 14(point)m 13(for)m 13(all)m 14(other)m 13(SPF-based)m 14(protocols.)m 22(The)m 14(homogeneous)m 0 794 p (Arpanet)s 10(environment,)m 9(i.e.,)m 10(single-vendor)m 10(packet)m 9(switches)m 10(connected)m 9(by)m 10(synchronous)m 10(serial)m 9(lines,)m 10(simpli\014ed)m 9(the)m 10(design)m 0 844 p (and)s 10(implementation)m 11(of)m 10(the)m 11(original)m 10(protocol.)m 0 911 p (Modi\014cations)s 7(to)m 7(this)m 7(protocol)m 7(were)m 7(proposed)m 7(in)m 7([Perlman].)m 13(These)m 7(modi\014cations)m 7(dealt)m 7(with)m 7(increasing)m 7(the)m 7(fault)m 7(tolerance)m 0 961 p (of)s 15(the)m 15(routing)m 15(protocol)m 15(through,)m 16(among)m 15(other)m 15(things,)m 16(adding)m 15 r 97 c 15(checksum)m 15(to)m 15(the)m 15(link)m 15(state)m 15(advertisements)m 15(\(thereby)m 0 1011 p (detecting)s 13(database)m 12(corruption\).)m 21(The)m 12(paper)m 13(also)m 12(included)m 13(means)m 13(for)m 12(reducing)m 13(the)m 12(routing)m 13(traf)m (\014c)s 12(overhead)m 12(in)m 13(an)m 12(SPF-)m 0 1061 p (based)s 14(protocol.)m 25(This)m 14(was)m 14(accomplished)m 14(by)m 15(introducing)m 14(mechanisms)m 14(which)m 14(enabled)m 14(the)m 14(interval)m 14(between)m 14(link)m 14(state)m 0 1111 p (advertisements)s 10(to)m 11(be)m 10(increased)m 11(by)m 10(an)m 10(order)m 11(of)m 10(magnitude.)m 0 1178 p (An)s 9(SPF-based)m 8(algorithm)m 9(has)m 9(also)m 8(been)m 9(proposed)m 9(for)m 8(use)m 9(as)m 8(an)m 9(ISO)m 9(IS-IS)m 8(routing)m 9(protocol.)m 13(This)m 9(protocol)m 9(is)m 8(described)m 9(in)m 0 1228 p ([DEC].)s 10(The)m 9(protocol)m 10(includes)m 10(methods)m 10(for)m 9(data)m 10(and)m 10(routing)m 9(traf)m (\014c)s 9(reduction)m 10(when)m 10(operating)m 9(over)m 10(broadcast)m 10(networks.)m 0 1278 p (This)s 9(is)m 9(accomplished)m 9(by)m 9(election)m 9(of)m 9 r 97 c 9(Designated)m 9(Router)m 9(for)m 9(each)m 9(broadcast)m 9(network,)m 9(which)m 9(then)m 9(originates)m 9 r 97 c 9(link)m 9(state)m 0 1328 p (advertisement)s 10(for)m 11(the)m 10(network.)m 0 1396 p (The)s 8(OSPF)m 8(subcommittee)m 8(of)m 9(the)m 8(IETF)m 8(has)m 8(extended)m 8(this)m 8(work)m 8(in)m 9(developing)m 8(the)m 8(OSPF)m 8(protocol.)m 13(The)m 8(Designated)m 8(Router)m 0 1445 p (concept)s 11(has)m 11(been)m 11(greatly)m 11(enhanced)m 11(to)m 11(further)m 10(reduce)m 11(the)m 11(amount)m 11(of)m 11(routing)m 11(traf)m (\014c)s 10(required.)m 16(Multicast)m 11(capabilities)m 11(are)m 0 1495 p (utilized)s 9(for)m 10(additional)m 9(routing)m 9(bandwidth)m 9(reduction.)m 14(An)m 9(area)m 10(routing)m 9(scheme)m 9(has)m 9(been)m 10(developed)m 9(enabling)m 9(information)m 0 1545 p (hiding/protection/reduction.)s 20(Finally)m -2 r 44 c 12(the)m 12(algorithm)m 13(has)m 12(been)m 13(modi\014ed)m 12(for)m 12(ef)m (\014cient)s 12(operation)m 12(in)m 13(the)m 12(internet)m 12(environ-)m 0 1595 p (ment.)s t-bol.360 @sf 0 1731 p (1.4)s 50(Organization)m 12(of)m 13(this)m 12(document)m t-rom.300 @sf 0 1827 p (The)s 11(\014rst)m 11(three)m 10(sections)m 11(of)m 11(this)m 11(speci\014cation)m 11(give)m 10 r 97 c 11(general)m 11(overview)m 11(of)m 10(the)m 11(protocol')m -1 r 115 c 10(capabilities)m 11(and)m 10(functions.)m 15(Sec-)m 0 1877 p (tions)s 13(4-16)m 12(explain)m 13(the)m 12(protocol')m -1 r 115 c 12(mechanisms)m 12(in)m 13(detail.)m 20(Packet)m 13(formats,)m 13(protocol)m 12(constants,)m 14(con\014guration)m 12(items)m 13(and)m 0 1927 p (required)s 10(management)m 11(statistics)m 10(are)m 11(speci\014ed)m 10(in)m 10(the)m 11(appendices.)m 0 1994 p (Labels)s 9(such)m 9(as)m 9(HelloInterval)m 9(encountered)m 9(in)m 9(the)m 9(text)m 9(refer)m 9(to)m 9(protocol)m 9(constants.)m 13(They)m 9(may)m 9(or)m 9(may)m 9(not)m 9(be)m 9(con\014gurable.)m 0 2044 p (The)s 10(architectural)m 11(constants)m 10(are)m 11(explained)m 10(in)m 10(Appendix)m 11(B.)m 10(The)m 11(con\014gurable)m 10(constants)m 11(are)m 10(explained)m 10(in)m 11(Appendix)m 10(C.)m 0 2112 p (The)s 12(detailed)m 13(speci\014cation)m 12(of)m 12(the)m 12(protocol)m 13(is)m 12(presented)m 12(in)m 12(terms)m 13(of)m 12(data)m 12(structures.)m 20(This)m 12(is)m 12(done)m 12(in)m 13(order)m 12(to)m 12(make)m 12(the)m 0 2162 p (explanation)s 14(more)m 13(precise.)m 24(Implementations)m 14(of)m 14(the)m 13(protocol)m 14(are)m 14(required)m 13(to)m 14(support)m 14(the)m 13(functionality)m 14(described,)m 15(but)m 0 2212 p (need)s 10(not)m 11(use)m 10(the)m 11(precise)m 10(data)m 10(structures)m 11(that)m 10(appear)m 11(in)m 10(this)m 11(paper)m -2 r 46 c t-bol.420 @sf 0 2369 p 50 c 58(The)m 15 r 84 c -4(opological)m 13(Database)m t-rom.300 @sf 0 2480 p (The)s 12(database)m 11(of)m 12(the)m 12(Autonomous)m 11(System')m -1 r 115 c 11(topology)m 11(describes)m 12 r 97 c 11(directed)m 12(graph.)m 18(The)m 11(vertices)m 12(of)m 12(the)m 11(graph)m 12(consist)m 11(of)m 0 2530 p (routers)s 8(and)m 8(networks.)m 14 r 65 c 8(graph)m 8(edge)m 8(connects)m 9(two)m 8(routers)m 8(when)m 8(they)m 8(are)m 9(attached)m 8(via)m 8 r 97 c 8(physical)m 9(point-to-point)m 8(network.)m 0 2580 p (An)s 10(edge)m 11(connecting)m 10 r 97 c 11(router)m 10(to)m 10 r 97 c 11(network)m 10(indicates)m 11(that)m 10(the)m 11(router)m 10(has)m 10(an)m 11(interface)m 10(on)m 11(the)m 10(network.)m 0 2723 p ([J.)s 10(Moy])m 1667([Page)m 10(3])m @eop 2 @bop0 2 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.360 @sf 0 195 p (1.2)s 50(De\014nitions)m 12(of)m 13(commonly)m 12(used)m 13(terms)m t-rom.300 @sf 0 287 p (Here)s 11(is)m 11 r 97 c 11(collection)m 11(of)m 11(de\014nitions)m 11(for)m 11(terms)m 11(that)m 12(have)m 11 r 97 c 11(speci\014c)m 11(meaning)m 11(to)m 11(the)m 11(protocol)m 11(and)m 11(that)m 11(are)m 11(used)m 11(throughout)m 0 337 p (the)s 10(text.)m 14(The)m 11(reader)m 10(unfamiliar)m 11(with)m 10(the)m 10(Internet)m 11(Protocol)m 10(Suite)m 11(is)m 10(referred)m 10(to)m 11([RS-85-153])m 10(for)m 11(an)m 10(introduction)m 11(to)m 10(IP)m -4 r 46 c t-bol.300 @sf 0 434 p (Router)s t-rom.300 @sf 21 r 65 c 10(level)m 11(three)m 10(Internet)m 10(Protocol)m 11(packet)m 10(switch.)m 14(Formerly)m 11(called)m 10 r 97 c 10(gateway)m 11(in)m 10(much)m 11(of)m 10(the)m 10(IP)m 11(literature.)m t-bol.300 @sf 0 513 p (Autonomous)s 10(System)m t-rom.300 @sf 21 r 65 c 12(group)m 11(of)m 11(routers)m 12(exchanging)m 11(routing)m 12(information)m 11(via)m 11 r 97 c 12(common)m 11(routing)m 12(protocol.)m 17(Abbrevi-)m 104 563 p (ated)s 10(as)m 11(AS.)m t-bol.300 @sf 0 643 p (Internal)s 10(Gateway)m 11(Pr)m (otocol)s t-rom.300 @sf 20(The)m 13(routing)m 12(protocol)m 13(spoken)m 13(by)m 12(the)m 13(routers)m 13(belonging)m 12(to)m 13(an)m 13(Autonomous)m 13(system.)m 20(Ab-)m 104 692 p (breviated)s 11(as)m 11(IGP)m -3 r 46 c 10(Each)m 11(Autonomous)m 11(System)m 12(has)m 11 r 97 c 11(single)m 11(IGP)m -3 r 46 c 10(Dif)m (ferent)s 11(Autonomous)m 11(Systems)m 11(may)m 11(be)m 12(running)m 104 742 p (dif)s (ferent)s 9(IGPs.)m t-bol.300 @sf 0 822 p (Router)s 10(ID)m t-rom.300 @sf 21 r 65 c 11(32-bit)m 10(number)m 10(assigned)m 11(to)m 10(each)m 10(router)m 11(running)m 10(the)m 10(OSPF)m 11(protocol.)m 13(This)m 11(number)m 10(uniquely)m 10(identi\014es)m 11(the)m 104 872 p (router)s 10(within)m 11(an)m 10(Autonomous)m 10(System.)m t-bol.300 @sf 0 951 p (Network)s t-rom.300 @sf 21(In)m 12(this)m 13(paper)m -1 r 44 c 12(an)m 13(IP)m 12(network)m 13(or)m 12(subnet.)m 20(It)m 13(is)m 12(possible)m 13(for)m 12(one)m 13(physical)m 12(network)m 13(to)m 12(be)m 13(assigned)m 13(multiple)m 12(IP)m 104 1001 p (network/subnet)s 12(numbers.)m 18 r 87 c -2 r 101 c 10(consider)m 12(these)m 12(to)m 12(be)m 12(separate)m 12(networks.)m 18(Point-to-point)m 12(physical)m 12(networks)m 12(are)m 11(an)m 104 1051 p (exception)s 10 r 45 c 10(they)m 9(are)m 10(considered)m 10 r 97 c 10(single)m 10(network)m 10(no)m 10(matter)m 9(how)m 10(many)m 10(\(if)m 10(any)m 10(at)m 10(all\))m 10(IP)m 10(network/subnet)m 9(numbers)m 104 1100 p (are)s 10(assigned)m 11(to)m 10(them.)m t-bol.300 @sf 0 1180 p (Network)s 10(mask)m t-rom.300 @sf 21 r 65 c 13(32-bit)m 13(number)m 12(indicating)m 13(the)m 13(range)m 12(of)m 13(IP)m 13(addresses)m 12(residing)m 13(on)m 13 r 97 c 12(single)m 13(IP)m 13(network/subnet.)m 20(This)m 104 1230 p (speci\014cation)s 15(displays)m 15(network)m 15(masks)m 15(as)m 15(hexadecimal)m 16(numbers.)m 28(For)m 15(example,)m 16(the)m 15(network)m 15(mask)m 16(for)m 15 r 97 c 15(class)m 104 1280 p 67 c 15(IP)m 14(network)m 15(is)m 15(displayed)m 15(as)m c-med.300 @sf 15(0xffffff00)m t-rom.300 @sf 46 c 27(Such)m 15 r 97 c 14(mask)m 15(is)m 15(often)m 15(displayed)m 15(elsewhere)m 15(in)m 14(the)m 15(literature)m 15(as)m 104 1329 p (255.255.255.0.)s t-bol.300 @sf 0 1409 p (Multi-access)s 10(networks)m t-rom.300 @sf 21(Those)m 14(physical)m 15(networks)m 14(that)m 14(support)m 14(the)m 14(attachment)m 14(of)m 15(multiple)m 14(\(more)m 14(than)m 14(two\))m 14(routers.)m 104 1459 p (Each)s 9(pair)m 9(of)m 9(routers)m 9(on)m 9(such)m 9 r 97 c 9(network)m 9(is)m 9(assumed)m 9(to)m 9(be)m 9(able)m 9(to)m 9(communicate)m 9(directly)m 9(\(e.g.,)m 9(multi-drop)m 9(networks)m 104 1509 p (are)s 10(excluded\).)m t-bol.300 @sf 0 1588 p (Interface)s t-rom.300 @sf 21(The)m 15(connection)m 15(between)m 15 r 97 c 16(router)m 15(and)m 15(one)m 15(of)m 15(its)m 16(attached)m 15(networks.)m 28(An)m 15(interface)m 15(has)m 16(state)m 15(information)m 104 1638 p (associated)s 7(with)m 8(it,)m 8(which)m 8(is)m 8(obtained)m 7(from)m 8(the)m 7(underlying)m 8(lower)m 8(level)m 7(protocols)m 8(and)m 8(the)m 7(routing)m 8(protocol)m 8(itself.)m 13(An)m 104 1688 p (interface)s 9(to)m 10 r 97 c 9(network)m 10(has)m 9(associated)m 10(with)m 9(it)m 10 r 97 c 9(single)m 9(IP)m 10(address)m 9(and)m 10(mask)m 9(\(unless)m 10(the)m 9(network)m 10(is)m 9(an)m 10(unnumbered)m 104 1738 p (point-to-point)s 10(network\).)m 14(An)m 10(interface)m 11(is)m 10(sometimes)m 11(also)m 10(referred)m 11(to)m 10(as)m 10 r 97 c 11(link.)m t-bol.300 @sf 0 1817 p (Neighboring)s 10 r 114 c (outers)s t-rom.300 @sf 20 r 84 c -1(wo)m 10(routers)m 12(that)m 11(have)m 12(interfaces)m 11(to)m 12 r 97 c 12(common)m 11(network.)m 18(On)m 11(multi-access)m 12(networks,)m 12(neighbors)m 104 1867 p (are)s 10(dynamically)m 11(discovered)m 10(by)m 10(OSPF')m -1 r 115 c 10(Hello)m 10(Protocol.)m t-bol.300 @sf 0 1947 p (Adjacency)s t-rom.300 @sf 21 r 65 c 10(relationship)m 10(formed)m 10(between)m 10(selected)m 10(neighboring)m 10(routers)m 10(for)m 10(the)m 10(purpose)m 11(of)m 10(exchanging)m 10(routing)m 10(infor-)m 104 1996 p (mation.)s 14(Not)m 10(every)m 10(pair)m 11(of)m 10(neighboring)m 11(routers)m 10(become)m 11(adjacent.)m t-bol.300 @sf 0 2076 p (Link)s 10(state)m 11(advertisement)m t-rom.300 @sf 21(Describes)m 8(to)m 8(the)m 9(local)m 8(state)m 8(of)m 9 r 97 c 8(router)m 8(or)m 9(network.)m 13(This)m 8(includes)m 9(the)m 8(state)m 8(of)m 9(the)m 8(router)m 2 r 39 c -2 r 115 c 8(in-)m 104 2126 p (terfaces)s 9(and)m 9(adjacencies.)m 14(Each)m 9(link)m 9(state)m 10(advertisement)m 9(is)m 9(\015ooded)m 9(throughout)m 10(the)m 9(routing)m 9(domain.)m 14(The)m 9(collected)m 104 2176 p (link)s 10(state)m 11(advertisements)m 10(of)m 10(all)m 11(routers)m 10(and)m 11(networks)m 10(forms)m 11(the)m 10(protocol')m -1 r 115 c 9(topological)m 10(database.)m t-bol.300 @sf 0 2255 p (Hello)s 10(pr)m (otocol)s t-rom.300 @sf 20(The)m 10(part)m 9(of)m 9(the)m 9(OSPF)m 9(protocol)m 9(used)m 9(to)m 9(establish)m 9(and)m 9(maintain)m 9(neighbor)m 9(relationships.)m 14(On)m 9(multi-access)m 104 2305 p (networks)s 10(the)m 11(Hello)m 10(protocol)m 10(can)m 11(also)m 10(dynamically)m 11(discover)m 10(neighboring)m 11(routers.)m t-bol.300 @sf 0 2384 p (Designated)s 10(Router)m t-rom.300 @sf 21(Each)m 12(multi-access)m 13(network)m 12(that)m 12(has)m 13(at)m 12(least)m 12(two)m 13(attached)m 12(routers)m 12(has)m 13 r 97 c 12(Designated)m 12(Router)m -1 r 46 c 18(The)m 104 2434 p (Designated)s 12(Router)m 13(generates)m 12 r 97 c 13(link)m 12(state)m 13(advertisement)m 12(for)m 12(the)m 13(multi-access)m 12(network)m 13(and)m 12(has)m 13(other)m 12(special)m 13(re-)m 104 2484 p (sponsibilities)s 10(in)m 11(the)m 10(running)m 10(of)m 11(the)m 10(protocol.)m 14(The)m 11(Designated)m 10(Router)m 10(is)m 11(elected)m 10(by)m 11(the)m 10(Hello)m 10(Protocol.)m 104 2549 p (The)s 13(Designated)m 14(Router)m 14(concept)m 14(enables)m 13 r 97 c 14(reduction)m 14(in)m 13(the)m 14(number)m 14(of)m 13(adjacencies)m 14(required)m 14(on)m 14 r 97 c 13(multi-access)m 104 2599 p (network.)s 14(This)m 10(in)m 10(turn)m 11(reduces)m 10(the)m 11(amount)m 10(of)m 11(routing)m 10(protocol)m 10(traf)m (\014c)s 10(and)m 10(the)m 11(size)m 10(of)m 11(the)m 10(topological)m 11(database.)m 0 2723 p ([J.)s 10(Moy])m 1667([Page)m 10(2])m @eop 1 @bop0 1 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.420 @sf 0 195 p 49 c 58(Intr)m (oduction)s t-rom.300 @sf 0 306 p (This)s 11(document)m 10(is)m 11 r 97 c 11(speci\014cation)m 10(of)m 11(the)m 11(Open)m 10(Shortest)m 11(Path)m 10(First)m 11(\(OSPF\))m 11(internet)m 10(routing)m 11(protocol.)m 15(OSPF)m 10(is)m 11(classi\014ed)m 0 356 p (as)s 9(an)m 9(Internal)m 8(Gateway)m 9(Protocol)m 9(\(IGP\).)m 9(This)m 9(means)m 9(that)m 8(it)m 9(distributes)m 9(routing)m 9(information)m 9(between)m 9(routers)m 8(belonging)m 9(to)m 0 405 p 97 c 11(single)m 11(Autonomous)m 11(System.)m 15(The)m 11(OSPF)m 11(protocol)m 11(is)m 11(based)m 11(on)m 10(SPF)m 11(or)m 11(link-state)m 11(technology)m -2 r 46 c 15(This)m 11(is)m 11 r 97 c 10(departure)m 11(from)m 0 455 p (the)s 10(Bellman-Ford)m 11(base)m 10(used)m 11(by)m 10(traditional)m 10(internet)m 11(routing)m 10(protocols.)m 0 523 p (The)s 12(OSPF)m 12(protocol)m 12(was)m 12(developed)m 11(by)m 12(the)m 12(OSPF)m 12(working)m 12(group)m 12(of)m 12(the)m 12(Internet)m 12(Engineering)m 12 r 84 c -2(ask)m 11(Force.)m 18(It)m 12(has)m 12(been)m 0 573 p (designed)s 11(expressly)m 11(for)m 11(the)m 10(internet)m 11(environment,)m 11(including)m 11(explicit)m 11(support)m 11(for)m 11(IP)m 11(subnetting,)m 11 r 84 c (OS-based)s 10(routing)m 11(and)m 0 622 p (the)s 12(tagging)m 11(of)m 12(externally-derived)m 11(routing)m 12(information.)m 17(OSPF)m 12(also)m 11(provides)m 12(for)m 12(the)m 11(authentication)m 12(of)m 11(routing)m 12(updates,)m 0 672 p (and)s 14(utilizes)m 13(IP)m 14(multicast)m 14(when)m 14(sending/receiving)m 13(the)m 14(updates.)m 24(In)m 14(addition,)m 14(much)m 14(work)m 14(has)m 13(been)m 14(done)m 14(to)m 14(produce)m 13 r 97 c 0 722 p (protocol)s 10(that)m 11(responds)m 10(quickly)m 11(to)m 10(topology)m 10(changes,)m 11(yet)m 10(involves)m 11(small)m 10(amounts)m 11(of)m 10(routing)m 10(protocol)m 11(traf)m (\014c.)s 0 790 p (The)s 11(author)m 10(would)m 11(like)m 11(to)m 11(thank)m 10(Rob)m 11(Coltun,)m 11(Milo)m 11(Medin,)m 10(Mike)m 11(Petry)m 11(and)m 11(the)m 10(rest)m 11(of)m 11(the)m 11(OSPF)m 10(working)m 11(group)m 11(for)m 11(the)m 0 840 p (ideas)s 10(and)m 11(support)m 10(they)m 11(have)m 10(given)m 10(to)m 11(this)m 10(project.)m t-bol.360 @sf 0 976 p (1.1)s 50(Pr)m (otocol)s 12(overview)m t-rom.300 @sf 0 1072 p (OSPF)s 8(routes)m 8(IP)m 8(packets)m 8(based)m 8(solely)m 8(on)m 9(the)m 8(destination)m 8(IP)m 8(address)m 8(and)m 8(IP)m 8 r 84 c -2(ype)m 7(of)m 8(Service)m 8(found)m 8(in)m 8(the)m 9(IP)m 8(packet)m 8(header)m -2 r 46 c 0 1122 p (IP)s 9(packets)m 8(are)m 9(routed)m 8(\\as)m 9(is")m 8 r 123 c 9(they)m 8(are)m 9(not)m 8(encapsulated)m 9(in)m 8(any)m 9(further)m 8(protocol)m 9(headers)m 8(as)m 9(they)m 8(transit)m 9(the)m 8(Autonomous)m 0 1172 p (System.)s 13(OSPF)m 9(is)m 8 r 97 c 9(dynamic)m 8(routing)m 9(protocol.)m 13(It)m 9(quickly)m 8(detects)m 9(topological)m 8(changes)m 9(in)m 8(the)m 9(AS)m 9(\(such)m 8(as)m 9(router)m 8(interface)m 0 1221 p (failures\))s 12(and)m 12(calculates)m 12(new)m 12(loop-free)m 12(routes)m 12(after)m 12 r 97 c 12(period)m 12(of)m 12(conver)m (gence.)s 18(This)m 12(period)m 12(of)m 12(conver)m (gence)s 11(is)m 12(short)m 12(and)m 0 1271 p (involves)s 10 r 97 c 11(minimum)m 10(of)m 11(routing)m 10(traf)m (\014c.)s 0 1339 p (In)s 13(an)m 13(SPF-based)m 13(routing)m 13(protocol,)m 13(each)m 13(router)m 13(maintains)m 13 r 97 c 13(database)m 13(describing)m 13(the)m 13(Autonomous)m 13(System')m -1 r 115 c 12(topology)m -2 r 46 c 0 1389 p (Each)s 10(participating)m 10(router)m 9(has)m 10(an)m 10(identical)m 10(database.)m 13(Each)m 10(individual)m 10(piece)m 10(of)m 9(this)m 10(database)m 10(is)m 10 r 97 c 9(particular)m 10(router)m 2 r 39 c -2 r 115 c 9(local)m 0 1438 p (state)s 10(\(e.g.,)m 10(the)m 10(router)m 2 r 39 c -2 r 115 c 9(usable)m 10(interfaces)m 10(and)m 10(reachable)m 10(neighbors\).)m 14(The)m 10(router)m 10(distributes)m 10(its)m 10(local)m 10(state)m 10(throughout)m 10(the)m 0 1488 p (Autonomous)s 10(System)m 11(by)m 10(\015ooding.)m 0 1556 p (All)s 12(routers)m 11(run)m 12(the)m 12(exact)m 12(same)m 11(algorithm,)m 12(in)m 12(parallel.)m 18(From)m 12(the)m 11(topological)m 12(database,)m 12(each)m 12(router)m 12(constructs)m 11 r 97 c 12(tree)m 12(of)m 0 1606 p (shortest)s 9(paths)m 9(with)m 8(itself)m 9(as)m 9(root.)m 13(This)m 9(shortest-path)m 9(tree)m 9(gives)m 9(the)m 8(route)m 9(to)m 9(each)m 9(destination)m 9(in)m 8(the)m 9(Autonomous)m 9(System.)m 0 1656 p (Externally)s 10(derived)m 11(routing)m 10(information)m 11(appears)m 10(on)m 10(the)m 11(tree)m 10(as)m 11(leaves.)m 0 1723 p (OSPF)s 9(calculates)m 9(separate)m 9(routes)m 8(for)m 9(each)m 9 r 84 c -2(ype)m 8(of)m 9(Service)m 9(\(T)m (OS\).)s 8(When)m 9(several)m 9(equal-cost)m 9(routes)m 9(to)m 8 r 97 c 9(destination)m 9(exist,)m 0 1773 p (traf)s (\014c)s 10(is)m 10(distributed)m 10(equally)m 11(among)m 10(them.)m 14(The)m 11(cost)m 10(of)m 10 r 97 c 11(route)m 10(is)m 11(described)m 10(by)m 11 r 97 c 10(single)m 10(dimensionless)m 11(metric.)m 0 1841 p (OSPF)s 12(allows)m 11(sets)m 12(of)m 11(networks)m 12(to)m 12(be)m 11(grouped)m 12(together)m -1 r 46 c 16(Such)m 12 r 97 c 11(grouping)m 12(is)m 12(called)m 11(an)m 12(area.)m 17(The)m 12(topology)m 12(of)m 11(an)m 12(area)m 12(is)m 0 1891 p (hidden)s 12(from)m 13(the)m 12(rest)m 13(of)m 12(the)m 12(Autonomous)m 13(System.)m 20(This)m 12(information)m 12(hiding)m 13(enables)m 12 r 97 c 13(signi\014cant)m 12(reduction)m 12(in)m 13(routing)m 0 1940 p (traf)s (\014c.)s 15(Also,)m 11(routing)m 11(within)m 11(the)m 11(area)m 11(is)m 11(determined)m 11(only)m 11(by)m 11(the)m 11(area')m -1 r 115 c 10(own)m 10(topology)m -1 r 44 c 10(lending)m 11(the)m 11(area)m 11(protection)m 11(from)m 0 1990 p (bad)s 10(routing)m 11(data.)m 14(An)m 10(area)m 11(is)m 10 r 97 c 10(generalization)m 11(of)m 10(an)m 11(IP)m 10(subnetted)m 10(network.)m 0 2058 p (OSPF)s 7(enables)m 8(the)m 7(\015exible)m 7(con\014guration)m 8(of)m 7(IP)m 7(subnets.)m 13(Each)m 7(route)m 8(distributed)m 7(by)m 7(OSPF)m 8(has)m 7 r 97 c 7(destination)m 8(and)m 7(mask.)m 13 r 84 c -2(wo)m 0 2108 p (dif)s (ferent)s 11(subnets)m 12(of)m 12(the)m 12(same)m 12(IP)m 12(network)m 12(number)m 12(may)m 12(have)m 11(dif)m (ferent)s 12(sizes)m 12(\(i.e.,)m 12(dif)m (ferent)s 11(masks\).)m 18(This)m 12(is)m 12(commonly)m 0 2158 p (referred)s 10(to)m 10(as)m 10(variable)m 10(length)m 10(subnets.)m 14 r 65 c 10(packet)m 10(is)m 10(routed)m 10(to)m 10(the)m 10(best)m 10(\(i.e.,)m 10(longest)m 10(or)m 11(most)m 10(speci\014c\))m 10(match.)m 13(Host)m 10(routes)m 0 2207 p (are)s 10(considered)m 11(to)m 10(be)m 11(subnets)m 10(whose)m 10(masks)m 11(are)m 10(\\all)m 11(ones")m 10 r 40 c c-med.300 @sf (0xffffffff)s t-rom.300 @sf (\).)s 0 2275 p (All)s 7(OSPF)m 8(protocol)m 7(exchanges)m 7(are)m 8(authenticated.)m 12(This)m 8(means)m 7(that)m 7(only)m 8(trusted)m 7(routers)m 7(can)m 8(participate)m 7(in)m 7(the)m 8(Autonomous)m 0 2325 p (System')s -1 r 115 c 10(routing.)m 18 r 65 c 11(variety)m 12(of)m 12(authentication)m 11(schemes)m 12(can)m 11(be)m 12(used;)m 12 r 97 c 12(single)m 11(authentication)m 12(scheme)m 12(is)m 11(con\014gured)m 12(for)m 0 2375 p (each)s 10(area.)m 14(This)m 11(enables)m 10(some)m 11(areas)m 10(to)m 10(use)m 11(much)m 10(stricter)m 11(authentication)m 10(than)m 10(others.)m 0 2442 p (Externally)s 8(derived)m 8(routing)m 8(data)m 7(\(e.g.,)m 9(routes)m 8(learned)m 7(from)m 8(the)m 8(Exterior)m 8(Gateway)m 8(Protocol)m 8(\(EGP\)\))m 8(is)m 7(passed)m 8(transparently)m 0 2492 p (throughout)s 10(the)m 9(Autonomous)m 10(System.)m 13(This)m 10(externally)m 10(derived)m 9(data)m 10(is)m 9(kept)m 10(separate)m 9(from)m 10(the)m 10(OSPF)m 9(protocol')m -1 r 115 c 8(link)m 10(state)m 0 2542 p (data.)s 15(Each)m 11(external)m 11(route)m 10(can)m 11(also)m 11(be)m 11(tagged)m 11(by)m 11(the)m 10(advertising)m 11(router)m 44 c 9(enabling)m 11(the)m 11(passing)m 11(of)m 11(additional)m 10(information)m 0 2592 p (between)s 10(routers)m 11(on)m 10(the)m 11(boundaries)m 10(of)m 10(the)m 11(Autonomous)m 10(System.)m 0 2723 p ([J.)s 10(Moy])m 1667([Page)m 10(1])m @eop 5 @bop0 cmmi10.300 @sf [<60F0F060> 8 4 -4 0 11.531] 58 @dc 5 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p 67 c 32(Con\014gurable)m 11(Constants)m 1405 r 49 c -2(10)m t-rom.300 @sf 62 260 p (C.1)s 37(Global)m 11(parameters)m cmmi10.300 @sf 29 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 27 r 49 c -1(10)m 62 325 p (C.2)s 37(Area)m 11(parameters)m cmmi10.300 @sf 30 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 27 r 49 c -1(10)m 62 390 p (C.3)s 37(Router)m 11(interface)m 10(parameters)m cmmi10.300 @sf 35 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 28 r 49 c 49 c -2 r 49 c 62 454 p (C.4)s 37 r 86 c -1(irtual)m 9(link)m 11(parameters)m cmmi10.300 @sf 17 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 27 r 49 c -1(12)m 62 519 p (C.5)s 37(Non-broadcast,)m 11(multi-access)m 10(network)m 11(parameters)m cmmi10.300 @sf 38 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 27 r 49 c (12)s 62 584 p (C.6)s 37(Host)m 11(route)m 10(parameters)m cmmi10.300 @sf 33 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 27 r 49 c (12)s t-bol.300 @sf 0 691 p 68 c 32(Requir)m (ed)s 10(Statistics)m 1491 r 49 c -1(13)m t-rom.300 @sf 62 755 p (D.1)s 35(Logging)m 10(messages)m cmmi10.300 @sf 28 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 27 r 49 c (13)s 62 820 p (D.2)s 35(Cumulative)m 10(statistics)m cmmi10.300 @sf 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 26 r 49 c (15)s t-bol.300 @sf 0 927 p 69 c 35(Authentication)m 1561 r 49 c -2(18)m t-rom.300 @sf 62 992 p (E.1)s 40(Autype)m 10 r 48 c 10 r 123 c 11(No)m 10(authentication)m cmmi10.300 @sf 37 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 27 r 49 c (18)s 62 1057 p (E.2)s 40(Autype)m 10 r 49 c 10 r 123 c 11(Simple)m 10(password)m cmmi10.300 @sf 17 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 26 r 49 c (18)s t-bol.300 @sf 0 1163 p 70 c 37 r 86 c -3(ersion)m 10 r 49 c 10(differ)m (ences)s 1456 r 49 c -1(19)m t-rom.300 @sf 62 1228 p 70 c -2(.1)m 44(Protocol)m 10(Enhancements)m cmmi10.300 @sf 39 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 27 r 49 c (19)s 158 1293 p 70 c -2(.1.1)m 50(Stub)m 10(area)m 11(support)m cmmi10.300 @sf 40 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 27 r 49 c -1(19)m 158 1358 p 70 c -2(.1.2)m 50(Optional)m 10 r 84 c (OS)s 10(support)m cmmi10.300 @sf 27 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 27 r 49 c (19)s 158 1422 p 70 c -2(.1.3)m 50(Preventing)m 10(external)m 11(extra-hops)m cmmi10.300 @sf 14 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 26(120)m 62 1487 p 70 c -2(.2)m 44(Corrected)m 10(problems)m cmmi10.300 @sf 39 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 25(120)m 158 1552 p 70 c -2(.2.1)m 50(LS)m 10(sequence)m 11(number)m 10(space)m 11(changes)m cmmi10.300 @sf 25 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 26(120)m 158 1617 p 70 c -2(.2.2)m 50(Flooding)m 10(of)m 11(unexpected)m 10(MaxAge)m 11(advertisements)m cmmi10.300 @sf 36 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 25(121)m 158 1682 p 70 c -2(.2.3)m 50 r 86 c -2(irtual)m 10(links)m 10(and)m 11(address)m 10(ranges)m cmmi10.300 @sf 26 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 25(121)m 158 1747 p 70 c -2(.2.4)m 50(Routing)m 10(table)m 11(lookup)m 10(explained)m cmmi10.300 @sf 34 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 26(121)m 158 1811 p 70 c -2(.2.5)m 50(Sending)m 10(Link)m 11(State)m 10(Request)m 11(packets)m cmmi10.300 @sf 23 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 25(121)m 158 1876 p 70 c -2(.2.6)m 50(Changes)m 10(to)m 11(the)m 10(Database)m 11(description)m 10(process)m cmmi10.300 @sf 42 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 25(121)m 158 1941 p 70 c -2(.2.7)m 50(Receiving)m 10(OSPF)m 11(Hello)m 10(packets)m cmmi10.300 @sf 41 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 26(122)m 158 2006 p 70 c -2(.2.8)m 50(Network)m 10(mask)m 11(de\014ned)m 10(for)m 11(default)m 10(route)m cmmi10.300 @sf 29 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 26(122)m 158 2071 p 70 c -2(.2.9)m 50(Rate)m 10(limit)m 11(imposed)m 10(on)m 11(\015ooding)m cmmi10.300 @sf 39 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 25(122)m 62 2136 p 70 c -2(.3)m 44(Packet)m 10(format)m 11(changes)m cmmi10.300 @sf 23 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 25(122)m 158 2200 p 70 c -2(.3.1)m 50(Adding)m 10 r 97 c 11(Capability)m 10(bit\014eld)m cmmi10.300 @sf 27 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 26(122)m 158 2265 p 70 c -2(.3.2)m 50(Packet)m 10(simpli\014cation)m cmmi10.300 @sf 14 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 25(123)m 158 2330 p 70 c -2(.3.3)m 50(Adding)m 10(forwarding)m 11(addresses)m 10(to)m 11(AS)m 10(external)m 10(advertisements)m cmmi10.300 @sf 41 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 25(123)m 158 2395 p 70 c -2(.3.4)m 50(Labelling)m 10(of)m 11(virtual)m 10(links)m cmmi10.300 @sf 14 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 25(123)m 158 2460 p 70 c -2(.3.5)m 50 r 84 c (OS)s 10(costs)m 10(ordered)m cmmi10.300 @sf 23 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 25(123)m 158 2525 p 70 c -2(.3.6)m 50(OSPF')m -1 r 115 c 9 r 84 c (OS)s 10(encoding)m 10(rede\014ned)m cmmi10.300 @sf 14 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 26(123)m 62 2589 p 70 c -2(.4)m 44(Backward-compatibility)m 10(provisions)m cmmi10.300 @sf 38 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 25(123)m 0 2723 p ([J.)s 10(Moy])m 1667([Page)m 10(v])m @eop 4 @bop0 4 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (14)s 21(Aging)m 10(The)m 11(Link)m 10(State)m 10(Database)m 1288(79)m t-rom.300 @sf 62 263 p (14.1)s 23(Premature)m 11(aging)m 10(of)m 11(advertisements)m cmmi10.300 @sf 15 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(79)m t-bol.300 @sf 0 372 p (15)s 21 r 86 c -1(irtual)m 10(Links)m 1605(79)m 0 481 p (16)s 21(Calculation)m 10(Of)m 11(The)m 10(Routing)m 10 r 84 c -2(able)m 1239(80)m t-rom.300 @sf 62 549 p (16.1)s 23(Calculating)m 11(the)m 10(shortest-path)m 11(tree)m 10(for)m 10(an)m 11(area)m cmmi10.300 @sf 15 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 46(81)m 158 617 p (16.1.1)s 29(The)m 11(next)m 10(hop)m 11(calculation)m cmmi10.300 @sf 16 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(84)m 62 685 p (16.2)s 23(Calculating)m 11(the)m 10(inter)m (-area)s 10(routes)m cmmi10.300 @sf 27 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(85)m 62 752 p (16.3)s 23(Resolving)m 11(virtual)m 10(next)m 11(hops)m cmmi10.300 @sf 38 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(85)m 62 820 p (16.4)s 23(Calculating)m 11(AS)m 10(external)m 11(routes)m cmmi10.300 @sf 17 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(87)m 62 888 p (16.5)s 23(Incremental)m 11(updates)m 10 r 124 c 11(summary)m 10(links)m cmmi10.300 @sf 14 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(88)m 62 955 p (16.6)s 23(Incremental)m 11(updates)m 10 r 124 c 11(AS)m 10(external)m 10(links)m cmmi10.300 @sf 36 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 46(88)m 62 1023 p (16.7)s 23(Events)m 11(generated)m 10(as)m 11 r 97 c 10(result)m 10(of)m 11(routing)m 10(table)m 11(changes)m cmmi10.300 @sf 10 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(88)m 62 1091 p (16.8)s 23(Equal-cost)m 11(multipath)m cmmi10.300 @sf 20 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(89)m 62 1158 p (16.9)s 23(Building)m 11(the)m 10(non-zero-T)m (OS)s 10(portion)m 10(of)m 11(the)m 10(routing)m 11(table)m cmmi10.300 @sf 32 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(89)m t-bol.300 @sf 0 1268 p 65 c 32(OSPF)m 11(data)m 10(formats)m 1501(92)m t-rom.300 @sf 62 1335 p (A.1)s 35(Encapsulation)m 10(of)m 11(OSPF)m 10(packets)m cmmi10.300 @sf 36 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(92)m 62 1403 p (A.2)s 35(The)m 10(options)m 11(\014eld)m cmmi10.300 @sf 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(93)m 62 1471 p (A.3)s 35(OSPF)m 10(Packet)m 11(Formats)m cmmi10.300 @sf 33 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(94)m 158 1538 p (A.3.1)s 41(The)m 10(OSPF)m 11(packet)m 10(header)m cmmi10.300 @sf 14 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 46(95)m 158 1606 p (A.3.2)s 41(The)m 10(Hello)m 11(packet)m cmmi10.300 @sf 13 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(96)m 158 1674 p (A.3.3)s 41(The)m 10(Database)m 11(Description)m 10(packet)m cmmi10.300 @sf 39 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(97)m 158 1741 p (A.3.4)s 41(The)m 10(Link)m 11(State)m 10(Request)m 11(packet)m cmmi10.300 @sf 14 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(98)m 158 1809 p (A.3.5)s 41(The)m 10(Link)m 11(State)m 10(Update)m 11(packet)m cmmi10.300 @sf 28 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(99)m 158 1877 p (A.3.6)s 41(The)m 10(Link)m 11(State)m 10(Acknowledgment)m 11(packet)m cmmi10.300 @sf 14 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 25(100)m 62 1945 p (A.4)s 35(Link)m 10(state)m 11(advertisement)m 10(formats)m cmmi10.300 @sf 15 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 25(101)m 158 2012 p (A.4.1)s 41(The)m 10(Link)m 11(State)m 10(Advertisement)m 11(header)m cmmi10.300 @sf 30 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 25(102)m 158 2080 p (A.4.2)s 41(Router)m 10(links)m 11(advertisements)m cmmi10.300 @sf 28 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 25(103)m 158 2148 p (A.4.3)s 41(Network)m 10(links)m 11(advertisements)m cmmi10.300 @sf 28 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 26(105)m 158 2215 p (A.4.4)s 41(Summary)m 10(link)m 11(advertisements)m cmmi10.300 @sf 28 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 26(106)m 158 2283 p (A.4.5)s 41(AS)m 10(external)m 11(link)m 10(advertisements)m cmmi10.300 @sf 25 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 26(107)m t-bol.300 @sf 0 2392 p 66 c 35(Ar)m (chitectural)s 9(Constants)m 1397(109)m t-rom.300 @sf 0 2723 p ([J.)s 10(Moy])m 1655([Page)m 11(iv])m @eop 3 @bop0 3 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p (10)s 21(The)m 10(Neighbor)m 11(Data)m 10(Structur)m 101 c 1322(39)m t-rom.300 @sf 62 255 p (10.1)s 23(Neighbor)m 11(states)m cmmi10.300 @sf 11 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(41)m 62 315 p (10.2)s 23(Events)m 11(causing)m 10(neighbor)m 11(state)m 10(changes)m cmmi10.300 @sf 18 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 46(43)m 62 375 p (10.3)s 23(The)m 11(Neighbor)m 10(state)m 11(machine)m cmmi10.300 @sf 26 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(44)m 62 435 p (10.4)s 23(Whether)m 11(to)m 10(become)m 11(adjacent)m cmmi10.300 @sf 22 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(47)m 62 495 p (10.5)s 23(Receiving)m 11(Hello)m 10(packets)m cmmi10.300 @sf 26 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(48)m 62 555 p (10.6)s 23(Receiving)m 11(Database)m 10(Description)m 11(Packets)m cmmi10.300 @sf 17 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(49)m 62 615 p (10.7)s 23(Receiving)m 11(Link)m 10(State)m 11(Request)m 10(Packets)m cmmi10.300 @sf 25 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(50)m 62 675 p (10.8)s 23(Sending)m 11(Database)m 10(Description)m 11(Packets)m cmmi10.300 @sf 17 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(51)m 62 735 p (10.9)s 23(Sending)m 11(Link)m 10(State)m 11(Request)m 10(Packets)m cmmi10.300 @sf 25 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(51)m 62 795 p (10.10)s 3(An)m 10(Example)m cmmi10.300 @sf 30 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(51)m t-bol.300 @sf 0 896 p 49 c -1 r 49 c 22(The)m 10(Routing)m 11 r 84 c -3(able)m 9(Structur)m 101 c 1333(53)m t-rom.300 @sf 62 956 p 49 c (1.1)s 23(Routing)m 11(table)m 10(lookup)m cmmi10.300 @sf 17 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(55)m 62 1016 p 49 c (1.2)s 23(Sample)m 11(routing)m 10(table,)m 11(without)m 10(areas)m cmmi10.300 @sf 36 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(56)m 62 1076 p 49 c (1.3)s 23(Sample)m 11(routing)m 10(table,)m 11(with)m 10(areas)m cmmi10.300 @sf 24 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(56)m t-bol.300 @sf 0 1178 p (12)s 21(Link)m 10(State)m 11(Advertisements)m 1371(58)m t-rom.300 @sf 62 1238 p (12.1)s 23(The)m 11(Link)m 10(State)m 11(Header)m cmmi10.300 @sf 22 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(58)m 158 1298 p (12.1.1)s 29(LS)m 11(age)m cmmi10.300 @sf 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(58)m 158 1358 p (12.1.2)s 29(Options)m cmmi10.300 @sf 39 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(59)m 158 1418 p (12.1.3)s 29(LS)m 11(type)m cmmi10.300 @sf 40 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 46(59)m 158 1478 p (12.1.4)s 29(Link)m 11(State)m 10(ID)m cmmi10.300 @sf 41 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(59)m 158 1538 p (12.1.5)s 29(Advertising)m 11(Router)m cmmi10.300 @sf 11 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(60)m 158 1598 p (12.1.6)s 29(LS)m 11(sequence)m 10(number)m cmmi10.300 @sf 15 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(60)m 158 1657 p (12.1.7)s 29(LS)m 11(checksum)m cmmi10.300 @sf 42 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(61)m 62 1717 p (12.2)s 23(The)m 11(link)m 10(state)m 11(database)m cmmi10.300 @sf 20 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(61)m 62 1777 p (12.3)s 23(Representation)m 11(of)m 10 r 84 c (OS)s cmmi10.300 @sf 17 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(62)m 62 1837 p (12.4)s 23(Originating)m 11(link)m 10(state)m 11(advertisements)m cmmi10.300 @sf 12 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(63)m 158 1897 p (12.4.1)s 29(Router)m 11(links)m cmmi10.300 @sf 30 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 46(64)m 158 1957 p (12.4.2)s 29(Network)m 11(links)m cmmi10.300 @sf 30 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(68)m 158 2017 p (12.4.3)s 29(Summary)m 11(links)m cmmi10.300 @sf 14 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(69)m 158 2077 p (12.4.4)s 29(AS)m 11(external)m 10(links)m cmmi10.300 @sf 11 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 46(71)m t-bol.300 @sf 0 2179 p (13)s 21(The)m 10(Flooding)m 11(Pr)m (ocedur)s -1 r 101 c 1414(72)m t-rom.300 @sf 62 2239 p (13.1)s 23(Determining)m 11(which)m 10(link)m 11(state)m 10(is)m 10(newer)m cmmi10.300 @sf 24 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(74)m 62 2299 p (13.2)s 23(Installing)m 11(link)m 10(state)m 11(advertisements)m 10(in)m 10(the)m 11(database)m cmmi10.300 @sf 15 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(74)m 62 2359 p (13.3)s 23(Next)m 11(step)m 10(in)m 11(the)m 10(\015ooding)m 10(procedure)m cmmi10.300 @sf 38 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 46(75)m 62 2419 p (13.4)s 23(Receiving)m 11(self-originated)m 10(link)m 11(state)m cmmi10.300 @sf 42 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(76)m 62 2479 p (13.5)s 23(Sending)m 11(Link)m 10(State)m 11(Acknowledgment)m 10(packets)m cmmi10.300 @sf 27 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(77)m 62 2539 p (13.6)s 23(Retransmitting)m 11(link)m 10(state)m 11(advertisements)m cmmi10.300 @sf 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(77)m 62 2599 p (13.7)s 23(Receiving)m 11(link)m 10(state)m 11(acknowledgments)m cmmi10.300 @sf 17 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(78)m 0 2723 p ([J.)s 10(Moy])m 1653([Page)m 10(iii])m @eop 2 @bop0 2 @bop1 t-rom.300 @sf 0 50 p (RFC)s 10(1247)m 673(OSPF)m 11 r 86 c -4(ersion)m 9 r 50 c 673(July)m 11(1991)m t-bol.300 @sf 0 195 p 51 c 42(Splitting)m 10(the)m 10(AS)m 11(into)m 10(Ar)m (eas)s 1369(12)m t-rom.300 @sf 62 263 p (3.1)s 44(The)m 11(backbone)m 10(of)m 10(the)m 11(Autonomous)m 10(System)m cmmi10.300 @sf 24 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(12)m 62 330 p (3.2)s 44(Inter)m (-area)s 10(routing)m cmmi10.300 @sf 12 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(12)m 62 398 p (3.3)s 44(Classi\014cation)m 11(of)m 10(routers)m cmmi10.300 @sf 35 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(13)m 62 466 p (3.4)s 44 r 65 c 11(sample)m 10(area)m 10(con\014guration)m cmmi10.300 @sf 27 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(13)m 62 534 p (3.5)s 44(IP)m 11(subnetting)m 10(support)m cmmi10.300 @sf 12 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(17)m 62 601 p (3.6)s 44(Supporting)m 11(stub)m 10(areas)m cmmi10.300 @sf 40 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(18)m 62 669 p (3.7)s 44(Partitions)m 11(of)m 10(areas)m cmmi10.300 @sf 36 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(18)m t-bol.300 @sf 0 778 p 52 c 42(Functional)m 10(Summary)m 1467(20)m t-rom.300 @sf 62 846 p (4.1)s 44(Inter)m (-area)s 10(routing)m cmmi10.300 @sf 12 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(20)m 62 914 p (4.2)s 44(AS)m 11(external)m 10(routes)m cmmi10.300 @sf 26 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(20)m 62 981 p (4.3)s 44(Routing)m 11(protocol)m 10(packets)m cmmi10.300 @sf 14 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(21)m 62 1049 p (4.4)s 44(Basic)m 11(implementation)m 10(requirements)m cmmi10.300 @sf 34 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 46(21)m 62 1117 p (4.5)s 44(Optional)m 11(OSPF)m 10(capabilities)m cmmi10.300 @sf 42 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(23)m t-bol.300 @sf 0 1226 p 53 c 42(Pr)m (otocol)s 9(Data)m 11(Structur)m (es)s 1402(23)m 0 1335 p 54 c 42(The)m 10(Ar)m (ea)s 10(Data)m 10(Structur)m 101 c 1401(25)m 0 1445 p 55 c 42(Bringing)m 10(Up)m 10(Adjacencies)m 1402(26)m t-rom.300 @sf 62 1512 p (7.1)s 44(The)m 11(Hello)m 10(Protocol)m cmmi10.300 @sf 17 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(26)m 62 1580 p (7.2)s 44(The)m 11(Synchronization)m 10(of)m 10(Databases)m cmmi10.300 @sf 22 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(26)m 62 1648 p (7.3)s 44(The)m 11(Designated)m 10(Router)m cmmi10.300 @sf 14 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(27)m 62 1715 p (7.4)s 44(The)m 11(Backup)m 10(Designated)m 10(Router)m cmmi10.300 @sf 39 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(27)m 62 1783 p (7.5)s 44(The)m 11(graph)m 10(of)m 10(adjacencies)m cmmi10.300 @sf 16 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(28)m t-bol.300 @sf 0 1892 p 56 c 42(Pr)m (otocol)s 9(Packet)m 11(Pr)m (ocessing)s 1365(28)m t-rom.300 @sf 62 1960 p (8.1)s 44(Sending)m 11(protocol)m 10(packets)m cmmi10.300 @sf 12 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 47(28)m 62 2028 p (8.2)s 44(Receiving)m 11(protocol)m 10(packets)m cmmi10.300 @sf 12 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(30)m t-bol.300 @sf 0 2137 p 57 c 42(The)m 10(Interface)m 10(Data)m 11(Structur)m 101 c 1326(32)m t-rom.300 @sf 62 2205 p (9.1)s 44(Interface)m 11(states)m cmmi10.300 @sf 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(34)m 62 2273 p (9.2)s 44(Events)m 11(causing)m 10(interface)m 10(state)m 11(changes)m cmmi10.300 @sf 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(35)m 62 2340 p (9.3)s 44(The)m 11(Interface)m 10(state)m 10(machine)m cmmi10.300 @sf 37 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 46(35)m 62 2408 p (9.4)s 44(Electing)m 11(the)m 10(Designated)m 10(Router)m cmmi10.300 @sf 41 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 46(37)m 62 2476 p (9.5)s 44(Sending)m 11(Hello)m 10(packets)m cmmi10.300 @sf 26 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(38)m 158 2543 p (9.5.1)s 50(Sending)m 11(Hello)m 10(packets)m 11(on)m 10(non-broadcast)m 10(networks)m cmmi10.300 @sf 12 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 46(39)m 0 2723 p ([J.)s 10(Moy])m 1665([Page)m 10(ii])m @eop 1 @bop0 /Times-Bold /t-bol.510 ReEncodeForTeX /t-bol.510 /t-bol.510 70.833212 TeXPSmakefont def 1 @bop1 t-rom.300 @sf 0 251 p (Network)s 10 r 87 c -2(orking)m 9(Group)m 1392(J.)m 10(Moy)m 0 301 p (Request)s 10(for)m 11(Comments:)m 14(1247)m 1218(Proteon,)m 10(Inc.)m 0 351 p (Obsoletes:)s 14(RFC)m 10 r 49 c (131)s 1400(July)m 10(1991)m t-bol.510 @sf 734 469 p (OSPF)s 18 r 86 c -6(ersion)m 17 r 50 c t-bol.420 @sf 0 708 p (Status)s 15(of)m 14(this)m 15(Memo)m t-rom.300 @sf 0 818 p (This)s 11(RFC)m 11(speci\014es)m 11(an)m 12(IAB)m 11(standards)m 11(track)m 11(protocol)m 11(for)m 11(the)m 12(Internet)m 11(community)m -2 r 44 c 10(and)m 11(requests)m 12(discussion)m 11(and)m 11(sugges-)m 0 868 p (tions)s 11(for)m 11(improvements.)m 15(Please)m 11(refer)m 10(to)m 11(the)m 11(current)m 11(edition)m 11(of)m 11(the)m 10(\\IAB)m 11(Of)m (\014cial)s 10(Protocol)m 11(Standards")m 11(for)m 11(the)m 11(standard-)m 0 918 p (ization)s 10(state)m 11(and)m 10(status)m 11(of)m 10(this)m 10(protocol.)m 14(Distribution)m 11(of)m 10(this)m 11(memo)m 10(is)m 10(unlimited.)m t-bol.420 @sf 0 1075 p (Abstract)s t-rom.300 @sf 0 1185 p (This)s 13(memo)m 13(documents)m 12(version)m 13 r 50 c 13(of)m 13(the)m 12(OSPF)m 13(protocol.)m 21(OSPF)m 13(is)m 13 r 97 c 12(link-state)m 13(based)m 13(routing)m 13(protocol.)m 21(It)m 13(is)m 12(designed)m 0 1235 p (to)s 12(be)m 11(run)m 12(internal)m 11(to)m 12 r 97 c 11(single)m 12(Autonomous)m 11(System.)m 17(Each)m 12(OSPF)m 11(router)m 12(maintains)m 11(an)m 12(identical)m 11(database)m 12(describing)m 11(the)m 0 1285 p (Autonomous)s 10(System')m -1 r 115 c 9(topology)m -2 r 46 c 13(From)m 10(this)m 10(database,)m 10 r 97 c 10(routing)m 9(table)m 10(is)m 10(calculated)m 10(by)m 10(constructing)m 10 r 97 c 10(shortest-path)m 10(tree.)m 0 1352 p (OSPF)s 12(recalculates)m 11(routes)m 12(quickly)m 11(in)m 12(the)m 11(face)m 12(of)m 11(topological)m 12(changes,)m 12(utilizing)m 11 r 97 c 12(minimum)m 11(of)m 12(routing)m 11(protocol)m 12(traf)m (\014c.)s 0 1401 p (OSPF)s 9(provides)m 8(support)m 9(for)m 8(equal-cost)m 9(multipath.)m 13(Separate)m 9(routes)m 8(can)m 9(be)m 8(calculated)m 9(for)m 8(each)m 9(IP)m 8(type)m 9(of)m 9(service.)m 13(An)m 8(area)m 0 1451 p (routing)s 12(capability)m 13(is)m 12(provided,)m 13(enabling)m 12(an)m 12(additional)m 12(level)m 13(of)m 12(routing)m 12(protection)m 12(and)m 13 r 97 c 12(reduction)m 12(in)m 12(routing)m 13(protocol)m 0 1501 p (traf)s (\014c.)s 13(In)m 11(addition,)m 10(all)m 10(OSPF)m 11(routing)m 10(protocol)m 11(exchanges)m 10(are)m 10(authenticated.)m 0 1568 p 86 c -4(ersion)m 8 r 49 c 8(of)m 8(the)m 8(OSPF)m 8(protocol)m 9(was)m 8(documented)m 8(in)m 8(RFC)m 9 r 49 c -1(131.)m 12(The)m 8(dif)m (ferences)s 8(between)m 8(the)m 8(two)m 8(versions)m 9(are)m 8(explained)m 0 1618 p (in)s 10(Appendix)m 11(F.)m 0 1685 p (Please)s 10(send)m 11(comments)m 10(to)m 11(ospf@trantor)m -2(.umd.edu.)m t-bol.420 @sf 0 1842 p (Contents)s t-bol.300 @sf 0 1952 p 49 c 42(Intr)m (oduction)s 1639 r 49 c t-rom.300 @sf 62 2020 p (1.1)s 44(Protocol)m 11(overview)m cmmi10.300 @sf 29 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 67 r 49 c 62 2087 p (1.2)s 44(De\014nitions)m 11(of)m 10(commonly)m 10(used)m 11(terms)m cmmi10.300 @sf 18 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 67 r 50 c 62 2154 p (1.3)s 44(Brief)m 11(history)m 10(of)m 10(SPF-based)m 11(routing)m 10(technology)m cmmi10.300 @sf 17 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 67 r 51 c 62 2221 p (1.4)s 44(Or)m (ganization)s 10(of)m 10(this)m 11(document)m cmmi10.300 @sf 23 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 67 r 51 c t-bol.300 @sf 0 2330 p 50 c 42(The)m 10 r 84 c -3(opological)m 10(Database)m 1407 r 51 c t-rom.300 @sf 62 2397 p (2.1)s 44(The)m 11(shortest-path)m 10(tree)m cmmi10.300 @sf 38 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 67 r 54 c 62 2464 p (2.2)s 44(Use)m 11(of)m 10(external)m 10(routing)m 11(information)m cmmi10.300 @sf 34 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c t-rom.300 @sf 67 r 54 c 62 2531 p (2.3)s 44(Equal-cost)m 11(multipath)m cmmi10.300 @sf 20 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c t-rom.300 @sf 48 r 49 c -1 r 49 c 62 2599 p (2.4)s 44 r 84 c (OS-based)s 10(routing)m cmmi10.300 @sf 19 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c 21 r 58 c 21 r 58 c 21 r 58 c 20 r 58 c t-rom.300 @sf 48 r 49 c 49 c @eop @end