\maketitle
-%\begin{abstract}
-%\input{src/abstract}
-%\end{abstract}
+\begin{abstract}
+\input{src/abstract}
+\end{abstract}
-{\bf \hspace*{0.8cm} \textbf{\emph{Keywords}} -- bittorrent, multiparty, transport protocol, linux kernel,\\
-\hspace*{0.8cm} Merkle hash trees, binmaps}
\section{Introduction}
\label{sec:introduction}
\label{sec:arch}
\input{src/arch}
-\section{Raw Sockets}
-\label{sec:rawsock}
-\input{src/rawsock}
+%\section{Raw Sockets}
+%\label{sec:rawsock}
+%\input{src/rawsock}
\section{Testing and Evaluation}
\label{sec:testing}
--- /dev/null
+%\begin{abstract}
+{\bf
+BitTorrent is the protocol responsible with the greatest chunk of traffic in the Internet. A new approach, similar to
+BitTorrent, is swift – the multiparty(swarming) transport protocol. Swift may be understood as BitTorrent at the
+transport layer. Ultimately swift aims at the abstraction of the Internet as a single big data cloud. This paper
+proposes an approach to the swift integration into kernel as a transport protocol in the Linux kernel networking
+stack.
+
+\emph{Keywords} -- bittorrent, multiparty, transport protocol, linux kernel, Merkle hash trees, binmaps
+}
+
+
+%\end{abstract}
\image[scale=0.5]{img/kernel.png}{img:kernel}{Detail architecture}
+% RAW sockets
+A socket is one of the most fundamental technologies of computer networking.
+Sockets allow applications to communicate using standard mechanisms built into
+network hardware and operating systems.
+
+Raw mode is basically there to allow you to bypass some of the way that your
+computer handles TCP/IP. Rather than going through the normal layers of
+encapsulation/decapsulation that the TCP/IP stack on the kernel does, you just
+pass the packet to the application that needs it. No TCP/IP processing -- so
+it's not a processed packet, it's a raw packet. The application that's using
+the packet is now responsible for stripping off the headers, analyzing the
+packet, all the stuff that the TCP/IP stack in the kernel normally does for
+you.
+
Raw socket implementation will support all syscalls and it will be a copy of our kernel implementation.
This implementation will have the same API and behavior as the kernel implementation. Still, in the first
implementation, a swift socket will be available to act as only a seeder or a leecher, explicitly one operation transmit
listening to a mutliparty socket. When binding the Seeder practically uses the hash as a parameter. This means that
for every file hashed there will be a socket on which the seeder can receive and serve requests. The Seeder then waits
for requests and sends data packets as requested.
+
+
+
+
\textbf{Outline}. The rest of the paper is organized as follows. In section \ref{sec:preliminarywork} we discuss some
previous approaches in designing the system with their sthrengths and weaknesess. In section \ref{sec:arch}
presents our current approach to integrate the \emph{swift} protocol as a transport layer protocol into the Linux
-kernel. Section \ref{sec:rawsock} presents a preliminary implementation using raw socktes that prepares the ground for
-the final stage of the project. We describe our testing scenariou in detail in section \ref{sec:testing}. Section
+kernel.
+%Section \ref{sec:rawsock} presents a preliminary implementation using raw socktes that prepares the ground for
+%the final stage of the project.
+We describe our testing scenariou in detail in section \ref{sec:testing}. Section
\ref{sec:summary} concludes the article and refers to future work.