mirror of
https://gitlab.cs.fau.de/ik15ydit/latexandmore.git
synced 2024-11-27 06:05:03 +01:00
339 lines
14 KiB
TeX
339 lines
14 KiB
TeX
|
% !TeX encoding = UTF-8
|
||
|
% Die Folien der Vorlesung (RK_<n>_*.pdf) und Übung (Uebung_*.pdf) sind (passwortgeschützt) zu finden unter:
|
||
|
% http://www7.cs.fau.de/de/teaching/rechnerkommunikation-2015s/
|
||
|
% Abzuspeichern in den Utnerordnern „Vorlesung“ und „Uebungen“.
|
||
|
%
|
||
|
% Kompilierreihenfolge: PDFLaTeX - MakeIndex - PDFLaTeX
|
||
|
|
||
|
\input{Header}
|
||
|
\newcommand{\folie}[2][]{\fbox{\includegraphics[page=#1,width=0.75\textwidth]{#2.pdf}}}
|
||
|
|
||
|
\section*{Schichten-Modell}\addcontentsline{toc}{section}{Schichten-Modell}
|
||
|
Ursprünglich (laut OSI) in sieben Schichten geplant:\\
|
||
|
\folie[35]{Vorlesung/RK_1_Einfuehrung}
|
||
|
|
||
|
\section{Physikalische Schicht (Bitübertragungsschicht)}
|
||
|
mechanische, elektrische und prozedurale Eigenschaften zur Übertragung von Bits: Zeitsynchronisation, Kodierung, Modulation, binäre Formate, Modulationsverfahren, ...
|
||
|
\subsection{Leitungskodierung}\index{Kodierung!Leitungs-|textbf}
|
||
|
Ein digitales Signal muss erst in ein analoges konvertiert werden, um übertragen werden zu können.
|
||
|
|
||
|
\folie[4]{Vorlesung/RK_6_PhysikalischeSchicht}
|
||
|
|
||
|
\folie[5]{Vorlesung/RK_6_PhysikalischeSchicht}\index{Kodierung!Manchester-} \index{NRZ(I)}
|
||
|
|
||
|
\folie[6]{Vorlesung/RK_6_PhysikalischeSchicht}
|
||
|
\section{Sicherungsschicht}
|
||
|
Rahmen zwischen benachbarten Geräten, Medienzugriff, Sicherung.
|
||
|
\subsection{Ethernet}\index{Ethernet|textbf}
|
||
|
Sicherungsschicht, kabelgebundene LANs
|
||
|
|
||
|
\subsubsection{Framegröße}\index{Framegröße}\index{Ethernet!Framegröße}
|
||
|
Mindestens 64 Byte (14 Byte Header, 46 Byte Nutzdaten, 4 Byte CRC), damit die Übertragung nicht einseitig beendet wird, bevor das erste Bit am Empfänger angekomment ist. $L/R > 2D$
|
||
|
|
||
|
Muss kleiner sein, als der Backoff, damit CSMA/CD\index{CSMA!CD} (Kollisionserkennung) funktioniert.
|
||
|
\subsubsection{Repeater / Bridge}\index{Repeater}\index{Bridge}
|
||
|
\folie[68]{Vorlesung/RK_5_Sicherungsschicht}
|
||
|
|
||
|
\paragraph{Hub}\index{Hub} Repeater mit vielen Ports, keine Pufferung aber Managementfunktion
|
||
|
\paragraph{Switch}\index{Switch} Bridge mit vielen Ports, Pufferung an jedem Port, Store-and-Forward, voll-duplex
|
||
|
|
||
|
\subsubsection{VLAN}\index{VLAN}
|
||
|
\folie[75]{Vorlesung/RK_5_Sicherungsschicht}
|
||
|
|
||
|
\subsection{Datensicherung}\index{Datensicherung}
|
||
|
\folie[13]{Vorlesung/RK_5_Sicherungsschicht}
|
||
|
|
||
|
\subsubsection{CRC}\index{CRC}
|
||
|
\folie[14]{Vorlesung/RK_5_Sicherungsschicht}\\
|
||
|
Euklidische Division: \glqq XOR-Division\grqq
|
||
|
|
||
|
\folie[15]{Vorlesung/RK_5_Sicherungsschicht}\index{Generatorpolynom}
|
||
|
|
||
|
\folie[16]{Vorlesung/RK_5_Sicherungsschicht}
|
||
|
|
||
|
|
||
|
\subsection{ARP}\index{ARP|textbf}
|
||
|
\folie[9]{Vorlesung/RK_5_Sicherungsschicht}
|
||
|
|
||
|
\subsubsection{MAC-Adresse ermitteln}
|
||
|
\index{MAC-Adresse!ermitteln}
|
||
|
Kann über Broadcast der gesuchten IP an die Geräte des lokalen Ethernet-Netzwerks ermittelt werden. Das gesuchte Gerät antwortet mit eigener MAC-Adresse.
|
||
|
|
||
|
\subsection{Mehrfachzugriff}\index{Mehrfachzugriff}\index{Kanalaufteilung}
|
||
|
\folie[20]{Vorlesung/RK_5_Sicherungsschicht}
|
||
|
|
||
|
\begin{itemize}
|
||
|
\item Frequenzmultiplex\index{Multiplex!Frequenz-}\index{FDMA} (Frequency Division Multiplex Access, FDMA): Geräte verwenden verschiedene Teile des Frequenzspektrums
|
||
|
\item Zeitmultiplex\index{Multiplex!Zeit-}\index{TDMA} (Time Division Multiplex Access, TDMA): Geräte wechseln sich zeitlich ab
|
||
|
\end{itemize}
|
||
|
|
||
|
\subsection{CDMA}\index{CDMA|textbf}
|
||
|
\folie[22]{Vorlesung/RK_5_Sicherungsschicht}
|
||
|
|
||
|
\subsection{ALOHA}\index{ALOHA|textbf}
|
||
|
\folie[28]{Vorlesung/RK_5_Sicherungsschicht}
|
||
|
|
||
|
\folie[34]{Vorlesung/RK_5_Sicherungsschicht}\index{Leistungsanalyse!ALOHA}
|
||
|
|
||
|
\subsection{CSMA}\index{CSMA|textbf}
|
||
|
\folie[43]{Vorlesung/RK_5_Sicherungsschicht}
|
||
|
\subsubsection{CSMA/CD}\index{CSMA!CD|textbf} (Collision Detection, z.B. in Ethernet)\\
|
||
|
Wenn Rahmengröße $<=$ Backoff können Sendewiederholungen nicht kollidieren, sofern beide Knoten nicht gleichzeitig aus dem Backoff kommen.
|
||
|
|
||
|
\folie[48]{Vorlesung/RK_5_Sicherungsschicht}
|
||
|
|
||
|
\folie[49]{Vorlesung/RK_5_Sicherungsschicht}
|
||
|
\subsubsection{CSMA/CA} (Collision Avoidance, z.B. bei WLAN\index{WLAN})\index{CSMA!CA}
|
||
|
\begin{itemize}
|
||
|
\item Kollisionserkennung würde 2. Antenne benötigen, die während des Sendens
|
||
|
empfängt, schwieriger, teurer
|
||
|
\item 2 Varianten: Basic Access, RTS/CTS-Austausch
|
||
|
\end{itemize}
|
||
|
|
||
|
\subsection{Schwachstellen}\index{Schwachstellen (Sicherungsschicht)}
|
||
|
\folie[7]{Vorlesung/RK_7_Netzwerksicherheit}
|
||
|
|
||
|
\section{Netzwerk-/Vermittlungsschicht}
|
||
|
Datagramme zwischen Hosts über Router (IP), Weiterleitung, Wegewahl (Routing)
|
||
|
|
||
|
\subsection{Adressierungsarten}\index{Adressierung!Arten}
|
||
|
Laut OSI-Modell in der Vermittlungsschicht.
|
||
|
|
||
|
\subsubsection{Unicast}\index{Unicast}
|
||
|
Nachricht zwischen einem Sender und einem Empfänger.
|
||
|
\paragraph{proaktives Routing}\index{proaktives Unicast-Routung}\index{Routing!Unicast (proaktiv)} Die Informationen über die Netztopologie werden ausgetauscht und aktuell gehalten. Mit Graph-basierten Verfahren werden Pfade zu allen Zielen bestimmt, die bei Sendewunsch genutzt werden.
|
||
|
\subsubsection{Broadcast}\index{Broadcast}
|
||
|
An alle Teilnehmer eines Netzes (z.B. VLAN/Subnetz als Broadcastdomäne).\\
|
||
|
\textbf{limited}: an IP 255.255.255.255, also immer das eigene Subnetz\\
|
||
|
\textbf{directed}: an anderes Subnetz (seit August 1999 per default in Routern deaktiviert wegen DDoS-Gefahr)
|
||
|
|
||
|
|
||
|
\subsubsection{Anycast}\index{Anycast}
|
||
|
Ein Empfänger aus einer Gruppe möglicher Ziele, i.d.R. der nächstgelegene. \\
|
||
|
Für den Client nicht von Unicast unterscheidbar, da der Empfänger durch Routingtabelle im Router ermittelt wird.
|
||
|
\subsubsection{Multicast}\index{Multicast}
|
||
|
Punkt-zu-Mehrpunkt/Gruppenruf: ein Sender, eine Gruppe von Empfängern.
|
||
|
\paragraph{Routing}\index{Routing!Multicast (proaktiv)}
|
||
|
Erweiterung des Unicast-Routings (ebenfalls proaktiv). Router und Links sollen effizient genutzt werden.
|
||
|
\subsubsection{Geocast}\index{Geocast}
|
||
|
Spezielle Form des Multicastings: Adressierung an bestimmten GPS-Koordinaten-Bereich (geometrisch) oder ein Alias (symbolisch).
|
||
|
|
||
|
\subsection{IP}\index{IP|textbf}
|
||
|
|
||
|
\subsubsection{Datagramm-Basierte Paketvermittlung}\index{Datagramm|textbf}\index{Paketvermittlung}
|
||
|
\folie[5]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
|
||
|
\folie[8]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
\subsubsection{ICMP}\index{ICMP|textbf}
|
||
|
\folie[29]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
|
||
|
\folie[30]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
|
||
|
\subsubsection{DHCP}\index{DHCP|textbf}
|
||
|
\folie[32]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
|
||
|
\subsubsection{IPv6}\index{IPv6}
|
||
|
\folie[40]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
|
||
|
\subsubsection{Subnetz}\index{Subnetz}
|
||
|
\folie[21]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
|
||
|
\subsubsection{CIDR}\index{CIDR}
|
||
|
\folie[23]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
|
||
|
\paragraph{CIDR-Suffix}\index{CIDR!Suffix} Anzahl der 1en in der Subnetz-Maske\index{Subnetz!Maske} (X in Folie oben).
|
||
|
|
||
|
|
||
|
\vspace{0.2cm} Anzahl IPv4-Adressen\index{IP-Adresse!Anzahl in Subnetz} $2^{(32-\text{Länge der Netzwerkadresse})}$ bzw. $2^{(32-\text{CIDR-Suffix})}$
|
||
|
|
||
|
\subsubsection{NAT}\index{NAT}
|
||
|
\folie[36]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
|
||
|
\folie[38]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
|
||
|
\subsection{Routing}\index{Routing|textbf}\index{Domäne}
|
||
|
\folie[56]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
|
||
|
\folie[56]{Vorlesung/RK_4_Netzwerkschicht}\index{Routing!proaktiv}\index{Routing!reaktiv}
|
||
|
\subsubsection{Dijkstra-Verfahren}\index{Dijkstra-Verfahren}
|
||
|
\begin{enumerate}
|
||
|
\item Beliebigen Knoten aufschreiben
|
||
|
\item Distanz des aktuellen Knotens + Distanz zu Nachbarknoten ($\infty$ wenn nicht erreichbar)
|
||
|
\item Distanz + aktuellen Knoten aufschreiben wenn kleiner als aktuell aufgeschriebene Distanz
|
||
|
\item Knoten mit kleinster Distanz aufschreiben, Zeilen darunter streichen, weiter mit 2.
|
||
|
\end{enumerate}
|
||
|
\folie[73]{Vorlesung/RK_4_Netzwerkschicht}
|
||
|
|
||
|
\section{Transportschicht}
|
||
|
Ende-zu-Ende Transport von Segmenten zwischen Anwendungen (TCP, UDP)
|
||
|
|
||
|
\subsection{Verzögerungszeiten an einem Knoten}\index{Verzögerungszeiten!an Knoten}
|
||
|
\folie[18]{Uebungen/Uebung_1}
|
||
|
|
||
|
|
||
|
|
||
|
\subsection{Fehlerkontrolle}\index{Fehlerkontrolle}
|
||
|
\folie[16]{Vorlesung/RK_3_Transportschicht}
|
||
|
|
||
|
\subsubsection{Paketverlust}\index{Paketverlust}
|
||
|
Wenn Warteschlange (Puffer) voll, Verlust auf Kanal
|
||
|
|
||
|
\subsubsection{Stop-and-Wait}\index{Stop-and-Wait}
|
||
|
Wartet nach senden auf ACK, sendet erneut, wenn ACK nicht rechtzeitig zurückkommt.\\
|
||
|
\folie[18]{Vorlesung/RK_3_Transportschicht}
|
||
|
|
||
|
\folie[9]{Uebungen/Uebung_4}\index{Sequenznummernraum}
|
||
|
|
||
|
\subsubsection{Go-Back-N}\index{Go-Back-N}
|
||
|
Sender schickt bis zu $n$ Pakete und wartet jeweils auf eine Bestätigung. Kommt eine ACK zu spät an werden dieses und alle folgenden Pakete erneut gesendet.\\
|
||
|
Kumulatives ACK: beinhaltet auch Bestätigungen bis zu $n$ vorheriger Pakete, um ACK-Verlust auszugleichen.\\
|
||
|
\folie[64]{Vorlesung/RK_3_Transportschicht}
|
||
|
|
||
|
\folie[66]{Vorlesung/RK_3_Transportschicht}
|
||
|
|
||
|
\subsubsection{Selective Repeat}\index{Selective Repeat}
|
||
|
\folie[73]{Vorlesung/RK_3_Transportschicht}
|
||
|
|
||
|
\folie[75]{Vorlesung/RK_3_Transportschicht}
|
||
|
|
||
|
\subsection{TCP}\index{TCP|textbf}
|
||
|
\subsubsection{Segmentformat}\index{Segmentformat!TCP}
|
||
|
\folie[108]{Vorlesung/RK_3_Transportschicht}
|
||
|
|
||
|
\folie[109]{Vorlesung/RK_3_Transportschicht}
|
||
|
|
||
|
\subsubsection{Überlastkontrolle}\index{Überlastkontrolle!TCP}
|
||
|
\folie[150]{Vorlesung/RK_3_Transportschicht}\index{Slow Start!TCP}\index{AMID}
|
||
|
|
||
|
\folie[151]{Vorlesung/RK_3_Transportschicht}
|
||
|
|
||
|
\folie[152]{Vorlesung/RK_3_Transportschicht}\index{Slow Start!Beispiel}
|
||
|
|
||
|
|
||
|
|
||
|
\subsubsection{RTT}\index{RTT}
|
||
|
Zeit, um Paket von der Quelle zum Ziel und zurück zu schicken.
|
||
|
\subsubsection{Verzögerung}\index{Verzögerung}~\\
|
||
|
\folie[15]{Uebungen/Uebung_5}
|
||
|
\begin{itemize}
|
||
|
\item L: MSS in Bits (Maximum Segment Size), Default sind 536 Bytes
|
||
|
\item O: Objektgröße in Bits
|
||
|
\item R: Bitrate
|
||
|
\item RTT: round trip time
|
||
|
\item W: Fenstergröße in MSSs
|
||
|
\end{itemize}
|
||
|
|
||
|
\subsubsection{Antwortzeit}\index{Antwortzeit}~\\
|
||
|
\folie[166]{Vorlesung/RK_3_Transportschicht}
|
||
|
|
||
|
\subsubsection{Leistungsanalyse}\index{Leistungsanalyse!TCP}\index{HTTP!Antwortzeiten bei Webseiten}
|
||
|
\folie[16]{Uebungen/Uebung_5}
|
||
|
|
||
|
\subsection{UDP}\index{UDP|textbf}
|
||
|
verbindungslos (Versenden einzelner Datagramme), unzuverlässig
|
||
|
|
||
|
\subsubsection{Segmentformat}\index{Segmentformat!UDP}
|
||
|
\folie[6]{Vorlesung/RK_3_Transportschicht}
|
||
|
|
||
|
\subsubsection{Pseudo-Header}
|
||
|
Wird für Generierung der Checksumme erzeugt, aber nicht übertragen.\\
|
||
|
\vbox{
|
||
|
\begin{itemize}
|
||
|
\item Quell-IP-Adresse (32 bit)
|
||
|
\item Ziel-IP-Adresse (32 bit)\index{IP-Adresse!im UDP-Pseudo-Header}
|
||
|
\item Leerfeld (8 bit)
|
||
|
\item Protokill-ID (17: UDP, 8 bit)
|
||
|
\item Länge des UDP-Datagramms (16 bit)
|
||
|
\end{itemize}}
|
||
|
Vorteil: 1-Bit-Fehler in IP-Header können erkannt werden\\
|
||
|
Nachteil: Verletzung des Schichtenprinzips
|
||
|
\section{Anwendungsschicht}
|
||
|
Netzwerkanwendungen
|
||
|
\subsection{HTTP}\index{HTTP|textbf}
|
||
|
\folie[13]{Vorlesung/RK_2_Anwendungsschicht}
|
||
|
|
||
|
\folie[15]{Vorlesung/RK_2_Anwendungsschicht}
|
||
|
|
||
|
\subsection{FTP}\index{FTP|textbf}
|
||
|
\folie[32]{Vorlesung/RK_2_Anwendungsschicht}
|
||
|
|
||
|
\subsubsection{Out-of-Band-Control}
|
||
|
\index{Out-of-Band-Control}
|
||
|
Zwei verschiedene Verbindungen für Daten und Kontrollinformationen (ID, Passwort, put/get).
|
||
|
\begin{itemize}
|
||
|
\item TCP Steuerverbindung auf Port 21
|
||
|
\item TCP Datenverbindung auf Port 20
|
||
|
\end{itemize}
|
||
|
Vorteil: kann Befehle auch bei Datenübertragung annehmen.
|
||
|
|
||
|
\subsubsection{Active/Passive Mode}
|
||
|
\index{active mode}\index{passive mode}
|
||
|
\folie[16]{Uebungen/Uebung_3}
|
||
|
|
||
|
Vorteil des passiven Modus: Der Server muss den Client nicht kennen. Die Übertragung funktioniert also auch, wenn der Client hinter Router/Firewall/NAT-Netzwerk/etc. versteckt ist.
|
||
|
|
||
|
\subsection{SMTP}\index{SMTP|textbf}
|
||
|
\folie[34]{Vorlesung/RK_2_Anwendungsschicht}
|
||
|
|
||
|
\folie[35]{Vorlesung/RK_2_Anwendungsschicht}
|
||
|
|
||
|
\subsection{SNMP}\index{SNMP|textbf}
|
||
|
\folie[39]{Vorlesung/RK_2_Anwendungsschicht}
|
||
|
|
||
|
\pagebreak
|
||
|
\section*{Abkürzungen}\addcontentsline{toc}{section}{Abkürzungen}
|
||
|
\begin{description*}
|
||
|
\item[ACK] acknowledgment, positive Bestätigung
|
||
|
\item[ARP] Address Resolution Protocol
|
||
|
\item[AS] Autonome Systeme
|
||
|
\item[ASN.1] Abstract Syntax Notation One
|
||
|
\item[ATM] Asynchronous Transfer Mode
|
||
|
\item[BER] Bit Encoding Rules
|
||
|
\item[BGP] Border Gateway Protocol
|
||
|
\item[CDN] Content Distribution Network
|
||
|
\item[CGI] Common Gateway Interface
|
||
|
\item[CIDR] Classless Inter-Domain Routing
|
||
|
\item[CRC] Cyclic Redundancy Check
|
||
|
\item[CSMA] Carrier Sense Multiple Access \\ /CD = Collision Detection (Ethernet) /CA = Collision Avoidance (WLAN)
|
||
|
\item[CW] Congestion Window (Überlastfenster)
|
||
|
\item[DHCP] Dynamic Host Configuration Protocol
|
||
|
\item[DHT] Distributed Hash Table
|
||
|
\item[DIFS] Distribution Interframe Space
|
||
|
\item[DNS] Domain Name System
|
||
|
\item[ECN] Explicit Congestion Notification
|
||
|
\item[EGP] Exterior Gateway Protokoll
|
||
|
\item[FDDI] Fiber Distributed Data Interface, Multi-Token Ring
|
||
|
\item[FDMA] Frequency Division Multiplex Access, Frequenzmultiplex
|
||
|
\item[FTP] File Transfer Protocol
|
||
|
\item[HOL] Head-of-the-Line
|
||
|
\item[HTTP] Hypertext Transfer Protocol
|
||
|
\item[ICMP] Internet Control Message Protocol
|
||
|
\item[IGP] Interior Gateway Protokolle
|
||
|
\item[LSA] Link-State-Advertisement
|
||
|
\item[LSP] Label-Switched Path
|
||
|
\item[LSR] Label Switched Router
|
||
|
\item[MAC] Media Access Control
|
||
|
\item[MIB] Management Information Base
|
||
|
\item[MPLS] Multiprotocol Label Switching - virtuelle Leitungsvermittlung, schnelles Weiterleiten (ATMs)
|
||
|
\item[MSS] Maximum Segment Size
|
||
|
\item[MTU] Maximum Transmission Unit
|
||
|
\item[NAT] Network Address Translation
|
||
|
\item[OSPF] Open Shortest Path First
|
||
|
\item[PDU] Protocol Data Units
|
||
|
\item[RIP] Routing Information Protocol
|
||
|
\item[RTT] Round Trip Time
|
||
|
\item[SACK] Selective Acknowledgment (TCP)
|
||
|
\item[SAP] Service Access Points
|
||
|
\item[SDP] Session Description Protocol - Aushandeln von Kodierungsverfahren bei SIP
|
||
|
\item[SDU] Service Data Units
|
||
|
\item[SIFS] Short Interframe Space
|
||
|
\item[SMTP] Simple Mail Transfer Protocol
|
||
|
\item[SMI] Structure of Management Information
|
||
|
\item[SNMP] Simple Network Management Protocol
|
||
|
\item[TDMA] Time Division Multiplex Access, Zeitmultiplex
|
||
|
\item[TCP] Transmission Control Protocol
|
||
|
\item[TTL] Time To Live
|
||
|
\item[UDP] User Datagram Protocol
|
||
|
\item[URL] Uniform Resource Locator
|
||
|
\end{description*}
|
||
|
\input{Footer}
|