From 6607e0d48e0f338287e2ff4075b89ecbb5077925 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Mon, 18 Sep 2017 20:07:52 +0200 Subject: [PATCH 01/28] Chapter Layer 3: Insert column breaks --- chapter/layer3.tex | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index d7c9233..0be73e1 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -2,10 +2,24 @@ \section{Routed Network} +\newpage + \section{OSPF} + +\newpage + \section{IS-IS} + +\newpage + \section{EIGRP} + +\newpage + \section{RIP} + +\newpage + \section{Static} \newpage From 03a5d8887fc453943eb581f6bdc5a0733ee5c25c Mon Sep 17 00:00:00 2001 From: Christoffer Date: Mon, 18 Sep 2017 20:13:31 +0200 Subject: [PATCH 02/28] New Table: Routing Protocols Default Administrative Distance --- chapter/layer3.tex | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index 0be73e1..f02516f 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -2,6 +2,38 @@ \section{Routed Network} +\subsection{Administrative Distance} + +\begin{table}[] + \centering + \resizebox{\textwidth}{!}{% + \begin{tabular}{|l|l|} + \hline + \textbf{Routing Protocol} & \textbf{Administrative distance} \\ \hline + Directly connected interface & 0 \\ \hline + Static route out an interface & 1 \\ \hline + Static route to next-hop address & 1 \\ \hline + DMNR - Dynamic Mobile Network Routing & 3 \\ \hline + EIGRP summary route & 5 \\ \hline + External BGP & 20 \\ \hline + Internal EIGRP & 90 \\ \hline + IGRP & 100 \\ \hline + OSPF & 110 \\ \hline + IS-IS & 115 \\ \hline + Routing Information Protocol (RIP) & 120 \\ \hline + Exterior Gateway Protocol (EGP) & 140 \\ \hline + On Demand Routing (ODR) & 160 \\ \hline + External EIGRP & 170 \\ \hline + Internal BGP & 200 \\ \hline + Next Hop Resolution Protocol (NHRP) & 250 \\ \hline + Floating Static Route (ex. DHCP-learned) & 254 \\ \hline + Unknown (Others) & 255 \\ \hline + \end{tabular}% + } + \caption{Cisco default administrative distances} + \label{cisco-default-administrative-distances} +\end{table} + \newpage \section{OSPF} From 8709ed652cae5f783936eb9bdc57185b4c55fdba Mon Sep 17 00:00:00 2001 From: Christoffer Date: Mon, 18 Sep 2017 20:16:02 +0200 Subject: [PATCH 03/28] Pointers for AD for cisco devices --- chapter/layer3.tex | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index f02516f..0cb62a1 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -34,6 +34,14 @@ \label{cisco-default-administrative-distances} \end{table} +Always remember the following points for Cisco devices:\cite{Administ9:online} +\begin{itemize} + \item An administrative distance of 255 will cause the router to remove the route from the routing table and not use it. + \item Since IOS 12.2, the administrative distance of a static route with an exit interface is 1. Prior to the release of 12.2 it was in fact 0. + \item Only the interface itself has an administrative distance of 0, since a route cannot have a distance of less than 1. + \item Directly connected routes have an administrative distance of 0. +\end{itemize} + \newpage \section{OSPF} From adbc9fa838188cf836b2edc92833dfa7de76c8be Mon Sep 17 00:00:00 2001 From: Christoffer Date: Mon, 18 Sep 2017 21:26:44 +0200 Subject: [PATCH 04/28] Fix wrongly generated citing info and table width --- chapter/layer3.tex | 4 ++-- references-wikipedia.bib | 16 ++++++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index 0cb62a1..211be0f 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -6,7 +6,7 @@ \begin{table}[] \centering - \resizebox{\textwidth}{!}{% + \resizebox{\columnwidth}{!}{% \begin{tabular}{|l|l|} \hline \textbf{Routing Protocol} & \textbf{Administrative distance} \\ \hline @@ -34,7 +34,7 @@ \label{cisco-default-administrative-distances} \end{table} -Always remember the following points for Cisco devices:\cite{Administ9:online} +Always remember the following points for Cisco devices:\cite{wiki:Administrative_distance} \begin{itemize} \item An administrative distance of 255 will cause the router to remove the route from the routing table and not use it. \item Since IOS 12.2, the administrative distance of a static route with an exit interface is 1. Prior to the release of 12.2 it was in fact 0. diff --git a/references-wikipedia.bib b/references-wikipedia.bib index bdfd516..5b0d37c 100644 --- a/references-wikipedia.bib +++ b/references-wikipedia.bib @@ -96,4 +96,20 @@ year = "2017", howpublished = {\url{http://en.wikipedia.org/w/index.php?title=Solicited-node\%20multicast\%20address&oldid=787116453}}, note = "[Online; accessed 19-July-2017]" +} + +@misc{ wiki:Administrative_distance, + author = "Wikipedia", + title = "{Administrative distance} --- {W}ikipedia{,} The Free Encyclopedia", + year = "2017", + howpublished = {\url{http://en.wikipedia.org/w/index.php?title=Administrative\%20distance&oldid=799742717}}, + note = "[Online; accessed 18-September-2017]" +} + +@misc{ wiki:Enhanced_Interior_Gateway_Routing_Protocol, + author = "Wikipedia", + title = "{Enhanced Interior Gateway Routing Protocol} --- {W}ikipedia{,} The Free Encyclopedia", + year = "2017", + howpublished = {\url{http://en.wikipedia.org/w/index.php?title=Enhanced\%20Interior\%20Gateway\%20Routing\%20Protocol&oldid=800921738}}, + note = "[Online; accessed 18-September-2017]" } \ No newline at end of file From d43b947082cd0ca7a59971e387eab3fc3166e0de Mon Sep 17 00:00:00 2001 From: Christoffer Date: Mon, 18 Sep 2017 21:27:01 +0200 Subject: [PATCH 05/28] Acronym DUAL --- acronyms.tex | 1 + 1 file changed, 1 insertion(+) diff --git a/acronyms.tex b/acronyms.tex index b5d2d46..e2323e1 100644 --- a/acronyms.tex +++ b/acronyms.tex @@ -31,6 +31,7 @@ \newacronym{dns}{DNS}{Domain Name System} \newacronym{dns6}{DNSv6}{Domain Name System version 6} \newacronym{dr}{DR}{Danmarks Radio} +\newacronym{dual}{DUAL}{Diffusing Update Algorithm} \newacronym{dsl}{DSL}{Digital Subscriber Line} \newacronym{dst}{dst}{destination} \newacronym{dwdm}{DWDM}{} From e5b45b68fae81e0ff8cba1c6a4e8ed8d18478964 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Mon, 18 Sep 2017 21:27:13 +0200 Subject: [PATCH 06/28] Acronym VLSM --- acronyms.tex | 1 + 1 file changed, 1 insertion(+) diff --git a/acronyms.tex b/acronyms.tex index e2323e1..0b4c16f 100644 --- a/acronyms.tex +++ b/acronyms.tex @@ -171,6 +171,7 @@ \newacronym{ula}{ULA}{Unique Local Address} \newacronym{utc}{UTC}{Coordinated Universal Time} \newacronym{vlan}{VLAN}{Virtual Local Area Network} +\newacronym{vlsm}{VLSM}{Variable-Length Subnet Masking} \newacronym{vpn}{VPN}{Virtual Private Network} \newacronym{vrf}{VRF}{Virtual Routing and Forwarding} \newacronym{vrrp}{VRRP}{Virtual Router Redundancy Protocol} From d0d3ce83866da3c9af1991cd963cd99eb90df975 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Mon, 18 Sep 2017 21:27:32 +0200 Subject: [PATCH 07/28] Basic EIGRP content --- chapter/layer3.tex | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index 211be0f..ca5e571 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -53,6 +53,14 @@ Always remember the following points for Cisco devices:\cite{wiki:Administrative \newpage \section{EIGRP} +\ +\gls{eigrp} is Cisco's enhanced edition if \gls{igrp}. Dating back to 1993 and a leg for Cisco over other vendors back in the early days of the Internet. (.. hmm. And remember Cisco's implementation of \gls{ospf} was known to be unstable until the early 2000's.) + +The change to \gls{eigrp} from \gls{igrp} was due to the support of classless routing. (\gls{igrp} only supported classful routing of class A (/8), B (/16), and C (/24) networks.) + +Cisco converted \gls{eigrp} to an open standard back in 2013 with \rfc{7868}.\cite{wiki:Enhanced_Interior_Gateway_Routing_Protocol} + +\gls{eigrp} adds support for \gls{vlsm} and the \gls{dual} with improved routing capabilities in comparison to \gls{igrp}. Overall \gls{eigrp} provides better capabilities compared to it's predecessor. \newpage From 57f8a3f8218fa71f38f7c88a53759ab5ae9d6d49 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Mon, 18 Sep 2017 22:39:13 +0200 Subject: [PATCH 08/28] Math behind EIGRP --- chapter/layer3.tex | 10 ++++++++++ img/math/eigrp-dual-long.png | Bin 0 -> 12058 bytes img/math/eigrp-dual-short.png | Bin 0 -> 3955 bytes 3 files changed, 10 insertions(+) create mode 100644 img/math/eigrp-dual-long.png create mode 100644 img/math/eigrp-dual-short.png diff --git a/chapter/layer3.tex b/chapter/layer3.tex index ca5e571..e9d06d5 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -62,6 +62,16 @@ Cisco converted \gls{eigrp} to an open standard back in 2013 with \rfc{7868}.\ci \gls{eigrp} adds support for \gls{vlsm} and the \gls{dual} with improved routing capabilities in comparison to \gls{igrp}. Overall \gls{eigrp} provides better capabilities compared to it's predecessor. +\subsection[Math]{The Math behind} + +\fig{math/eigrp-dual-long}{eigrp-dual-long}{\glspl{eigrp} \gls{dual} full formula} + +By default $K_2$, and $K_4$ is set to zero. (The are user customizable!) And $K_5$ is set to 0. + +In effect the resulting shorter formula is this: + +\fig{math/eigrp-dual-short}{eigrp-dual-short}{\glspl{eigrp} \gls{dual} short formula} + \newpage \section{RIP} diff --git a/img/math/eigrp-dual-long.png b/img/math/eigrp-dual-long.png new file mode 100644 index 0000000000000000000000000000000000000000..ca71d16765dc6ec239eb9762774cdac84548ab53 GIT binary patch literal 12058 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≻kKBE?32_-kB`|oB}q^0}S{JF3RXqTjA%}`ZoG4a9dk!nV9*1I!|H&|GOc|&DNNsoQ^eBoOU!$7%H$DJNtEW zXoeHnx+f#z)s_)QWb5Av;-Bwtz+;3G)_&ph5vYbWVB^59Rb?noH)dNm|0xd9E%||u z!Iin?(S6T%l5|(gNi!Sd^8H}S+O6S$B!BcVxjDane>#N+$)%Lo?^gr0QVh+`aAOv0 zf+&Xz;MUiHZRxPYvmuJnLcanRZ+rQNxVjtaWGf;|WTP!kc_pQ459(u?^%ay-!`l0g zX?}#K^MI3Fg#yaQ^Bg)TBv-sG&xNF>7Dud04MfU=O6jQ6PeMjOe)LjuH?xB#E=@Sz zWSZ}7{dn=`_3`r=Vj`LC}_yK9*e?SgC798Zpu-(lx`Mcv+wVb|; zF*mKQJ^Fjc!E}Q~PC0(XRL4)bWfd>8qFdu4OH{5G9qliE;W=&_`T;V*8`rdo5!$*>}kaK0WBHI8i8jyrl8K1>n6Cdq_-G91oR|xy zye3Go{W+yktAdg7xmjPDE_B}TPt!hs0*E{Gd%S%^f*8=!A{+J0t;$3snMV|R^IRxQ zNF2&kyV4SRXnZ)C>Z@c@|A~$Xyq6_=i*;I-eRVhN_qomF z*#h`+*>>nMUS>4#`0r1P_%9tU!nqmS9! zI(tXA-6f*=jjZ8gue#ESPd3S$`VhB1x)xrFqw;GgQl;~VE_`*|ex@KO^!9KIA`@St;`S?89AV=k!N-mv$rD%EX4Xd*1BK zTaNX-Y9(bRUM1}LbDZ{PoBy*sxt3e4WO7Mb_qRCtRQYckj=Xd$6ku=-e!v>xVBn%Z z5OC;-6!HjE;A)b1&5m1Sb-vz>qZbAKx6a#htPxAVUP(5s@N6JeQs=QnuB7vSplMF?J_6~@tNfJDi_jUre>~4#`B;!e<^Y{>$1c`X zEEvxQR6?#~m-T+)knTE(NTB2|5hS+vP+XCss{fBNhG!5 zS>j(Q&*r|9Ni+*mW?0+O1YsZlv?~m7M}imR#4I^x&V-t3A04UBwN%}^F+Z)WM|;)ohw^}H z29a}&C_CR1HuAvC`{CY1@4#IpPJWAd+WeY(+eoB%(6I`(p#|oT(s$yg@xJlo?oM^!qX04M~}GpCn~(-$;Rc3IKhMqjJXwmDPZl6i1YH&5Lno zM0UaSbd7y|x4a#*f0Z){Df#}_sj;HXf@t)Vfu?T8ak{ON2q&1@M2_9YUCt~nwe4n& z!~%~(_{0o*w+u2y#(ab*rb3EWp2Iin|EBIqD+S2UTUK3#nX1@ zCMUMHHD=Yy$(`amG)cKOlIOHdiVs3pJi107u0BE-Rby^OM2q;kd#3}-=wm_0;nf{+d7$X8kJc#^-4^uR~d9_^$@v{jp z+cMUeh0)ey3uMT`u(%qFOEexS-vdIONRxxKPM-ce5vc-8d|bEpsxTZx_XxJr`6^en z30Y&TcXcG>UkgipQG;|_qWp%R@DgKB14f5voZYK?B*mFI$v}O8U!fl|i^C(md!O7P zeFVp((zxyc`cz)A&%=-=1-}c&qbzw%@&ZITTMw4kcoFW_L1mbBkWfyP`yS$KUP5-$h7AeKj$W4Qfl==qvKWxAZxt+|aM?0P7N;tdg`G2uL>wpw@`D_eexCg33 zH&Jkbb{(fhtGZffW2M+SAMVRdxk4m)Av*!}tszu&g7Yo4w-)}o>zH?fy~O_3LE-GK zE>w2+j(bt&!Mv}99hd)AN{WFn^mF}AE#>f&z9l^zcRZEM9OlA!!7ZYJ#T&; zj`hFW!H*72B(kp!JwuEq6yAurw{=%aa`Qhc-8+~9fc_7V`NIm|gOR5Ny*9cY^3sRI zJy!60QeCs=Ie4hzLFO8v`$*?M1hJ;#uF+Uf-XIrU;Cqpe+jKtRCjY61>QIQf!U5Vt z44Au+#3gVmF}g`o^v{5QGg^N=2Q)eX=gTeqXMhv}SQGwUa%ZktW!J$8@I`NQ@Bkl4 ztC5Rchi);o7;G^eubQqhIPU6f1Jy5sFW!V0jf|oRWu|-9O+rv%)~!|jo6LV==1ksL zC3nwBGTihr-YI`TMq{RC8XtkSAhY>?04SDU6wuT8fEh?T1oNtb&_v(V%ZoVWZOFUS z3a#)KAM%_^iVH9Dur;J-?^xTtnw=>2#f{>*1RMSx+*sQ2$a&;1o3<-<7bF+b?A6gn z%XeNkADT+RJIx8&V*Byp3Hv7Qk5r7CGzj`Xr8K*K^zkCLc37>`caE0{GSo~V&z&KV7bLtDB9{vf9&7i zqUXFCQrAW)Tu0g7ERn1aQAMpLaTl$!RJHm?>JS29v_+8HO3e1(omo`i>ZtL8ZVe-w z<>LhVQst}j9@P0{cMF`(hAwj3un#U`Phy0~TzeL)>5)l!S ziDI3$`(hZISS3!G4P^7JNx2Vog>j=4Q{`QzAA&cQ@6n}#s>K*50X*>=;dScQ=^*Cj zx!Hnu+pr4gDK3V=<<{;z#S|Ub83yQ_RGxpu{K8xN@Z>F{uwz=T#q@|-di;)p$u2}eNrBR$t z;rC+N$pFc7H@1%Y$Y4MI6wUmW-@_xs(-B>VbxWJSo%DT7Z2o0@u;y#|gOsxE#dWLI zNrCy;l&GrOec}3&kE={b0&}=^ti9O$lhJy<8#h{!N}`)FOb`dv%v3iNCkuVekrbD7HB=kyGy)6;bN_q@Ns{x8W>TiRXYl6N z4^jPVZ0q-BJ=2Ouv-ICatT^(S@|&MeSCTDa*L!S}RA^+kxxX4yR(`z;fPZMmX=|UQ zb;7W*;u%tww085IUKrJQw>;L-pIytFL(XX9>Xhq+=g*{!zLEf;+2)6iWJ-+YPGg$N zXkzR@4159}*@qMYuTj!|<&iWn=jCGM;kf=$&t#beiw0{gVE+7yLabX*Ij2U>R6sI%z_zH+$|Lb_MlY-30!x082)s+Y_IKFW@x*2o!PMZXc5JfRvyV`(+QgkTlL-wIe(7Wu4II45ivah)9HqCp>TRF#D-p+aBj0r4 z<5%-V{F4E&*oz)iKTvax(LUa@CFms<Uq%l&s&wA4F9%K|?2=C|!kQtZv!jO;`ZBm6%eNj}4iE^|hx z)*J;kuD-;`%&GM=J115triF^o+*o`-JU#YAb0Dsv$ikhy!mwG+Tk{1~LUUkIO=Z-V z>qkgm^^gRw#dIF1F#usm7jAi0Htv7u!TRzzmzH zJoeB6!x$D5H*jyD|Gt0CN@C-r>`nl-LhZt37FNj$CxU9k2L*?i@Z`MT^2@1Q84R9)`-q}L1Ih)W8 zro&PmtDj=jAkpr*0Z_~#VK|`Y?Hdz}S{yN%RZOY>o1c{`6=Z%3@)q&3XfDPqly4#~ zkM%I;#hLh9u%S-`<*#qLZWw#giNGXXu&xbm7oU>H1nRML;~f}r@;I#zvUAs&G=|qS zbtk|Z_0AQ)zGuK3FZ9;EsxXmV87-Tm^LX{F&3Mv0jwi(M8zDTG>I(!0`%BuyV6D?w zN|-I#(tpv!#*JTnO!-N5YU=L_nLlqnNlYSh*MitXK2v)y4ZK%Bi4#L@&yH*Tt}CnX zaRNw$yl)YwTI5*p>i5^XdD8Z8gWiDfY z%E=h=M`OnqkKjbfAsR=S)4%J^V)er2i7Kf4=p^w+H1&d)0u2!6&pyp{@eY2$9ieiY zz*|Tm{{T*%a#PN(8IqdmdueLHDFhN)l1kxfMAu`oE90QJ)Z_xEP_X{GcU~d)5rvM@DKN zwT6XVo|6?roSyxDcGGoiKaT?gM`u5*MoFGWdXK+;s1Jt554s!KU)Z6OORb>;VNzG~ z-bMY*Wj<|S0#jedE`oO}!-*2@KjYaYcBJ6V4;TFAN}#-9dc(a8eC-$3PwgQ)d3RdB zo!S{oh}HEKu}GJ_!`g{m{(V$HZf3aZX|VM4zv8|igRbKxFEjxlgBCHyakp+_m62si zpd(3B13+(O=BjqqzRVQ28q47Z=e%7cZ{A9^`wpg-}^JvDsuQsY= zROcd=LFtiyg5)EAFJv#X=C@<8TLir;L;>eLt zrcmZ(F$LR;s$K2HyvBa%KQ^K6WRbH6VlXLJ`ss2KlO{%yP+9-9G)&HmBeVU(r8Hz8 z*^CUda^~Na?w6KzM$Ikcw*9x?bf2??&Sf*H9SA!8I1ag{|B zd$qiTIXl@WpN*Ch%js_!#Bot&miAe8t2JNIu1&G|kX$@^U)#S`U zR+L}uy#53eBHEZ}iNhFv(6=Pp{X^p?S0bcRv}F^R@wDiRDAQWQqJf@$A~a%*s$#On zFsaSqZok8k5POwJz96Fh=+tChQxZAysP~|POEoh-gHAaer7jjB%d#4EQd>&VkR=Qb z%UmkS9>|)Uvr&lNw?Wz6V`eloql-s<-)aj7ZWJ|JA(oM{MY%o*ZV_20sSkm1A7N1G zJO}oHW{hJxsZw-wmA0&;(+tLL_*{mhv)x0MIbf-n9$=BCsoj2BF%O(EN2;i}BVOpd z&!E#OR_YOr-Ti%9De7wSM&IsII3`h@FvV2*D)rbwQ&%ND*@)%WVbyRkmOq@Uw$)!o zeOy=<;-P9Lg-q}H_)8xpRw*oTb^I!Wse4E2VSO%p#|}wi$AS=-+Nh=mp5Nh!@U#`* zNXHhPQq^yGJv6*+#(W^3y6t_j$a?x--^o68?|P8&@s}o2L@_NpB&Z|$a<{#|FK47p zcDQ1w&9?XF2OoDF{IOvAoA*Ap2a6!6rAGaT2^And0(@fUxQfx|PX7~Zn<_dQ17uZFl*9Hv6oi(_Xz8P~}94k)sT;#_nEDrosr zRMp(4fMo&em{F74sTtFCR-3QVr#q?|RJ0WkO=1Z<496&1oOT&%+nr&{=QWV`!1R3! zNsK>B0Gqcmj)DTvy>IBkLyDkFjk;>q_MY!~&GaI4VAAQD77OCnnUS~$WqgSQnHq#O zpABqS;R@Ofd9TQ|=&qvkF2mo5B zLDgXQ;BBykc2y-&y#u+0W0Ntihd~G;Lar}O5j%08-ODn}H8XN9`@L)KCmwC@DCms& z5}9$yH|GjlLC)X**YDeLt0S_z%7|D&+!W>PGpCx;LZ_^e)D(5^0^&^%!*PmZZTZl# z<$(76Ly&F8Gaf~WpiebZQ7*HxQ5AXX=f5jzN~SI{z5AJ$3IY#uft2gxpB-!rtUW|} zoJPSz&MpHnNe{pCn%h;baf@2|mEc^?d%`Z3MV8h0dR`Z+Tbil!l<Q;knBAZ_y~jTOIv_J#_i_xO^U7=~DZfi;zm zk}wICSdLAOpr`qLRJz!KIW!n#=!?H4Y2N24*ucRy@yr|mTeE0>R-%VB<@X$bBdrG| zss^fOFlcJ45fP_=V=aI>Z;JMw2~02asU|#2FrKllok6e+&PkT-n^qPW)f2KqhGoB* zhAIswvY&4LaoCq1FM+gqH1#cI+r)&5Z1Ftk{2} zsP>~ssqmy`RqW)t7pFgFwnjGU^ zcEu%z^39_bL?yY%-IZClsf4??GVq)QV&;uhqXo?uie_QM>e*_>VOTQT=1mAVWH5be zD_)$Tfz@KX6(lGEGpF09S=$>y4Q5Zv1fe|($ zm#G>Po#`<_;qHMg6VPgV$;qBbkbPdmTxNg_wTyUo4?%Rp_&xrpp3+*Bxv5h?ZZON~ z8$Mw;X5mk!BJ#noheiu-3e{{9*Jf;Vd@MFK^#F}*vdZBg`_#W$!o)@m5a<&XCo#($ zfjuca_PkUG9EG;cLp&eR@@+`mnJXdS2V@7YA{6bOS-~(4D_D zJ2&C{84K4DIb!_RIlUb@-_b7`Kl^rEQVnrT_E60-5xQj4a#?^qn?mTEOBnt1qbAHk zBnf;X40+w<6u523Dpk{{+RdwAABTFlZ6Dn{ON95~VV+IOAr17@ zPzkelR20cmS_jfk$rW;)^fuNdYEiEh?hqq5T3_5!3je9WFY``N7=})0L)j>diu6I` zD8R)Qg=Gx@uw>@kT=VI1=%n7oHqO8up>C$fB!%4rwa$SuG(q`UPnIm@;p74DP=Y&+G}UcrwHXA3#f`&SkVPb!P<5o-ot!W#d7mu8Xkj7 z7{Hm9ahQ|8vn#v!SOHd_2rn5`t}`T8CLtMAV_Ae1D@kGZK>vooIt#a21kX6Ubo}`7 zAInGaJszU-PMdm6--00VqZ@+_VqTpGxxURKrL6dcH^N9Hvr?3XZ;A3goaW2nQm(E z%RCOZQr2V=gWfdk&l21mszu_pK(qa*i#Yp>6cnU~EO4wM;v#4y!pq}JcCOX#v15ki z!-lIGb`;rgQ#IEqO-)0D-a?B(6aFEVJ~8S19Ayl<9FcPjNT^0P4LvXQQ0P4nyPH*Z zs^jsb=O5b`aM zx4rlcN5>{xP`|yZX?o$G6mAZAaarjq_|?><1p+8jJ_Pm|p?D?6774@V#c>cg7M{u< z!yT?zG;)0r$vY9W3~>Gs6O_9_!41wZ+1g({SOv7;gQ}|P&B-nT6f5nTVwsc@6zc}@H9Tv@S$9k~`T7m}=_iFo2JkqSw` zA7~u%BTFSH+~0F6whb#(4Nw#2I3t7})j-fKj6I0=89R+MEqQOyOnN^tmB1mjeDDo% zTbW^f1*ejVMM$`gHvFTYb{e{s;B(5TW)ae&bp9zTRzNqY4F>FVLAPu*zzP*az6T=> zvn6`e6jifKdWKbk!u?T1>l`l}XF$~fH37@Sphq>(y@%_SYC|I#`<`WD#>d?1Pwq?$ zBf39S+C!^*tc5hLY{ZtLZbP6{@+(-hs9uNJZwZ1Qsy+MzXh^GBV^ZXm>`hG|p$L@( ztTnv=ckA>Mh#>9~Zq9U#q@{Jyl2V)kZ#gfn!^f;_sjo;h6)Z(;J`p98bXp_a%Wf9m#Q z&*s>jgWY)$IHT>9>GxKE;TzoG14i}<+lgK4F0wzwu9nQfsO&g|TmlG&Q40==p zO&IJ@8~_TH0^iXX**N4W{7f%Zw9cZ^!6UY;q2Kgpb2pa^K=r(FG8sQ(oo&u;YB1*b z_z8IS&BnMxitbXIxuj`}nNKiyMBbjacqnSdKn%^2l?6axJO4l8J~acLSpp2)l7CRxbE8fD#teu&V`UUV8Q5d9IQ+prXA zbHZpM>m@J7hvm{cuk1=UqU~~gEIsGPDfVio=J35HyuPtoY5>1J zo~Y42!(^>=I(~!x6UhOWDXWA9+K#IVJ@;;aX$<`E!XG5kLLYpK6UyY|D`&Wz7OgDBYxk&{|REGcw`}6)S4ci)5rG3{ujnzp`nqfC1L;o N002ovPDHLkV1lX0Y32X` literal 0 HcmV?d00001 From e19869381e3f7432dec5b401cfaeffccdc4c2bec Mon Sep 17 00:00:00 2001 From: Christoffer Date: Mon, 18 Sep 2017 22:39:24 +0200 Subject: [PATCH 09/28] Some LaTeX package comments --- structure.tex | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/structure.tex b/structure.tex index b6ad9a4..d666116 100644 --- a/structure.tex +++ b/structure.tex @@ -4,28 +4,25 @@ \usepackage{lmodern} \usepackage{geometry} \usepackage{listings} -\usepackage{color} -\usepackage[usenames,dvipsnames,svgnames]{xcolor} +\usepackage{color} % makes custom color codes available. +\usepackage[usenames,dvipsnames,svgnames]{xcolor} % makes custom color codes available. \usepackage{graphicx} -\usepackage[numbers,square,sectionbib,comma,nonamebreak,elide]{natbib} +\usepackage[numbers,square,sectionbib,comma,nonamebreak,elide]{natbib} % used with layout for bibliography section. \usepackage{float} \usepackage[english]{babel} \usepackage{fancyhdr} \usepackage{wrapfig} \usepackage{array} -\usepackage{lipsum} -\usepackage{fancybox} +\usepackage{fancybox} % styling of boxes. \usepackage{varwidth} -\usepackage{enumitem} +\usepackage{enumitem} % makes available changes to lists. \usepackage{titlepic} \usepackage[nottoc]{tocbibind} -\usepackage{url} -\usepackage[showisoZ]{datetime2} +\usepackage{url} % cmd \url. +\usepackage[showisoZ]{datetime2} % more options for time formatting. \usepackage{transparent} \usepackage{soul} \usepackage{caption} -\usepackage{enumitem} -\usepackage{amssymb} \usepackage{tikzsymbols} % http://ctan.math.utah.edu/ctan/tex-archive/graphics/pgf/contrib/tikzsymbols/tikzsymbols.pdf \usepackage{textcomp} \usepackage{parskip} @@ -34,7 +31,7 @@ \usepackage{makecell} \usepackage{inconsolata} \usepackage{blindtext} -\usepackage{expdlist} +\usepackage{expdlist} \usepackage{epigraph} % used to style quotes \usepackage{titling} % makes available \thetitle \theauthor \thedate \usepackage[toc,acronym,footnote,nomain]{glossaries} % Load the package with the acronym option @@ -47,6 +44,8 @@ citecolor=darkgray, filecolor=darkgray, urlcolor=darkgray]{hyperref} % https://en.wikibooks.org/wiki/LaTeX/Hyperlinks +\usepackage{amsmath,amssymb} % math things. +\usepackage{lipsum} \renewcommand*{\multicolumntoc}{3} % https://tex.stackexchange.com/a/6455 From 6772cfa4dfdeda8ca93de7af8394bc7ef736959c Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sat, 21 Oct 2017 13:14:04 +0200 Subject: [PATCH 10/28] How Eigrp works --- chapter/layer3.tex | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index e9d06d5..d370401 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -72,6 +72,33 @@ In effect the resulting shorter formula is this: \fig{math/eigrp-dual-short}{eigrp-dual-short}{\glspl{eigrp} \gls{dual} short formula} +\subsection{How it actually works} + +\gls{eigrp} does it routing on a \texttt{next-hop} basis. Meaning it only stores information about a given routes next turn. And \textbf{not} about the destination itself. (Like \gls{ospf} does) + +\subsubsection{Tables} + +\gls{eigrp} contains three tables for storing route information. + +\begin{enumerate} + \item \itemhead[]{Neighbor Table} + \begin{itemize} + \item \textit{Lists \textbf{all} directly connected neighbors} + \item Next-Hop Router(s) + \item Interface(s) + \end{itemize} + \item \itemhead[]{Topology Table} + \begin{itemize} + \item \textit{Lists \textbf{all} learned from \textbf{all} \gls{eigrp} neighbors} + \item Destination + \item Metric + \end{itemize} + \item \itemhead[]{Global Routing Table} + \begin{itemize} + \item \textit{Best routes from \gls{eigrp} topology tabel will be copied to the routing table} + \end{itemize} +\end{enumerate} + \newpage \section{RIP} From 4ad7e145e25d97a08e5976343aee25cf4c9e7105 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sat, 21 Oct 2017 13:14:13 +0200 Subject: [PATCH 11/28] Eigrp stub routing --- chapter/layer3.tex | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index d370401..b7691ab 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -99,6 +99,14 @@ In effect the resulting shorter formula is this: \end{itemize} \end{enumerate} +\subsection{Stub Routing} + +\gls{eigrp} features some different ways to configure routers for specific routing scenarios. \texttt{Stub} routing is one of them. + +Stub routing effectively prevents the given stub site/router to be used for transit traffic. + +If a router is configured as a \texttt{Stud Router}. It only carries information about \tsq{it}s locally connected routes and a default route back to the transit routers. \tsq{It}s also omitted from being queried about networks is does not advertise. {\small (I.e. The Routes Query Process)}s + \newpage \section{RIP} From e81361f0b400ec4d9e73f3d801ca98ace2ff6627 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sat, 21 Oct 2017 13:39:28 +0200 Subject: [PATCH 12/28] eigrp stuck in active --- chapter/layer3.tex | 9 +++++++++ img/eigrp/stuck-in-active.jpg | Bin 0 -> 43718 bytes 2 files changed, 9 insertions(+) create mode 100644 img/eigrp/stuck-in-active.jpg diff --git a/chapter/layer3.tex b/chapter/layer3.tex index b7691ab..37993dc 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -107,6 +107,15 @@ Stub routing effectively prevents the given stub site/router to be used for tran If a router is configured as a \texttt{Stud Router}. It only carries information about \tsq{it}s locally connected routes and a default route back to the transit routers. \tsq{It}s also omitted from being queried about networks is does not advertise. {\small (I.e. The Routes Query Process)}s +\section{Updates Exchange} + + + +\subsection[SIA]{Stuck-in-Active} +\gls{eigrp} is known and feared for it being \texttt{Stuck-in-Active} mode when exchanging route updates between routers. The Stuck-in-Active state could cause problems on low end network gear with a low amount of resources available for the routing process. Which in cases could cause the network device to use all available resources when querying neighbor devices for updates. + +\fig{eigrp/stuck-in-active}{stuck-in-active}{EIGRP Stuck in Active} + \newpage \section{RIP} diff --git a/img/eigrp/stuck-in-active.jpg b/img/eigrp/stuck-in-active.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7d1201d4b09fa4d8ac2b53d54a926ab83779fe7f GIT binary patch literal 43718 zcmb4qWmH^Svu)$2{5yBu>G9` z0s#R583`F51qGk&4e=Yc|L^kD1HgcXSbp8!aBiG}HCaw)f-y&`nw+SHgLY4|B%asc29 z;s7fYQG2xSihJc6C0n%~xR7mTnzT(foUwu{@%=|cpLxoRrj1l(yu4M3AcKmk>y_!~ z1-B4>hj-I~YGGfPDkcHgH%4*RFeX{F{AV9{NBIa}6`4fN1* z=Ec8w=!y@osw|#ht1|witLTVVmNbM9rtcJM)L#jh9`!6*&ofWZ^RuPp@l)Sh{KPO zP8Y3lW4lv`yj(^Z&PM5tS-j=47~|5dI8*OnD|7zch-*+rZxJ>IU%=?eAt#2#t;68i zA(--A{;XL3F&u4m&Aig_VLR{rJ1XMUJLM6NIaEnIm1h+ij2s_x##-@xLNzKh{U6|X zet>ze^?Yf&qKhEgh`29lPH@CM9aH z8kFajhTzuiQ60`OciNFH8q91Bn#?RTsxCKW&1#o7=6la}na&(G=CkVq0HQP$!+@RK zALWNT2TaFJ`vuEKV@<`XpVV!#8kViiLHh@12k&lLFLwA9gwP~##_+_m-9)6_LNr4p zX>4Z(Roi*j<{vY5Pby^WXl3cFsojO6yb1!U_NTK>1^fZ8(kox;(PDh#mb9B#&0CH} zt2?~@dFeEx%MWC7SX(~#+2g-awGmJL#Q9FKJ?qRx+o-;2pLb+zJ+XP&Q$_sX3v{}7 zwB3q!2xqorMG#cZuZlUl!x0xPQ;6Ql-^B0lSBxcAirC!5R#+*S_!SMt!=s}giN_Ug zZ#$zDB0Uru1erqr(e&&2K_&;>CXZkBFhB5f_DC$=F=-Q6E}B$(dql0x;q24eWlShc z6c4wlO;=3{Vkx~2#pdqwUima#&IyiOnKbWo(OzFH&NwK(iyoG3l{p0UBvUL9#vnbU zar^(X)GOeiJ)j~AZ(XBUZ}!GPIF|(zd1+4E^C#CTYZ^0(T;`LC10V~2AI|@xKlh(> z%t@_1t!pi)g*MxZZ$=B5{Vyl~nG*0X{IHwU3MT==*)n=KeT%o23Nd!<`ZB3QBYb$Q zanre@uifE7*oW6Oe|kMIJpm}^&vuKZWIwA0>fe+?un+>xHv{+W&4F06_Gv9Rxi;7Pb~M10acq^X8L|FgVc7EP}Kf z#OKVjg0=*Sv^lHw|BisIvbD0(;gT;MKdK7?;g9{iPNQ+eqAT2|URIrv_5a)DrTn7| zr+OXwcDqUi6(JEF5YA7xUx|(CYoEBYIyR6N4~ps;e$dP6i&iuwOXrX8x)(-GMFS;8 zw$$zZ8V~^Bgnl101Lhj9TL%rdPQ%#nr5990D1)<$^OFnebH05)g|C4u0IAt9rfnyD z)j>)YvX@f(qf@$zmDr41Hby<1wfT=|INrNp!EcN=7?n(VHK!$)^Tzz&7;H7wzuHFY zt=SPQU0zWP?;lnR&oxYSqNa`I1@29?KxvznMSkMFp>ECY*%fVQ5ee1Jna_kuI~3-5 zt7_58%WtzP7n&~E*v2tDzmjsD2An(#^K||_%e}hh8@>wd0SQtIsFussXuw&a38!=Y z&}2P@OI;F?bph%A58WZ6vNvqG?j4*q`&?HJ*SlQS*5nR19lRBo<6K*_e;6QP)+trh zQWaI|u=ToKB&uB+Tgw;l6hl5cadZm@}=xK3X1+izbB zz=cxSh9Lht;JM5wdrC4C*A#Y8Of-t!9O~qb?jtdfT2baZE@lE5b6)y9f4ul<03`PG z+cz#>K~-T%B^izsgY2c!I>&i4_d+(*L-55jKg(Un> z+kaWm0>^F_z+z2C4PBivzo%=U0N+DOs0X z{_Wui>6NixDa(|MnAPLv`B5Gf0a4N0Y45}jqx6z`B8-Qi#Zsw}m)H;)1k=a-|8Yn# zKDrC}Ww}vBKF0yEuAP?)OUId=kwJz2V$ z`@F5kBI0(f${*U#bK`7MQ#dcRdsedc%mfXvsycsm-rRWMW(yJ>8yzQ4(mCvVwB8-m zQt;ONpggy~!Xs+A zVWc)d9SJq-BG{#!VA9M?e>z8V&ROfLr`;v*3c+K>zUs>?aAasEW{NmJ8su+|>06s@ z4rk`OKodYF4K*F7Uz!b?_iN^LdHY2!clkiZ^L^0psUFOqe{}!4{@a_*n6QoX+{VH- z@kDIa8Iv)^qPTorC9CN5g`hLmRk{iiqRo8^q8y89(8@uzeAnyftphKGcfNWnJ2o?P zI)*kW2}x0TR0rmVc3bk_&#V?JYX@PBD;)RDaAO!EXa&hzoa$xOX<&Xv8|XieeNgVdXy0vCqe`u;=STQLO7h(vpKZw9%s}Ma&sj=wCbg!=yQPm{q^8qLYV?q z(D7aSx|-Nj$J~gzB5a_h*jEWhSkjyvf6JAO;p32!T##C7$lFL_(57yDbV;C1Vkyh7 zST}?nC|tDQmqmZ>e=txCCcR)82;XtvaL+i!TOI8a8#Q}Jj>VZK6P^v@nK8mxIR5q{FXd#4J+0V9385}LA+NXE^Sm! z=m*ecQj;pu!>bm3pwDMF>!+M~@p@Ln6L`K8SE(s`ZpPsN>*s5EX5wIQarC~!>jh|~ zmyrw4B3CS>mUpVIel5sYR0-z@tY(0h9-UFdX2J@UR7h#<5FY*!|I_OW0#R7fB|W}1 z%s!t!^-WnAQoa4>>I{aHoER)>I-|Gv ze3b&YjzJhk5N2tIqc}E_tTPySrGHy*TKo^;!39R@`n6?+~ zDbY-Mqp6`$+iz@f&6M^oIxnK#aOoy{)@f1l+Sj?)Y55Zc{6wO5%*{u*qkc!71F6&d zggNB6BiFev8Zeg&^@7>eSF3c>zc8v=X&7#NtbNDtg&rQxnT@nN8RB}OR|KQI#`#sY znv+!8#T3`Ia<8aV-ek_aw#0DqJLeyDo!*uDymk&;7xAVK^;ln&>q*kv+^g0D%O-~# zhZvboR0zis`O2j`UoBwl>(8c;JgfPvy$+s8Dv+`ovfjW@9sCm@N`2z<Xg+if>N*2B^kdm>m(g)T&+7-n5wzRbrE?BYJT_j}1 zfHnYl)5~_7ISk_bVf|uk8<1GvpQHEflVH|T16uuLx_@?kU0s3-%de;+j!|%c>-n~H0kKZIcZ+|NK7!J$EhL$NSDJ>3GnPA56 zhCf*IT|z9!RdvbnmHgWN5{Mmi1M3-b|M7({c3IoSZ1AmcCByt{e2w)xg{qhsG-u+% zZbAddF4A7O@HYB?&{@grK9BhRZ;cWBTP;fs9s>3J*v6b&0i^=0cq&hTbHbOt3AUBS zU>!#CgmIXC^k}5YcQ~bT`uH_|Op!QDQT(cUWyppQsho&xMi|NoYz+9bV#Y@s#C{t$u( zmaClG(q9p2li>^gDm31}26=$X1x=7b{@qsZJ^6fhmkQ zB8lf}D>4@XEY?`3*wNqtCo>&dKKtjLSvSBg&pMwHtS}y$p~M{ixqU%gaEYLr(KezZ z0q;mgeWrCrz=I;kpYUN* zGcX4H3MpW$yO6BmrA1g|WaK&}E~t%R8V6VVT4jN?w2o=0p(L<5AVq)Zk)scrU7>1} ziJm)3$Q3n-r`23DupB#LdnYJhQl_Na2v9z$vL$ox^Ac%{&LRiSSS7KAu z-nUS>p(sM?nN{=SO3;6UK0J=o{JwCVMd!`)jr~Q0TfUIr?v3}ZzR3NCxGG&VfO|Ko zBwwa59&te#skoDqBT1%Dns{SqYxiR>OB@`Lt?igCnJgq)Hu1S5WLmm|h9dL~Q0ldu zcWS3HDo@oUS`%BFg^-kT;bP}a5Ct$I=dHd}U3a=Qp4+GqoLTLAed1rf!D=@xoLkid z_06Tv^IObD1T$&dWXhH|SKEY@X{60XU5~ZSlW;Eh^oMu;r21&FGIP=i+X4Qn>gS|6 z@t=LiL9=sy(%S+(0hrWy{7|nBJ;ZV2EN+80kjs*qwnI+;#QQI*9VfYR{%Iq;_eo>< z3fohxTVs(U{8m#3HXaH#%E4M)PFUr`B902ar{U1C7PYVE3oNE)h1v!t>IS5QjbwA3 zk$>NNA?=C_3RubeS=h;kq=9okaZb?*jlP`Z`{>+bRtY zc$-K-8L=T_S)Y+&6!2pnTGLJ1D?e72vbmllVer&RIJu&ttcZlo&TC^~5tLZcL@Bw& z%@SG^U+5MD_sETvcz;*t6gd1T)M#FvGrd*GKN&>zAj%4`8Xuk8BsMV+NE?kz>C<3m zUgP!o&@}svN?TP?PvX(^g~)ddXX}(1PmdFMyqUK!-a3(OWFR56uk%!rW?wGx0z*F9-X`3YcxXz-c4V%WAiTY_IKpv;v$zK+!@Dr(1GN{lx91SQ_*a;wNp*7Cbwq}x44OJdJ4QR9I%e#xZ0#jne@lP4kGNY- zb?^)h@(!Ac8u8Z0?sFaWj`0bdxz9gt^vzkxLQzuous;E)jEC#oF>YF4G#r$Os;Xjc zZR`ymVOOZ6CqvhT_GRi|LqjmFi@^yZODse2n|P%?YYn{s->mQ7y}>=3>6`~$czbEx zv7SI#S{Y+wiy!e(EVZ7VP(sDS6-dUmCB;9lUi=xCx~zRep~2yK3kfp|$L&@ekz_9! zSpUSjpN9}rpOq0}>lFE3zrC&R=#n)! znf&$I@^KXS4#E_7HLp9#b9C?1x)W{)Uk$(GE{hF<_M%-uPOK{u{@IwVc4SO-lI3!7 zki*ClUi9Nb^aR*==0M}KMg{ZQ8<&UbDC77Tvg@rozkfQAh~BjW!%V6_KmOibxbA%G z$7=MrDrEQb)fDpm?%H*?k+KmU&ImGd

-O7Th;{@_T4#k0_V^Og^mot%UqonTPGj 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

+} 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 z
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 literal 0 HcmV?d00001 From 5107cc02cc6c9dc36221e105bac6e36fec2d53c4 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sat, 21 Oct 2017 13:51:49 +0200 Subject: [PATCH 13/28] eigrp medium network topology --- chapter/layer3.tex | 6 ++++++ img/network/routing.jpg | Bin 0 -> 117277 bytes 2 files changed, 6 insertions(+) create mode 100644 img/network/routing.jpg diff --git a/chapter/layer3.tex b/chapter/layer3.tex index 37993dc..e6332dc 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -116,6 +116,12 @@ If a router is configured as a \texttt{Stud Router}. It only carries information \fig{eigrp/stuck-in-active}{stuck-in-active}{EIGRP Stuck in Active} +End result is neighbor ships between \gls{eigrp} routers is terminated and re-established again with a fresh set of route updates going out. + +Imagine a large \gls{eigrp} topology (3-digit number of routers) in a single domain and beginning with 1 neighbor-ship gets re-established. And then again and again and again. Can result in quickly several routers going Stuck-in-Active because \gls{eigrp} queries are not getting answered within a short time-frame when all routers needs to query \tsq{it}s own neighbors and their neighbors and their neighbors and so forth. Until their are no more neighbors to be queried up and down the hierarchical network topology. + +\fig[network/routing]{network-topology}{Medium sized network topology} + \newpage \section{RIP} diff --git a/img/network/routing.jpg b/img/network/routing.jpg new file mode 100644 index 0000000000000000000000000000000000000000..67cca59c83af73823405a208459aeb98e9499beb GIT binary patch literal 117277 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

Py8^?6@1`gAPe4fy@LiQ#(hfVec=_(-+B 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 UqJP|DZ-2b>?jw;K;b02Ys*eE Date: Sat, 21 Oct 2017 13:53:28 +0200 Subject: [PATCH 14/28] New acronym: sia - stuck in active --- acronyms.tex | 1 + 1 file changed, 1 insertion(+) diff --git a/acronyms.tex b/acronyms.tex index 0b4c16f..ee302a1 100644 --- a/acronyms.tex +++ b/acronyms.tex @@ -144,6 +144,7 @@ \newacronym{sdm}{SDM}{Security Device Manager} \newacronym{sdsl}{SDSL}{Symmetric Digital Subscriber Line} \newacronym{sftp}{SFTP}{Secure Shell File Transfer Protocol} +\newacronym{sia}{SIA}{Stuck in Active} \newacronym{sla}{SLA}{Service Level Agreement} \newacronym{slaac}{SLAAC}{Stateless Address Autoconfiguration} \newacronym{smtp}{SMTP}{Simpe Mail Transfer Protocol} From aab11423d668c165f8a9b913e36c283680adcd1b Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sat, 21 Oct 2017 16:13:23 +0200 Subject: [PATCH 15/28] New acronym: p2p --- acronyms.tex | 1 + 1 file changed, 1 insertion(+) diff --git a/acronyms.tex b/acronyms.tex index ee302a1..4dd3199 100644 --- a/acronyms.tex +++ b/acronyms.tex @@ -116,6 +116,7 @@ \newacronym{ospf}{OSPF}{Open Shortest Path First} \newacronym{ospf3}{OSPFv3}{Open Shortest Path First v3} \newacronym{ospfv3}{OSPFv3}{Open Shortest Path First v3} +\newacronym{p2p}{P-2-P}{Point-to-Point} \newacronym{pagp}{PAgP}{Port Aggregation Protocol} \newacronym{poe}{PoE}{Power over Ethernet} \newacronym{poe+}{PoE+}{Power over Ethernet Plus} From 4c7f53df643f6adc0907ffbce4a98a75be09a069 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sat, 21 Oct 2017 16:13:35 +0200 Subject: [PATCH 16/28] New acronym: rtp --- acronyms.tex | 1 + 1 file changed, 1 insertion(+) diff --git a/acronyms.tex b/acronyms.tex index 4dd3199..3b0eeaa 100644 --- a/acronyms.tex +++ b/acronyms.tex @@ -142,6 +142,7 @@ \newacronym{rpvst}{RPVST}{Per Vlan Rapid Spanning Tree} \newacronym{rpvst+}{RPVST+}{Per Vlan Rapid Spanning Tree Plus} \newacronym{rsvp}{RSVP}{Resource Reservation Protocol} +\newacronym{rtp}{RTP}{Reliable Transport Protocol} \newacronym{sdm}{SDM}{Security Device Manager} \newacronym{sdsl}{SDSL}{Symmetric Digital Subscriber Line} \newacronym{sftp}{SFTP}{Secure Shell File Transfer Protocol} From b74d40a94393de3c85e82ab60a1577a1568971b7 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sat, 21 Oct 2017 16:14:07 +0200 Subject: [PATCH 17/28] EIGRP Updates Exchanges added --- chapter/layer3.tex | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index e6332dc..90b21eb 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -109,7 +109,21 @@ If a router is configured as a \texttt{Stud Router}. It only carries information \section{Updates Exchange} - +\begin{enumerate} + \item Routers always exchange full topology table information when neighbor-ship is established. + \item Now refresh of data will be done. Unless topology updates occur. + \item If the topology changes. A partial update about the specific prefix is sent to neighbors.\footnote{Changes includes metric components, link statuses, change in announced topology information.} + \item If a neighbor-ship fail. Then a new adjacency is formed with a full topology exchange is done. +\end{enumerate} + +Always remember \gls{eigrp} does split-horizon by default on all active links when exchanging topology updates. + +Split-horizon is the \textit{famous} rule about not sending topology updates back to the router who sent the topology update in the first place. + +\gls{eigrp} uses \gls{rtp} to send topology updates and confirmation receipts. + +On \gls{p2p} interfaces. \gls{eigrp} simply send and ACK back to the sender. +On multi-access interface/segments. \gls{eigrp} sends updates to 224.0.0.10 and receivers reply with a unicast ACK message to the sender. \subsection[SIA]{Stuck-in-Active} \gls{eigrp} is known and feared for it being \texttt{Stuck-in-Active} mode when exchanging route updates between routers. The Stuck-in-Active state could cause problems on low end network gear with a low amount of resources available for the routing process. Which in cases could cause the network device to use all available resources when querying neighbor devices for updates. From ba19ce7b4c7bbec984fcdf1264234709b9b93c18 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sat, 21 Oct 2017 16:32:47 +0200 Subject: [PATCH 18/28] eigrp defaults --- chapter/layer3.tex | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index 90b21eb..31ba6d5 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -76,6 +76,38 @@ In effect the resulting shorter formula is this: \gls{eigrp} does it routing on a \texttt{next-hop} basis. Meaning it only stores information about a given routes next turn. And \textbf{not} about the destination itself. (Like \gls{ospf} does) +\subsubsection{Defaults} + +\gls{eigrp} runs on Cisco equipment with values of: +\begin{itemize} + \item \itemhead[]{Administrative Distance (Defaults)} + \begin{itemize} + \item Internal: 90 + \item External: 180 + \item Summary: 5 + \end{itemize} + \item \itemhead[]{Timers} + \begin{itemize} + \item Hello: 5s / 60s \footnote{The larger timer value applies at speeds <= T1 circuit bandwidth (a.k.a. lower-than-equal-to 1.544 Mbps)} + \item Hold: 15s / 180s + \end{itemize} + \item \itemhead[]{Supported Protocols} + \begin{itemize} + \item IP + \item IPX + \item AppleTalk + \end{itemize} + \item \itemhead[]{Other} + \begin{itemize} + \item Type: Distance Vector + \item Algorithm: \gls{dual} + \item Transport: IP/88 + \item Authentication: MD5 + \item Multicast IPv4: 224.0.0.10 + \item Multicast IPv6: + \end{itemize} +\end{itemize} + \subsubsection{Tables} \gls{eigrp} contains three tables for storing route information. From f3b2937d02023e0bea9256be5ae4737677430462 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sat, 21 Oct 2017 16:36:10 +0200 Subject: [PATCH 19/28] New acronym: ipx --- acronyms.tex | 1 + 1 file changed, 1 insertion(+) diff --git a/acronyms.tex b/acronyms.tex index 3b0eeaa..0ab561e 100644 --- a/acronyms.tex +++ b/acronyms.tex @@ -79,6 +79,7 @@ \newacronym{ip6}{IPv6}{Internet Protocol version 6} \newacronym{ipv4}{IPv4}{Internet Protocol version 4} \newacronym{ipv6}{IPv6}{Internet Protocol version 6} +\newacronym{ipx}{IPX}{Internetwork Packet Exchange} \newacronym{irc}{IRC}{Internet Relay Chat} \newacronym{irtf}{IRTF}{Internet Research Task Force} \newacronym{isis}{IS-IS}{Intermediate System to Intermediate System} From aed8aba89d8c2e77e7e8a031786e8432bbe8ec4f Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sat, 21 Oct 2017 17:11:52 +0200 Subject: [PATCH 20/28] Eigrp defaults: changed to use of acronyms inline --- chapter/layer3.tex | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index 31ba6d5..81c2b4d 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -93,18 +93,18 @@ In effect the resulting shorter formula is this: \end{itemize} \item \itemhead[]{Supported Protocols} \begin{itemize} - \item IP - \item IPX + \item \gls{ip} + \item \gls{ipx} \item AppleTalk \end{itemize} \item \itemhead[]{Other} \begin{itemize} \item Type: Distance Vector \item Algorithm: \gls{dual} - \item Transport: IP/88 + \item Transport: \gls{ip}/88 \item Authentication: MD5 - \item Multicast IPv4: 224.0.0.10 - \item Multicast IPv6: + \item Multicast \gls{ipv4}: 224.0.0.10 + \item Multicast \gls{ipv6}: \end{itemize} \end{itemize} From a9577163109aa203183c48fc0c98bd13ba00d1a1 Mon Sep 17 00:00:00 2001 From: Christoffer Hansen Date: Sun, 26 Nov 2017 11:17:04 +0100 Subject: [PATCH 21/28] Remove non-used '\' --- chapter/layer3.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index 81c2b4d..3ec00b2 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -53,7 +53,7 @@ Always remember the following points for Cisco devices:\cite{wiki:Administrative \newpage \section{EIGRP} -\ + \gls{eigrp} is Cisco's enhanced edition if \gls{igrp}. Dating back to 1993 and a leg for Cisco over other vendors back in the early days of the Internet. (.. hmm. And remember Cisco's implementation of \gls{ospf} was known to be unstable until the early 2000's.) The change to \gls{eigrp} from \gls{igrp} was due to the support of classless routing. (\gls{igrp} only supported classful routing of class A (/8), B (/16), and C (/24) networks.) From f575cc8ad31f35043335271de56c26cbd552b918 Mon Sep 17 00:00:00 2001 From: Christoffer Hansen Date: Sun, 26 Nov 2017 12:08:59 +0100 Subject: [PATCH 22/28] Fix wrong bracket type --- chapter/layer3.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index 3ec00b2..787c352 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -166,7 +166,7 @@ End result is neighbor ships between \gls{eigrp} routers is terminated and re-es Imagine a large \gls{eigrp} topology (3-digit number of routers) in a single domain and beginning with 1 neighbor-ship gets re-established. And then again and again and again. Can result in quickly several routers going Stuck-in-Active because \gls{eigrp} queries are not getting answered within a short time-frame when all routers needs to query \tsq{it}s own neighbors and their neighbors and their neighbors and so forth. Until their are no more neighbors to be queried up and down the hierarchical network topology. -\fig[network/routing]{network-topology}{Medium sized network topology} +\fig{network/routing}{network-topology}{Medium sized network topology} \newpage From a7f9674f8e5e393efab26372411b85cea72e8846 Mon Sep 17 00:00:00 2001 From: Christoffer Hansen Date: Sun, 26 Nov 2017 12:16:24 +0100 Subject: [PATCH 23/28] Changed margin size Margin 1.5 down to 1.25 cm Columsep 1.5 down to 1.25 cm Lendth between textarea and footnotes 2 down to 1.25 cm --- structure.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/structure.tex b/structure.tex index d666116..15cbf3e 100644 --- a/structure.tex +++ b/structure.tex @@ -187,11 +187,11 @@ } -\geometry{a4paper,margin=1.5cm} -\setlength{\columnsep}{1.5cm} %space between columns +\geometry{a4paper,margin=1.25cm} +\setlength{\columnsep}{1.25cm} %space between columns \setlength{\headheight}{15pt} \setlength{\footnotesep}{1mm} %space between footnotes: -\setlength{\skip\footins}{2cm} %space between the text body and the footnotes +\setlength{\skip\footins}{1.25cm} %space between the text body and the footnotes \setlist[itemize,1]{leftmargin=\dimexpr 26pt-.2cm} \setlist[itemize,2]{leftmargin=\dimexpr 26pt-.3cm} \lstset{style=mystyle} %apply lst styling From e0dcb687109a85ad303ed2db06a6d626062534af Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sun, 18 Feb 2018 00:04:04 +0100 Subject: [PATCH 24/28] Fix title level --- chapter/layer3.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index 787c352..a623b46 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -139,7 +139,7 @@ Stub routing effectively prevents the given stub site/router to be used for tran If a router is configured as a \texttt{Stud Router}. It only carries information about \tsq{it}s locally connected routes and a default route back to the transit routers. \tsq{It}s also omitted from being queried about networks is does not advertise. {\small (I.e. The Routes Query Process)}s -\section{Updates Exchange} +\subsection{Updates Exchange} \begin{enumerate} \item Routers always exchange full topology table information when neighbor-ship is established. From 6dd21ac51c94e5c5a0c601c9d6529b979dcf2301 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sun, 18 Feb 2018 00:23:02 +0100 Subject: [PATCH 25/28] Non-Cisco Implementations --- chapter/layer3.tex | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index a623b46..8d236d1 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -168,6 +168,22 @@ Imagine a large \gls{eigrp} topology (3-digit number of routers) in a single dom \fig{network/routing}{network-topology}{Medium sized network topology} +\subsection{Non-Cisco Implementations} + +This is always a particular point of discussion around \gls{eigrp}. Cisco has released \textit{some} information on how \gls{eigrp} works. +Not \textit{all} information. +And only as \textit{informational} RFCs. +This ensures Cisco \textit{still} has control of the development of the protocol. +Because they have retained ownership by only publishing informational RFCs. + +This has been a hindrance for the adoption of \gls{eigrp} in other vendors than Cisco them-self. + +Known adoptions of EIGRP includes: +\begin{itemize} + \item \gls{frr} targeted release 4\cite{https://github.com/FRRouting/frr/wiki/Frr-3.0-\%E2\%86\%92-4.0} + \item Quagga has known works for trying to implement \gls{eigrp}. Still not officially implemented, thou. +\end{itemize} + \newpage \section{RIP} From 707e48ceed9e0fd06d03c1fdc7922f31dfa4715b Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sun, 18 Feb 2018 01:53:28 +0100 Subject: [PATCH 26/28] New accronym frr --- acronyms.tex | 1 + 1 file changed, 1 insertion(+) diff --git a/acronyms.tex b/acronyms.tex index 0ab561e..9cb6ff1 100644 --- a/acronyms.tex +++ b/acronyms.tex @@ -47,6 +47,7 @@ \newacronym{fhrp}{FHRP}{First Hop Redundancy Protocol} \newacronym{fib}{FIB}{Forward Information Base} \newacronym{fix}{FIX}{Federal Internet Exchange} +\newacronym{frr}{FRR}{Free Range Routing daemon} \newacronym{fsm}{FSM}{Finite State Machine} \newacronym{ftp}{FTP}{File Transfer Protocol} \newacronym{ftps}{FTPS}{File Transfer Protocol Secure} From 89c7d3208c792187782e474e185766f893eba427 Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sun, 18 Feb 2018 01:53:39 +0100 Subject: [PATCH 27/28] Fix forgotten citation --- chapter/layer3.tex | 2 +- references-websites.bib | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index 8d236d1..1ff3a68 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -180,7 +180,7 @@ This has been a hindrance for the adoption of \gls{eigrp} in other vendors than Known adoptions of EIGRP includes: \begin{itemize} - \item \gls{frr} targeted release 4\cite{https://github.com/FRRouting/frr/wiki/Frr-3.0-\%E2\%86\%92-4.0} + \item \gls{frr} targeted release 4\cite{Frr30-4047:online} \item Quagga has known works for trying to implement \gls{eigrp}. Still not officially implemented, thou. \end{itemize} diff --git a/references-websites.bib b/references-websites.bib index 45d2c11..3094e1c 100644 --- a/references-websites.bib +++ b/references-websites.bib @@ -39,4 +39,13 @@ month = "September", year = "2011", note = "[Online; accessed on 24-June-2017]" +} + +@misc{Frr30-4047:online, + author = {Donald Sharp}, + title = {Frr 3.0 → 4.0 · FRRouting/frr Wiki}, + howpublished = {\url{https://github.com/FRRouting/frr/wiki/Frr-3.0-%E2%86%92-4.0}}, + month = {February}, + year = {2018}, + note = {(Accessed on 02/18/2018)} } \ No newline at end of file From 67abdbed7fdd4877df0468970c30d3b56911a69b Mon Sep 17 00:00:00 2001 From: Christoffer Date: Sun, 18 Feb 2018 02:06:50 +0100 Subject: [PATCH 28/28] Minimal description of eigrp route updates filtering --- chapter/layer3.tex | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/chapter/layer3.tex b/chapter/layer3.tex index 1ff3a68..b8da8ee 100644 --- a/chapter/layer3.tex +++ b/chapter/layer3.tex @@ -184,6 +184,10 @@ Known adoptions of EIGRP includes: \item Quagga has known works for trying to implement \gls{eigrp}. Still not officially implemented, thou. \end{itemize} +\subsection{Filtering} + +\gls{eigrp} routing updates can of course be filtered in- and outgoing direction on Cisco boxes by using prefix-lists and applying the prefix lists under the \texttt{router eigrp x} process. + \newpage \section{RIP}