%\documentclass[twoside,12pt]{report}% dvoustranný tisk
\documentclass[a4paper,oneside,12pt]{report}% jednostranný tisk
% všechny soubory jsou v utf-8. 
	\usepackage{ucs}% pro kódování UTF-8
	\usepackage[utf8x]{inputenc}% kódování vstupních souborů je utf-8
	\PrerenderUnicode{ěščřžýáíéĚŠČŘŽÝÁÍÉďťňĎŤŇůúÚóÓ} %predkresleni diakritiky, mozno pridat/ubrat znaky podle potreby
% pokud si je překódujete např do windows 1250 použijte místo předchozích tří řádků následující:
%\usepackage[cp1250]{inputenc}% kódování vstupních souborů


\usepackage[czech]{babel}% čeština
%\usepackage[slovak]{babel}% slovenština
\usepackage[IL2]{fontenc}% csr fonty (pokud jsou nainstalovány česká postscriptová mísma)
%\usepackage[T1]{fontenc}% EC fonty - háčky a čárky jsou k písmenkům připojovány - nehezké


\usepackage[]{diplomka}
\usepackage{VSKP} % Sablona dle smernice rektora
\input{VSKP} % Uvodni desky atd dle smernice rektora
\splithyphens% při rozdělování slov se spojovníkem opakuj spojovník
\ifx\pdfcompresslevel\undefined
   \usepackage{graphicx}
   \DeclareGraphicsExtensions{.bmp,.eps,.png}
\else
   \usepackage[pdftitle={Diplomová práce},
            pdfauthor={\autortxt},
            pdftex=true,
            %bookmarks=true,
            breaklinks=true,
            a4paper]{hyperref}
   \usepackage[pdftex]{graphicx}
   \DeclareGraphicsExtensions{.png,.pdf}
\fi


\graphicspath{ {./images/} }

\usepackage{moreverb}

\usepackage{pgfplots}
\usepackage{caption}
\usepackage{newfloat}
\usepackage{fp}
\usepackage{float}
\usepackage{pdfpages}
\usepackage{multirow}

\pgfkeys{/pgf/number format/use comma}
\pgfplotsset{width=7cm,compat=1.3}
\pgfplotsset{
firstBarGraph/.style = {
	symbolic x coords={HTTP, DNS, ICMP},
			xtick=data,
			height=5cm,
			width=11cm,
			enlargelimits=0.25,
			ymin=0,
			ymax=100,
			ylabel=\%,
			nodes near coords,
			nodes near coords align={vertical},
			x tick label style={align=center,text width=2.5cm}
},
secondBarGraph/.style = {
	symbolic x coords={rozsah1,rozsah2,rozsah3},
			legend style={font=\footnotesize\selectfont},
			legend pos=outer north east,
			height=5cm,
			width=11cm,
			ymin=-20,
			ymax=100,
			ylabel=\%,
			nodes near coords align={vertical},
    xtick=data,
    enlarge y limits={upper,value=0.35},
    enlarge x limits=0.2,
    nodes near coords,
    ybar,
    every node near coord/.append style={rotate=90, anchor=west},
    bar width = 10pt,
},
thirdBarGraph/.style = {
	symbolic x coords={rozsah1,rozsah2,rozsah3,rozsah4},
			legend style={font=\footnotesize\selectfont},
			legend pos=outer north east,
			height=5cm,
			width=11cm,
			ymin=-20,
			ymax=100,
			ylabel=\%,
			nodes near coords align={vertical},
    xtick=data,
    enlarge y limits={upper,value=0.35},
    enlarge x limits=0.2,
    nodes near coords,
    ybar,
    every node near coord/.append style={rotate=90, anchor=west},
    bar width = 10pt,
},
trafficGraph/.style = {
	axis y line*= left,
	xlabel=Čas (s),
	ylabel style={align=center},
	ylabel={kbit/s},
	width=14cm,
	height=6cm,
	ymax=1000000,
	ytick={0, 200000, 400000, 600000, 800000, 1000000}
},
packetsGraph/.style = {
	axis y line*= right,
	xlabel=Čas (s),
	ylabel style={align=center},
	ylabel={packety/s},
	width=14cm,
	height=6cm,
	ymax=400000,
	legend style={font=\footnotesize\selectfont, cells={align=left}},
	legend pos=north west,
	axis x line=none,
},
trafficGraphAg/.style = {
	axis y line*= left,
	xlabel=Čas (s),
	ylabel style={align=center},
	ylabel={kbit/s},
	width=14cm,
	height=6cm,
	ymax=2000000,
},
packetsGraphAg/.style = {
	axis y line*= right,
	xlabel=Čas (s),
	ylabel style={align=center},
	ylabel={packety/s},
	width=14cm,
	height=6cm,
	ymax=400000,
	legend style={font=\footnotesize\selectfont, cells={align=left}},
	legend pos=north west,
	axis x line=none,
},
trafficGraphSrov/.style = {
	xlabel=Čas (s),
	ylabel style={align=center},
	ylabel={kbit/s},
	width=14cm,
	height=6cm,
	legend style={font=\footnotesize\selectfont, cells={align=left}},
	legend pos=north west,
	cycle list name=color list,
}
}

