Sync Fire Graph Generation

This commit is contained in:
Noah L. Schrick 2022-03-17 15:54:31 -05:00
parent 95abecb418
commit 37d8d60de6
19 changed files with 6593 additions and 182 deletions

0
.Rhistory Normal file
View File

View File

@ -1,13 +1,13 @@
\relax \relax
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{32}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{35}{}\protected@file@percent }
\newlabel{App:A}{{A}{32}} \newlabel{App:A}{{A}{35}}
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{33}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{36}{}\protected@file@percent }
\newlabel{App:B}{{B}{33}} \newlabel{App:B}{{B}{36}}
\@writefile{toc}{\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{33}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{36}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{33}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{36}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{A Sub-subsection in an Appendix}{33}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{A Sub-subsection in an Appendix}{36}{}\protected@file@percent }
\@setckpt{Appendices}{ \@setckpt{Appendices}{
\setcounter{page}{34} \setcounter{page}{37}
\setcounter{equation}{0} \setcounter{equation}{0}
\setcounter{enumi}{4} \setcounter{enumi}{4}
\setcounter{enumii}{0} \setcounter{enumii}{0}

6380
Chapter1.log Normal file

File diff suppressed because it is too large Load Diff

BIN
Chapter1.pdf Normal file

Binary file not shown.

View File

@ -54,7 +54,7 @@ The objectives of this thesis are:
\item{Allow for the creation of an infinite sized Attack Graph, assuming infinite storage} \item{Allow for the creation of an infinite sized Attack Graph, assuming infinite storage}
\item{Split Attack Graphs into subgraphs to simplify analysis of individual clusters} \item{Split Attack Graphs into subgraphs to simplify analysis of individual clusters}
\end{enumerate} \end{enumerate}
\item{Implement solutions to reduce state space explosion while remaining exhaustive and capturing all necessary information} \item{Implement solutions to reduce state space explosion for inseparable features while remaining exhaustive and capturing all necessary information}
\item{Extend RAGE to function for heterogeneous distributed computing environments} \item{Extend RAGE to function for heterogeneous distributed computing environments}
\item{Extend and utilize RAGE for compliance graph generation} \item{Extend and utilize RAGE for compliance graph generation}
\end{itemize} \end{itemize}

View File

@ -14,17 +14,17 @@
\citation{ainsworth_graph_2016} \citation{ainsworth_graph_2016}
\citation{berry_graph_2007} \citation{berry_graph_2007}
\citation{cook_rage_2018} \citation{cook_rage_2018}
\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces Color Coding a Small Network Based on Violations}}{11}{}\protected@file@percent }
\newlabel{fig:CC}{{3.2}{11}}
\@writefile{toc}{\contentsline {section}{\numberline {3.4}\bf Intermediate Database Storage}{11}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {3.4}\bf Intermediate Database Storage}{11}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.1}\it Memory Constraint Difficulties}{11}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces Color Coding a Small Network Based on Violations}}{12}{}\protected@file@percent }
\newlabel{fig:CC}{{3.2}{12}}
\citation{zhang_boosting_2017} \citation{zhang_boosting_2017}
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.1}\it Memory Constraint Difficulties}{12}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.2}\it Maximizing Performance with Intermediate Database Storage}{13}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {3.4.2}\it Maximizing Performance with Intermediate Database Storage}{13}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.3}\it Portability}{14}{}\protected@file@percent }
\citation{CVE-2019-10747} \citation{CVE-2019-10747}
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.3}\it Portability}{15}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {3.5}\bf Relational Operators}{15}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {3.5}\bf Relational Operators}{15}{}\protected@file@percent }
\@setckpt{Chapter3}{ \@setckpt{Chapter3}{
\setcounter{page}{16} \setcounter{page}{17}
\setcounter{equation}{0} \setcounter{equation}{0}
\setcounter{enumi}{4} \setcounter{enumi}{4}
\setcounter{enumii}{0} \setcounter{enumii}{0}

View File

@ -43,6 +43,8 @@ compound operator is inserted into the hash table values if it was not found, ra
for the hash table, so if the value was not found, the program would end execution. The assumption that this value can be inserted into the hash table is safe for the hash table, so if the value was not found, the program would end execution. The assumption that this value can be inserted into the hash table is safe
to make, since compound operators are conducted on numeric values, and matches the numeric type of the hash table. to make, since compound operators are conducted on numeric values, and matches the numeric type of the hash table.
Other changes involved updating classes (namely the Quality, EncodedQuality, ParameterizedQuality, NetworkState, and Keyvalue classes) to include a new member for the operator in question. Auxiliary functions related to this new member, such as prints and getters, were also added. In addition, preconditions were altered to include operator overloads to check the asset identifier, quality name, and quality values for the update process.
\TUsection{Color Coding} \TUsection{Color Coding}
As a visual aid for analysis purposes, color coding was another feature implemented as a postprocessing tool for RAGE. When viewing the output graph of RAGE, all states are As a visual aid for analysis purposes, color coding was another feature implemented as a postprocessing tool for RAGE. When viewing the output graph of RAGE, all states are
originally identical in appearance, apart from number of edges, edge IDs, and state IDs. To allow for visual differentiation, color coding can be enabled in the run script. originally identical in appearance, apart from number of edges, edge IDs, and state IDs. To allow for visual differentiation, color coding can be enabled in the run script.

View File

@ -1,30 +1,32 @@
\relax \relax
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 4: }{\bf \uppercase {SYNCHRONOUS FIRING}}}{16}{}\protected@file@percent } \@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 4: }{\bf \uppercase {SYNCHRONOUS FIRING}}}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {4.1}\bf Introduction}{16}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {4.1}\bf Introduction}{17}{}\protected@file@percent }
\citation{louthan_hybrid_2011} \citation{louthan_hybrid_2011}
\citation{louthan_hybrid_2011} \citation{louthan_hybrid_2011}
\citation{louthan_hybrid_2011} \citation{louthan_hybrid_2011}
\citation{louthan_hybrid_2011} \citation{louthan_hybrid_2011}
\citation{louthan_hybrid_2011} \citation{louthan_hybrid_2011}
\citation{cook_rage_2018} \citation{cook_rage_2018}
\@writefile{lof}{\contentsline {figure}{\numberline {4.1}{\ignorespaces A network without Synchronous Firing generating infeasible states}}{17}{}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {4.1}{\ignorespaces A network without Synchronous Firing generating infeasible states}}{18}{}\protected@file@percent }
\newlabel{fig:non-sync_ex}{{4.1}{17}} \newlabel{fig:non-sync_ex}{{4.1}{18}}
\@writefile{toc}{\contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{17}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{18}{}\protected@file@percent }
\newlabel{sec:sync-lit}{{4.1.1}{17}} \newlabel{sec:sync-lit}{{4.1.1}{18}}
\citation{cook_rage_2018} \citation{cook_rage_2018}
\citation{louthan_hybrid_2011} \citation{louthan_hybrid_2011}
\@writefile{toc}{\contentsline {section}{\numberline {4.2}\bf Necessary Alterations}{18}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {4.2}\bf Necessary Alterations}{19}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.2.1}\it GNU Bison and Flex}{18}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {4.2.1}\it GNU Bison and Flex}{19}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.2.2}\it PostgreSQL}{19}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {4.2.2}\it PostgreSQL}{20}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.2.3}\it Compound Operators}{19}{}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {4.2}{\ignorespaces Inclusion of Synchronous Firing into GNU Bison, GNU Flex, and the overall program}}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.2.4}\it Graph Generation}{19}{}\protected@file@percent } \newlabel{fig:bison-flex}{{4.2}{21}}
\@writefile{lof}{\contentsline {figure}{\numberline {4.2}{\ignorespaces Inclusion of Synchronous Firing into GNU Bison, GNU Flex, and the overall program}}{20}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {4.2.3}\it Compound Operators}{21}{}\protected@file@percent }
\newlabel{fig:bison-flex}{{4.2}{20}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.2.4}\it Graph Generation}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{20}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{20}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.2}\it Results}{20}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {4.3.2}\it Results}{22}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {4.3}{\ignorespaces Synchronous Firing in the Graph Generation Process}}{23}{}\protected@file@percent }
\newlabel{fig:sync-fire}{{4.3}{23}}
\@setckpt{Chapter4}{ \@setckpt{Chapter4}{
\setcounter{page}{21} \setcounter{page}{24}
\setcounter{equation}{0} \setcounter{equation}{0}
\setcounter{enumi}{4} \setcounter{enumi}{4}
\setcounter{enumii}{0} \setcounter{enumii}{0}
@ -39,7 +41,7 @@
\setcounter{subsubsection}{0} \setcounter{subsubsection}{0}
\setcounter{paragraph}{0} \setcounter{paragraph}{0}
\setcounter{subparagraph}{0} \setcounter{subparagraph}{0}
\setcounter{figure}{2} \setcounter{figure}{3}
\setcounter{table}{0} \setcounter{table}{0}
\setcounter{lofdepth}{1} \setcounter{lofdepth}{1}
\setcounter{lotdepth}{1} \setcounter{lotdepth}{1}

View File

@ -65,10 +65,29 @@ exploit. Figure \ref{fig:bison-flex} illustrates the incorporation of this featu
\end{figure} \end{figure}
\TUsubsection{PostgreSQL} \TUsubsection{PostgreSQL}
As seen in Figure \ref{fig:bison-flex}, Bison and Flex feed into the Model Database. With the addition of a new group identifier and the group keyword, minor alterations were needed to ensure compatibility
with the PostgreSQL database. One adjustment was to alter the exploit table in the SQL schema to include new columns of type ``TEXT". The second adjustment was to update the SQL builder functions. This
included updating the related functions such as exploit creations, exploit parsing, database fetching, and SQL string builders to add additional room for the group identifier.
\TUsubsection{Compound Operators} \TUsubsection{Compound Operators}
While not strictly necessary, compound operators greatly simplify the exploit file creation process.For example, implementing time as a feature into the tool without compound operators would increase its difficulty substantially. For each time
interval, a separate exploit would need to be created, with time flags to indicate the current
time. If time was increased monthly for a year, 12 different exploits would need to
be created, with flags to ensure that time jumps did not occur. Updating qualities without
compound operators also relied on flags, and clever, but convoluted methods for incrementing
values. Instead, compound operators were implemented, and this addition was discussed in Section \ref{sec:compops}.
\TUsubsection{Graph Generation} \TUsubsection{Graph Generation}
The implementation of synchronous firing in the graph generation process relies on a map to hold the fired status of groups. Previously, each iteration of the applicable exploit vector loop generated a new state. With synchronous firing, all assets should be updating the same state, rather than each independently creating a new state. To implement this, each iteration of the applicable exploit vector checks if the element is in a group and if that group has fired. If the element is in a group, the group has not been fired, and all group members are ready to fire, then all group members will loop through an update process to alter the single converged state. Otherwise, the loop will either continue to the next iteration if group conditions are not met, or will create a single state if it is not in a group. Figure \ref{fig:sync-fire} displays the synchronous fire approach.
\begin{figure}[htp]
\centering
\includegraphics[scale=0.5]{"./Chapter4_img/Sync-Fire.png"}
\vspace{.2truein} \centerline{}
\caption{Synchronous Firing in the Graph Generation Process}
\label{fig:sync-fire}
\end{figure}
\TUsection{Example Networks and Results} \TUsection{Example Networks and Results}
\TUsubsection{Example Networks} \TUsubsection{Example Networks}

1
Chapter4_img/Sync-Fire Normal file
View File

@ -0,0 +1 @@
<mxfile host="app.diagrams.net" modified="2022-03-17T04:29:48.701Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36" etag="ry8GXHVOdN1Jc8pM7tsV" version="17.1.2" type="device"><diagram id="K7JRYQhel2MMmrMd0Y0x" name="Page-1">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</diagram></mxfile>

BIN
Chapter4_img/Sync-Fire.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

View File

@ -1,36 +1,36 @@
\relax \relax
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{21}{}\protected@file@percent } \@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{21}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.2}\bf Necessary Components}{21}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {5.2}\bf Necessary Components}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.1}\it Serialization}{21}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {5.2.1}\it Serialization}{24}{}\protected@file@percent }
\citation{cook_rage_2018} \citation{cook_rage_2018}
\citation{li_concurrency_2019} \citation{li_concurrency_2019}
\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{22}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{22}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{22}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{22}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Zero}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task One}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Two}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Three}{22}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{23}{}\protected@file@percent }
\newlabel{fig:RAGE_chart}{{5.1}{23}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{24}{}\protected@file@percent }
\newlabel{fig:tasks}{{5.2}{24}}
\@writefile{toc}{\contentsline {subsubsection}{Task Four}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Five}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{25}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Worker Nodes}{25}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{Task Zero}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Root Node}{25}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{Task One}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Database Node}{25}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{Task Two}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{25}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{Task Three}{25}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{26}{}\protected@file@percent }
\newlabel{fig:RAGE_chart}{{5.1}{26}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{27}{}\protected@file@percent }
\newlabel{fig:tasks}{{5.2}{27}}
\@writefile{toc}{\contentsline {subsubsection}{Task Four}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Five}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Worker Nodes}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Root Node}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Database Node}{28}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{28}{}\protected@file@percent }
\@setckpt{Chapter5}{ \@setckpt{Chapter5}{
\setcounter{page}{26} \setcounter{page}{29}
\setcounter{equation}{0} \setcounter{equation}{0}
\setcounter{enumi}{4} \setcounter{enumi}{4}
\setcounter{enumii}{0} \setcounter{enumii}{0}

View File

@ -1,23 +1,23 @@
\relax \relax
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.1}\bf Small Networks}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {6.1}\bf Small Networks}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.2}\it Results}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.1.2}\it Results}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.2}\bf Large Networks}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {6.2}\bf Large Networks}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}\it Results}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}\it Results}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.2}\it Results}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.3.2}\it Results}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{26}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{27}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{30}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.2}\it Results}{27}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.4.2}\it Results}{30}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{27}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{30}{}\protected@file@percent }
\@setckpt{Chapter6}{ \@setckpt{Chapter6}{
\setcounter{page}{28} \setcounter{page}{31}
\setcounter{equation}{0} \setcounter{equation}{0}
\setcounter{enumi}{4} \setcounter{enumi}{4}
\setcounter{enumii}{0} \setcounter{enumii}{0}

View File

@ -1,8 +1,8 @@
\relax \relax
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{28}{}\protected@file@percent } \@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{31}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {7.1}\bf Future Work}{28}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {7.1}\bf Future Work}{31}{}\protected@file@percent }
\@setckpt{Chapter7}{ \@setckpt{Chapter7}{
\setcounter{page}{29} \setcounter{page}{32}
\setcounter{equation}{0} \setcounter{equation}{0}
\setcounter{enumi}{4} \setcounter{enumi}{4}
\setcounter{enumii}{0} \setcounter{enumii}{0}

View File

@ -32,9 +32,9 @@
\bibcite{cook_rage_2018}{9} \bibcite{cook_rage_2018}{9}
\bibcite{cook_scalable_2016}{10} \bibcite{cook_scalable_2016}{10}
\@writefile{toc}{{\hfill \ }} \@writefile{toc}{{\hfill \ }}
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{29}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{32}{}\protected@file@percent }
\@writefile{toc}{\addvspace {10pt}} \@writefile{toc}{\addvspace {10pt}}
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{29}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{32}{}\protected@file@percent }
\@writefile{toc}{{\hfill \ }} \@writefile{toc}{{\hfill \ }}
\bibcite{CVE-2019-10747}{11} \bibcite{CVE-2019-10747}{11}
\bibcite{dai_fpgp_2016}{12} \bibcite{dai_fpgp_2016}{12}
@ -54,4 +54,4 @@
\bibcite{zhang_boosting_2017}{26} \bibcite{zhang_boosting_2017}{26}
\bibstyle{plain} \bibstyle{plain}
\@input{Appendices.aux} \@input{Appendices.aux}
\gdef \@abspage@last{43} \gdef \@abspage@last{46}

