Netzwerke Teil 4: OSI-Referenzmodell und Festlegungen Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 16.10.13 1 Wer legt die Protokolle (und Dienste) fest? Grundlage von Verabredungen in der Kommunikation sind: – Internationale Standards – National Standards – Empfehlungen (Recommendations) – Request for Comments (RFC) – Industriestandards – De Facto-Standards Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 2 Ziele von Standards • Herstellen von Kompatibilität zwischen Produkten verschiedener Hersteller, möglichst weltweit und für einen sehr langen Zeitraum Beispiel: M6-Schraube/Mutter • Eröffnung und Vergrößerung von Märkten • Verkleinerung von Risiken für den Käufer von Produkten • Aus der Sicht der Kunden sollten Standards sein: – Unabhängig von einem Hersteller, so dass eine Auswahl besteht – Technisch ausgereift (vernünftig): "State of the art" – Langlebig (zum Investitionsschutz) • Aus der Sicht der Hersteller sollten sie eher das Gegenteil sein. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 3 Standards/Normen • Standard = Norm = Nach der Geschäftsordnung einer weltweit anerkannten Organisation verabschiedetes Dokument, das Festlegungen zur Gestaltung technischer Produkte oder Durchführung von Geschäftsprozessen macht • Nach DIN 820: "Normung ist die planmäßige, durch die interessierten Kreise gemeinschaftlich durchgeführte Vereinheitlichung von materiellen und immateriellen Gegenständen zum Nutzen der Allgemeinheit." • Internationale Standards sind weltweit gültig und können nur von einer anerkannten internationalen Organisation, wie z.B. – ISO: International Standardization Organization – IEC: International Electrotechnical Commission verabschiedet werden. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 4 Nationale Standardisierungsorganisationen • In fast allen Ländern gibt es mindestens eine anerkannte Organisation, die Standards beschließt, die nur für das jeweilige Land gelten. • In Deutschland ist dies das Deutsche Institut für Normung (DIN), das Deutsche Industrie Normen (DIN) herausbringt. DIN-Standards sind meistens nummeriert und beginnen mit "DIN", wie z. B. "DIN A 4". • In Großbritannien ist es das BSI (Britisch Standards Institution) • In den USA u.a. – – – – – American National Standards Institut (ANSI) Institute of Electrical and Electronics Engineers (IEEE) Electronic Industry Association (EIA) Telecommunications Industry Association (TIA) National Institute of Standards (NIST) Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 5 International Telecommunication Union (CCITT) • CCITT = Consultative Committee on International Telegraphy and Telephony • Gegründet 1865, Sitz in Genf, 1992 154 Mitglieder • Ab 1992 – ITU = International Telecommunication Union http://www.itu.int/net/home/index.aspx – ITU-T = ITU Telecommunication Standardization Sector http://www.itu.int/ITU-T/ • Die CCITT war die internationale Dachgesellschaft aller nationalen Postgesellschaften und hat mit ihren Empfehlungen dafür gesorgt, dass bei der Kommunikation zwischen den Postgesellschaften alles kompatibel ist. Dies betraf neben dem Telefon auch die Datenkommunikation. • ITU-T gibt keine Standards heraus, sondern Empfehlungen, die eine Gültigkeit von 2 bis 4 Jahren haben. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 6 ITU-T • Die Namen der Dokumente haben einen Buchstaben gefolgt von einem Punkt mit einer laufenden Nummer. • Die Buchstaben stehen für Serien, die bestimmten Themen zugeordnet sind, z. B. I-Serie für ISDN. Fast alle Buchstaben des Alphabets sind vergeben. • Beispiele für Serien: Name Beschreibung V-Serie Schnittstellen zu analogen Netzen (Telefonnetz) X-Serie Schnittstellen zu digitalen Datennetzen I-Serie ISDN Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 7 Festlegungen des Internets I • Hier ging die "Standardisierung" den "basisdemokratischen" Weg der Erarbeitung durch die Betroffenen. Die Strukturen aus der Frühzeit des Internets sind inzwischen etwas "geordneter". Jede Person darf Vorschläge unterbreiten. Slogan auf T-Shirts (IETF-Sitzung): "We reject kings, presidents, and voting. We believe in rough consensus and running code." • Gremium ist die IETF • Steuerung der offenen Diskussionen erfolgt durch die IESG, die auch die IRTF betreut. • IETF = Internet Engineering Task Force, siehe RFC 3935 Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 8 Festlegungen des Internets II • IESG = Internet Engineering Steering Group http://www.ietf.org/iesg.html • IRTF = Internet Research Task Force Beschäftigt sich mit langfristigen Forschungsprojekten • ICANN = Internet Corporation for Assigned Names and Numbers Oberste Organisation für die Verwaltung des Internets http://www.icann.org/ Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 9 Festlegungen des Internets III • Dokumente: – Request for Comment (RFC): Festlegung – For your Information (FYI): Information • RFCs haben vier Stufen zu durchlaufen, während es die FYIs mit einer Stufe viel leichter haben; der ganze Prozess ist in RFC 2026 definiert. Name Beschreibung Jahr RFC 768 User Datagram Protocol (UDP) 1980 RFC 791 Internet Protocol (IP) 1981 RFC 792 Internet Control Message Protocol (ICMP) 1981 RFC 793 Transmission Control Protocol (TCP) 1981 RFC 959 File Transfer Protocol (FTP) 1985 RFC 997 Internet Numbers 1987 RFC 2616 Hypertext Transfer Protocol, Version 1.1 1999 RFC 2223 Instructions to RFC Authors 1997 Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 10 Beispiel RFC 2795 (http://www.ietf.org/rfc/rfc2795.txt) Network Working Group Request for Comments: 2795 Category: Informational S. Christey MonkeySeeDoo, Inc. 1 April 2000 The Infinite Monkey Protocol Suite (IMPS) Status of this Memo This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (2000). All Rights Reserved. Abstract This memo describes a protocol suite which supports an infinite number of monkeys that sit at an infinite number of typewriters in order to determine when they have either produced the entire works of William Shakespeare or a good television show. The suite includes communications and control protocols for monkeys and the organizations that interact with them. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 11 World Wide Web Consortium (W3C) • W3C = World Wide Web Consortium Erarbeitung technischer Festlegungen für das Web als Teil des Internets http://www.w3.org/ • Beispiele: – – – – HTML, XHTML Cascading Style Sheets (CSS) Extensible Markup Language (XML) Web Services (SOAP 1.2) Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 12 Herstellervereinigungen • In einigen Fällen haben sich teilweise bis zu 1.000 Hersteller weltweit zusammengeschlossen, um einen "Standard" zu schaffen. In diesen Vereinigungen sind häufig Mitbewerber. • In den dazu konkurrierenden Vereinigungen zur Erarbeitung konkurrierender "Standards" sind häufig dieselben Mitbewerber. • Diese "Standards" werden manchmal "Industriestandards" genannt. • Beispiele für Herstellervereinigungen: – – – – – OSF (Open Software Foundation) OMG (Open Management Group) ECMA (European Computer Manufacturers Association) ATM-Forum Bluetooth-Forum Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 13 Geschichte des OSI-Modells • 1984 wurde der Basisteil Standard: ISO IS 7498 • Vom Anfang bis Mitte der 80er Jahre wurden die fehlenden Teile genormt. • Die Industrie, die CCITT/ITU-T und insbesondere die Betreiber des Internets haben das Modell nicht ernst genommen und sind einen eigenen Weg gegangen, z. B. mit ISDN. • Heute ist der größte Teil des Referenzmodells Geschichte, nur das Basis Referenzmodell mit seinen 7 Schichten wird akzeptiert. Es bildet auch einen guten Rahmen, der das Verständnis der Rechnernetze erleichtert. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 14 Ziele des OSI-Modells I • Open Systems Interconnection (OSI) hatte ursprünglich folgende Ziele: – Hersteller unabhängige, Architektur unabhängige sowie Netz unabhängige Schnittstelle zwischen beliebigen Rechnern Dies wurde durch die Metapher der universellen Kommunikationssteckdose ausgedrückt. – Konzeptioneller Rahmen • Das Basis Referenzmodell legt einen Bezug (Reference) fest, der gerade so gestaltet ist, dass mit so wenigen Vorgaben wie nur möglich ein Maximum an Kompatibilität erreicht wird. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 15 Ziele des OSI-Modells II • Behandlung des Aspektes der Datenübermittlung, d.h. es geht nicht um die Verarbeitung, sondern nur um den Datenaustausch • Strukturkonzept einer äußeren Sicht auf ein System: Es werden keine Vorschriften bezüglich der Implementierung, z. B. Architektur, Programmiersprache etc. gemacht. NutzerSicht (1) (2) Implementationssicht Software Datenkommunikation Hardware ComputerSystem Netzwerke – WS 2013/14 - Teil 4/Standards+OSI Kommunikationssteckdose (3) OSI-Sicht 16 Die Schichtenstruktur - Überblick System 1 System 2 System 3 System 4 ..... Anwendung Darstellung Steuerung Transport Vermittlung Sicherung Übertragung Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 17 Grundprinzipien • System = Zusammensetzung von Hardware und Software, die Quelle oder Ziel in der Datenkommunikation bildet, also ein aktives Element des Rechnernetzes ist • Schicht = Layer = Ebene = System übergreifende Zusammenfassung von netzwerkweiten Implementen zur Realisierung eines bestimmten Aspektes der Kommunikation • Schichten werden wie "Schichten einer Torte " auf einander gestapelt, so dass nur Schnittstellen jeweils nach oben und unten vorhanden sind - bis auf die beiden äußersten Schichten. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 18 Schichten I Leistungen Nachrichten System 1 Schnittstelle Umformer System 2 Benutzung Schnittstelle Übertragungssystem Umformer Medium Kodierung (Verstärkung etc.) Übertragung Eine Schicht versteckt die Details gegenüber anderen Schichten. Dies hier ist das abstrakte Bild aus dem Teil über die Grundlagen. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 19 Schichten II Nachrichten System 1 Schnittstelle System 2 Schnittstelle Schicht, die etwas leistet Eine Schicht versteckt die Art und Weise der Leistungserbringung, was den großen Vorteil der Unabhängigkeit hat: die beiden Systeme funktionieren ohne jede Änderung, wenn die Innereien der Schichten ausgetauscht werden und die Schnittstelle unverändert erhalten bleibt. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 20 Schichten III System 1 Gewollter Datentransport Entity 1 System 2 Entity 2 Realer Datentransport SAP SAP Datentransportschicht Instanzen kommunizieren immer nur über die Dienstleistung einer unteren Schicht, um einen virtuellen Datentransport auf ihrer Schicht zu realisieren. Entity = Instanz = Implementierung einer Komponente SAP = Service Access Point (Schnittstelle) Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 21 Pakete aus mehreren Schichten • Der Datentransport der höheren Schicht erfolgt per Huckepack in den Paketen der nächst unteren Schicht. • Wie die russischen Püppchen werden die Pakete auf der Sendeseite zum Transport geschachtelt. • Beim Empfang wird die Schachtelung in der umgekehrte Reihenfolge wieder abgebaut. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI N N-1 Kopf N+1 N N+1 Daten 22 Erläuterungen • Entity = Instanz = Aktives kommunizierendes Element innerhalb einer Schicht und gleichzeitig innerhalb eines Systems • Entities können in Hardware, z. B. LAN-Karten, oder in Software, z. B. als Threads im Kernel oder als Prozesse, realisiert werden. • Die reale Kommunikation verläuft immer über die Schnittstellen zu den direkt darunter liegenden Schichten, nie direkt quer. Einzige Ausnahme: die unterste Schicht • Bis auf diese Ausnahme ist die Kommunikation innerhalb einer Schicht virtuell. • Service Access Point = SAP = Schnittstelle zwischen Schichten, genauer: zwischen Instanzen benachbarter Schichten innerhalb eines Systems Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 23 Protokoll und Dienst • Protokoll = Vereinbarung über das Kommunikations-verhalten zwischen Instanzen verschiedener Systeme in derselben Schicht • Dienst = Service = An der Schnittstelle zwischen direkt benachbarten Schichten erbrachte Leistung der unteren Schicht durch Ausführen geeigneter Protokolle • Ein Dienst kann auch als Angabe, was zu leisten ist, verstanden werden, während das Protokoll angibt, wie dieses Was realisiert wird. • Ein Dienst ist damit die Spezifikation der Leistung eines Protokolls. Daher kann es mehrere Protokolle geben, die dieselbe Leistung erbringen, d.h. denselben Dienst realisieren. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 24 Protokoll I Bei Ausführen von Protokollen werden über die nächst unterliegende Schicht Einheiten von Daten ausgetauscht, die Protocol Data Units (PDU) genannt werden. System 2 System 1 Entity 1 Protokoll der Schicht N PDU SAP SchichtN-1 PDU Entity 2 SAP Verbindung der Schicht N-1 Aus der Sicht der Schicht N gibt es eine Verbindung zwischen den beiden SAP der Schicht N-1, deren interne Realisierung gegenüber der Schicht N verborgen ist. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 25 Protokoll II Durch Stapeln von Schichten werden die PDUs der Schicht N+1 als Daten der Schicht N betrachtet, d.h. PDUs der Schicht N+1 liegen in den Datenfeldern der PDUs der Schicht N. Dies erfolgt analog bis zur Schicht 1. Entity 11 Entity 1 PDU N+1 Verbindung der Schicht N+1 Protokoll der Schicht N+1 PDU N Verbindung der Schicht N Protokoll der Schicht N SAP SchichtN-1 Entity 22 Entity 2 N+1 N N+1 N-1 N SAP PDU N-1 Verbindung der Schicht N-1 Protokoll der Schicht N-1 Kopf System 1 Netzwerke – WS 2013/14 - Teil 4/Standards+OSI N+1 Daten System 2 26 Die sieben Schichten I Application Anwendung Presentation Darstellung Session Steuerung Transport Transport Network Vermittlung Link Steigender Abstraktionsgrad hinsichtlich Eigenschaften Steigender Grad der Anreicherung von Leistungen Sicherung Physical Übertragung Vertikaler Schnitt durch ein System Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 27 Die sieben Schichten II • Die oberste Schicht (Application Layer, Anwendungsebene) enthält die Applikationen zusammen mit ihrer Kommunikation untereinander. Die Schicht 7 realisiert einen Dienst, dessen Benutzung nicht mehr vom OSI-Modell behandelt wird. • Alle anderen Schichten realisieren nur Kommunikation, die jedoch unabhängig von den Anwendungen ist. • Die unterste Schicht benutzt keinen Dienst, sondern realisiert die Übertragung entsprechend seiner Art, z. B. über Kupferkabel, Lichtwellenleiter oder mit elektromagnetischen Wellen. • Alle anderen Schichten benutzen über SAPs Dienste der unteren Schicht und erbringen über SAPs Dienste an die nächst höhere Schicht. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 28 Physical Layer (Übertragungsschicht) • • • • Medium samt Zugang (Stecker, Verstärker etc.) Physikalische Verbindung zwischen benachbarten Knoten Übertragung und Kodierung der Informationen Verbindungen sind real – 2-Punkt: z. B. direkte Drahtverbindung, Lichtwellenleiter – 3-..Mehr-Punkt: Draht oder "Äther" (Radio Networks) • Medien haben meistens Broadcast-Charakteristik. • Das Medium hat eine bestimmte Güte, die sich u.a. aus – Übertragungsrate und – Fehlerrate zusammensetzt. • Herstellung von Synchronität während der Übertragung Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 29 Link Layer (Sicherungsschicht) Aufgaben der Sicherungsschicht • Verbesserung der Güte, insbesondere der Fehlerrate durch – Fehlerprüfungen, z. B. Checksum (CRC) – Nummerierungen der Datenpakete – Wiederholungen von verlorenen Paketen • • • • Adressierung verschiedener Stationen Datenflusskontrolle Meistens Unicast- und Broadcast-Kommunikation Multiplexing verschiedener Verbindungen Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 30 Schicht 1 + 2 – Multiplexing I System 1 Entity Entity Entity Entity Entity Entity Entity Entity De-Multiplexen Multiplexen (2) System 2 Entity 1 (1) Entity 2 Link Layer Physical Layer Herstellen von virtuellen Link-Layer-Verbindungen an verschiedene SAP zur Schicht 3. An jedem dieser SAP enden eigene Verbindungen. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 31 Schicht 1 + 2 – Multiplexing II Station 5 Station 1 Station 2 Station 3 Station 4 Beispiel einer Vernetzung auf der Schicht 1. Die Stationen 1, 2 und 3 sind jeweils paarweise verbunden, während 2, 4 und 5 gemeinsam durch ein Medium verbunden sind, z. B. mit einem Bus. Die Verbindung 1 mit 2 ist damit getrennt von der Verbindung 2 mit 3. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 32 Network Layer (Vermittlungsschicht) • Die Netzwerkschicht (Vermittlungsschicht) stellt Ende-zu-Ende Verbindungen zwischen Systemen her. Es wird eine virtuelle Verbindung durch ein Netzwerk realisiert. • Endsystem = System mit Quelle oder Senke auf der Anwendungsebene für die Kommunikation • Transitsystem = Relay = System mit Ebenen 1 bis 3 mit der Aufgabe des Datentransports innerhalb eines Netzwerks • Aufgaben der Netzwerkschicht: – Wegewahl (Routing) innerhalb Netzwerke sowie über Netzwerkgrenzen hinweg (Ein Übergang zwischen Netzwerken ist kann auch ein Übergang von Technologie zu einer anderen sein) – Anpassung der Paketgröße an Netze (Segmenting, Fragmentieren) – Multiplexing verschiedener Verbindungen Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 33 Beispiel I Station 5 Station 1 Endsystem B Transitsystem Network Layer Station 2 Endsystem A Link Layer Physical Layer Station 3 Station 4 In diesem Beispiel werden die Verbindungen von drei Ebenen gleichzeitig gezeigt. Es wird eine (3)-Verbindung zwischen System 1 und 5 hergestellt. An dieser Verbindung arbeiten drei Instanzen (System 1, 2 und 5). Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 34 Beispiel II - Über Netzwerke geht es auch Netzwerk A Netzwerk B Netzwerk C Netzwerk D Schnitt längs innerhalb der Netzwerkschicht Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 35 Transport Layer Aufgaben der Transportschicht • Realisierung von virtuellen Verbindungen zwischen Prozessen, Programmen (Instanzen) in den Endsystemen • Ausgleich der Güte von Teilnetzen; d.h. auch hier Fehlerbehandlung • Optimierung der Kosten durch geeignete Wahl der Netze • Datenflusskontrolle Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 36 Beispiel System 2 System 1 Entity 1 Entity 2 Entity 3 SAP SAP System 3 Entity 4 SAP Verbindung der Schicht 3 Verbindung der Schicht 3 Instanzen (1,2) und (3,4) kommunizieren über zwei Netzwerkverbindungen ohne ein Multiplexen (da sie die einzigen Paare jeweils sind) Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 37 Session Layer (Sitzungsschicht) • Die Aufgaben der Sitzungsschicht (Steuerungsschicht): – Anwendungsorientiert die Kommunikation in Form von Sitzungen (zeitliche Abschnitte mit spezifischen Aufgaben) zu strukturieren – Wiederaufsetzpunkte (Recovery Points) zu definieren und zu benutzen, d.h. in Fehlerfällen nur den Datentransport seit dem letzten Wiederaufsetzungspunkt wiederholen – Verbindungen auch nach Netzausfall erhalten • Alle Verbindungen oberhalb der Transportschicht stehen im Verhältnis 1:1. Jeder Instanz der Anwendungsschicht wird jeweils eine eigene Instanz in den Schichten 4, 5 und 6 zugeordnet. • In der Praxis kaum realisiert, fehlt im Internet, da diese Aufgaben aber trotzdem bestehen, muss die Realisierung der Sitzungen in den Anwendungen erfolgen. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 38 Presentation Layer (Präsentationsschicht) • Die Aufgaben der Präsentationsschicht sind: Anpassung, Abbildung bzw. Umformung der internen Datenrepräsentationen mit dem Ziele der Erhaltung der Semantik, so dass dieselbe Zahl, dasselbe Zeichen etc. trotz unterschiedlicher interner Repräsentationen gleich "verstanden" wird. • In der Praxis kaum realisiert, fehlt im Internet. Da diese Aufgabe aber trotzdem besteht, wird die Behandlung der Kodierungen in den Anwendungen realisiert. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 39 Application Layer (Anwendungsschicht) • Aufgaben der Anwendungsschicht: – Ausführen der anwendungsspezifischen Protokolle – Erledigen der eigentlichen Aufgaben • Alles, was beim Session- und Presentation-Layer weggelassen wurde, wird meist hier in der Anwendungsschicht gelöst, was zu komplexer Software führt, da jede Software dieselben Aufgaben in diesem Bereich hat (anstatt diese Aufgaben einmal zentral für alle Anwendungen zu lösen). • Die Anwendungsschicht könnte weiter in Unterschichten aufgeteilt werden (in realen Implementierungen erfolgt dies auch, nicht aber im OSI-Modell). • Beispiele für anwendungsspezifischer Protokolle: Unterstützung von Datenbank-Transaktionen, Webservices oder Remote Procedure Calls etc. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 40 Protokollstacks und Suites • Ein Protokollstack oder eine Protokollsuite ist die konkrete Implementierung der unteren 6 Schichten eines Systems. • Da es mehrere Protokolle zur Realisierung eines Dienstes gibt, ist es möglich OSI-konform zu sein und trotzdem inkompatibel zu anderen Systemen. • Kompatibilität ist nur dann gewährleistet, wenn die Protokollstacks gleich sind. Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 41 Nach dieser Anstrengung etwas Entspannung.... Netzwerke – WS 2013/14 - Teil 4/Standards+OSI 42