\chapter{Layer 3} \section{Routed Network} \section{OSPF} \section{IS-IS} \section{EIGRP} \section{RIP} \section{Static} \section{BGP} \wikicommons{BGP_FSM} The protocol of the internet used since 1994.\cite{wiki:Border_Gateway_Protocol} \begin{itemize} \item \itemhead{Properties} \begin{itemize} \item Uses tcp/179 as \gls{dst} port \item Sends keep-alive message every 1 minute \item Keep-alive message is 19 byte \end{itemize} \item \itemhead{Route exchange} \begin{itemize} \item \itemhead{Route-maps mechanism} \begin{itemize} \item Routes can be aggregated between \Glspl{as}. \item Properties can be changed on the fly by mathing \begin{enumerate*}[label={\alph*)}] \item \Gls{bgp} communities, \item \Gls{ip} prefix, \item \Gls{bgp} as-path, \end{enumerate*} \end{itemize} \item \end{itemize} \item \itemhead{States} \begin{enumerate} \item Idle: \Gls{bgp} while initializing refuses all incoming connections. Will initiate \Gls{tcp} connection to peer. \item Connect: Waits for \Gls{tcp} connection. If \Gls{tcp} is established goes to state OpenSent. If \Gls{tcp} is \textit{un}successful ConnectRetry timer is started and then goes to Active state. \item Active: When ConnectRetry counter reaches 0 goes to state Connect. \item OpenSent: Sends \gls{msg} to remote node. Waits for reply \gls{msg} before going to OpenConfirm. \item OpenConfirm: Nodes exchange keepalive \glspl{msg} and goes to Established state if successful. \item Established: Nodes can now exchange KeepAlive, Updates, and Notification \glspl{msg}. \end{enumerate} \end{itemize}