aboutsummaryrefslogtreecommitdiff
path: root/Info/11/NTG/3/E-Mail/handout.tex
blob: d1bb6c6be751948a5064b77f0c4383a5da5e6cb0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
\documentclass[a4paper, landscape]{handout}
\csname endofdump\endcsname
\usepackage{minted}
\usepackage{standalone}
\usepackage{hyperref}

\title{E-Mail Versand}

\begin{document}
\thispagestyle{empty}

\subsection*{SMTP - Simple Mail TRansfer Protocol}

\noindent\begin{tabular}{p{0.38\textwidth} p{0.6\textwidth}}
\newcommand{\clientToServer}[2]{%
  \path ($(client) - (0, #1)$) edge[above] node[fill=red!20, minimum width=8cm] {\psolution{#2}} ($(server) - (0, #1)$);%
  \draw[->] ($(client) - (0, #1)$) -- ($(server) - (0, #1)$);%
}
\newcommand{\serverToClient}[3]{%
  \path ($(client) - (0, #1)$) edge[above] node[fill=blue!20, minimum width=8cm] {\psolution{\ifnumless{#2}{400}{\textcolor{green!70!black}{#2}}{#2} #3}} ($(server) - (0, #1)$);%
  \draw[<-] ($(client) - (0, #1)$) -- ($(server) - (0, #1)$);%
}
\vspace{0mm}
\input{smtp.tex} &

\faIcon{edit} \textbf{\Large 1. Person Arbeitsauftrag: E-Mails Versenden Leicht Gemacht}\vspace{2mm}

Recherchiere und ergänze im linken Sequenzdiagramm, den typischen \underline{fehlerfreien} Ablauf der Kommunikation, um eine E-Mail von einem Client an einen Server zu senden.

\begin{merke}
Das \textbf{SMTP}-Protokoll existiert seit \gap{\Large 1981} und verwendet das Transport-Protokoll \gap{\Large \textbf{TCP}} auf Port \gap{\Large 465 oder 587}.

Serverantworten beginnen immer mit einem numerischen Statsucode. Zahlen größer als \pgap{\Large 400} zeigen Fehler an.
\end{merke}

\begin{tcolorbox}[colframe=cyan, title=\textbf{\textcolor{black}{{\large !} Tipp:}}]
Informationen zum \textbf{SMTP}-Protokoll findest du unter \url{https://de.wikipedia.org/wiki/SMTP} oder in der formalen Beschreibung des Protokolls (RFC 5321) \url{https://datatracker.ietf.org/doc/html/rfc5321}.
\end{tcolorbox}

\vspace{0.5cm}
\faIcon{edit} \textbf{\Large 2. Person Arbeitsauftrag: E-Mails Abholen}\vspace{2mm}

Recherchiere und ergänze im Sequenzdiagramm zum \textbf{POP3}-Protokoll, den typischen \underline{fehlerfreien} Ablauf der Kommunikation, um eine E-Mail als Client von einen Server abzurufen.

Es soll eine Liste aller vorhandener E-Mails und eine Einzelne durch den Client abgerufen werden.

\begin{merke}
Das \textbf{POP}-Protokoll Version 3 existiert seit \gap{\Large 1988} und verwendet das Transport-Protokoll \gap{\Large\textbf{TCP}} auf Port \gap{\Large110 oder 995}.

Serverantworten beginnen immer mit einem von zwei Statusmeldungen. \pgap{\Large +OK} und \pgap{\Large -Err} geben den Erfolg der Kommunikation an.
\end{merke}

\begin{tcolorbox}[colframe=cyan, title=\textbf{\textcolor{black}{{\large !} Tipp:}}]
Informationen zum \textbf{POP3}-Protokoll findest du unter \url{https://de.wikipedia.org/wiki/Post_Office_Protocol} oder in der formalen Beschreibung des Protokolls (RFC 1939) \url{https://datatracker.ietf.org/doc/html/rfc1939}.
\end{tcolorbox}
\\
\end{tabular}

\noindent\begin{tabular}{p{0.38\textwidth} p{0.6\textwidth}}
\newcommand{\clientToServer}[2]{%
  \path ($(client) - (0, #1)$) edge[above] node[fill=red!20, minimum width=8cm] {\psolution{#2}} ($(server) - (0, #1)$);%
  \draw[->] ($(client) - (0, #1)$) -- ($(server) - (0, #1)$);%
}
\newcommand{\serverToClient}[3]{%
  \path ($(client) - (0, #1)$) edge[above, align=center, minimum width=8cm] node[fill=blue!20, align=left, text width=6cm] {\psolution{\ifstrequal{#2}{+OK}{\textcolor{green!70!black}{#2}}{#2} #3}} ($(server) - (0, #1)$);%
  \draw[<-] ($(client) - (0, #1)$) -- ($(server) - (0, #1)$);%
}
\vspace{-10mm}
\subsection*{POP3 - Post Office Protocol}
\vspace{5mm}
\input{pop3.tex} &

\faIcon{hands-helping} \textbf{\Large Arbeitsauftrag: Senden und Abrufen}\vspace{2mm}

Tauscht euch über eure Protokolle aus und vervollständigt eure Sequenzdiagramme und Merkkästen.

\vspace{3mm}
\faIcon{desktop} \textbf{\Large Arbeitsauftrag: E-Mail per Hand}\vspace{2mm}

Sendet euch gegenseitig eine Nachricht und ruft sie ab.

Im Schulnetzwerk ist eine \textbf{SMTP}-/ und \textbf{POP3}-Server ereichbar unter:
\begin{tcolorbox}[colframe=red, title=Server]
\vspace{1mm}
IP-Adresse: \hspace{5cm} SMTP-Port: \hspace{2cm} POP3-Port: \hspace{2cm}
\end{tcolorbox}

Jeder hat eine eigene E-Mail-Adresse \textbf{\texttt{vorname@klasse.local}}.

\begin{enumerate}
\item Lade das Programm \textbf{ncat.exe} aus dem Drive Space herunter.
\item Starte die Eingabeaufforderung \texttt{cmd}.
\item Ziehe mit der Maus die Programm-Datei in die Eingabeaufforderung.
\item Ergänze hinter dem Pfad mit Leerzeichen die \textbf{Adresse} des Servers und den \textbf{Port}. \newline
      \textbf{Tipp:} \texttt{Strg+C} Beendet das Programm. \hspace{1cm} (\texttt{../ncat.exe <ip-adresse> <port>})
\end{enumerate}

\faIcon{desktop} \textbf{\Large Arbeitsauftrag: Ein E-Mail Programm}
\begin{enumerate}
  \item Implementiert in der Klasse \texttt{SMTP\_Client} das Versenden einer Nachricht.
  \item Implementiert in der Klasse \texttt{POP3\_Client} das Abrufen einer Liste aller Nachrichten.
  \item Implementiert in der Klasse \texttt{POP3\_Client} das Abrufen einer Nachricht.
\end{enumerate}

\begin{tcolorbox}[colframe=cyan, title=\textbf{\textcolor{black}{{\large !} Tipp:}}]
\begin{itemize}
  \item Eine \textbf{TCP}-Verbindung wird mit der Klasse \texttt{Schicht\_TCP} und deren Methoden \mintinline{java}{void verbindungAufbauen(String ip, int port)} und \mintinline{java}{void verbindungAbbauen()} verwaltet.
  \item Daten werden mit der Methode \mintinline{java}{void nachrichtSenden(String msg)} verschickt.
  \item Gesendete und Empfangenen Daten werden im Ausgabefenster angezeigt.
\end{itemize}
\end{tcolorbox}
\\
\end{tabular}
\end{document}