\section{System and Network Monitoring}
\begin{frame}
   {Monitoring Tools}
   \begin{itemize}
      \item
      Many command line utilities
      \begin{itemize}
         \item
         Will show later for each subsystem
      \end{itemize}
      \item
      Most draw information from \filelink{/proc} or
      \filelink{/sys}
      \item
      Graphical system monitors available on all
      \textbf{Linux} distributions:
      \begin{itemize}
         \item \textbf{gnome-system-monitor}
         \item \textbf{ksysguard}
      \end{itemize}

   \end{itemize}

\end{frame}

\cprotect\note{

   While there are a number of graphical system monitors
   that hide many of the details, we will consider primarily
   the command line tools in this course.

   \textbf{Linux} distributions come with many standard
   performance and profiling tools already installed. Many of
   them are familiar from other \textbf{UNIX}-like operating
   systems while some were developed specifically for
   \textbf{Linux}.

   Most of these tools make use of mounted
   \textbf{pseudo-filesystems}, especially \filelink{/proc}
   and secondarily \filelink{/sys}, both of which we have
   already discussed when examining filesystems, and
   will revisit when we take up kernel
   configuration.  We will look at them both.

   The \filelink{/proc} and \filelink{/sys}
   pseudo-filesystems contain a lot of information about the
   system.  Furthermore, many of the entries in these
   directory trees are writable and can be used to change
   system behavior; in most cases this requires a
   \textbf{root} user.

   Like \filelink{/dev},
   these are pseudo-filesystems because they exist totally in
   memory; if you look at the disk partition when the system
   is not running there will be only an empty directory which
   is used as a mount point.

   Furthermore, the information displayed is gathered only
   when it is looked at; there is no constant or periodic
   polling to update entries.

}

\begin{frame}
   {Network Monitoring Tools}

   \begin{table}[H]
      \caption{Network Monitoring Utilities}
      \vspace{-15pt}
   \end{table}

   %%   \small{\begin{tcolorbox}[tabularx={p{0.15\textwidth}|X|p{0.15\textwidth}}]
   \small{\begin{tcolorbox}[tabularx={X|X|X}]

         \textbf{Utility}                                 &

         \textbf{Purpose}                                 &

         \textbf{Package}                                   \\ \hline\hline

         \textbf{netstat}                                 &

         Detailed networking statistics                   &

         netstat                                            \\ \hline

         \textbf{iptraf}                                  &

         Gather information on network interfaces         &

         iptraf                                             \\ \hline

         \textbf{tcpdump}                                 &

         Detailed analysis of network packets and traffic &

         tcpdump                                            \\ \hline

         \textbf{wireshark}                               &

         Detailed network traffic analysis                &

         wireshark
      \end{tcolorbox}}

\end{frame}

\cprotect\note{

   Given time constraints, it is not possible to include
   detailed discussion of network monitoring in this course.
   However, we do discuss network configuration in some
   detail later.

   This topic is discussed in the course that is mean to
   follow this one: \textbf{LFS311: Linux for System
      Engineers}.


}
