ࡱ> EBCDn^qsbpuQ+v#LPNG  IHDR_q{@ sRGB pHYs+]IDATx^Mz6I(  y&'29kH,^A ـd}*Ev7d~ɪ*f?_$  H@ r~j|r~-7Wg-w`Fz%#,Rz6jUX_ pQ[2p˭]tw/?  H@/pB$ v?sѣG|Ms?n. E﮹؍5Un%#xoH/wx 8D{KMZ3pK&aMX~M.;UG$  H@;$Pt=-e H@@C-" H@h H@@Gםz#- H@> L7's- H@p:  H@!รB$-ӓqw!RH@$ h$  t׻ө$  H@;$`qn%  H *" H@p:  H@pr+$  H% V̿Xb{V"$ NϪZ)$  H`,Ykĭb3:F) H@{VQB$:IS[$ 6\H@Xϟ?/yI#۷o`/?~]M,,~G1Hp $ v/_|jeCS});<|xF,(~tI@n'SjE&-F!biD2G>$  H@HWg-L4׹J% &_ءʼn^!GЏ$  HFi }!!Q٪rT'FfqҎ1MpTk >?=z$ HI'L._͛7<\A2cQL}qۉDw ]'jDf%Uy| WrqHӔX#İ1;7"%lM笮S L$ E`B `/\]Z8#9@3X\Zg4Ԛ$  |!1́Ҕ5 ף_d(3-.F/E5zֶpolV|uf{NHH壋yg02#ɬW$UpXd%Y?{w;n􌯦9|bue턤ٔAhJ(} H@*(&) H@Pgmd$Lt2Zqd$  H`V#ӂpRgEod$2$0-*S' H@ H@@K@uNH@TG$  HCrr$Cܴh$  vH@8dk\Pޗ$  l![4l9M$py_G`;XeQQ3YN_Yc H@8JEZqV3$  Hjl>Ρ87Ps\΀$wRfS. p(s]n^zҞ:WKɓfg?x܍$  lڎ|4(\dq~%>{-|y)r}ϟU#۫HF3=)ðH #EG`ٳ*ʗJ]4߾}BYU s$ H`o8C? D^et 7 H@X8ԑ<.m+^"I@5t-n){c-" H@ pC@q|WhJk$ guhӃ#K825iv5? H@X qhA1a6WC̦|COCa}Gٌ&ݏjqz RZN\3F $J`L`v\pY4 H@'XEx$  H`Wp H@:S$ ;n̈́$  J@u$  H`@)X[u\g1j H@۟UQjL6A@uD1 H@Sc$ `b4$0*{VGũ1 H@#gh0ӧO{g81Y%1NdvN2% H dQ8Nd"id2.O>qHΜ"Su Gp95N@9E [SG$o?G=N!y ;S7S9(QN>Xf7ٌH@$p8XkG"XgL3۷kϠ闀$ y5.{luSL+I#&O_ˠ.Ͽ8A۷|MIJNvWF[hbZߵ|RK\NfA;􃞺)\9VʹG}UÇ4.urJ*vBNZMg#.\8.gu`xI@;IM\ͿSRZvN`SsV% l 0<|6HLcckv$ NY@vRs;D-H@lp%9fG6u.! ֏$  O`w=#6F H@XquEf%  H`|`9.#֢$  J?\6\SWW&X&':N$  H`ue;Y]` H@mljjVVL@u\qt H@8XJ@Z9(tk*<* H@$r8gJ@ <ӐiTNtQ9ߑ(;+xŀMʉ͞8%fmK`J{u#`< j,7 H`qY]\ H@;E`$  H`qY]\M$  Ht Vh$  TG$  H舛h9%  H@#K $  KqqyjM6Hq Y$ K 4ڳz)@K@ v~C H@x)1K@ p?k%  H@̱݀EW`8W3$G`u,H, LD,~ljkV!q,,Ծ,񩽓.6MGo߾7|ْ}spˏ%UWK#`m3"Uh059R'L!אy$)4M6Io\k{VwRbzNrl3p=;2$;销$ Pw^̾$  F￧B$Ush$  ̉c֬x$  H@gbqYP$  HU$  Hӳ* H@8i1=gh$  |`TG$  HU$  HCMt@ǹx_$88 $ ;pNVL@u\p4 H@}{qs7 H@X0ԑ9p֡:.L$  ܏ޏ1K@R xFRKtI@8x?, H@K%:.dL$  ܏x?Ƽ]ɓorcx{㦦SsAUՕ ^3NaF}mǸ ,p1aݻw@g A$:nXԝ HcE4F#ȗΦvz5믿CͣE ȃ8ݫW 5NuLo@lR}ζex2㔌bAn )$جs 1^/CI`Yd%HOf;WƧO1_8m<DLY~#!".~7u54-b1Q#PU3!Zqܛ7oҩׯ_3IO/-{#if0&.seđhjL13- l긡4+ @mCjB2#xhUQ\9ՉKvQYx$KbGhH4%I!ΎTPBЂ1Y+%IN=& oSԎdXݞn҄eJL6њD)\)g- xԄ;qSwww497I{]t?C?,벿PޕK~u8%g eaKP&QiˇxP2Ȍ2huW(mYo9ZtץEg!]xp b:'~89'vZێ)c^愣f$Xo @ f@qdjvC t~+lb>C?\jr1>b **F 5MJExM,L夤g?=P0VU_)ݒǥȚrd Ne (2''%fosLo=oNO"*K98$mu/|,Ajk8WmS%k͓c@y{LqC`ǜ./V?Աy/J3\)ZRLX{]GI4CJV#-óMRc>L\h QLӦFx𸕎d6p|_=͌4Sw< Rk1~l)㋥ۓ>ni:: 7۵o3lKC&kŲq/m_rSUqD0[Z۱Gt"$eX o;^Rs5n$r{o2/5@ ^ٽ>*Jv.%E *7ud^\y_d vz+|Lf97aU'JDfVs̯'bJ*׏M?qn녷UgDDSv+KO峈1𴕄%H-%Uv9Keۿ%{}TM]D`-m_dzFJw]e8ۍTfu2HJIO8e^O68Iˬ?_~TFKNa#QvO;LLI>V|6SfHLxyV˿'LS;+wXUDZHZԱQdwb|V+yo<7YE'K` 3cYeNYn7\񟯳.߉n*VϺv:m%u2Mf~!Q!Ǵv͜2fx_ ˤQjYi#Y2ԴmOQe!cفĮ6:6ReW9m+.RT\–y=X;-.޾is.e^O͖ofxT4O&~$@`XwvՑ{ ϼC2C~#jidĉb|/x{뵸&J[cvi̷ Zwy&Gp3D58cި![F'wDikzҽw'2Q|SEL}<\d :AZYX[bzmCVeNI) ,@ykGzJy'vWׅVf&۴~{+g   YZ4TؼX`buZH>>Je#簁6C:NW +PӸA> em$1%RjK@Q4s5JDd(\E-?l2OSu\~B J5rA@pM)}e, %e1e02a|9_zj Iy?K6#2`3nh-Loɸq ِwY8$aY;&2=ȫ;kne.Uw'.ssێwR1j H(ۑWSl31S3?뽍^pwK /.F)v6% 1 D#O32mIwAX:lK/dQ&ŗ娙muo>__w/bc@fTv9>,`8{_K&@=5a/4ntsz|3C%plg!b k~Hvչ?OIG$P!) S"P[K͹sVZ2K .חKq}ef% 6qPZKK'༛*LCqgov% QG73+>G4.Z! H`4&)Qc $[heslL$  ',g&a;;)햵pvz\sNِz$ @v0a ,H@&@G+sa#5u˕-Wt|bŋMǏ56e4"uEZFTe6A lc]rt!Z\4.P+g6YLW_ Ϟ=S.a]~[޽V7& >,m [f۞xo`"}5<ʏ=Bb͛7xzݮ[F1+܍nE-ll! H@]hRi;ҷ!iBwLoىW7=AM@iE&"ѹαfEظck]JPv/M%  sXʷ^Hm YDu,GӰk2w{|ce#cYޏq?emN% Ot&; 8&;1;!)>NV.hc?Tq7\ViAf8BeA3hj6g~tAKev'g| o qWof% K\c /\f>~4%IK/x#cb>=܊p$```/sVIFvJց ڐ kYE$3h;!0B\~6;z i_GWvfp}VId% ut 4=h6ax=) H`;˸#Sg\^~;gO H@!YZt2!(d8W{'Tuw $ |dIdVix.=K@6 d~o9/Luf1+ H@x =J@6 5@vf͕$  HBl S/Dw H@,{V7[fL&:^΀$t.F)Zs" H@W`#!V x5IJ@f -Z3& H@W8dk۷_mŀ$ -4/$0qZ$ -PTE$"8  & H@[":oߪ[*Y" H@8J I@f~ñ}freF$  H@x =J@6 ,Ws% H@PogX H@w!HA H@'XSS$Ml 6h$  H@8dkx!:K@f 8+gEk$  Hj ( H@!@*[޿OT9$ p4Ƿ;&⨎Wc4$  lm-y$ ~}7י0$  H`cѣH:?yy,ŋܺ.!  8㠓س2sǺ1b[>nYsd~8~wq:E% I@uA M7 Dg=okS'w3:.LR?oyZKI鐀F%:aWGEMalϟOd.YF(?~̐e(k۷o1X+ga@ۤD&g}Y$#&bch|lu|m&UNjpmDY8;~> j-MwzOfXcq,e1g=&4kyPM0m;^ZR?c~ӏ-8;笇9NS8m:RZP"Ms}LqIv踝F tz?խx~BdZ:WӍnwk:%g?e9zf qեi'!>W/#tf-Z 1fuɘh=4*) S: C%7zꙫSc•1E7IIW%LrKjDpb@ H@;seKj^$  HBϰ$M6\I@ECe*.&ӳ$  lꘕKFXuf1+ H@x =J@6 ^sK^ڵMJJRKtI@co$TRKtMIaSƦm H`^d`\6JTWPf&qD"hsDI@옏~c/ŽFT_~eOK7y [bRŭy4Am, q'lW+xl$0#Ht믧*sb맟~" m FީƬGNh/_FHw}?| : ^VOOV(:NwH4cu;ێlY>V"cU^X6pSWFY+D$^!yT$` ǤF@%/-}7\uW0j ,K LIS&1W04+3S,P%F$bWƐI+ΨI~UG+$  HCŽ)| `t7.ΪhVdm,϶=@7SsA oAԕeŻYƵ4϶=·i^N.R-݅|9>uJTB鑀$ pVrƔI@RT+c9x'x% pّ$ x5! H@&pI@$pϟ?C$ rV%' H@8)^K@::TJ@$  l)_Fhs F.QV$ Abjχ޽{2ӧ15?iC(__: V/ \I@omG8]^z "<XuV,A#͌ebotbfd4Db Z󻴃}0$  Hq3u5~!IO U"?eiAj,=nnbA-#W\sQiY6qPآTլ@i2ÇKpA;i\"ņ 4H@!:)՞hB< F19!?s )˩Dh]d#m V?$BNov,ӑOg,UgF' H`T3DSYw]cZyμ2@͎"f"I@8dkEOb)~"iqգ6832 V17<ĞY6^{V&ӹJ,M^㕀$Ll L}Srd:hLJ#\4yOH]v@#kO$ MF󔑱H@"`B ,CSWsuL͕𴇬e,iEṃ{ݲt5@[.] "l7 HZ{ܚдK@#H[cZu*e+vL$0?q~1GMM$ . H@; V;(d( H@gB`z$ PwPfQHBUs/ H@; :.e;(s( H@P/w H@C;ԃvPfQxS9~O\%:Sk$R,]ӟ$ e`ieMqe$  H`G{UC֐[, fr>}!F~d1M84 K-a?~ŋϟ?n/K؜ ΩUwW♰%8,EVKp[u9C4(0t+xEE~gϞ}<(zl_zvB Nr?\!xI<`KjQF QF"&}s,lD.]M^P$i».tŢ=E}s,Towef3$  2uQu;BLIî񄇁dkYs7Q'Zѐ$ P),_MeTsZXqL:-=NGY-J3D]QG\#xirN+Iv "}DZڈY4Lz)37" l͔|Ln͔,'=ɟY {F) H`IyⲐ@wd2OdW͗Gf렯:k-ɢ"' hqGMgFә%WjU& x@/d2) H@'`">'Xx2%Yc5a-$Շ 2a5:oN!pL$ 9xFG&fȓErB`2$  ܅=w>S͐'3n)}F# H`eܖZFK&`qn' H@':.L$  M@uI@ 0qMu\`$ H@杪`|$|e=EifneO&y%ukT|e} k{x {KxuePSWul@Gv+T<"ރ5̀WDJBNE`JUh4Re/pMI@F)H! H@#X:7ԎKӵF|5% t |@\ǬI-N H@<Ty8$  ![2o^' H@![8J^$  8h$  pj! H@}V$ gtX'$  H@gسj$  eC7vH@B5A$i;D$ mG$  H+93{V$ ӁUG$  HZ-$  H@-NH@:( H@YJH@l;Z$  H@_~w~-7m;ZG$  H@$ s_} H@.5NuEI H@@q" H@;#:ͮ$  Vq| UG$  H+6wPh$  h$  NA ^|eQhs&,IJg.1Iz}3kxϟ[Nxs"8M Z)=G)e{ul,$0cn2$ {gFSݘD!U\z'}i2R~nLySO>/K^ =~I@ZuB$Q ?W$ 2$0q&F# H@+":L$  LE]ȧ"] H@X/{`BKII`,Y$0:{O}qt$  3T5i$ )̱*/nG 'm f/yE} P HΖ;xSMF޽{?^Jbp:6S9ETGˤF\< U7ѩwnPG8Hk)$堑W@@%"3ťr4v[vuF/\̣& %aOU`TGkf8g59FDҽY4iRGZZG!<"3.{`1?/Y:+[25Êqa&r%vPM?0Ǫ H@*+xm ͔>ϴGu~ ULIJ:w\/?FD-5sQX 썀y# W՜YNp#kr92#mKVb&ufgWu'pvg&/9#Aɤ5}+K i5-Y9T1Kn$=jIGkNK|cisqc|QSq uæ\tH&.^fq㳈_W}+LxT$o,^{ŬLM h$=0$ޫwϪ]w?"kMG%~2h=EH,COyQov?),BL=1)O8KF!8Is@,tҔJԄfS嗲n]n[5bkB'띛-W5fQ/6k̋i9{Vw^̾$  P$ h$  ҏpYV:Z'$  H@$ sL-s/ H@{!p`8q/en>%  H$  쏀긿27$!}|pIuH@v(x:! H@h H@@G5{6$  #P6)5:9pZv\KIN ,H":_VnM+ss,1 u@KxFMz֛@@u\B) Uk1j@Uǝٕx6m8|і2M"OeX#op߿W]LO`Hцq"/^`}=5|u{Բ$0 0s[1[wNEN7m8^sKW-n* ܇ b4R^zd,ePɓ'aBF(Qr s,Թ.4;av_ omQ]`+5|z%#֥nFz%#,NdybwZc"߼yR.$w]DW.5xCtNȐ+Uq (I@<Ίn/XX.!Y佷od7H- P*]R{ȲyEY8_]N^NZY]ux H@a]/TGk$  H෱?hpO:Z'$  H@#pT Kͧn ppzjO$ڄJ~1K@B 8Ђ1Yn'i&vk:ͬ$/fS/-xRb$ `eW)qel$%V)e |$ Tdz -`2o 11ۉ k^G K@Y%  ܏+گf:^΀NЮ.!jt$ `]"VSD'L$px$c LL]'y H@X!OZad @v׵pdD2ɥw7ygz$hf\KIu% ktrh _WM@t 9Qrӛ$  lw[q%m$PX.伏 ߓ'O~P?75>ˑC |1ӧ1B@DM%kg%FKuԘ*k!`q-%e:%p%`+|ͧO~Gsw ѣrJcիWMJ ^M@dDFgot 4Rc93JMI> oލ)\ |^fCI`E>CH4#[?Cڅi2ҍ˭xD{Y*hX,wS2dgMl} Nfvf|gNZWXb9Vץ?G7WXo^,E|^apAl;/%5ln!HZ{y5ŭHkoMDXM ?]'L^d,ôu'4R5GQͣM=rV!ϥ6 ע ; :/-c-X WwF>qT^Dpt}RhOUHN-}/ݙrȔҞ+lb!݀טWXeMtG?Mo/h1MIoO<ƔCX-F:KTn73sk[Ji><<#a09_ؗ\uLMv]1cdyՕj-|֪jF&`!m:1i?!'>g=-NpϪpV@eYv2gJj[9G~&{\z ͔^2#K.?JV{Qd3Sབ?wH;4ʖ2t:m9' w7C74G~{c3@ywl wB)ۦœπe6ItPY7ƥ:mM9'pNLgs|<66MwwZ%l3QG\yOu?:"78o4ez+qi CPZYC-3VY/NH_ڀIaydGֲ d`<)².|gz[݆BüԍcH!d?94KeOĞUf] 4 H@S8};EnIw/,1: !QOҗBpDX_ -YB{RLs$%HxκC&SYi2p< J \=gxwc>}tKԩr2l q٢lqǣ.mL5h9{FS$0]:}F>cCdb% Q6'ͶRp+Hg;᢮l $`$p"\z>Ev#ԑ/;&è%:tJ@n'`vZ Wxc)uw߶]] ( H`RFg@ H 80%lظlO:.PL$  ܙc2΅a|-ٞq΅FǼnQvK[H;@'K / LiDb)7^+lz\Gÿozz @Qn#qLMq9Z`tknWr[q =.-s'LpX;g"1^apRzlxp,Ol_fy`a<[9`JUyWO)ǽmJE9a0POٛ=q(ۦ,Crz0@u5xyqs2ṕSDrz\F/s}:^P֘ @܅U[?D\Ac?aR &L>I@.ry?v-9L[w\O(U-3{Gns֋猑4*YARY/OzhʗC`F?3r=g~_:k|9˩OD6lc;h ;dzaYտ.m]sq S6;Nlg5k9XIG% 3uzuƇY/u.}Yjj6o'2mִ (Km*L]9ֺg|=]_9;k^m;g ^cv8fN3ܳGfO l@#U[; QA d r$6i,qY9MtEX$:6(eq -~90fڪN@:Tl;ΐqh'6v^ڒwbmێ! YwP! Hb|m@LԬa@$;ԑ8\6T%B0k#ppvmEfz%p %`uM~ # AGy H@B سЂ1Yn'i&8g] Su%  @TKLu%  H`؅Wpٕd͑Ic()%cn PsGW-+-Ȧ 3zS:ְ[xh`z[2ҍxDoM>GGj+ z{ a{[nDkxII7#{__d-80#/5D^9n#LI@-ނϰ$IΘSޭ}w[f\h9֠$  3e긾"4$0:xqt$ PW_f@F'p#Ӡ$  H`l;L$  J@uI@*(&) H@`x%ׯ_8-nK@*{긊"3$07ێs7> H@X>C9c_ZP!`q" H@k":L$  C`=zu?): H@#ljVu.ņYYDz."`E, H@ Gw2V8EYbSf!3K" H`,G>~ v$  H`Y]ux H@8 VJ@0a5L'㺊J@$8t ֨$  mǵ闀$ .6բ$  ! p읳,j H@Y$  H`T Y$ [ [\zR38.&$ y vI@<0[5-Ĝ5i$ 䈍@VG $ #6 H@XquEf%  H`|B>>S-J@ xKK@gurF  H@#+2, H@pV䈍@VG@u\]` H@O$  H`ul;L$  LN@uH@5onK[2ҍwxFzǮHoKd`@ քhw-Y;*`Ϫ $ h$  ?r5P-a0IENDB`n G_Scz1PNG  IHDR6yYsRGB IDATx^]m(|W vԓN܄Ȣ$dvyA*?"@"🬂Q."@"@@jHpDC)J  ESR>@R#@6#(}FMm GHQH)<"R4y( ED 5_|;}(uKL:1`"0Fшs!U*g忻UF9 5TGƻ'mQEqx p*DP LɣVbJ~ 7mBD`&3IsZ%rL9[Fw)G*$L: Fk rH]ß(ez,)~&h9bu㬀)ʎb~FqݻYM 34TBe靈RΥbRAcDڴM^֢K:>SWT&'Eg!u) AD`Eg!uODᇥ'N(: yK HQ&)[WKDw\b=Tѝ"\ubLu#DNJ#H s TI B@w. :RCΐUǎ.c_Y@RdۛVC+QpKc&"0czƌJ@趺ZhR C+ {$E `M|c_OUV9;QGdTt$j]H)'ŝ/D=w%+8KgB4w$ͤk03]o)X*;|KExLBwŽx̹"0 (j+n (2,CP{݈j]R1Yc]  D}棜)+6pgL<ȩ@8+[S]x(eK E#PDS)É]?vv(dV7珶R! d >9 8 [%?Ϫp9 T7tNa#M$JRy m)Z埢+XCoNm5:&tu?h5*f[Q5=?V ΃\"uʝ㭔_uhUЍ57cH)#\H)cR!`>K<iD +pK!9I{LIE"E xԫ3)M ^0muUFlPHӨr|gpj\7g9լsEy>zi:ZED'E;Hs*F*+f"KD(:7"Xb0*^3QnT8b8&FihQ<9|ə=\} xˎn8G`E^Rn]gǫ&`ꜪzHВCDRCRPǻ<ʋ%pSſv[Y BI|ɖ<|C6̢d]+ EQ%+&Ƹ{ásMn%:r}#}H yT>נhg)86]1E8A\b)nl:a>I1&݅/`.E3~L+5m?޹JQaqFjfF9 ?p̶R7#+4=h }]#+۲1z+qK8sI(i.4r3{(6= X8f;ok(3LΙ_ > -O*=H'0Xq*4sG)l"EVלy H,ѝnP @4/):ҳzno-`<$ۏ$ j 2 #%I)b7]𞛒ef;o"ͤ WP bH YitRPYϏ5T)>drrZ^&<^ZTRaT9Z{)j=;[ɣWL<;ee |]\esVʦQ=HҡȖ6T FVۺugGw#}H 5w/GE22WEIwW>Ot+*Usy 7NQd$2ƪ# .جUvTOmVsL (Zw]{@8E:X=<{gj{C0A(**6n:VG. iUx\S–HsޖT(=m(q7GљZ~=M"-# bT@"<씳M0@ * ;ȕQPPN>) ,,FA>'K`Z ,bͥgE3d HJ|Dd;QNb`N: ^9ͫM.])?±2w0<- ? l葢)MPƒ̂ؼ,6 }j(;[_FыL/.¤m}s$urTjR^蕬APɠU /-곁%~ɵxvƳ!D#G XoJW*#,>7}ѝmbOTE N]H)ټa(:Ϟw]%kHq.Sj.xg]%IꈢwnS2TRɓNX'Evц };_3aD%ל8(Z1OƬ@'\JFH\7&֢NcD` cp*]wďUAvgeP EγUV:*R(F`e9x}9A-}~ٵI )z?_\Xq"k,x]c_.y+jnq9Fn07ΝVm痵GG.n)oV@g#ȩ^ %@xܡ]4tS<52 pP#PkvtM`'yj ul|E՘;yN1"p 7pűH"0&~%{?1.V]HQ+b?jmyNsf_T1&uX@*GlAmZ#IQ%Ɉ]VeίgG7OF` e@`fF4)(8D_ , NIENDB``![$0KVvyU(`xڕw$mX}uB*щ jB% wFuޣ$Q"EB!d>;7ܿ|s̜/(%LLCdi<%Du(KʥJBs1_F)ړ2/5HN &z݂_#MH%9 i:z^Jk9kvIRLpLs{㦨=a2ؓ9acf9`l1d^VDYbWf2Ŕq& 5}Ӄ;<̜G}3 o&ar+9O56 ML*eZSaS򚲔4&.}y[k_ 4G?DveGב Edϩ){_ 8o[y_8?⽾|Wyp]~1},uG*jT9(')"1kTrHh!EXTS=o@eXAqFjF} [)ߖvwY+}S?ߛRA(J J?L0iKkiVvа`/ S R\p*S 4ūAW!2%W ¹fPMYГùK0{_gy}N1r2"gm]D)mͷ[s6{!(fZ;p4Xn6hs6ݖJ>Ӆ,>O/B|_9 uBW|#8jJK4TDw'-DqIZN C~ AuBP+T5BQ-Cx -G~]B# Bp jB8oh(i:[ٯwPP#M{k/JJu P&:TȘPU66l&NIN&>)\GPҹNO+NU>oTմ~Z__U_R?%9;&5YLC7Si$$ZK8K&ԑt̨%P[r-)X)ZH4h(-KD1Yd>HgЇ/|wpaa89)(x_srokt'h"[n3)ԗv6x̋|?{z/G?oiOG~ț}7[߈o}4S/tWTTQi< cR.Ύl\ D`O&?@713Vu᫸Η<2YoPNN.F[9:;Z>Pgr3KZ!|J5Ϗ#LhFsE2.e6pyf6Ś$p#ӕ8a)%M!orSx"qCv[5&J#h 2/0i{$}1WcLN 'e+:y &SԔ:weW3\Z*{ I6om~FrmX3=D []һxtB"RJ wAVQfKe)RHe4ep < d9xI!qJb $K3|\6hd Ec;qv Ofᦶ 7Je2W٤Ѻ oor{nlt˫̶em'm7G;N2Α+lWJ^Vdju%% x|e,%edگfԳRZTKla6Io#~SԔ1Qf0m$̦2UK)y %\% WS=i$%65i$L76 4Y*iJ:LNMe뤎nJe]{BEΖ vld({tOrA[Q٢J%;m|vk[ޫvf]>vأna-6Rhcڣ.3Za2KKlZl#h}Zoyk=>כ5>ʬI_N7]_~~B8'-<\JV%=0/i)r/>9᧘UkCC?hBB4Jmc8;&Dh/d LnLṯ񥽅6-ϳ%yv/3D;徒BlJA2jӕK^Kz6i&N^P+P>be.וA\K.C8L>?9p˟BϹ=<_IzMo0Wby2]*>Ok96, ]hޝ;:R[E{8idr!GJ+'SW$HeesWה^%x6T K{\pUG/uxq4zhʩ6Bm8ԉ'ROݸ-ԛ\[OsZԝS*a6 uem-Vpy e槻|JiN\vsYˀ{. O݋AX(srPDp Hr)o+)ƀt͡L͠n:mUVk~ES\@zumn?5r';]N[&-Pۭwh[I5=Vӏn-c$H07([p^ NQ\!7/>e;qεݠ5*-ri;Kiw&iLs~uLܯߴCm>sQ418OU &:~Kܟ6]٩2Uy8#:YZۣclt)ԥl\Z[״~wqK.ڶis5xmԽF.#^(. "GNWY]%dR;zKj[/xͷҲ溪D%]Tt6oT[_jr7 Qkn1jӴ|!V5jvcۋVcHt_rNFDpIy3R-GIsWz;kC-m\ͨSܘ^WJ+Q܄hyA/[R[hyK*3ZǨ^ P/O@h 4h*hy8 *=j-Fh%Ȭi C75ñ`=v&؈fL x/؎Vo{EELQ~T`9 )Ńe(,E`_k6Xy`9 8L  P3A]T @堺R U2D^P hG [ʎ/LH l ߢt'~/-C=lH<42cB_]/:鎷nCКf2B#h>պQћL12a.=ֱJZKtԉQU:FYw4ߥ*Ciq7ȈA8fAeuHaPAMKmt}Ci%3z ӻCYh ]M|Hו%3=נL(/W\pes\|+5}kγHݨ29tO>rz^h6\N>$^VXbd;X*ec.ڇ=Kٚ.ڄ[h +I= yeHGTU7>⺞_`9EL ǘM1n+ה;_ >( Z.nHM"R- jw>XpCFfTTRo# Q_";O J_)ќC]vSz1Ї@(5z_}]}vϻBk@%}xQзR%SwDRw@.2}B9CTS߿/yվNb4b,a<>-o~}q{+ݒjyGh㚒4P3Yz@M>Jy^Oϑ@>:W7wWwG}*y HfFA |L|oQodj!O]4 ɿd(`![ԧOR#2ow0 xڭklUܙ}tfg:;ݶWk+(R4V)AE!#MCA4J@F(! 4FAP#$J"*_A;S>3{~;wΜs9F^D*^Bsָ&D8_6s7\uf#M'n-F&ר)1jgg':u&;7?j̫YW&>˺(z4{8=u5Tf=Fip1QRa!nG i!ndYwJ`ڞ,1-^-o5\ubޑvEY4|-;jXLIDf"-(=%Rꐡ8Ȥ:D<CvڠFyn/"NmL]^ IiwWH]&.wqB6a 8v  m9UZ>C6ʘJFWsF𡓗lejІl@efԝȇӑ(QƧe voɲ7BGo |-RˋLZ59b]2^]Ug Kk2 Z3YaL\v͠W=8]} ǸXaH+ڏE/gD8U?Jү֏DV0k4"W>f5?RcϞޙDŽ*}CfYui*ˊ}Cf= }dmUz$3߇=*S[eI'ok;,V3V(c,;UsOs %K=) Qׄ*b8g o#k*7[f$X/zOzӬe5)+YM~߬w;2qSzw2$ػ;__e ;BC'#}RCn mv؅yPNG  IHDR6yYsRGB IDATx^k(J?jڙ.EHӃA|($@Y |͖_d}}}p͞j^EuѺT'!$v  @(?I;`Z 2Oz "WU nɛ;ˬ$"Qfa sKTg @(Dw 1](l,^Xѥ/@jQkVpivaXlHᲁj4-ԫHLֲ %* wS&U5z 0KԭL\0]]\_Vf#$DG:Jso[%w#V]!cv5{qAxL9ʢK4c:{ [uhDfi?.i4^o^yi$zGҘ?~?+4:gYP.2M r?YQ4|9&7J_Uh#k\JT!Ք.qz__ σħ F^Kx΢D?0*U[Q}lL罴YM%GQQt1b_aFQ8NBRF:fuO!l!>WuJ_tᔍ9-~9i퐬2ϕ߯j:tSA)}u!mDuj?#&AE٣Fd3ϗ.vn([XV9_*}Z{|f~`c㎥d-LzƮ]Qu] a[$]j= %P~H9abYk YA$`Ϸ&cg4dgQ8g^(94-̽n=#Gc dzjNtqύF!by^7 gtLoAmVա ^U֙nJs%dS@P+4J4 GZHjHGuDH~ WGr|v_V?L=GU6#8p$C*SE "SWB)]^6&C6ѳkE΢)3boS=( |?}fa5#skDh#UxAIҐ6oE ߧt|sW`jtyfXjÎB\ "m/PF=}5򉭢oiVn P膌;@0P옗X.u0wzJt|ٞEAli>ա;5($\䝆u; Ӷ][V_܌W OWQdDQ}PS]z1BF㶏A d:AQ1Z`H'Zgܦx?j;|z!f,ztJ7rUZ4[#S~7&VҎΥ⊼*??u Iܤ'HT{QnD"[-b(f/yˑW"dF@ETw8} DфGh~EX !=)N6</R.ZAhprYbn*|'*H[n T$~WS{ _vCTHb&bxAJ[5g8MJjJ{V$ÆhV\2%%ME=` j\G'`G46*KԊ]+1'QϟY)`7,!/f]Oqr%Ex-OD[:1CdotYi?su{f҆c;Ġ-Ⱥ]PYAn~)2WNqǃxr8 Q@\'6$~Dg!xYA,"| Ͻa3 Tu/H_u% 9jP^=7V3Gڱ=_pO8ɳ' h="i$ 9&GVv+= [UC["ը\X8#$'R (߈Va &Ƣ;iHTQ8YA[r  /叫\·&םWGbƆ|΂_0Ҩ wky@MzK_2r!4F=kW{Eێ}/dEkϙ/A`D{X(ެ۰Zi1z@ c2RoN]h%m\\P7'*W|a΁6qgk9"]ՂU&ilC`DHbݫ7iOuxVqL\}9c˭ns5>pq K'H 5iQԝ^J_Ъᇝr2lsE Dw[X$xUVjR,ѝRxYU+k){K,qu%j͊ \A-vxbY[G,h #E֣i [}$Gi*x Vt;%jZ'}ҿ?{M@KxhCl>$} ƍlE{B, QD~U; NH H`6@$*U$B~H`$l}a?`dM"M72KdlD!+*O&}<3MBQ4B  P HM DYM&4n\gQy>?SzZ04Z&[3 C},gO@(z"-Рd7N \/<?*/ G/=MU>`M'! %Zg&o7 .BhZT\j9h bH\=!VW~S{qLy*ITپBL=>@Kܷ8Y t%nWZ 8h됼H'(bK@CNY% L @N!I'@ؒ&D'@$DqVlIPsH P8+$ ( 9$ (Q[p(Ί-I`JttI8JgŖ$0%::$9uģIENDB`zaxQFoJl/I( ""`!#Z@p  ,;4xmXgE}"a%Is,sdQ$ "Q$,dA$gP$ ( 9DgwS=5=3]{EsÏ.$>ɒE[1j I3LkLz01QKq>,\,9,dPvpZ (iP0~vs7H)-Ԇ9R.Kq(`@Q{[&bE!o /  w@&-H4ś" 0pO#io0HW3"pB{9}"װeDv$UB9R|!KZ'  kub ﯓ%K;-ϱ| +> ipHz~+?Tᩑ<+O|#tHH)/e"%W=9?So3QM*$M/Zr7VB[UoJMs@6\8ݥK]4^4>Ѵ={H]頿D XG~++z:@E6GHZ{=*DYv׵žoY9?Ip`U=IMj_5Rvyğ+!蔯O|s`#}olW(,'cFm^xʎ!;;~o7f4dIqV޷*PkL*b+)Df>42U -ƛ4 כ@wt> kD,?Ug~. iSSl Smɚ@yk)mv.,ai:b`.zcƗbҝ*K=R2!p,ƙ2I?\#p 2ܔ:꫐C@a]jˡ\rmnHCG p mWA>r R:Uovx|{n=3,t0sd. c8Л{@' x"_l>ɿCz RfM<QBp5xZ_NO'p$ԌQULKHۉ( [ VA Xo x> M Tby腉s6uZג&4}MzM-]Njse7T.$w$k$\'fk'\3^ý.lswp /4!af8ba i-k؉ =Qna*E*{'cB.y׉qQIEG%CR s.bG)$iOX/,{Q1?_F>M]-) xҍ?\WZraKEO&Iž-'5yJ {\r3đ!n'x YpYe)+ߗ8&)=졳A'y.itP8SKtQ.i\ VۚT^ru;%].wlgj~w`/}; "]OWv&ٷ,Abeq5m$~`!ǘ,a~-p+h'!P?Xpn NW0Yp8;4 {% }UV\h nrݍuv9l}y#[joPB 3Hc:҇mT%zuBVVn= ^SvjV%SmhcuM.ͶQ;BG,綼R@Z~ICV߰0񋬵-m1^':/~vS5~>3믽ֵLVZ屦ޒzJ~V7"])35^:l馗d>OtfUZP7kEݧu[0UlVZvB9=`5h)O;> ٬/dM|%+cձ",mMuĖzkmV֊ gqVYb5ճB6زٛژXvCf?kjۭևk )]?7@kQCkT&̟A4t\Obke>LFڟﲏ;}jLnEgz"iI{er uw^$*z"`U@΂|ﰌ\9S v_.q=Řa*]x=p(|[CNp ,F0L13>`KTYKn-Br Y | 5`Y8jW6|Z]hA'wzGˌ]itW xuL.8π1`!ݕ T<_5奒VF[ygBx&Pj#uc6@0ZѓGW'a]#Q\W04*Kj&nЙ4ZP]J t UխTJQ!H㆚{V+q}յ9վ_rgp?5Dέ)$YFH%ɧN aEt?$>ɵӁ^G=MMz-T[dn'KhV'loȦ0;6[_V j]ɮE"I3͟%ӼAq]m 7әco}6 OҊ)q}Hm25Aj4QӺPJ=2vSj9inG6OziaoH5k,,V[igelxm57־?pTNj#05˜^ Қ`NOS9|t M.F<=tϣyU`k`/*ȣ(C)M"$7JrߨMQqlTb=ڢ28O4qԇ^ؖnuƽ 'y__\*G8Ɲ8!sq_(n&ŸRor>s <_gy I\gr8 w^BI879.RGqd-]-5#yQFXe9f5dՖ5VWX}f e5TzYsig--M٦ļjX i-mѴ_Mgӥt--n{i'Ҍ$TCMPwYCqDhgmuEPd54\/"þV]av0$, {8[Wݿ7j>.4ůR w5n3HqY㔼22Kd8fL#m@$zKa<﹣< Eܶrr#?[f$Ţ~1oTAUi8,E=9jA64/y47Ss ݦ#G5 $jA9.@,mۑñqu-wQD "]n[q6 >a6a rm8(x=}x01 %:@dBoBiVԿch]A:/(tmE뢳VtŠG{͉ƚ54k(Bȥ%ۆPmpu.Tɡ&_:bKևFa](B Z8ڂABn=zVڂzi7Dt׿RKIMtO)N7y3TKoSM5F\W;pc}knC=u%bF"pU_wڑ m(UkR'kA餅Q,"ԁS.>GGg\Bʺ{Oq?yG.aY.M-Z=zQo{^4:I4dž|G-V` im:},}'lQ Jy<>axc?>p}Rghkŝu+&jzV$[NSlo tM6Mfch"l6gl7O<;Iw`|^vZ*0g6V;:ciQk+xd:@YNi/G Ty3U *}O2tU,ﱈ`ށ}'x3O^rzWZ"GGrIQDx4w8R89 g8\ : l𷶖w["'rZy+EJFA'y;tNg~Ywoo< @0]/` CE"Ya—e:x|(C0Sz=9FJ='Eʣ%$KT$9d7PD#e,gsOr>` y}m&}3l$OWMoXk~jVX^Wߥ3 S4h{ |Jm~zԌr[|?v ; EbӖ[ͭ 7^Fq綎UW[gd /$N}w+IOZ}L;o=$gr>Vn!VΎY9ȆAJQ%D\M( u8Z,< AWof|EՐFQzh{<4t˕rSY*J)Q+@}' ډ~vNQ~bk6z7ћ"'3i*<҂JK!zBچ>9/7he[&KvEg"5>TPQ G>@[{Wiߥ̜;hݤAk)R )Ԡ뺍dOX Bq=T'ӛpBE\FQoSߡoyAU|X޳i,ijvFa5 ~G-O`Jc.a* c akSN="+ڃu5 '_.[ X>'ٜ3{LN3 =<9|%~/ጝF]Ʒv οӗV#X-d-]q 6Mg !kCG>WS-}|-cOn0-|DLr&[ge(usV|Sd:X I·_k=9eKZPj>I(y"eWg;=mw{-;屰L-_C|TިSK;ӧ9Al+++feW2%nZkh~@mJ!tU{Y7VgM<^7ވVXCZlu=t2V}Vy銱ʔEXu wQOtsoh^Z=ź u2kxjIZ5iYUQk6DCmZ6V@i"GyDz }\ --<9LzQIB Z^ц4ZR9:d/gT]Hog4F0CCps5puOh1",F|mzQ<m 6r\r85G#c.Iq% Нv<mxkh k,|^<y.9uTm>ߟ1c "3gq%犓,}_oH`{rurNy̙+] x5ߔ[#>ct:‘(w6NȰ.av`[79&NO"~6MXcC<|rnv*b^9NQ =TY ,j>Mg4ʕ^Mf6* zs4z}u9 矴|:wNT]9H"?kmj_qKjwV>塖^vLg}@3ڋq4TLQxyrܵ?;dp u)Z;r:r,"g{-PX;3Or~e0ʈ!SQQ;[g#PHR_RG3 }ݎ̻eQ.@S1D e>8A_tsv艎VxٟE 4G5Cu8TBg'Q$#ƹ/Ir N/;MA>6wU^l+ј+^<\p[ ${ p5z PPiR7,.I)8$$VPrbd[I9w?/sY'6tީ-<6/%jUZciIxMAWmt.BEQr}}uxtzNj: /i^ѥ1RwM=1iF -Nk2m8 %];4ݾ?@h,S9dZ-&˴|Zio髯ʳ:Nv{RH] qg53Fo˟vOzSwxB^2۾,7J'>O3Yel\YeW]~N+3Q"Fn~ qdȔ[1QnQ,SE\2^>Q,B~p,q-mpSGJ\856{j 5x0*xK ?`!= W./ (C!@h $ xcdd`` @c112BYL%bpuEquation Equation.30,Microsoft Equation 3.0/ 0DVerdanaNew<5L20Wo 0 "DArialaNew<5L20Wo 0 " DTimes New Roman20Wo 00DWingdingsRoman20Wo 0 @DArial Blackman20Wo 0 "PDTahomalackman20Wo 0 "`DSymbollackman20Wo 0 pDSymbolPSckman20Wo 0DGeorgiackman20Wo 0 DCourier Newman20Wo 0 1 a.  @n?" dd@  @@`` p[#()    !    !"#  b$qsbpuQ+v#L^b$G_Scz1 ^2$[$0KVvyUl2$[ԧOR#b$ mv؅yDžr$xQFoJl/IiΓ2$Z@p+72$,7.dR(9:<b2$ W./ (C!EEc $0e0e     A@  Ao 8c8c     ?1 d0u0@Ty2 NP'p<'pA)BCD|E||S" 3@8Zʚ;w8ʚ;g4@d@d0ppp@  <4dddd. 0L<4BdBd. 0Lj<4!d!d. 0L0___PPT10 ___PPT9L0? ,O  =^;Fault-Tolerant Forwarding in the Face of Malicious Routers<<** ***Alper T. M1zrak, Keith Marzullo, Stefan Savage University of California, San Diego,S $, 4 Introduction:Modern packet switched data networks. Data must be forwarded hop-by-hop from router to router towards destination. If a router is compromised, then Control plane: E.g. announce false route updates Data plane: E.g. alter, misroute, drop, reorder, delay or fabricate data packets. Threat model: Byzantine failures." F"" F  "GoalFault tolerant forwarding in the face of malicious routers. Detect the existence of compromised routers in a network. Remove them from the routing fabric. T#aaApproachGiven a routing protocol the decisions routers make are predictable. & so this problem is a candidate for anomaly-based intrusion detection A compromised router can be identified by correct routers when it deviates from exhibiting expected behavior. xEIZlZjOverviewSystem Model Network Model Threat Model Traffic validation Traffic summary functions Distributed detection Specification An example protocol Response: Changing the routing fabric Conclusion PPPPP"P1P "1  Network ModelAssumptions The routing protocol provides each node with a global view of the topology: Distributed link-state routing protocol: OSPF or IS-IS. Synchronous system: Link-state protocols operate by periodically measuring network connectivity disseminating information Key distribution between pairs of nearby routers This overall model is consistent with the typical construction Large enterprise IP networks The internal structure of single ISP backbone networks ZLZ8ZZ.Z9Z2Z?ZTZ L8.  92?T4! Definitions Path: a finite sequence of adjacent routers: X-path segment: a sequence of x routers that is a subsequence of a path: , A router is faulty if it introduces discrepancy into the traffic.hB1I 0% Threat Model bad(k): Impose an upper bound on the number of adjacent faulty routers in any path. bad(2): there can be no more than 2 adjacent faulty routers in any path. The routers at the source and sink of a flow are not faulty with respect to that flow's path. ZTZJZ^ZZOJ^ Traffic ValidationWay to tell that traffic isn t disrupted en route We represent TV mechanisms as a predicate TV(p, inforip,t, inforjp,t), where: p is a path segment <r1, r2, & , rx> whose traffic is to be validated between routers ri and rj both ri and rj are in p; inforp,t is some abstract description of the packets router r forwarded to be routed along p over some time interval t. If routers ri and rj are not faulty, then TV(p, inforip,t, inforjp,t) evaluates to FALSE iff p contains a router that was faulty in p during t.P%PUP5PGP+PhP]   2    ,        &cc 41Traffic Summary InformationvHow to concisely represent inforp,t? The most precise description of traffic an exact copy of that traffic. Many characteristics of the traffic can be summarized far more concisely: Conservation of flow: a counter Conservation of content: a set of fingerprints Conservation of content order: a list of fingerprints MJ(J0Traffic Validation EvaluationIn an idealized network, TV might check inforip,t = inforjp,t However, real networks occasionally Lose packet due to congestion. Reorder packets due to internal multiplexing. Corrupt packets due to interface errors. TV must be sophisticated to accommodate this abnormal, but non-malicious behaviors. Implementing TV is a tricky engineering problem.dv$'v,(%#OverviewSystem Model Network Model. Threat Model. Traffic validation. Traffic summary functions. Distributed detection. Specification. An example protocol. Response: Changing the routing fabric. Conclusion PPPPP$P2P $2 SpecificationA perfect failure detector (FD) would implement the following two properties: Accuracy (tentative): An FD is Accurate if, whenever a correct router suspects (r,t), then r was faulty during t. Completeness (tentative): An FD is Complete if, whenever a router r is faulty at some time t, then all correct routers eventually suspect (r,t) for some t containing t. |N,G1{E,$ 1        0                 InadequateImplement the FD via Traffic Validation: By collecting traffic information from different points in the network. Consider Any other router than b and c Can not distinguish between the case of b being faulty and of c being faulty. Can only infer that at least one of b and c is faulty.)ZHZ)ZZ)H!(3  Weaken the SpecificationDetect suspicious path segments, not individual routers. An FD returns a pair (p,t) where p is a path segment: -Accuracy: An FD is -Accurate if, whenever a correct router suspects (p,t), then |p| d"  and some router r p was faulty in p during t. -Completeness: An FD is -Complete if, whenever a router r is faulty at some time t, then all correct routers eventually suspect (p,t) for some path segment p: |p| d"  such that r was faulty in p at t, and for some interval t containing t. HoZ%ZhZ)ZZ?ZZ $         0                   oE1L 4An Example Protocol: Pk+2 20A router r has a set of path segments Pr that it monitors. Pr contains all the path segments that have r at one end and whose length is at most k+2. k is the maximum number of adjacent faulty routers along a path. for each path segment p in Pr: while (true) { synchronize with router r' at other end of p; collect inforp,t about p for an agreed-upon interval t; exchange [inforp,t]r and [infor p,t]r with r through p; if TV(p, inforp,t, infor p,t) = FALSE then suspect p; reliable broadcast (p,t); };PPC0P   )'@                     !                                 bF: 'H 8Properties of Protocol Pk+2 2TPk+2 is (k+2)-Accurate: Pk+2 is (k+2)-Complete. If r is faulty at some time t, then $ a path segment p: r p. r introduce discrepancy into the traffic through p during t containing t. Only and -the first and last routers of p- are correct. 3 d" |p| d" k+2. and monitor p and apply the Pk+2 for p: Compute TV (p, infop,t, infop,t) to be false Suspect p, disseminate this information to the all other correct routers.l0P%PPP,PyP    F0""#"          "   J22Overhead of Protocol Pk+2(This algorithm has reasonable overhead For each forwarded packet compute a fingerprint. Each router r must synchronize and authenticate with the other end of each p in Pr . The size of Pr dominates the overhead. For Sprintlink network[Rocketfuel] of 315 routers and 972 links: bad(1): a router monitors 35 path segments on average bad(2): a router monitors 110 path segments on average Dissemination of the suspected path segments can be integrated into the link state flooding mechanism.  'PPAPmPgPP'=>  Am  g,   ResponseWhat happens as a result of a detection? Need some countermeasure protocol. Inform the administrator. Immediate action: Ideally would be part of the link state protocol. We have a version of Dijkstra's SPF that can exclude suspected x-path segments. L,3 ,q  3$Current StatusWe have implemented a prototype system, called Fatih. Runs in user-level on Linux cooperating with Zebra OSPF implementation. Gaining experience with traffic summary and validation mechanisms Still work-in-progress @//" ConclusionSpecified the problem formally. Explore the implementation Traffic validation Distributed detection Countermeasure It might be feasible to protect networks from insider attacks of routers. There's a lot of design and engineering to do first.B;Z8ZZ;8'The end Thank you&  3  ChallengesEfficient, compact and accurate traffic summaries What disruptions can be detected? Sensitivity vs overhead? Sampling? Traffic validation predicates Noise: how to distinguish normal packet loss, reordering, corruption from malicious activities. Requires secure control plane. j2H` 2H` b(WATCHERSWATCHERS protocol developed (and criticized) at University of California, Davis through 2000. Based on conservation of flow: Input to a system must either be absorbed at that system or passed along to another system.&g_)WATCHERS: Transit Packets*WATCHERS: Conservation of Flow(+WATCHERS: AssumptionsSystem assumptions: Each router is a neighbor to at least one good router (good neighbor condition) . Each pair of good routers has at least one path of only good routers connecting them (good path condition). A majority of the routers are good.TK  V 0,WATCHERS: AlgorithmEach router A and each neighbor N: Compares counters of A and N. ... if they don t agree, then A diagnoses N is bad. Check counters of N with those of each N  s neighbor M. ... if they don t agree, then N and M will sort it out.T#n4n8n8n            -WATCHERS: Algorithm (cont'd)Check conservation of flow with each neighbor N using N  s counters. I = " M: M N: (SM, N + TM, N) O = " M: M N: (DM, N + TM, N) If |I - O| > T for some threshold T then A diagnoses N as bad.EnZCZAnZ. $$$$ $ $ $ $ $$ $ $$$ $ $ $$$ $ $ $$$$$$ $ $ $ $ $$ $ $$$ $ $ $$$ $ $ $$               .WATCHERS: Consorting RoutersIBy itself, this algorithm is not sufficient to detect consorting routers:&J6/WATCHERS: DiscussionSome observations: WATCHERS requires global synchronization for counter comparison. The good neighbor requirement is strong. Traffic validation is explicit. It took authors a few tries to get it right. There gave no real specification of the problem.0X/ ` fff33` 3KI3ff` 33ff` /p` 3%*3|` Jy3fff3f` 3ff3̙` 33ff33` DDyq3f` ̙3n` w3ff` }ff>?" dd@,?nKd@ P nA@F`d n?" dd@   @@``PR"   @ ` `2p>>    (  P  6Ts #" ``     hAlper T. M1zrak; University of California, San Diego55  &  6y #" `` `  ^* T X  "(  N|d#" `P D0   6d#" `U B0   S "UY @   c $@"YW @    c $"YU @    c $h" @    S p#" `SV B0    S "Y @    c $"X @   < #" `0 `  T Click to edit Master title style! !$  0 "P `p  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  6 #" ``   \* H  0޽h ? }ff80___PPT10. 07  Pixel  aY@ 0 (    6A #" `` ` B \*   6/@ #" ``  A ^*   6` #" `` ` @ ^*   0T`B "P   @ T Click to edit Master title style! !  0cB " P  B W#Click to edit Master subtitle style$ $H  0޽h ? }ff80___PPT10. 07 0 zrP (    0B P   B P*    0$B    B R*  d  c $ ?  B  0B  0 B RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  6,A _P  B P*    6A _  A R*  H  0޽h ? 3380___PPT10.T`#3 0|~(  |x | c $jBP  B x | c $plB`  B FF P@# | ` T | C $A cord3pP Z | C *Aj0299029LvZ | C *Aj0223530 ` .T | C $A cord2P@#Z  | C *Aj0223530t~Z  | C *Aj0223530 `*.Z  | C *Aj0299029@#rB  | BD is suspected |  c BCDELF$Ao@ @X(8(Ppd@      S"  P ,$D 0"   0e0e    BCDE@F  A@ 3 o 8c8c     ?A)BCD|E||h(`P0`P@x @     S" ,$D 0&  S B@CDE Fo@@S"pp p`  ,$D 0&  S B8CiDE Fo68i@S"pp p  ,$D 0H  0޽h ? }ffx p ___PPT10P .TD+/MD ' = @B D ' = @BA?%,( < +O%,( < +D' =%(D' =%(DT' =A@BBB B0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-6B'blinds(horizontal)*<3<*D' =%(D' =%(DE' =4@BBB B%(D' =-6B'blinds(horizontal)*<3<*D' =1:Bhidden*o3>+B#style.visibility<*%(D' =%(D' =%(DG' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-6B'blinds(horizontal)*<3<*D' =%(D~' =%(D&' =4@BBBB%(D' =?B70, 0; .2, .5; .8, .5; 1, 0-g6B fade*<3<*D' =0l9 BBBB*<3<*)?+8+0+ +  0((  r  S -0 `   x  c $`4P 0 p    NAAA ?0  H  0޽h ? }ff___PPT10i.!TPwB+D=' = @B +}   $(   r   S 0 `   r   S LP `p  H   0޽h ? }ff___PPT10i.TЕ+D=' = @B +$  4$(  4r 4 S :0 `   r 4 S d=P `p  H 4 0޽h ? }ff80___PPT10.'T $  dF(  dx d c $ܑA0 `  A  d c $@P `p A "p`PpH d 0޽h ? }ff___PPT10i.T@lѻ+D=' = @B +  8<(  8~ 8 s *,0 `   ~ 8 s *P `p  H 8 0޽h ? r3y`f___PPT10i.K+D=' = @B +  0(< (  <~ < s *D0 `   R2 < s *`) R2 < s *Z ) ^B < 6D]z]^B < 6D  ^B < 6D zz  < <x @  9x   < <d @@ 7y   < <@m J tTx,y:    < < ]  tSx,y:    < <4 s5P  tDx,y:  :  < 0(} V For each router pair x and y, both routers maintain six counters for transit packets:hW )R2 < s * `IR2 < s * Z I^B <@ 6D} z} ^B <@ 6D) ) ^B <@ 6D zz  < <# m j  tTy,x:   < <}   bDy,x(  < <) sp bSy,x(  < <   9x  < < ?  7y H < 0޽h ? r3y`f___PPT10i.xPIͻ+D=' = @B +l    { @ (  @~ @ s *00 `   R2 @ s *E R2 @ s *Ez ^B @ 6D^B @ 6Dee^B @ 6D    @ <0@P 9x   @ <t0` 4 P 7y   @ <_*  tTx,y:    @ <  tSx,y:    @ <`eU  tDx,y:  F     @ =  Z @ s *   @2 TA ? ?S"  Z    @ 0< q;Conservation of flow can be expressed using these counters:< <H @ 0޽h ? r3y`f___PPT10i.xPIͻ+D=' = @B +  D<(  D~ D s *0 `   ~ D s *P `p  H D 0޽h ? r3y`f___PPT10i. ;13+D=' = @B +  HR(  H~ H s *0 `    H s *P `p  "p`PpH H 0޽h ? r3y`f___PPT10i.P|CO+D=' = @B +  LR(  L~ L s *0 `    L s *NP `p  "p`PpH L 0޽h ? r3y`f___PPT10i.P|CO+D=' = @B +     Pq (  P~ P s *Q0 `   ~ P s *DRP `  2 P 6S z ]  9A 2 P 6TW 3]  91 2 P 6Z [ ]  92 2 P 60^ ]  93 2 P 6|a ]  94 ^B  P 6D f ^B  P 6D , ^B  P 6D _ ^B  P 6D u  2  P 6e ;[  9B ^B P 6D    P <ij@ '3 and 4 increment D3,4 rather than T3,4^(    ^r P 6Z   P <pV Nv  n A sends to BF     P <pv] }  P 4 discards*    $ P 0z 0 d... so, changed algorithm so router maintains counters with each neighbor and destination (here, B).De a H P 0޽h ? r3y`f___PPT10i.P|CO+D=' = @B +  0Th(  T~ T s *0 `    T s *P `p<$ 0  H T 0޽h ? r3y`fh`___PPT10@.=+!lD' = @B D' = @BA?%,( < +O%,( < +Da' =%(%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*T%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1