TODO
- IDU,ICI,PCI,SDU,UD,PDU Merkhilfen und Merkzettel was was ist
- BLOCKIN,CONCATINATION etc. istklausurrelevant
- Themen aus der Zusammenfassung besser ausarbeiten
Geht weiter ab : S.96 Kapitel 2
Kurzüberblick
Strukturierte Darstellung des Netzwerkkommunikationsmodells
Datenfluss
- Beim Sender: Der Datenfluss beginnt beim Sender, wo Daten für die Übertragung vorbereitet werden. Dies beinhaltet die Aufteilung in kleinere Datenpakete und deren Kodierung für den Transport.
- Beim Empfänger: Am Zielort werden die empfangenen Datenpakete wieder zusammengesetzt und dekodiert, um die ursprüngliche Nachricht wiederherzustellen.
- Am Zwischenknoten: Datenpakete werden durch verschiedene Netzwerkknoten (wie Router) weitergeleitet, die für die Auswahl des optimalen Pfades durch das Netzwerk verantwortlich sind.
Schichtenmodelle
- Internet-Modell: Das vereinfachte Modell, das hauptsächlich in der Internet-Kommunikation verwendet wird. Es besteht aus vier Schichten: Anwendungsschicht, Transportschicht, Internetschicht und Netzwerkzugangsschicht.
- ISO OSI-Schichtenmodell: Ein detaillierteres Modell mit sieben Schichten, das eine klarere Trennung der Netzwerkfunktionen ermöglicht. Jede Schicht hat spezifische Aufgaben und kommuniziert über definierte Schnittstellen mit den benachbarten Schichten.
Die Geschichte des Internet - Grundsätze bei der Entwicklung
- Frühphase des Internet: Ursprünglich als militärisches Projekt gestartet, entwickelte sich das Internet zur Unterstützung von universitären und Forschungseinrichtungen.
- Wilde Phase: Kennzeichnet das explosive Wachstum und die Erweiterung des Internets über akademische und militärische Einrichtungen hinaus.
- Kommerzielle Phase: Beginn der kommerziellen Nutzung des Internets, die zur Entwicklung und Etablierung zahlreicher neuer Technologien und Geschäftsmodelle führte.
Code-Beispiel: Client-Server TCP/IP
- Öffnen des Ports / Anhörung: Der Server öffnet einen Port und hört auf eingehende Verbindungen.
- Senden einer Nachricht (Client): Der Client sendet eine Nachricht über eine etablierte Verbindung an den Server.
- Warten auf Verbindung (Server): Der Server wartet auf eine Verbindungsaufforderung vom Client.
- Empfangen einer Nachricht (Server): Der Server empfängt die Nachricht und verarbeitet sie entsprechend.
- Fragestellungen: Der Client und der Server können während der Kommunikation verschiedene Aufgaben und Fehlerbehandlungen durchführen, um die Datenintegrität und die korrekte Zustellung zu gewährleisten.
Diese strukturierte Darstellung zeigt eine klare Aufteilung der Netzwerkarchitektur und Kommunikation, die für das Verständnis und die Entwicklung von Netzwerkanwendungen wesentlich ist.
Vorabzusammenfassung
Datenfluss in Rechnernetzen und verteilten Systemen
Überblick
Der Datenfluss in Rechnernetzen umfasst die Übertragung von Nachrichten zwischen Sendern und Empfängern über das Netzwerk, den Aufbau und Abbau von Verbindungen, die Sicherstellung der Zustellung auch über unsichere Kanäle und das Management von Netzwerkverkehr zur Vermeidung von Staus. Der Prozess des Datenflusses kann in folgende Hauptkomponenten unterteilt werden:
Nachrichtenübertragung
- Sender zu Empfänger: Die Übertragung der Nachrichten erfolgt von einem Ursprung zu einem Ziel durch das Netz.
- Weg durch das Netz: Die Nachricht nimmt einen spezifischen Pfad durch das Netzwerk, wobei die Pfadschaltung und Wegewahl lokale Netzwerke oder das Internet einschließen können.
- Datenübertragung: Dies beinhaltet die Sicherung der übertragenen Daten sowie die eigentliche Bitübertragung.
Detailansicht des Datenflusses
Aufbau und Abbau der Verbindung
- Verbindungen werden je nach Bedarf aufgebaut und wieder abgebaut, wobei Dienste mit oder ohne Zustellgarantie angeboten werden können.
Übertragung über unsichere Kanäle
- Es werden Mechanismen eingesetzt, um eine zuverlässige Datenübertragung auch über potenziell unsichere Übertragungsmedien zu gewährleisten.
Verkehrsmanagement
- Um Staus im Netzwerk zu vermeiden, wird ein Verkehrsmanagement durchgeführt, das darauf abzielt, die Datenflüsse zu regulieren und eine gleichmäßige Verteilung der Netzwerkressourcen zu gewährleisten.
Technologien und Protokolle
Der Datenfluss in modernen Netzwerken basiert auf einer Vielzahl von Technologien und Protokollen, die sicherstellen, dass Daten effizient und sicher von einem Punkt zum anderen transportiert werden können. Zu den wichtigsten Protokollen gehören IP für die Netzwerkvermittlung und TCP für die Transportsicherung, die zusammen das Rückgrat des Internets bilden.
Schlussfolgerung
Die effektive Verwaltung des Datenflusses ist entscheidend für die Leistungsfähigkeit und Zuverlässigkeit von Netzwerkdiensten. Moderne Netzwerktechnologien und -protokolle sind darauf ausgelegt, auch unter schwierigen Bedingungen eine hohe Dienstqualität zu bieten.
Quelle: Rechnernetze und verteilte Systeme, Prof. Dr. D. Kranzlmüller, Seiten 117-118
Schichtenmodelle in Rechnernetzen und verteilten Systemen
Einführung
Schichtenmodelle sind ein fundamentaler Bestandteil der Strukturierung von Netzwerkkommunikation. Sie ermöglichen es, komplexe Netzwerkfunktionen in überschaubare, unabhängige Schichten zu gliedern, die jeweils spezifische Aufgaben übernehmen. Zwei prominente Modelle sind das Internet-Schichtenmodell und das ISO/OSI-Referenzmodell.
Internet-Schichtenmodell
Das Internet-Schichtenmodell, oft auch als TCP/IP-Referenzmodell bezeichnet, ist praktisch orientiert und orientiert sich an den Kernprotokollen des Internets:
- Anwendungsschicht (Application Layer): Enthält Protokolle wie HTTP, SMTP, FTP, DNS, SNMP, DHCP, NTP usw.
- Transportschicht (Transport Layer): Nutzt Protokolle wie TCP und UDP zur Gewährleistung der End-zu-End-Datenübertragung.
- Vermittlungsschicht (Internet Layer): Beinhaltet das Internet Protocol (IP) sowie Routing-Protokolle wie ICMP, OSPF, und BGP.
- Netzanschluss (Link Layer): Umfasst Standards und Protokolle, die die Datenübertragung über physikalische Medien, wie zum Beispiel Ethernet oder WLAN, steuern.
Merkmale
- Direkt auf das Internetworking ausgerichtet.
- Einfachere Struktur mit vier Schichten.
- Enge Kopplung der Anwendungsschicht mit Endnutzeranwendungen.
ISO/OSI-Referenzmodell
Das ISO/OSI-Modell (International Organization for Standardization/Open Systems Interconnection) ist ein theoretisches Rahmenwerk für die Netzwerkkommunikation, das sich über sieben Schichten erstreckt:
- Anwendungsschicht (Application Layer)
- Darstellungsschicht (Presentation Layer)
- Sitzungsschicht (Session Layer)
- Transportschicht (Transport Layer)
- Netzwerkschicht (Network Layer)
- Datensicherungsschicht (Data Link Layer)
- Physikalische Schicht (Physical Layer)
Merkmale
- Umfassendes Modell für Telekommunikationsnetze.
- Klare Trennung der Funktionen in sieben Schichten.
- Schichten 5 und 6 im ISO/OSI-Modell werden oft von der Anwendungsschicht im Internet-Modell abgedeckt.
Vergleich und Schlussfolgerung
Das ISO/OSI-Modell bietet eine detailliertere und besser strukturierte Theorie, die vor allem in der akademischen Lehre bevorzugt wird, während das Internet-Schichtenmodell aufgrund seiner praktischen Anwendung und direkten Implementierung der Kernprotokolle des Internets weit verbreitet ist. Beide Modelle dienen als wichtige Werkzeuge für das Verständnis und die Entwicklung von Netzwerkprotokollen und -architekturen.
Quelle: Rechnernetze und verteilte Systeme, Prof. Dr. D. Kranzlmüller, Seiten 116, 120
Die Geschichte des Internet - Grundsätze bei der Entwicklung
Einführung
Die Geschichte des Internets ist reich an technologischen Innovationen, strategischen Entscheidungen und revolutionären Ideen. Von seinen militärischen Anfängen bis hin zur kommerziellen Nutzung hat das Internet sich zu einem globalen Netzwerk entwickelt, das heute eine fundamentale Rolle in fast allen Aspekten des modernen Lebens spielt.
Frühphase des Internet (Mitte 1960)
- Schaffung der Grundlagen: Die Advanced Research Projects Agency (ARPA) des US-Verteidigungsministeriums initiierte die Entwicklung von Technologien, die die Grundlage des Internets bilden sollten.
- Demonstration der Technologie: Frühe Netzwerkprototypen wie das ARPANET demonstrierten die Machbarkeit eines groß angelegten, dezentralen Netzwerks.
- Anwendungsfähigkeit: Das Netzwerk wurde zunächst für Forschungs- und Militärzwecke verwendet, zeigte aber schnell sein Potenzial für breitere Anwendungen.
Wilde Phase des Internet (Ende 1970)
- Übergang von militärischer zu akademischer Forschungsförderung: Nachdem das grundlegende Netzwerk etabliert war, wurde die Förderung zunehmend auf akademische Institutionen ausgeweitet.
- Wachstum und internationale Ausbreitung: Das Internet begann, über die Grenzen der USA hinaus zu wachsen und fand international Anwendung.
- Tauschökonomie und Selbstorganisation: In dieser Phase bildeten sich die ersten Communities, die das Netzwerk eigenständig erweiterten und verwalteten.
- Hackergeist: Die offene und experimentelle Natur des Internets förderte eine Kultur der Innovation und des freien Informationsaustauschs.
Kommerzielle Phase des Internet (Seit 1990)
- Kommerzielle Nutzung: Anfang der 1990er Jahre wurde das Internet für kommerzielle Zwecke freigegeben, was zu einem explosiven Wachstum der Technologie und ihrer Anwendungen führte.
- Weiterentwicklung und Standardisierung: Mit der zunehmenden Verbreitung begannen auch die Anstrengungen, die Technologien zu standardisieren und weiterzuentwickeln, um eine breitere Kompatibilität und Zuverlässigkeit zu gewährleisten.
Schlussfolgerung
Die Entwicklung des Internets war von Anfang an von Grundsätzen geprägt, die Offenheit, Dezentralisierung und Nutzerbeteiligung in den Vordergrund stellten. Diese Prinzipien haben nicht nur zur technischen Gestaltung des Netzes beigetragen, sondern auch eine Kultur gefördert, die das Internet zu einem einzigartigen und unverzichtbaren Bestandteil der globalen Kommunikation gemacht hat.
Quelle: Rechnernetze und verteilte Systeme, Prof. Dr. D. Kranzlmüller, Seiten 144-146
Code-Beispiel: Client-Server TCP/IP
Überblick
In Netzwerkanwendungen ist die Client-Server-Architektur ein gängiges Modell, bei dem ein Server Dienste für einen oder mehrere Clients bereitstellt. Das folgende Beispiel illustriert die grundlegende Nutzung von TCP-Sockets in einer solchen Architektur, wobei ein einfacher Server und Client in Python implementiert werden.
Server Code
Der Server wartet auf eingehende TCP-Verbindungen und sendet eine Antwort auf eine empfangene Nachricht.
Client Code
Der Client verbindet sich mit dem Server, sendet eine Nachricht und empfängt die Antwort.
Erläuterung
In diesem Beispiel verwenden Server und Client das TCP/IP-Protokoll für eine zuverlässige Kommunikation. Der Server ist kontinuierlich in der Lage, Verbindungen zu akzeptieren und auf Nachrichten zu antworten. Der Client initiiert die Verbindung, sendet eine Nachricht und wartet auf die Antwort des Servers.
Quelle: Rechnernetze und verteilte Systeme, Prof. Dr. D. Kranzlmüller, Seiten 170-172
Fragen zu Rechnernetzen und verteilten Systemen
Fragen aus den Seiten 176 und 177
Allgemeine Fragen zu Netzwerken
- Welche Probleme müssen in Rechnernetzen gelöst werden, die es in dieser Art in Einzelsystemen nicht gibt?
- Erörtern Sie die einzigartigen Herausforderungen, die sich bei der Kommunikation zwischen vernetzten Computern im Vergleich zu Einzelsystemen stellen.
Vergleich von Schichtenmodellen
- Wie unterscheiden sich Internet-Schichtenmodell und ISO/OSI-Referenzmodell?
- Beschreiben Sie die Unterschiede in Struktur und Anwendung zwischen diesen beiden Modellen.
Konzept der Schnitte
- Wofür dienen Schnitte?
- Erklären Sie die Rolle und den Zweck von Schnitten in der Netzwerkarchitektur.
- Welche Arten von Schnitten gibt es?
- Beschreiben Sie die verschiedenen Typen von Schnitten, die in Netzwerken verwendet werden.
Erzeugung und Management von Protokoll-Einheiten
- Wie entsteht eine N-PDU aus einer N-SDU?
- Erläutern Sie den Prozess der Transformation von Service Data Units (SDUs) in Protocol Data Units (PDUs).
Schlüsselbegriffe in Netzwerkarchitekturen
- Erklären Sie die Schlüsselbegriffe des Kapitels:
- Referenzmodell: Was versteht man unter einem Referenzmodell?
- Schichtenarchitektur: Was bezeichnet die Schichtenarchitektur?
- Dienst: Wie ist ein Dienst definiert?
- Schnittstelle: Was ist eine Schnittstelle?
- Protokoll: Was ist ein Protokoll?
Zusammenhänge in der Netzwerkarchitektur
7.Wie hängen Dienst, Protokoll und Schnittstelle in einem Schichtenmodell zusammen?
- Erläutern Sie die Zusammenhänge zwischen Diensten, Protokollen und Schnittstellen in einem Netzwerkarchitektur-Modell.
Abschlussgedanken
Rechnernetze und verteilte Systeme bilden das Rückgrat der modernen Kommunikation. Ihre Grundprinzipien und Technologien sind für das Verständnis der digitalen Welt unerlässlich. Von den Grundlagen des Datenflusses bis hin zur Entwicklung komplexer Netzwerkanwendungen bietet dieses Feld eine faszinierende Mischung aus Theorie und Praxis, die es zu erforschen gilt.
Wiederholung
Schichten im Internet S.83
- Wie eine Nachricht aufgebaut ist
- Messenger X worüber Alice Nachrichten verschicken will
- Zum verschicken dieser Nachricht brauchen wir folgende Funktionen:
- Schnitstelle: sendeNachricht(Zielort,Nachricht) → Ziel hier ist Bob
- Protokoll Dienst A (Prio,Absender,Ziel,Nachricht) → Ziel hier ist Bobs physische Adresse
- Dienst A (x,y,z,d)
- Dienst F (adresse zum nächsten Knoten) → gibt mehrere Dienste, da mehrere Wege durch Netz Dienst F ist aus der Schicht Weg durch das Netz
- Dienst A (x,y,z,d)
- Protokoll Dienst A (Prio,Absender,Ziel,Nachricht) → Ziel hier ist Bobs physische Adresse
- Schnitstelle: sendeNachricht(Zielort,Nachricht) → Ziel hier ist Bob
- Zum verschicken dieser Nachricht brauchen wir folgende Funktionen:
Nachricht ist Teil von Nutzdaten Alice ist ICI Nachricht is ID Beides Zusammen ist IDU → Nur als Festlegung der Sprache sonst nichts, nur damit man weiß was gemeint ist PDU geht von Absender Seite zur Peer-Entität (Empfänger)
Horizontale und Vertikale Kommunikation S.89
Wiederholung Ende
Schnittstelle
hat er nur kurz erklärt
Schichtfestlegung
Internet-Schichtenmodell
Standard Internet Schichtenmodell was heutzutage verwendet wird
- Anwendung
- HTTP
- FTP
- SNMP
- etc.
- Transport
- TCP
- UDP
- Vermittlung
- IP
- RIP
- BGP
- ICMP
- etc.
- Netzanschluss
- ARP
- PPP
TCP und IP eins der wichtigste eins zum transport, das andere zur Vermittlung → Internet verwendet Internet-Protokoll obwohl ISO OSI besser, aber Internet ist halt normalisiert