Expected result en test-case table matchen nu.
authorcharlie <charlie.gerhardus@student.ru.nl>
Sat, 14 Nov 2015 19:47:32 +0000 (20:47 +0100)
committercharlie <charlie.gerhardus@student.ru.nl>
Sat, 14 Nov 2015 19:48:10 +0000 (20:48 +0100)
11 test-cases totaal nu.
Verhaal over transactie iets uitgebreid.

a2/1cases.tex

index 14900c9..b785956 100644 (file)
@@ -170,18 +170,27 @@ either reassemble them when the missing packet has arrived or request them to
 be resend when the  Missing segments should be re-requested (by ACK-ing
 the correct sequence number).  
 
-A single request consists of a number of packets that sent a
-to the \emph{echo-server} and back. The TCP specification state that such a
+A single request consists of a number of packets that are sent
+to the \emph{echo-server} and back. The TCP specification states that such a
 transaction requires the following messages.
 
-\begin{center}
+\begin{flushleft}
        Script $-$ SYN $A$ $\rightarrow$ SUT \\
        Script $\leftarrow$ SYN-ACK $(A+1)$ $B$ $-$ SUT \\
        Script $-$ ACK $(A+1)$ $(B+1)$ $\rightarrow$ SUT \\
        Script $-$ ACK-PUSH $(A+1)$ $(B+2)$ \emph{msg} $\rightarrow$ SUT \\
        Script $\leftarrow$ ACK $(A+2+msg_{length})$ $(B+3)$ $-$ SUT \\
        Script $\leftarrow$ ACK-PUSH $(A+2+msg_{length})$ $(B+3)$ \emph{msg} $-$ SUT
-\end{center}
+\end{flushleft}
+
+%
+% RS ook? FIN?
+%
+
+When the \emph{SUT} has received the ACK containing the message it's passed 
+trough to the \emph{echo-server}. The \emph{echo-server} will proceed by ordering 
+the \emph{SUT} to respond by sending the exact same message. When this happens 
+the \emph{SUT} has to construct the last packet in the transaction listed above.
 
 \bigskip
 
@@ -302,28 +311,31 @@ described in Table~\ref{tbl:testpairs}.
                size of the payload of that segment.\\  \hline
        \doTCC & An ACK\# of the sequence number of the last send segment + the
                size of the payload of that segment.\\  \hline
+       \doTCC & An ACK\# of the sequence number of the swapped packet with the lowest sequence number. \\ \hline
        \doTCC & The ACK\# for the SEQ\# of the first segments which is
                corrupted is received for each consecutive segment send.\\  
        $\vdots$ & \\  
-       \setcounter{TCC}{14}
-       \doTCC & The ACK\# for the SEQ\# of the first segments which is
-               corrupted is received for each consecutive segment send.\\  \hline
-       \doTCC & The segment is not attributed to the current connection
-               and therefore no ACK\# is received. \\  \hline
-       \doTCC & The ACK\# for the SEQ\# of the first segments which is
-               corrupted is received for each consecutive segment send.\\  \hline
-       \doTCC & The ACK\# for the SEQ\# of the first segments which is
-               corrupted is received for each consecutive segment send.\\  \hline
-       \doTCC & The segment is not attributed to the current connection
-               and therefore no ACK\# is received. \\  \hline
+       \setcounter{TCC}{10}
        \doTCC & The ACK\# for the SEQ\# of the first segments which is
                corrupted is received for each consecutive segment send.\\  \hline
