/
-
- 1 / 86
-
Lernkarten
Nennen Sie ein Beispiel für ein Protokoll aus der Sicherungsschicht.
Ethernet
Was bestimmen Anwendungsprotokolle?
- Nachrichtenarten: Request, Response, ...
- Nachrichtensyntax: Welche Felder sind vorhanden und wie werden sie getrennt?
- Nachrichtensemantik: Was bedeuten die Informationen in den Feldern?
- Regeln für das Senden von und Antworten auf Nachrichten
Wie werden Hosts und Prozesse identifiziert?
Hosts: IP-Adresse (mehrere IP-Adressen pro Host möglich)
- IPv4: 32 Bit
- IPv6: 128 Bit
- IP-Adresse min. im lokalen Netzwerk eindeutig
Prozesse: IP-Adresse und Portnummer
Nach welchen Kritierien sollte ein Transportdienst gewählt werden?
- Bandbreite: Mindestbandbreite erforderlich? Bsp: Multimedia-Streaming
- Datenverlust: Verlust tolerabel oder absolut zuverlässiger Transfer nötig? Bsp.: Audioübertragung vs. Dateitransfer
- Zeitanforderung: Nur sehr geringe Verzögerung tolerabel? Bsp.: Internettelefonie
Bewerten Sie die Transportkontrolle TCP und UDP anhand der Kriterien Datenverlust, Bandbreite und Echtzeit.
UDP:
- Datenverlust: unzuverlässiger Datentransport zwischen Sender und Empfänger
- Bandbreite: keine Bandbreitengarantie
- Echtzeit: keine Zeitgarantie, aber schneller als TCP
TCP:
- Datenverlust: zuverlässiger Transport durch Flusskontrolle (keine Überlastung des Empfängers)
- Bandbreite: keine Bandbreitengarantie
- Echtzeit: keine Zeitgarantie
Beschreiben Sie das HyperText Transfer Protocol HTTP.
- Client-Server-Modell: Client ist Browser, der Objekte anfragt, Webserver verschickt Objekte auf Anfrage
- TCP-Verbindung zum Server
- Server wartet auf Port 80
- zustandslos: Server merkt sich keine Informationen über frühere Anfragen
Wodurch unterscheiden sich nichtpersistentes HTTP und persistentes HTTP?
nichtpersistent: Übertragung von maximal einem Objekt über eine TCP-Verbindung
persistent: Übertragung mehrerer Objekte über eine TCP-Verbindung möglich
Beschreiben Sie den Verbindungsaufbau für eine URL mittels nichtpersistentem HTTP.
1a) HTTP-Client initiiert TCP Verbindung mittels URL und Port 80
1b) HTTP-Server wartet auf dem Host der URL wartet auf TCP-Verbindungen an Port 80, Akzeptieren der Verbindung, Benachrichtigung des Clients
2) HTTP-Client schickt Request über TCP-Socket
3) HTTP-Server empfängt Request, Konstruktion einer HTTP-Response-Nachricht, die angefragtes Objekt beinhaltet, Senden der Nachricht über den Socket an Client
4) HTTP-Server schließt TCP-Verbindung
5) HTTP-Client empfängt Nachricht, in der weitere Objekte referenziert werden --> für jedes dieser Objekte erneut gleiches Vorgehen
Was ist die Round Trip Time?
RTT ist die Zeit, die benötigt wird, um ein kleines Paket vom Client zum Server und zurück zu schicken.
Erklären Sie die Verzögerung bei nichtpersistentem HTTP.
Es wird eine RTT für den TCP-Verbindungsausfbau benötigt sowie eine weitere RTT für den eigentlichen HTTP-Request. Außerdem muss noch die Zeit für das Übertragen der Daten auf der Leitung hinzugerechnet werden.
Damit: 2 RTTs pro Objekt, Aufwand des Betriebssystems für jede TCP-Verbindung
Browser öffnen oft mehrere parallele TCP-Verbindungen, um referenzierte Objekte zu laden
Wie funktioniert das persistente HTTP mit und ohne Pipelining?
Server lässt Verbindung nach dem Senden der Antwort offen, sodass nachfolgende HTTP-Nachrichten über dieselbe Verbindung übertragen werden.
ohne Pipelining:
- Client schickt erst neuen Request, nachdem Antwort auf den aktuellen Request empfangen wurde
- eine RTT für jedes referenzierte Objekt
mit Pipelining:
- Client schickt Request, sobald er Referenz zu einem Objekt findet
- idealerweise nur wenig mehr als eine RTT für das Laden aller referenzierten Objekte benötigt
Welches Format haben HTTP-Request-Nachrichten?
Request-Zeile mit Methode, URL und Version
Header-Zeilen
Leerzeile
Entity-Body
Welche Typen von HTTP-Anweisungen gibt es?
GET, POST, HEAD (nur Übertragen der Kopfzeilen der Antwort), PUT (Hochladen der im Datenteil enthaltenen Datei an durch eine URL bezeichnete Position), DELETE (Löschen der durch eine URL angegebenen Datei vom Server)
Welches Format hat eine HTTP-Response-Nachricht?
Statuszeile mit Version, Statuscode, Statusnachricht
Header-Zeilen
Leerzeile
Entity-Body
Welche Methoden kann der Client nutzen, um per HTTP Daten an den Server zu übertragen?
POST (Übertragen der Daten im „entitiy body“) und
GET (Übertragen der Daten als Bestandteil der URL)
Was ist FTP und wie läuft ein Transfer ab?
File Transfer Protocol
- Übertragen einer Datei von/zu einem entfernten Rechner
- FTP-Client kontaktiert FTP-Server über Port 21
- FTP-Client autorisiert sich über Kontrollverbindung
- FTP-Client schickt Kommandos über Kontrollverbindung
- FTP-Server öffnet TCP-Verbindung zum Client, sobald er Kommando für Dateiübertragung erhält
- FTP-Server schließt TCP-Verbindung nach der Übertragung
Welche Kommandos kann der FTP-Client über die Kontrollverbindung schicken?
USER: Username
PASS: Password
LIST: gibt Liste der Dateien im aktuellen Verzeichnis zurück
RETR filename: Laden einer entfernten Datei auf den lokalen Rechner
STOR filename: Übertragen einer lokalen Datei auf den entfernten Rechner
Aus welchen Phasen setzt sich der Mail-Versand zusammen?
- Handshaking (Begrüßung)
- Transfer of Messages
- Closure (Verabschiedung)
Wie läuft ein Mailversand ab?
- Anwendung sendet Nachricht an ihren Mailserver
- Nachricht wird in der Warteschlange gespeichert
- Mailserver öffnet als Client eine TCP-Verbindung zum Mailserver des Empfängers
- SMTP-Client versendet Nachricht über TCP-Verbindung
- Empfänger-Mailserver empfängt Nachricht und speichert diese in Empfänger-Mailbox
Welche Befehle gibt es beim Mailversand?
- HELO
- MAIL FROM
- RCPT TO
- DATA
- QUIT
Wodurch unterscheiden sich HTML und SMTP?
HTML:
- PULL
- jedes Objekt in einer eigenen Antwortnachricht gekapselt
SMTP:
- PUSH
- mehrere Objekte können in einer Nachricht versendet werden
Beide:
- Interaktion mittels ASCII-Befehl/Antwort-Paaren sowie Statuscodes
Was sind POP3 und IMAP und wodurch unterscheiden sie sich?
Protokolle zum Zugriff auf Emails
POP: Post Office Protocol
- Autorisierung und Zugriff/Download
- zustandslos zwischen einzelnen Sitzungen
IMAP: Internet Mail Access Protocol
- alle Nachrichten bleiben auf dem Server
- Manipulation der auf dem Server gespeicherten Nachrichten
- Nachrichten können auf dem Server in Ordnern verwaltet werden
- IMAP bewahrt Zustand zwischen den Sitzungen (Namen von Ordnern, Zuordnung von Nachrichtennummer und Ordnername)
Welche Möglichkeit gibt es zur automatisierten Erkennung von Spam?
Untersuchung:
- syntaktische Fehler im Aufbau des Headers/Bodies der Nachricht
- Auswertung der in der Mail enthaltenen Formate, Textbausteine, Worte
- Bewertung der enthaltenen Links
- Bewertung der Absender
Berechnung eines Spam-Scores, der dann z.B. in den Mail-Header eingefügt werden kann
Welche Möglichkeit gibt es, Spam gleich abzuweisen?
DNSBL:
- DNS-basierte Blackhole List, die eine Echtzeit-Abfrage einer Blacklist von Spam-Absendern bietet, sodass Mailserver die Mail direkt abweisen kann
Greylisting:
- erste Mail eines unbekannten Absenders wird abgewiesen
- ab zweitem Zustellversuch wird Mail (und alle weiteren des Absenders) angenommen
- Massenversender verzichten meist auf erneute Zustellung
Welche Dienste und Funktionen bietet das Domain Name System DNS?
- verteilte, hierarchische Datenbank mit Nameservern
- Protokoll der Anwendungsschicht
- Übersetzung von Host-Name in IP-Adressen
- kanonische Namen und Aliasnamen für Hosts und Mailserver
Wie läuft die Suche nach der IP-Adresse von z.B. www.amazon.com ab?
- Client fragt lokalen DNS-Server
- lokaler DNS-Server fragt seinen DNS-Rootserver, um DNS-Server für com zu finden
- lokaler DNS-Server fragt com-DNS-Server, um DNS-Server für amazon.com zu finden
- lokaler DNS-Server fragt amazon.com-DNS-Server, um IP-Adresse zu erhalten
Was ist der DNS-Rootserver?
- kennt Adressen der Nameserver der Top-Level-Domains (com, net, org, de, uk, ...)
- gibt Infos bei Anfrage an lokalen DNS-Server weiter
- 13 logische DNS-Rootserver, aber weltweit mehr als 500 tatsächliche Server
Was ist ein autoritativer DNS-Server?
- DNS-Server einer Organisation, der eine autorisierte Abbildung der Namen dieser Organisation auf IP-Adressen anbietet
- verwaltet von der Organisation oder einem Service Provider
Was ist ein lokaler Nameserver?
- gehört nicht zur Hierarchie der DNS-Server
- jeder ISP besitzt einen lokalen Nameserver
- erhält von Host eine DNS-Anfrage, um die er sich kümmert, bis eine endgültige Antwort vorliegt
- kontaktiert bei Bedarf Root-Nameserver, TLD-Nameserver (Top-Level-Domain) oder autoritative Nameserver
Mit welchen Mitteln steuert die Transportschicht die Zuverlässigkeit einer gegebenen Leitung?
- Flusskontrolle
- Segmentierung / Desegmentierung
- Fehlerkontrolle
Welche Aufgaben hat die Transportschicht?
- Initiieren einer Sitzung
- Nachverfolgen der einzelnen Kommunikationsvorgänge zwischen Anwendungen
- Segmentieren der Daten und Verwalten jeder Dateneinheit
- Neuzusammensetzen der Segmente zu Anwendungsdatenströmen
- Erkennen der verschiedenen Anwendungen
- Flusskontrolle zwischen Endbenutzern
- Wiederherstellung im Fehlerfall
Was sind Multiplexing und Demultiplexing?
Gleichzeitiges Senden/Empfangen verschiedener Anwendungen, die gleichzeitig auf dem Computer ausgeführt werden.
Multiplexing beim Sender:
- Daten von mehreren Sockets einsammeln
- Daten mit einem Header versehen
- Weiterleiten der Pakete an die Netzwerkschicht
Demultiplexing beim Empfänger:
- empfangene Pakete am richtigen Socket abliefern
- empfangenes IP-Datagramm enthält Absender- und Empfänger-IP-Adresse sowie Transportschichtpaket mit Absender- und Empfänger-Portnummer
In welchem Bereicht liegen die Well-Known-Ports? Nennen Sie Beispiele.
0 bis 1023
Bsp.:
25 - SMTP
80 - HTTP
110 - POP3
Wofür sind registrierte Ports?
- Benutzerprozessen oder -anwendungen zugeordnet
- Prozesse sind meist Einzelanwendungen, die ein Benutzer registriert hat
- 1024 bis 49151
Was ist Flusskontrolle?
- Ressourcen von Netzwerkhosts (Speicher, Bandbreite) stets begrenzt
- bei Überbeanspruchung sind einige Protokolle in der Lage, die sendende Anwendung zur Verringerung ihrer Datenrate aufzufordern
- Regulierung der Datenmenge, die der Absender überträgt
- Verhindert Verlust von Segmenten
Was ist Segmentierung?
- Übergabe großer Datenmengen von der Anwendungsschicht an die Transportschicht
- Unterteilung in kleinere Einheiten --> Segmente
- jedes Segment benötigt Header zur Zuordnung zu einer Anwendung
- ohne Segmentierung könnte nur eine einzige Anwendung zur Zeit Daten senden oder empfangen
In welchem Bereich liegen dynamische oder private Ports?
49152-65535
- werden meist in dynamischer Form Clientanwendungen zugewiesen, sobald eine Verbindung hergestellt wird
Wie wird die Prüfsumme gebildet?
Sender:
- Segmente = Folge von 16-Bit-Integer-Werten
- Addition dieser Werte
- invertiertes Resultat im UDP-Prüfsummenfeld ablegen
Empfänger:
- Berechnung der Prüfsumme des empfangenen Segments inkl. des Prüfsummenfeldes (!)
- Ergebnis: Alle Bits = 1?
Ja: kein Fehler erkannt, Nein: Fehler erkannt
Erläutern Sie das User Datagram Protocol UDP und seine Vorteile.
- minimales Internet-Transportprotokoll
- UDP-Segmente können verloren gehen oder in der falschen Reihenfolge ausgeliefert werden
- verbindungslos: kein Handshake zum Verbindungsaufbau, jedes Segment unabhängig von allen anderen behandelt
- kein Verbindungsaufbau (der zu Verzögerungen führen kann)
- einfach (kein Verbindungszustand im Sender oder Empfänger)
- kleiner Header
- keine Überlastkontrolle (UDP sendet so schnell, wie von der Anwendungs gewünscht)
Nennen Sie Mechanismen für die zuverlässige Datenübertragung und beschreiben Sie sie kurz.
- Prüfsumme: Erkennung von Bitfehlern
- Timer: Wiederholung eines Paketes, wenn keine Bestätigung nach vorgegebener Zeit kommt
- Sequenznummer: fortlaufende Nummerierung von Paketen (Lücken zeigen Empfänger fehlende Pakete an, Duplikate können ignoriert werden)
- Acknowledgement ACK: Bestätigung durch Empfänger, dass Paket korrekt erhalten wurde
- negatives Acknowledgement NAK: Anzeige des Empfängers, dass Paket nicht korrekt übertragen wurde
- Pipelining/Sendefenster: Sender darf mehrere Pakete senden, bevor eine Bestätigung kommt, Sequenznummern müssen in einem gegebenen Bereich liegen