View File

@ -1,7 +1,8 @@
{\vspace {\baselineskip }} {\vspace {\baselineskip }}
\contentsline {figure}{\numberline {3.1}{\ignorespaces Path Walking to State 14}}{9}{}% \contentsline {figure}{\numberline {3.1}{\ignorespaces Path Walking to State 14}}{9}{}%
\contentsline {figure}{\numberline {3.2}{\ignorespaces Color Coding a Small Network Based on Violations}}{11}{}% \contentsline {figure}{\numberline {3.2}{\ignorespaces Color Coding a Small Network Based on Violations}}{12}{}%
\contentsline {figure}{\numberline {4.1}{\ignorespaces A network without Synchronous Firing generating infeasible states}}{17}{}% \contentsline {figure}{\numberline {4.1}{\ignorespaces A network without Synchronous Firing generating infeasible states}}{18}{}%
\contentsline {figure}{\numberline {4.2}{\ignorespaces Inclusion of Synchronous Firing into GNU Bison, GNU Flex, and the overall program}}{20}{}% \contentsline {figure}{\numberline {4.2}{\ignorespaces Inclusion of Synchronous Firing into GNU Bison, GNU Flex, and the overall program}}{21}{}%
\contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{23}{}% \contentsline {figure}{\numberline {4.3}{\ignorespaces Synchronous Firing in the Graph Generation Process}}{23}{}%
\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{24}{}% \contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{26}{}%
\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{27}{}%