-       \doTCC & The ACK\# for the SEQ\# of the first segments which is
-               corrupted is received for each consecutive segment send.\\ \hline
-       \doTCC & The ACK\# for the SEQ\# of the first segments which is
-               corrupted is received for each consecutive segment send.\\  \hline
-       \doTCC & The ACK\# for the SEQ\# of the first segments which is
-               corrupted is received for each consecutive segment send.\\ \hline
+           \doTCC & An ACK\# of the sequence number of the last send segment + the
+                   size of the payload of that segment.\\  \hline 
+%      \doTCC & The segment is not attributed to the current connection
+%              and therefore no ACK\# is received. \\  \hline
+%      \doTCC & The ACK\# for the SEQ\# of the first segments which is
+%              corrupted is received for each consecutive segment send.\\  \hline
+%      \doTCC & The ACK\# for the SEQ\# of the first segments which is
+%              corrupted is received for each consecutive segment send.\\  \hline
+%      \doTCC & The segment is not attributed to the current connection
+%              and therefore no ACK\# is received. \\  \hline
+%      \doTCC & The ACK\# for the SEQ\# of the first segments which is
+%              corrupted is received for each consecutive segment send.\\  \hline
+%      \doTCC & The ACK\# for the SEQ\# of the first segments which is
+%              corrupted is received for each consecutive segment send.\\ \hline
+%      \doTCC & The ACK\# for the SEQ\# of the first segments which is
+%              corrupted is received for each consecutive segment send.\\  \hline
+%      \doTCC & The ACK\# for the SEQ\# of the first segments which is
+%              corrupted is received for each consecutive segment send.\\ \hline
     \end{tabular}
 \caption{Expected results of test cases}
 \label{tbl:testcases}
@@ -334,81 +346,120 @@ described in Table~\ref{tbl:testpairs}.
 % verdieping Mercator
 
 