\DeclareFloatingEnvironment[fileext=frm,placement={h},name=Graf]{chart}

\usepackage{booktabs}
\usepackage{pifont}

\newcommand*\rot{\rotatebox{90}}
\newcommand*\OK{\ding{51}}
\newcommand*\NOK{\ding{55}}


\begin{document}


%\titul% vytiskne titul práce

\includepdf[pages={1},offset=2.5cm -3cm]{obr/TitulniList_color.pdf}
\includepdf[pages={1},offset=2.5cm -3cm]{obr/zadani-dp-barva.pdf}
%\abstrakty% vytiskne stránku s abstrakty



\newpage
\thispagestyle{empty}

\noindent{\bf Anotace}

\noindent Pro filtrování síťového provozu při vyšších přenosových rychlostech (například více než 1~Gbit/s), je v dnešní době k dispozici mnoho proprietárních hardwarových řešení. Ovšem existuje i několik projektů se svobodnou licencí, které se zaměřují na zpracování vysokorychlostních síťových dat na běžném hardwaru. Cílem práce je nalézt takovéto projekty, ověřit, zda existují filtrovací nástroje na nich založené, vyzkoušet filtraci 10Gbit/s síťového provozu a otestovat je pro různá nastavení filtrací. Výstupem práce by měla být implementace síťového filtru, který dokáže filtrovat provoz až do rychlosti 10~Gbit/s.\par
\noindent{\bf Klíčová slova:} vysokorychlostní filtrace packetů, 10 Gbit/s, firewall, netmap, nftables, PF\_RING, Linux

\bigskip
\bigskip
\bigskip

\noindent{\bf Abstract}

\noindent For high-speed (e.g. more than 1 Gbit/s) filtration of network traffic there are available many of proprietary hardware solutions nowadays. But there are also a couple of free licensed projects that are specialized in high-speed packet processing on common hardware. The goal of thesis is to find such projects, verify that there are filtering tools based on these projects, try to filter 10Gbit/s network traffic by these tools and test them against various filtration settings. Implementation of packet filter that could be used for filtration of network traffic up to 10Gbit/s speed should be the output of this thesis.\par
\noindent{\bf Keywords:} high-speed filtration of network traffic, 10 Gbit/s, firewall, netmap, nftables, PF\_RING, Linux

\bigskip
\bigskip
%\goodbreak

\newpage
\thispagestyle{empty}
\hbox{}
\vfill 
% Nasleduje ukazkova citace diplomove prace
\def\prvnivelke#1#2{\uppercase{#1}#2}
\noindent \Autorzkrtxt {\it \nazevtxt}. Brno: Vysoké učení technické v~Brně, \fakultatxt, \the\year. %
\ifx\pocetstran\undefined
   ??
\else
   \pocetstran{}
\fi s. \citacevedoucitxt
\vskip3cm
\eject



\prohlaseni{\noindent\textbf{Prohlášení}\par
Prohlašuji, že svou diplomovou práci na téma \uv{Vysokorychlostní filtrace síťového provozu} jsem vypracoval samostatně pod vedením vedoucího diplomové práce a s použitím odborné literatury a dalších informačních zdrojů, které jsou všechny citovány v práci a uvedeny v seznamu literatury na konci práce.
\par
Jako autor uvedené diplomové práce dále prohlašuji, že v souvislosti s vytvořením této diplomové práce jsem neporušil autorská práva třetích osob, zejména jsem nezasáhl nedovoleným způsobem do cizích autorských práv osobnostních a/nebo majetkových a jsem si plně vědom následků porušení ustanovení § 11 a následujících zákona č. 121/2000 Sb., o~právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů (autorský zákon), ve znění pozdějších předpisů, včetně možných trestněprávních důsledků vyplývajících z ustanovení části druhé, hlavy VI. díl 4 Trestního zákoníku č.~40/2009 Sb.}% prohlášení,

\includepdf[pages={1},offset=2.5cm -3cm]{obr/podekovani_SIX_Mgr_CZ.pdf}

\podekovani{\noindent\textbf{Poděkování}\par
Děkuji vedoucímu práce doc. Ing. Janu Hajnému, Ph.D. za veškerou pomoc, cenné rady, metodické vedení a čas, který mi při zpracovávání práce věnoval. Také bych chtěl poděkovat Ing.~Zdeňku Martináskovi, Ph.D. a panu Janu Sedlákovi za konzultace a pomoc při přepojování experimentální sítě.}% poděkování, nepovinné

% vlastní práce
\obsah% vytiskne obsah

%
%  vlastni text
%
\input{Uvod}% nutné
%
% sem vlastni opsany text, možno vložit více souborů (nejlépe pro každou kapitolu zvláštní soubor)
\input{text}

%
\input{Zaver}% nutné
\input{Literatura}% nutné
\input{SeznamZkratek}% nutné
\appendix
\input{SeznamPriloh}% není povinné
\end{document}