View File

@ -1,4 +1,4 @@
This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2021/Arch Linux) (preloaded format=pdflatex 2022.2.14) 6 MAR 2022 17:32 This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2021/Arch Linux) (preloaded format=pdflatex 2022.2.14) 17 MAR 2022 15:54
entering extended mode entering extended mode
restricted \write18 enabled. restricted \write18 enabled.
%&-line parsing enabled. %&-line parsing enabled.
@ -231,92 +231,98 @@ Package pdftex.def Info: ./Chapter3_img/PW.png used on input line 17.
<./Chapter3_img/CC.png, id=71, 658.46pt x 527.9725pt> <./Chapter3_img/CC.png, id=71, 658.46pt x 527.9725pt>
File: ./Chapter3_img/CC.png Graphic file (type png) File: ./Chapter3_img/CC.png Graphic file (type png)
<use ./Chapter3_img/CC.png> <use ./Chapter3_img/CC.png>
Package pdftex.def Info: ./Chapter3_img/CC.png used on input line 55. Package pdftex.def Info: ./Chapter3_img/CC.png used on input line 57.
(pdftex.def) Requested size: 469.75499pt x 376.66768pt. (pdftex.def) Requested size: 469.75499pt x 376.66768pt.
[10] [11 <./Chapter3_img/CC.png>] [12] [13] [10] [11] [12 <./Chapter3_img/CC.png>] [13]
[14]) [15] [14] [15]) [16]
\openout2 = `Chapter4.aux'. \openout2 = `Chapter4.aux'.
(./Chapter4.tex (./Chapter4.tex
CHAPTER 4. CHAPTER 4.
<./Chapter4_img/non-sync_ex.drawio.png, id=91, 1014.79124pt x 400.49625pt> <./Chapter4_img/non-sync_ex.drawio.png, id=94, 1014.79124pt x 400.49625pt>
File: ./Chapter4_img/non-sync_ex.drawio.png Graphic file (type png) File: ./Chapter4_img/non-sync_ex.drawio.png Graphic file (type png)
<use ./Chapter4_img/non-sync_ex.drawio.png> <use ./Chapter4_img/non-sync_ex.drawio.png>
Package pdftex.def Info: ./Chapter4_img/non-sync_ex.drawio.png used on input l Package pdftex.def Info: ./Chapter4_img/non-sync_ex.drawio.png used on input l
ine 17. ine 17.
(pdftex.def) Requested size: 469.75499pt x 185.3916pt. (pdftex.def) Requested size: 469.75499pt x 185.3916pt.
[16 [17
] [17 <./Chapter4_img/non-sync_ex.drawio.png>] [18] ] [18 <./Chapter4_img/non-sync_ex.drawio.png>] [19]
Overfull \hbox (30.42026pt too wide) in paragraph at lines 49--49 Overfull \hbox (30.42026pt too wide) in paragraph at lines 49--49
[] \OT1/cmtt/m/n/12 <exploit> ::= <group name> "group" "exploit" <identifier> [] \OT1/cmtt/m/n/12 <exploit> ::= <group name> "group" "exploit" <identifier>
, (<parameter-list>)= , (<parameter-list>)=
[] []
<./Chapter4_img/Bison-Flex.png, id=103, 1447.4075pt x 492.84125pt> <./Chapter4_img/Bison-Flex.png, id=106, 1447.4075pt x 492.84125pt>
File: ./Chapter4_img/Bison-Flex.png Graphic file (type png) File: ./Chapter4_img/Bison-Flex.png Graphic file (type png)
<use ./Chapter4_img/Bison-Flex.png> <use ./Chapter4_img/Bison-Flex.png>
Package pdftex.def Info: ./Chapter4_img/Bison-Flex.png used on input line 61. Package pdftex.def Info: ./Chapter4_img/Bison-Flex.png used on input line 61.
(pdftex.def) Requested size: 469.75499pt x 159.95341pt. (pdftex.def) Requested size: 469.75499pt x 159.95341pt.
[19]) [20 <./Chapter4_img/Bison-Flex.png (PNG copy)>] [20] [21 <./Chapter4_img/Bison-Flex.png (PNG copy)>]
<./Chapter4_img/Sync-Fire.png, id=115, 489.83pt x 1052.93375pt>
File: ./Chapter4_img/Sync-Fire.png Graphic file (type png)
<use ./Chapter4_img/Sync-Fire.png>
Package pdftex.def Info: ./Chapter4_img/Sync-Fire.png used on input line 85.
(pdftex.def) Requested size: 244.9144pt x 526.46559pt.
) [22] [23 <./Chapter4_img/Sync-Fire.png>]
\openout2 = `Chapter5.aux'. \openout2 = `Chapter5.aux'.
(./Chapter5.tex (./Chapter5.tex
CHAPTER 5. CHAPTER 5.
[21 [24
] ]
<./Chapter5_img/RAGE_Chart.png, id=115, 495.8525pt x 557.08125pt> <./Chapter5_img/RAGE_Chart.png, id=126, 495.8525pt x 557.08125pt>
File: ./Chapter5_img/RAGE_Chart.png Graphic file (type png) File: ./Chapter5_img/RAGE_Chart.png Graphic file (type png)
<use ./Chapter5_img/RAGE_Chart.png> <use ./Chapter5_img/RAGE_Chart.png>
Package pdftex.def Info: ./Chapter5_img/RAGE_Chart.png used on input line 43. Package pdftex.def Info: ./Chapter5_img/RAGE_Chart.png used on input line 43.
(pdftex.def) Requested size: 469.75499pt x 527.76213pt. (pdftex.def) Requested size: 469.75499pt x 527.76213pt.
<./Chapter5_img/horiz_task.drawio.png, id=116, 1125.20375pt x 738.76pt> <./Chapter5_img/horiz_task.drawio.png, id=127, 1125.20375pt x 738.76pt>
File: ./Chapter5_img/horiz_task.drawio.png Graphic file (type png) File: ./Chapter5_img/horiz_task.drawio.png Graphic file (type png)
<use ./Chapter5_img/horiz_task.drawio.png> <use ./Chapter5_img/horiz_task.drawio.png>
Package pdftex.def Info: ./Chapter5_img/horiz_task.drawio.png used on input li Package pdftex.def Info: ./Chapter5_img/horiz_task.drawio.png used on input li
ne 49. ne 49.
(pdftex.def) Requested size: 469.75499pt x 308.4171pt. (pdftex.def) Requested size: 469.75499pt x 308.4171pt.
[22] [23 <./Chapter5_img/RAGE_Chart.png>] [24 <./Chapter5_img/horiz_task.drawi [25] [26 <./Chapter5_img/RAGE_Chart.png>] [27 <./Chapter5_img/horiz_task.drawi
o.png>]) [25] o.png>]) [28]
\openout2 = `Chapter6.aux'. \openout2 = `Chapter6.aux'.
(./Chapter6.tex (./Chapter6.tex
CHAPTER 6. CHAPTER 6.
[26 [29
]) [27] ]) [30]
\openout2 = `Chapter7.aux'. \openout2 = `Chapter7.aux'.
(./Chapter7.tex (./Chapter7.tex
CHAPTER 7. CHAPTER 7.
) [28 ) [31
] (./Schrick-Noah_MS-Thesis.bbl [29 ] (./Schrick-Noah_MS-Thesis.bbl [32
] [30]) ] [33])
\c@appendixno=\count269 \c@appendixno=\count269
[31] [34]
\openout2 = `Appendices.aux'. \openout2 = `Appendices.aux'.
(./Appendices.tex [32 (./Appendices.tex [35
]) ])
[33] (./Schrick-Noah_MS-Thesis.aux (./Chapter1.aux) (./Chapter2.aux) [36] (./Schrick-Noah_MS-Thesis.aux (./Chapter1.aux) (./Chapter2.aux)
(./Chapter3.aux) (./Chapter4.aux) (./Chapter5.aux) (./Chapter6.aux) (./Chapter3.aux) (./Chapter4.aux) (./Chapter5.aux) (./Chapter6.aux)
(./Chapter7.aux) (./Appendices.aux)) ) (./Chapter7.aux) (./Appendices.aux)) )
(\end occurred inside a group at level 6) (\end occurred inside a group at level 6)
@ -329,13 +335,13 @@ CHAPTER 7.
### semi simple group (level 1) entered at line 52 (\begingroup) ### semi simple group (level 1) entered at line 52 (\begingroup)
### bottom level ### bottom level
Here is how much of TeX's memory you used: Here is how much of TeX's memory you used:
2188 strings out of 478353 2197 strings out of 478353
38986 string characters out of 5854635 39255 string characters out of 5854635
345043 words of memory out of 5000000 345054 words of memory out of 5000000
20254 multiletter control sequences out of 15000+600000 20262 multiletter control sequences out of 15000+600000
407326 words of font info for 40 fonts, out of 8000000 for 9000 407326 words of font info for 40 fonts, out of 8000000 for 9000
1141 hyphenation exceptions out of 8191 1141 hyphenation exceptions out of 8191
55i,7n,62p,308b,1305s stack positions out of 5000i,500n,10000p,200000b,80000s 55i,7n,62p,946b,1305s stack positions out of 5000i,500n,10000p,200000b,80000s
{/usr/share/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.en {/usr/share/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.en
c}</usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share/ c}</usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share/
texmf-dist/fonts/type1/public/amsfonts/cm/cmmi12.pfb></usr/share/texmf-dist/fon texmf-dist/fonts/type1/public/amsfonts/cm/cmmi12.pfb></usr/share/texmf-dist/fon
@ -344,10 +350,10 @@ ts/type1/public/amsfonts/cm/cmr12.pfb></usr/share/texmf-dist/fonts/type1/public
y10.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmti12.pfb></usr/ y10.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmti12.pfb></usr/
share/texmf-dist/fonts/type1/public/amsfonts/cm/cmtt12.pfb></usr/share/texmf-di share/texmf-dist/fonts/type1/public/amsfonts/cm/cmtt12.pfb></usr/share/texmf-di
st/fonts/type1/public/cm-super/sfrm1200.pfb> st/fonts/type1/public/cm-super/sfrm1200.pfb>
Output written on Schrick-Noah_MS-Thesis.pdf (43 pages, 436834 bytes). Output written on Schrick-Noah_MS-Thesis.pdf (46 pages, 474895 bytes).
PDF statistics: PDF statistics:
195 PDF objects out of 1000 (max. 8388607) 206 PDF objects out of 1000 (max. 8388607)
124 compressed objects within 2 object streams 130 compressed objects within 2 object streams
0 named destinations out of 1000 (max. 500000) 0 named destinations out of 1000 (max. 500000)
31 words of extra memory for PDF output out of 10000 (max. 10000000) 36 words of extra memory for PDF output out of 10000 (max. 10000000)

