% !TeX spellcheck = de_DE
\documentclass[12pt,a4paper]{article}

\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{geometry}
\usepackage{graphicx} 
\usepackage{caption}
\usepackage{setspace}
\usepackage{float}
\usepackage{hyperref}
\usepackage{enumitem}
\usepackage{listings}
\lstset{
	basicstyle=\ttfamily\fontsize{10}{10}\selectfont,
	tabsize=1,
	frame=single,
}

\onehalfspacing

\geometry{a4paper, top=20mm, left=30mm, right=20mm, bottom=20mm, headsep=10mm, footskip=12mm}

\hypersetup{
	unicode=true,
	pdftitle={ACN-Q5},
	pdfsubject={ACN-Q5},
	pdfauthor={Sebastian~Rieger,Christoph~Hardegen},
	pdfkeywords={}, 
	colorlinks=true,
	urlcolor=black,
	linkcolor=black,
	breaklinks=true,
	citecolor=black, 
	filecolor=black}

\begin{document}

\begin{figure}
 	\begin{center}
    	\includegraphics[scale=0.5]{figures/logo.pdf}
  	\end{center}
\end{figure}

\begin{center}
	\begin{Huge}
		\textsc{Advanced Computer Networks} \\
	\end{Huge}
	\vspace{.5cm}
	\begin{Large}
		\textsc{\small Wiederholungsfragen 6, 7 und 8: Programmable Data Plane und P4}
	\end{Large}
\end{center}

\begin{enumerate}[leftmargin=*]
	\setlength\itemsep{.1em}
    \item Was ermöglichen Lösungen für Programmable Data Planes im Vergleich zu SDN?
    \item Welche Herausforderungen stellen sich für eine Programmable Data Plane?
	\item Welche Motivation liegt dem Standard P4 zugrunde? 
    Welche Ziele werden verfolgt?
    \item Welche Grenzen stellen sich in Bezug auf die Programmierbarkeit der Data Plane? Wie wirkt sich dies in der Domain-Specific Language P4 aus?
    \item Beschreiben Sie die wesentlichen Konzepte von P4 und erläutern Sie den damit verbundenen Verarbeitungsprozess für Pakete.
    Fertigen Sie zur Verdeutlichung des Verarbeitungsprozesses eine Skizze an.
    \item Erläutern Sie anhand einer Skizze die Aufgabe der PISA Architektur. An welchen Stellen  wird in PISA Ihr entwickelter P4 Code verwendet?
    \item Erläutern Sie die Rolle von Parser, Match-Action Tables und Control Flow in P4 Programmen.
    \item Nennen Sie ein Beispiel für einen Datentyp den P4 im Vergleich zu typischen Programmiersprachen wie C, Java, Python kennt. Warum gibt es diesen bei P4?
    \item Nennen Sie ein Beispiel für einen Datentyp den P4 im Vergleich zu typischen Programmiersprachen wie C, Java, Python nicht kennt. Warum gibt es diesen bei P4 nicht?
    \item Was ist die P4 Runtime und welche Möglichkeiten bietet diese?
    \item Zeigen Sie anhand einer Skizze das Zusammenspiel aus Control Plane, Data Plane und P4Runtime.
    \item Was versteht man unter P4 Target und P4 Architecture?
    \item Welche Vorteile bietet die V1Model Architecture und welche Nachteile sind damit gleichzeitig verbunden?
    \item Zu Kapitel 7 sollten Sie die diskutierten Beispiele Example 1 Repeater, Example 2 Switch, Example 3 Learning Switch verstehen. Sie müssen diese nicht komplett selbst programmieren können, aber es könnte Beispiel-Code gezeigt werden anhand dessen Sie die Funktion sowie ggf. Vor- und Nachteile von P4 erläutern sollen.
	\item Was ist Whitebox-Switching und welche Vor- sowie Nachteile ergeben sich?
	Wie können Whitebox-Switches im Kontext von P4 eingesetzt werden?
	Beschreiben Sie ein damit verbundenes Einsatzszenario.
	\item Welche vermeintlichen Veränderungen erwarten Sie im Netzbereich durch Network Softwarization mit SDN, NFV, P4?
	Wie bewerten Sie diese Veränderungen?
	\item Welche Verbesserungen können durch programmierbare Switch Chips realisiert werden?
	Was ist der prinzipielle Unterschied zu Application Specific Integrated Circuits?
	\item Welche Anpassungen am P4 Code sind grob erforderlich, um vom V1Model zur Realisierung von P4 in Hardware (z.B. mit TNA) zu kommen?
	\item Nennen Sie Beispiele für Anwendungen und Einsatzgebiete von Programmable Network Elements.
	\item Erläutern Sie Vorteile, die Programmable Network Elements für die diskutierten Use-Cases bieten.
	\item Wie lässt sich die Verwendung von Whitebox Switches im Netzwerkbereich mit der Evolution von Mainframe zu PC Hardware vergleichen?
	\item Nennen Sie ein Beispiel für einen Whitebox Switch. Welche Betriebsysteme lassen sich darauf beispielsweise verwenden? Welche Vorteile hat dies?
	\item Wie kann die Entwicklung von P4 mit der von Domain-Specific Processors verglichen werden?
	\item Wie spielen Stratum, $\mu$ONOS und P4 beim NG-SDN Projekt der Open Networking Foundation zusammen?
	\item Was ermöglicht Deep Programmability? Wie spielt dies mit SmartNICs und/oder FPGA zusammen?
	
\end{enumerate}

\end{document}