RN Flashcards
Alle 7 Schichten ISO-OSI Modell und deren Aufgaben
7.Anwendungsschicht (HTTP, SMTP)
Aufgabe: Bereitstellung von Diensten für den Benutzer (World wide web, email, verzeichnisverwaltung)
(6.Darstellungsschicht)
Aufgabe: Zeichenkonvertierung, Datenkompression und verschlüsselung
(5.Sitzungsschicht)
Aufgabe: Dienste für Datenkommunikation bereitstellen, Sitzung herstellen
4.Transportschicht (TCP/IP, UDP)
Aufgabe: Ende zu Ende Kommunikation, Aufbau und Zerlegung von Daten sowie Aufbau und Abbau der Netzverbindung
3.Vermittlungsschicht (IP, Router)
Aufgabe: Routing, also Auswahl der Wege durch Netze
2.Sicherungsschicht (HDLC (High-Level Data Link Control), Mac, Bridge, Switch)
Aufgabe:
Erzeugung von Frames
Behandlung von Übertragungsfehlern
Regulierung des Datenflusses
1.Bitübertragungsschicht (Ethernet, Repeater, Hub)
Aufgabe: Richtige Übertragung der Bits über den Kanal
Merksatz: Alle deutschen Studenten trinken verschieden Sorten Bier.
TCP/IP Referenzmodell (7,4,3,2und1)
7.Anwendungsschicht
4.Transportschicht (TCP IP)
3.Internetschicht (IP Internet Protocol)
2&1. Netzzugangsschicht Kombination aus 1 und 2 des ISO OSI Modells
RTT & Verzögerung-Bandbreiten Produkt X_vb & Übertragungsverzögerung T_x & Transferzeit T_f & Datendurchsatz
RTT = 2 * Entfernung/ Ausbreitungsgeschwindigkeit
X_vb = 1/2 * RTT * Bandbreite (es wird meistens nach halber RTT gefragt)
T_x = Dateigröße / Bandbreite (Übertragsungsverzögerung)
T_f = RTT + Dateigröße/ Bandbreite
Datendurchsatz = Dateigröße/ Transferzeit
RTO (Retransmission Timeout)
RTO = Timer. Wird ein Datenpaket nicht innerhalb dieser Wartezeit acknowledged, so wird das entsprechende Datenpaket erneut gesendet, nach dem dieser Timer durch ist.
Übertragunszeit variert -> Time-out ständig neu berechnen über dynamischen Algorithmus
Adressbereich Grenzen ausrechnen
Subnetzmaske ausrechnen
Netzanteil?
Begründung:
Da wir uns im selben Netz befinden, können wir die bits die zum Netzteil der Subnetzmaske gehören festhalten und die hostbits minimal und maximal setzen um Anfang und das Ende des Netzbereiches herauszufinden
Subnetzmaske = ANFANGADRESSE XNOR ENDADRESSE (wann sind die gleich)
“/x” das x gibt an wie viele 1sen die subnetzmaske hat (wie viele bits der netzteil der subnetzmaske hat)
somit gibt 32bit - x bit die anzahl der 0en der subnetzmaske an. (wie viele bits der hostteil der subnetzmaske hat)
Die anzahl der möglichen adressen ist somit 2^(hostbits) und mögliche hosts sind 2^(hostbits) - 2
IPv4 vs. IPv6
IPv4 = 32 Bit
IPv6 = 128 Bit
Checksum fällt bei ipv6 weg
-IPv6 höhere Sicherheit durch IPsec
-IPv6 Skalierbarer (8 Blöcke je 16 Bit in 4 Hexadezimalstellen)
Kette, Ring Verbindungsaufwand, Durchmesser, Mittlere Weglänge
Verbindungsaufwand (Vb) = Anzahl der Kanten (Wenn es bidirektional ist und nach unidirektional gefragt ist, dann mal 2, weil beide Richtungen beachtet werden müssen)
Durchmesser = Maximaler Weg zwischen zwei Kanten
Mittlere Weglänge = Verbindungen von Sender / anzahl verbindungen
Verzögerung-Bandbreiten-Produkt
Bezeichnet die Anzahl der Daten die unterwegs sind,
wenn der Sender ständig Paket verschickt.
MPI SCHABLONE
Struktur:
init
comm_size
comm_rank
scanf
bcast
schleife
reduce
print
finalize
int size, rank, count;
float zwischenergebnis=0, prod;
//size = total Processes
//rank = Current Process
//count = Number of intervals
MPI_Init(&argc, &argv); MPI_Comm_size(MPI_COMM_WORLD, &size); MPI_Comm_rank(MPI_COMM_WORLD, &rank); if(rank == ROOT) { scanf("%i", &count); } MPI_Bcast(&count, 1, MPI_INT, ROOT, MPI_COMM_WORLD); for(int i = rank + 1; i <= count; i+= size) { //Deine Berechnung } MPI_Barrier(MPI_COMM_WORLD); MPI_Reduce(&zwischenergebnis, &prod, 1, MPI_FLOAT, MPI_PROD, ROOT, MPI_COMM_WORLD); if(rank == ROOT) { printf("Gesamtsumme: %f \n \n", prod); } MPI_Finalize();
NAT
Ein Netzwerkadressübersetzer verändert die Quell-IP-Adresse und den Quellen Port eines Paketes. Die Veränderung wird in der NAT-Übersetzungstabelle gesichert. Häufig übernimmt der Router die Aufgabe. Die Anzahl der mit dem Internet verbundenen Geräte übersteigt die Anzahl der IPv4-Adressen. Geräte in einem lokalen erhalten aus diesem Grund eine “Interne” IP-Adresse.
Sliding Window
Sender überträgt mehrere Segmente je nach window size an Empfänger –> Keine Bestätigung dann fehlende Pakete neu versenden
—-> Höhere Effizienz, Datenrate erhöht sich
Sliding window verschiebt sich dabei
Stop-and-wait Protokoll
Sender wartet nach jeder Übertragung eines Frames auf Bestätigung, erst danach nächste Frame senden.
Keine Bestätigung nach gewissen Zeitspanne—> Frame erneut senden
Sicherungsschicht (Hauptaufgaben)
- Verpacken von Daten aus der Vermittlungsschicht in sogenannte Fenster
-Behandlung von Übertragungsfehlern
-Regulierung des Datenflusses
Subnetzmaske bedeutung?
Eine Subnetzmaske dient dazu IP-Adressen zu einem Subnetz zuordnen zu können, d.h. man kann anhand einer subnetz maske überprüfen ob eine beliebige ip adresse zum netzwerk gehört oder nicht. Wichtig ist dass die erste ip adresse vom subnetz mit .0 die netzadresse ist und die letzte mit .255 die broadcast adresse, und somit nicht als host verwendet werden können.
Was sind SYN und ACK und wie funktioniert ein threeway handshake
SYN und ACK sind Control Flags im TCP Protokoll
SYN wird benutzt, um den Beginn einer neuen TCP-Verbindung anzuzeigen.
ACK wird benutzt, um den Empfang von Paketen zu bestätigen.
ThreeWayHandshake: (Init von TCP Verbindung)
Von Host A zu Host B (SYN)
SYN: Das ist das SYN-Flag. Es zeigt an, dass Host A eine neue Verbindung starten möchte.
SEQ (Sequence Number): Dies ist die Anfangssequenznummer von Host A. In deinem Beispiel ist sie 67100.
ACK: Das ACK-Feld wird hier nicht verwendet (Wert = 0).
Von Host B zu Host A (SYN, ACK)
SYN: Auch Host B möchte die Verbindung akzeptieren und sendet ebenfalls ein SYN.
SEQ (Sequence Number): Das ist die Anfangssequenznummer von Host B. In deinem Beispiel ist sie 320.
ACK: Hier bestätigt Host B die Sequenznummer von Host A und erhöht sie um 1. Das heißt, er erwartet das nächste Datenpaket von Host A mit der Sequenznummer 67101.
Von Host A zu Host B (ACK)
SEQ: Hier wird die Sequenznummer 67101 von Host A verwendet.
ACK: Hier bestätigt Host A die Sequenznummer von Host B und erhöht sie um 1, was bedeutet, dass er das nächste Datenpaket von Host B mit der Sequenznummer 321 erwartet.
Nach diesem Handshake ist die TCP-Verbindung zwischen den beiden Hosts erfolgreich hergestellt, und sie können nun Datenpakete sicher hin und her senden.
IPV4 in IPV6 einbetten, wie?
BSP:
IPV4: 132.195.67.18
==> Dezimalzahlen in Hexadezimal Umwandeln, in die letzten zwei Blöcke tun.
IPV6: ::FFFF:84C3:4312
Nachteile des Distance-Vector-Routing?
- Schlechte Skalierbarkeit für große Netze
- Großer Speicherbedarf
- Viel CPU-Zeit zum Durchsuchen der Tabelle
- Viel Bandbreite für den Austausch von Routing-Informationen
Wie löst Link-State-Routing die Probleme von Distance-Vector-Routing?
1.Information über gesamte Netztopologie wird an alle Router verteilt
2. Nach Initialisierung durch Nachbarn nur Übertragung von Zustandsänderungen.
3.Jeder Host berechnet beim Senden selber die Route.
Banyan-Eigenschaft
Seine Haupteigenschaft ist, daß er so konstruiert ist, daß von jedem Eingang genau ein Weg zu jedem Ausgang existiert
HTTP
HTTP-Nachrichten bestehen aus Request-Zeile (Request) oder Status-Zeile (Response), Header-Zeilen, Leerzeile und Entity Body (Daten).
HTTP-Request-Methoden:
GET: Datenanforderung an den Server.
POST: Übertragung von Daten vom Client zum Server (z.B., Formulardaten).
Verbindungsarten:
Persistent: Verbindung bleibt bestehen.
Non-persistent: Verbindung wird nach Senden der Antwort geschlossen.
IPV6 bedeutung ::/128
::1/128
::/128 unspecified address, alle bits sind auf 0, wird verwendet wenn nicht klar ist welche adresse verwendet werden soll
::1/128 Loopbackadresse und entspricht dem localhost bei wie bei ipv4
was ist die gateway adresse?
Die adresse des routers
in welchen schichten passieren arp, ip und dns spoofing
ARP: 2. Sicherungssicht
IP: 3. Vermittlungsschicht
DNS: 7. Anwendungsschicht
Warum müssen beim TCP-Server die Client-Verbindungen “akzeptiert” werden, während
dies bei UDP nicht nötig ist?
TCP vs. UDP
TCP (Transmission Control Protocol) ist ein verbindungsorientiertes Protokoll. Das bedeutet dass es ein Anfang und ein Ende gibt, und dieser Anfang wird durch das Akzeptieren der Verbindung gekennzeichnet.
TCP
- Verbindungsorientiert (hat offziellen Anfang und Ende)
- Zuverlässig (wartet auf acknowledge)
- Mehr overhead
UDP
- verbindungslos
- unzuverlässig
- weniger overhead