Binary file not shown.

View File

@ -26,71 +26,71 @@
\contentsline {section}{\numberline {3.2}\bf Compound Operators}{8}{}% \contentsline {section}{\numberline {3.2}\bf Compound Operators}{8}{}%
\contentsline {section}{\numberline {3.3}\bf Color Coding}{10}{}% \contentsline {section}{\numberline {3.3}\bf Color Coding}{10}{}%
\contentsline {section}{\numberline {3.4}\bf Intermediate Database Storage}{11}{}% \contentsline {section}{\numberline {3.4}\bf Intermediate Database Storage}{11}{}%
\contentsline {subsection}{\numberline {3.4.1}\it Memory Constraint Difficulties}{12}{}% \contentsline {subsection}{\numberline {3.4.1}\it Memory Constraint Difficulties}{11}{}%
\contentsline {subsection}{\numberline {3.4.2}\it Maximizing Performance with Intermediate Database Storage}{13}{}% \contentsline {subsection}{\numberline {3.4.2}\it Maximizing Performance with Intermediate Database Storage}{13}{}%
\contentsline {subsection}{\numberline {3.4.3}\it Portability}{14}{}% \contentsline {subsection}{\numberline {3.4.3}\it Portability}{15}{}%
\contentsline {section}{\numberline {3.5}\bf Relational Operators}{15}{}% \contentsline {section}{\numberline {3.5}\bf Relational Operators}{15}{}%
\contentsline {chapter}{\numberline {CHAPTER 4: }{\bf \uppercase {SYNCHRONOUS FIRING}}}{16}{}% \contentsline {chapter}{\numberline {CHAPTER 4: }{\bf \uppercase {SYNCHRONOUS FIRING}}}{17}{}%
\contentsline {section}{\numberline {4.1}\bf Introduction}{16}{}% \contentsline {section}{\numberline {4.1}\bf Introduction}{17}{}%
\contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{17}{}% \contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{18}{}%
\contentsline {section}{\numberline {4.2}\bf Necessary Alterations}{18}{}% \contentsline {section}{\numberline {4.2}\bf Necessary Alterations}{19}{}%
\contentsline {subsection}{\numberline {4.2.1}\it GNU Bison and Flex}{18}{}% \contentsline {subsection}{\numberline {4.2.1}\it GNU Bison and Flex}{19}{}%
\contentsline {subsection}{\numberline {4.2.2}\it PostgreSQL}{19}{}% \contentsline {subsection}{\numberline {4.2.2}\it PostgreSQL}{20}{}%
\contentsline {subsection}{\numberline {4.2.3}\it Compound Operators}{19}{}% \contentsline {subsection}{\numberline {4.2.3}\it Compound Operators}{21}{}%
\contentsline {subsection}{\numberline {4.2.4}\it Graph Generation}{19}{}% \contentsline {subsection}{\numberline {4.2.4}\it Graph Generation}{21}{}%
\contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{20}{}% \contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{22}{}%
\contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{20}{}% \contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{22}{}%
\contentsline {subsection}{\numberline {4.3.2}\it Results}{20}{}% \contentsline {subsection}{\numberline {4.3.2}\it Results}{22}{}%
\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{21}{}% \contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{24}{}%
\contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{21}{}% \contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{24}{}%
\contentsline {section}{\numberline {5.2}\bf Necessary Components}{21}{}% \contentsline {section}{\numberline {5.2}\bf Necessary Components}{24}{}%
\contentsline {subsection}{\numberline {5.2.1}\it Serialization}{21}{}% \contentsline {subsection}{\numberline {5.2.1}\it Serialization}{24}{}%
\contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{22}{}% \contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{25}{}%
\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{22}{}% \contentsline {section}{\numberline {5.3}\bf Tasking Approach}{25}{}%
\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{22}{}% \contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{25}{}%
\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{22}{}% \contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{25}{}%
\contentsline {subsubsection}{Communication Structure}{22}{}%
\contentsline {subsubsection}{Task Zero}{22}{}%
\contentsline {subsubsection}{Task One}{22}{}%
\contentsline {subsubsection}{Task Two}{22}{}%
\contentsline {subsubsection}{Task Three}{22}{}%
\contentsline {subsubsection}{Task Four}{25}{}%
\contentsline {subsubsection}{Task Five}{25}{}%
\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{25}{}%
\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{25}{}%
\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{25}{}%
\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{25}{}%
\contentsline {subsubsection}{Communication Structure}{25}{}% \contentsline {subsubsection}{Communication Structure}{25}{}%
\contentsline {subsubsection}{Worker Nodes}{25}{}% \contentsline {subsubsection}{Task Zero}{25}{}%
\contentsline {subsubsection}{Root Node}{25}{}% \contentsline {subsubsection}{Task One}{25}{}%
\contentsline {subsubsection}{Database Node}{25}{}% \contentsline {subsubsection}{Task Two}{25}{}%
\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{25}{}% \contentsline {subsubsection}{Task Three}{25}{}%
\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{26}{}% \contentsline {subsubsection}{Task Four}{28}{}%
\contentsline {section}{\numberline {6.1}\bf Small Networks}{26}{}% \contentsline {subsubsection}{Task Five}{28}{}%
\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{26}{}% \contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{28}{}%
\contentsline {subsection}{\numberline {6.1.2}\it Results}{26}{}% \contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{28}{}%
\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{26}{}% \contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{28}{}%
\contentsline {section}{\numberline {6.2}\bf Large Networks}{26}{}% \contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{28}{}%
\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{26}{}% \contentsline {subsubsection}{Communication Structure}{28}{}%
\contentsline {subsection}{\numberline {6.2.2}\it Results}{26}{}% \contentsline {subsubsection}{Worker Nodes}{28}{}%
\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{26}{}% \contentsline {subsubsection}{Root Node}{28}{}%
\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{26}{}% \contentsline {subsubsection}{Database Node}{28}{}%
\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{26}{}% \contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{28}{}%
\contentsline {subsection}{\numberline {6.3.2}\it Results}{26}{}% \contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{29}{}%
\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{26}{}% \contentsline {section}{\numberline {6.1}\bf Small Networks}{29}{}%
\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{26}{}% \contentsline {subsection}{\numberline {6.1.1}\it Test Information}{29}{}%
\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{27}{}% \contentsline {subsection}{\numberline {6.1.2}\it Results}{29}{}%
\contentsline {subsection}{\numberline {6.4.2}\it Results}{27}{}% \contentsline {subsection}{\numberline {6.1.3}\it Analysis}{29}{}%
\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{27}{}% \contentsline {section}{\numberline {6.2}\bf Large Networks}{29}{}%
\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{28}{}% \contentsline {subsection}{\numberline {6.2.1}\it Test Information}{29}{}%
\contentsline {section}{\numberline {7.1}\bf Future Work}{28}{}% \contentsline {subsection}{\numberline {6.2.2}\it Results}{29}{}%
\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{29}{}%
\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{29}{}%
\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{29}{}%
\contentsline {subsection}{\numberline {6.3.2}\it Results}{29}{}%
\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{29}{}%
\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{29}{}%
\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{30}{}%
\contentsline {subsection}{\numberline {6.4.2}\it Results}{30}{}%
\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{30}{}%
\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{31}{}%
\contentsline {section}{\numberline {7.1}\bf Future Work}{31}{}%
{\hfill \ } {\hfill \ }
\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{29}{}% \contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{32}{}%
\addvspace {10pt} \addvspace {10pt}
\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{29}{}% \contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{32}{}%
{\hfill \ } {\hfill \ }
\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{32}{}% \contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{35}{}%
\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{33}{}% \contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{36}{}%
\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{33}{}% \contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{36}{}%
\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{33}{}% \contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{36}{}%
\contentsline {subsubsection}{A Sub-subsection in an Appendix}{33}{}% \contentsline {subsubsection}{A Sub-subsection in an Appendix}{36}{}%