1faf5c825e8b2f4277dc9efd7ddb1ac5e962dcde
[tt2015.git] / 1intro.tex
1 \subsection{Objectives}
2 %1, 2
3 The objective of this document is to provide an approach for testing a
4 particular implementation of \textit{Transmission Control Protocol} (TCP). TCP
5 is a host-to-host protocol that provides a reliable communication.
6
7 This testing approach can be used by either an internal test team or an
8 independent testing team. The test effort's goal is to become confident about
9 the conformance of the implementation to the specification created by
10 \textit{The Internet Engineering Task Force}
11 (IETF)\footnote{\url{http://www.ietf.org}} as document
12 \textit{RFC793}~\cite{rfc793}.
13
14 \subsection{SUT}
15 %3,4
16 The \textit{System under test} (SUT) is a
17 Java\footnote{\url{http://www.java.com}} TCP driven echo server that executed
18 on a virtualized Ubuntu system\footnote{\url{http://www.ubuntu.com}} running on
19 the Linux kernel\footnote{\url{http://www.kernel.org}} version $3.13$. To test
20 the error behaviour custom iptables output policies have to be
21 set Listing~\ref{listing:iptables}. This is needen because the OS by default
22 closes all connections from unknown sources and the manually created TCP
23 connections used in testing the implementation are unknown to the OS.
24
25 \begin{lstlisting}[label={listing:iptables},caption={settings iptables}]
26 Chain OUTPUT (policy ACCEPT)
27 target prot opt source destination
28 ACCEPT tcp -- anywhere anywhere tcp flags:PSH/PSH
29 DROP tcp -- anywhere anywhere tcp flags:RST/RST
30 \end{lstlisting}
31
32 \subsection{Risks}
33 %5. Risks
34 Risks can be divided into two categories. Project risks and Product risks.
35 \begin{itemize}
36 \item\textbf{Project Risks}\\
37 \item\textbf{Product Risks}\\
38 \end{itemize}
39