-%\begin{longtable}{|p{.2\linewidth}|p{.8\linewidth}|}
-       %\hline
-       %Nr & 1 \\\hline
-       %Title & Single valid request with 1byte payload. \\\hline
-       %Input & Generated packets. \\\hline
-       %Expected output & Packets echoed back by Echo-Server. \\\hline
-       %\multirow{2}{*}{Course of action}
- %& 1. Use the steps listed above in order to start the SUT. \\
- %& 2. Execute the script by running \texttt{\# code/client/tests/1.py} \\\hline
-       %Valid trace & Verify that the script prints 'Success'. \\\hline
-       %\hline
-%      
-       %Nr & 2 \\\hline
-       %Title & Single valid request with 65495bytes payload. \\\hline
-       %Input & Generated packets. \\\hline
-       %Expected output & Packets echoed back by Echo-Server. \\\hline
-       %\multirow{2}{*}{Course of action}
-       %& 1. Use the steps listed above in order to start the SUT. \\
-       %& 2. Execute the script by running \texttt{\# code/client/tests/2.py} \\\hline
-       %Valid trace & Verify that the script prints 'Success'. \\\hline
-       %\hline
-%      
-       %Nr & 3 \\\hline
-       %Title & 5 valid requests with 1byte payload. \\\hline
-       %Input & Generated packets. \\\hline
-       %Expected output & Packets echoed back by Echo-Server, in the same order as the client sent them. \\\hline
-       %\multirow{2}{*}{Course of action}
-       %& 1. Use the steps listed above in order to start the SUT. \\
-       %& 2. Execute the script by running \texttt{\# code/client/tests/3.py} \\\hline
-       %Valid trace & Verify that the script prints 'Success'. \\\hline
-       %\hline
-%      
-       %Nr & 4 \\\hline
-       %Title & 5 valid requests with 65495bytes payload. \\\hline
-       %Input & Generated packets with 65495bytes payload. \\\hline
-       %Expected output & Packets echoed back by Echo-Server, in the same order as the client sent them. \\\hline
-       %\multirow{2}{*}{Course of action}
-       %& 1. Use the steps listed above in order to start the SUT. \\
-       %& 2. Execute the script by running \texttt{\# code/client/tests/4.py} \\\hline
-       %Valid trace & Verify that the script prints 'Success'. \\\hline
-       %\hline
-%      
-       %Nr & 5 \\\hline
-       %Title & 5 valid requests with 1byte payload sent out of order. \\\hline
-       %Input & Generated packets with 1byte payload, two packets are swapped in position. \\\hline
-       %Expected output & All requests sent up to and including
-        %the swapped packet with the lowest sequence number, the remaining packets are dropped. \\\hline
-       %\multirow{2}{*}{Course of action}
-       %& 1. Use the steps listed above in order to start the SUT. \\
-       %& 2. Execute the script by running \texttt{\# code/client/tests/5.py} \\\hline
-       %Valid trace & Verify that the script prints 'Success'. \\\hline
-       %\hline
-%      
-       %Nr & 6 \\\hline
-       %Title & Request with corrupted source port. \\\hline
-       %Input & Generated packets with 1byte payload, in these packets the source port number is increased by one. \\\hline
-       %Expected output & - \\\hline
-       %\multirow{2}{*}{Course of action}
-       %& 1. Use the steps listed above in order to start the SUT. \\
-       %& 2. Execute the script by running \texttt{\# code/client/tests/6.py} \\\hline
-       %Valid trace & Verify that the script prints 'Success'. \\\hline
-       %\hline
-%      
-%      
-       %Nr & 6 \\\hline
-       %Title & Request with corrupted destination port. \\\hline
-       %Input & Generated packets with 1byte payload, in these packets the destination port number is increased by one. \\\hline
-       %Expected output & - \\\hline
-       %\multirow{2}{*}{Course of action}
-       %& 1. Use the steps listed above in order to start the SUT. \\
-       %& 2. Execute the script by running \texttt{\# code/client/tests/6.py} \\\hline
-       %Valid trace & Verify that the script prints 'Success'. \\\hline
-       %\hline
-%      
-%\end{longtable}
+\begin{longtable}{|p{.2\linewidth}|p{.8\linewidth}|}
+       \hline
+       Nr & 1 \\\hline
+       Title & Single valid request with 1byte payload. \\\hline
+       Input & Generated packets. \\\hline
+       Expected output & Packets echoed back by Echo-Server. \\\hline
+       \multirow{2}{*}{Course of action}
+ & 1. Use the steps listed above in order to start the SUT. \\
+ & 2. Execute the script by running \texttt{\# code/client/tests/1.py} \\\hline
+       Valid trace & Verify that the script prints 'Success'. \\\hline
+       \hline
+       
+       Nr & 2 \\\hline
+       Title & Single valid request with 65495bytes payload. \\\hline
+       Input & Generated packets. \\\hline
+       Expected output & Packets echoed back by Echo-Server. \\\hline
+       \multirow{2}{*}{Course of action}
+       & 1. Use the steps listed above in order to start the SUT. \\
+       & 2. Execute the script by running \texttt{\# code/client/tests/2.py} \\\hline
+       Valid trace & Verify that the script prints 'Success'. \\\hline
+       \hline
+       
+       Nr & 3 \\\hline
+       Title & 5 valid requests with 1byte payload. \\\hline
+       Input & Generated packets. \\\hline
+       Expected output & Packets echoed back by Echo-Server, in the same order as the client sent them. \\\hline
+       \multirow{2}{*}{Course of action}
+       & 1. Use the steps listed above in order to start the SUT. \\
+       & 2. Execute the script by running \texttt{\# code/client/tests/3.py} \\\hline
+       Valid trace & Verify that the script prints 'Success'. \\\hline
+       \hline
+
+       Nr & 4 \\\hline
+       Title & 5 valid requests with 65495bytes payload. \\\hline
+       Input & Generated packets with 65495bytes payload. \\\hline
+       Expected output & Packets echoed back by Echo-Server, in the same order as the client sent them. \\\hline
+       \multirow{2}{*}{Course of action}
+       & 1. Use the steps listed above in order to start the SUT. \\
+       & 2. Execute the script by running \texttt{\# code/client/tests/4.py} \\\hline
+       Valid trace & Verify that the script prints 'Success'. \\\hline
+       \hline
+
+       Nr & 5 \\\hline
+       Title & 5 valid requests with 1byte payload sent out of order. \\\hline
+       Input & Generated packets with 1byte payload, two packets are swapped in position. \\\hline
+       Expected output & All requests sent up to and including
+       the swapped packet with the lowest sequence number, the remaining packets are ropped. \\\hline
+       \multirow{2}{*}{Course of action}
+       & 1. Use the steps listed above in order to start the SUT. \\
+       & 2. Execute the script by running \texttt{\# code/client/tests/5.py} \\\hline
+       Valid trace & Verify that the script prints 'Success'. \\\hline
+       \hline
+       
+       Nr & 6 \\\hline
+       Title & Request with corrupted source port. \\\hline
+       Input & Generated packets with 1byte payload, in these packets the source port Number is increased by one. \\\hline
+       Expected output & The Echo server will receive the packet but is not able to respond with a ACK, this will result in a connection time out. \\\hline
+       \multirow{2}{*}{Course of action}
+       & 1. Use the steps listed above in order to start the SUT. \\
+       & 2. Execute the script by running \texttt{\# code/client/tests/6.py} \\\hline
+       Valid trace & Verify that the script prints 'Success'. \\\hline
+       \hline
+       
+       
+       Nr & 7 \\\hline
+       Title & Request with corrupted destination port. \\\hline
+       Input & Generated packets with 1byte payload, in these packets the destination port number is increased by one. \\\hline
+       Expected output & The packets will never reach the Echo-server resulting in a connection time-out.  \\\hline
+       \multirow{2}{*}{Course of action}
+       & 1. Use the steps listed above in order to start the SUT. \\
+       & 2. Execute the script by running \texttt{\# code/client/tests/7.py} \\\hline
+       Valid trace & Verify that the script prints 'Success'. \\\hline
+       \hline
+       
+       Nr & 8 \\\hline
+       Title & Request with corrupted source address. \\\hline
+       Input & Generated packets with 1byte payload, in these packets the source address is replaced with 255.255.255.255. \\\hline
+       Expected output & The Echo-server will receive packet and is unable to respond with a ACK resulting in a connection time-out. \\\hline
+       \multirow{2}{*}{Course of action}
+       & 1. Use the steps listed above in order to start the SUT. \\
+       & 2. Execute the script by running \texttt{\# code/client/tests/8.py} \\\hline
+       Valid trace & Verify that the script prints 'Success'. \\\hline
+       \hline
+       
+       Nr & 9 \\\hline
+       Title & Request with corrupted destination address. \\\hline
+       Input & Generated packets with 1byte payload, in these packets the destination address is replaced with 255.255.255.255. \\\hline
+       Expected output & The packets will never reach the Echo-server resulting in a connection time-out.  \\\hline
+       \multirow{2}{*}{Course of action}
+       & 1. Use the steps listed above in order to start the SUT. \\
+       & 2. Execute the script by running \texttt{\# code/client/tests/9.py} \\\hline
+       Valid trace & Verify that the script prints 'Success'. \\\hline
+       \hline
+       
+       Nr & 10 \\\hline
+       Title & Request with corrupted payload detectable by checksum. \\\hline
+       Input & Generated packets with 1byte payload, in these packets one byte is increased by 1 after the checksum has been calculated. \\\hline
+       Expected output & The \emph{SUT} will drop packets before sending them resulting in a runtime error of the test script.  \\\hline
+       \multirow{2}{*}{Course of action}
+       & 1. Use the steps listed above in order to start the SUT. \\
+       & 2. Execute the script by running \texttt{\# code/client/tests/10.py} \\\hline
+       Valid trace & Verify that the script prints 'Success'. \\\hline
+       \hline
+       
+       Nr & 11 \\\hline
+       Title & Request with corrupted payload undetectable by checksum. \\\hline
+       Input & Generated packets with 1byte payload, in these packets one 16bit word is increased by 1 and an other 16bit word is decreased by 1, after the checksum has been calculated. \\\hline
+       Expected output & Echo-server receives the corrupted segment.  \\\hline
+       \multirow{2}{*}{Course of action}
+       & 1. Use the steps listed above in order to start the SUT. \\
+       & 2. Execute the script by running \texttt{\# code/client/tests/11.py} \\\hline
+       Valid trace & Verify that the script prints 'Success'. \\\hline
+       
+\end{longtable}
 
 %\begin{tabularx}{\linewidth}{| l | X|}
 %\hline