Start with explenation of partitions
[tt2015.git] / a2 / 1cases.tex
index 172ad03..d77edb7 100644 (file)
@@ -1,5 +1,4 @@
 \subsection{Preflight checklist}
-
 Before actual certification is commenced we perform a manual test using a 
 checklist.
 If any of the checks fail we immediately reject the product.
@@ -8,8 +7,7 @@ are to be run in a terminal. Commands prefixed with a \texttt{\#} should be run
 with root permissions. Commands prefixed with a \texttt{\$} should be run with
 user permissions.
 
-\begin{table}[H]
-\begin{tabularx}{\linewidth}{|l|X|}
+\begin{longtabu}{|l|X|}
        \hline
        Check 1 & Get the SUT in a workable state. \\
        \hline
@@ -36,7 +34,6 @@ user permissions.
                \end{enumerate}\\
        \hline
        Passed & \textit{Yes/No}\\
-       \hline \hline
        Check 3 & Initialize the testing environment.\\
        \hline
        Course of action &
@@ -82,10 +79,8 @@ user permissions.
        \hline
        Passed & \textit{Yes/No}\\
        \hline
-\end{tabularx}
-\end{table}
-
-\newpage
+       \caption{Preflight checklist\label{tbl:preflight}}
+\end{longtabu}
 
 \subsection{Testing of SUT}
 The SUT is a series of services for other computer programs with no end-user
@@ -118,13 +113,32 @@ these partitions are given.
        \item Bits flipped in \emph{payload}
                \begin{enumerate}
                        \item Correct payload
-                       \item Payload with even number of bits flipped
+                       \item Payload with bit flips 
                        \item Payload with odd number of bits flipped
                \end{enumerate}
        \item Correct or Incorrect \emph{checksum}
        \item Packets received in or out of order, or missing packets
 \end{enumerate}
 
+These partitions were chosen since they correspond to key parts of the TCP
+specification. 
+
+TCP segments are send over a TCP connection from a \emph{source} to a \emph{destination port}. Therefore segments which are received which have a 
+source or destination port set to an incorrect value should not be regarded
+as segments belonging to the connection. 
+
+TCP uses a \emph{checksum} to catch any error introduced in headers, when this
+checksum does not match the actual computed checksum the packet should be
+disregarded.
+
+The TCP checksum is also an inherently weak one, as it is simply the 
+bitwise negation of the addition in ones complement arithmetic 
+of all 16 bit words in the header and data of the segment (excluding the
+header). Therefore any bit error where the ones complement value of one word
+increases by one, and the value of another decreases by one, is undetected. 
+The SUT should exhibit the same behavior and accept packets where these type
+of bit error occur.
+
 \textbf{hier iets over waarom deze partities relevant zijn! Waarom odd en 
 even number of bits flipped bijv interessant?}
 \bigskip
@@ -231,5 +245,3 @@ covered and the number of individual tests is still feasible.
 %      \end{enumerate} \\\hline
 %\end{tabularx}
 %\end{table}
-
-\newpage