Datenkommunikation II Lehrstuhl für Informatik IV RWTH Aachen Prof. Dr. Otto Spaniol Dipl.-Inform. Dirk Thißen Organisatorisches Vorlesungsbegleitende Übungen • • • • Alle 14 Tage Mittwoch 13.45 - 15.15 Uhr Hörsaal AH V, RWTH Aachen Frontalübung 7. November 2001 21. November 2001 5. Dezember 2001 19. Dezember 2001 15. Januar 2002 29. Januar 2002 Unterlagen (Folienkopien) Im Netz unter http://www-i4.informatik.rwth-aachen.de/teaching/lectures/datkom2 Klausur Am Ende des Semesters Ansprechpartner Dipl.-Inform. Dirk Thißen Lehrstuhl für Informatik IV, Raum 6006 (Gebäude E2) Telefon: 0241 / 80 - 21413 eMail: [email protected] 1 Einordnung der Vorlesung Voraussetzungen: → Datenkommunikation I (kurze Wiederholung) Folgeveranstaltungen: → Seminar “Datenkommunikation und Verteilte Systeme” → “Spezial”vorlesungen des Lehrstuhls • Multimedia-Kommunikation • Sicherheit in Kommunikationsnetzen (Security Engineering) • Lokale Netze • Telekommunikationssysteme • Verteilte Systeme → Praktika im Bereich Kommunikationssysteme → Diplomarbeiten am Lehrstuhl Struktur der Vorlesung Datenkommunikation I • Überblick über Netze • Das OSI-Schichtenmodell • Kommunikationsprotokolle (TCP/IP) Datenkommunikation II • Anwendungsprotokolle • Beispiele für Netze (Lokale Netze, ISDN, B-ISDN, ATM) Diese Vorlesung • Überblick über Netze • OSI-Schichtenmodell (inkl. Anwendungsprotokolle) • Beispiele für Netze • Kommunikationsprotokolle für spezielle Anwendungsbereiche • Kommunikation in Verteilten Systemen 2 Inhalte der Datenkommunikation Als Datenkommunikation bezeichnet man den (weltweiten) Austausch von Daten zwischen Rechnern. Folglich müssen bei der Datenkommunikation zwei Aspekte betrachtet werden: • Rechnernetze → Wie werden Rechner miteinander verbunden? → Welche Medien können zur Übertragung verwendet werden? • Kommunikationsprotokolle → Wie lässt sich der Datenaustausch einheitlich regeln? → Wie erreicht man eine zuverlässige, effiziente Übertragung? Kommunikationsnetze Frühe Kommunikationsnetze wurden überwiegend oder ausschließlich für Sprache eingesetzt (Telefon) Im Lauf der Zeit kamen zunehmend Anwendungen der Datenkommunikation hinzu. Die Charakteristika von Sprach- und Datenkommunikation sind aber sehr unterschiedlich (was gerade bei der Integration beider Verkehrsarten Probleme bereitet) Sprachkommunikation • Niedrige Dienstgüteanforderungen • Geringe Bandbreite (64kBit/s) • Vergleichsweise geringe Anforderungen bzgl. Sicherheit Datenkommunikation • Kommunikation vorwiegend zwischen Rechnern • Viele unterschiedliche Datenarten (Dateien, Software, Videos,...) • Unterschiedliche Dienstgüteanforderungen • Stark schwankende Datenraten (“bursty traffic”) • z.T. extrem hohe Sicherheitsanforderungen. 3 Datenkommunikation Die “treibende Kraft” für die enorm wachsende Bedeutung der Datenkommunikation: • Ständig sinkende Kosten für Hardware... • .. bei gleichzeitig steigender Rechnerleistung Beispiel und Vergleich: • • • • Ein PC kostet heute weniger als DM 2.000,-Er ist leistungsstärker als ein zehn Jahre alter Großrechner Er enthält mehr als 100 Millionen Transistoren Eine vergleichbar große Zahl anderer Bauteile wäre unbezahlbar, z.B. würden 100 Millionen Blatt Papier über DM 100,000,-- kosten. Rechenleistung ist fast zum Nulltarif erhältlich Anwendungen • • • • • • • Dateiübertragung Sprache Bildverarbeitung Multimedia-Authoring Videokonferenzen Hochleistungsrechnen (sogen. “grand challenge”-Probleme) ...... Steigende Systemvielfalt Steigende Zahl von Anwendungen und von Anwendern Überall im Einsatz: in Büros, in Fabriken, zuhause,... 4 Kostenaspekt Gemeinsame Nutzung von Betriebsmitteln spart Kosten: • Durch Kommunikation kann man auf fremde Ressourcen zurückgreifen und diese insgesamt kostengünstiger nutzen • Erforderlich dazu: Effiziente Methoden zum Datenaustausch zwischen Komponenten eines verteilten Systems • Verfahren zur effizienten Zusammenarbeit (CSCW = Computer Supported Cooperative Work) • Absprachen zur gemeinsamen Nutzung von Geräten, die von einer einzelne Institution nicht ausgelastet werden können und zu teuer sind. Beispiel für ein Zusammenspiel mehrerer Partner: Client/Server-Prinzip Das Client/Server-Prinzip Client A Client B Clientprozess Server Serverprozess Antwort Anfrage Rechnernetz Vorteile → Kostenersparnis → bessere Ressourcenauslastung → stufenweise Ausbaubarkeit → Zuverlässigkeit durch Redundanz → Daten: mehrere Kopien 5 Nicht-technische Aspekte Kommunikationsnetze machen Informationsaustausch und -verteilung erheblich schneller und preiswerter. Sie haben aber auch eine Vielzahl von sozialen, ethischen, kulturellen, juristischen,... Seiteneffekten. •Eventuell fragwürdige oder unzulässige Inhalte •Verantwortlichkeit •Juristische Aspekte (Gesetzgebung) •Mögliche Zensur? •Kontrolle der Arbeitsleistung von Beschäftigten, des Aufenthaltsorts von Bürgern,... •Belästigung durch anonyme Nachrichten •...... Rechnernetze 6 Klassifikation von Netzen Klassifikation nach Ausdehnung... 10 m 100 m 1 km Lokal Area Network (LAN) 10 km 100 km 1000 km 10000 km Metropolitan Area Network (MAN) Wide Area Network (WAN) ... und leider auch nach Kapazität. Generell haben kleine Netze eine höhere Übertragungskapazität als große. Allerdings findet eine ständige Erhöhung statt. Begriffe: Routing Je nach Netztyp ist eine Wegwahl erforderlich. Diese erfolgt durch sogenannte Router. ? Backbone Anbindung über Router Router • Verkehrstrennung • Wegwahl erforderlich (“Intelligenz“ in den Routern) • Nachrichten, deren Empfänger im eigenen lokalen Netz liegt, werden nicht über den Backbone weitergeleitet • Nachrichten, deren Empfänger in einem anderen Netz liegt, werden über den Backbone gezielt an das andere Netz weitergeleitet • höhere Sicherheit 7 Eigenschaften der Übertragung Eigenschaften der Übertragung: unidirektional/bidirektional Punkt-zu-Punkt/Multicast/Broadcast Point-to-Point (Punkt-zu-Punkt) • ein Paar von Rechnern kommuniziert (oft verschiedene Wege und daher Wegwahl durchführen/Routing) • Adressierung des Kommunikationspartners Broadcast-Netz • einer-an-alle (Bsp.: Rundfunk, Fernsehen) • Daten in Pakete mit Zieladresse verpacken • nur die gewünschten Empfänger extrahieren die Daten und verarbeiten sie Multicast-Netz • Vergabe von Gruppenadressen Local Area Networks • Kommunikationsinfrastruktur für einen begrenzten geographischen Bereich (10m - wenige km) • Üblicherweise im Besitz einer einzigen Organisation • Im Vergleich zu Wide Area Networks hohe Kapazität (z.Zt. bis 1,000 Mbit/s) • Einfache Verbindungsstruktur (“Simple is beautiful”) Wichtigste Topologien: • Bus • Stern LAN • Baum • Ring • Vermaschtes Netz 8 LANs: Der Bus B Knoten Knoten Abschlusswiderstand Beispiel: Ethernet Ω Knoten Knoten Knoten A Bus • Broadcast-Netz - (+) Passive Ankopplung der Stationen - Begrenzung der Ausdehnung und der Zahl anzuschließender Stationen + Einfach, preiswert, einfacher Anschluß neuer Knoten + Kein Routing notwendig + Der Ausfall eines Knotens ist kein Problem LANs: Der Stern Stern Knoten • Ausgezeichneter Rechner als zentrale Station Knoten – aufwendiger zentraler Knoten (Switch) Zentraler Rechner Knoten Knoten – Verwundbarkeit durch zentralen Knoten (Redundanz möglich) + Eindeutiger Pfad, kein Routing + N Verbindungen bei N Knoten (Komplexität O(N)) + Einfacher Anschluß neuer Knoten 9 LANs: Der Baum Abteilung 1 A Abteilung 2 Knoten Knoten Knoten Knoten B C Knoten Knoten Router Repeater Knoten Backbone Baum • Verzweigungselemente können aktiv (Router) oder passiv (Repeater) sein • Topologie: Zusammenschluß mehrerer Busse (oder Sterne) + Überbrückung größerer Strecken + gute Anpassung an vorgegebene geographische Gegebenheiten + Minimierung der erforderlichen Kabellänge LANs: Der Ring Ring • Broadcast-Netz Knoten • Aktive Knoten: Nachrichten werden in den Konten regeneriert Knoten Knoten – Ausfall bei Unterbrechung einer Verbindung – Ausfall eines Knotens (Bypass als Abhilfe) Knoten Knoten + große Ausdehnung möglich + einfaches Einfügen neuer Knoten + Bei N Knoten nur N Verbindungen (Komplexität O(N)) 10 LANs: Vollvermaschung Vollvermaschtes Netz • Point-to-Point-Verbindungen zwischen allen Knoten Knoten N ( N − 1) – Für N Verbindungen sind 2 Knoten nötig (Komplexität O(N²)) Knoten Knoten – Der Anschluss eines neuen Knotens ist sehr aufwendig + Keine Wegwahl (Routing) + Redundante Pfade Knoten Knoten + Maximale Verbindungssicherheit bei Integration eines Routings Teilvermaschung: kostengünstiger, aber Routing, Flow Control und Congestion Control werden nötig (Weitverkehrsnetze) LANs: Beispiele Arcnet (4 Mbit/s) - Koaxkabel - stern- oder busförmig, bis 50m Ethernet (IEEE 802.3, 10 MBit/s) - das mit Abstand weitverbreitetste Netz - erhältlich in einer “Unzahl” von Varianten Token Ring (IEEE 802.5, 4/16 Mbit/s) - lange Zeit der Konkurrent von Ethernet - erweitert zu FDDI (Fiber distributed Data Interface) Fast-Ethernet (IEEE 802.3a, 100 Mbit/s) - Erweiterung von Ethernet für kleinere Distanzen Gigabit-Ethernet (IEEE 802.3ab, 1,000 Mbit/s) - das zur Zeit meistdiskutierte Konzept; (dürfte den Kampf gegen ATM im Nahbereich gewinnen!) 11 Metropolitan Area Network (MAN) Metropolitan Area Networks • Überbrücken größere Distanzen als ein LAN, Einsatz z.B. im Stadtbereich. MAN Beispiel: Distributed Queue Dual Bus (DQDB, IEEE 802.6) • Ausdehnung bis 100 km durchaus zulässig. Bus A Fließbandprinzip; Slots fester Länge für Übertragungen “von links nach rechts” Angeschlossene Station (mehrere Businterfaces sind notwendig) Bus B 1 2 3 ... N Head-End (erzeugt SendeBerechtigungsslots) Sendeberechtigungs-Slots für Übertragungen “von rechts nach links” Wide Area Network (WAN) Wide Area Networks •Überbrückung beliebig großer Distanzen. •Topologie fast immer irregulär, weil bedarfsorientiert. •Meist recht komplexe Zusammenschaltung von Teilnetzen, die im Besitz von unterschiedlichen Betreiber sind. •Geringere Datenraten als bei LAN, aber deutliche Steigerung (Beispiel ATM: 622 Mbit/s). Subnet Router Host LAN 12 Infrastruktur Kupferdoppelader Koaxialkabel Abschirmung Innenleiter Satellitenverbindung innere Isolierung äußere Isolierung Glasfaser Kern Funkstrecken Glas Kunststoff Kommunikationsprotokolle 13 Kommunikationsmodi Verbindungslose Kommunikation (z.B. Local Area Network): Daten werden durch den Transport von Paketen fester Länge übertragen, Senden erfolgt spontan ohne Reservierungen, dabei werden Absenderund Zieladresse angegeben Verbindungsorientierte Kommunikation (z.B. Telefon) sog. Vermittlungsnetze: • Verbindungsaufbau: - Auswahl des Kommunikationspartners bzw. des Endgeräts, - Überprüfen der Kommunikationsbereitschaft, - Herstellen der Verbindung • Nachrichtenübertragung: Informationsaustausch zwischen den Partnern • Verbindungsabbau: Freigabe der Endgeräte und Übertragungskanäle Verbindungslose Kommunikation Rechner A Rechner B Rechner C • Nachricht wird in Pakete zerlegt Stichwort: Paketvermittlung • Zugriff ist immer möglich, Geringe Störanfälligkeit • Es existieren alternative Pfade für die Pakete Nachrichtenvermittlung: keine Zerlegung der Nachricht • zusätzlicher Aufwand in den Zwischenknoten 14 Verbindungsorientierte Kommunikation Rechner A Rechner B Rechner C Stichwort: Leitungsvermittlung • Einfache Kommunikationsmethode • Fester Weg zwischen den Teilnehmern Paketvermittlung • Vermittlungsknoten schalten die Leitungen durch • Exklusive Nutzung der Leitung (Telefon) oder virtuelle Verbindung Warum Protokolle? Um eine Kommunikation durchzuführen, müssen die Kommunikationspartner die gleiche „Sprache“ sprechen. → Übertragungsrichtung → Prioritäten → Fehlerüberwachung → Reihenfolgeüberwachung → Flußkontrollmechanismen → Segmentierung und Zusammensetzen von Nachrichten → Multiplexing → Routing Ein Protokoll ist definiert als die Gesamtheit aller Vereinbarungen zwischen Anwendungsprozessen zum Zweck einer gemeinsamen Kommunikation 15 Standardisierung Unabdingbar für den flächendeckenden praktischen Einsatz von Kommunikationssystemen: • Auf nationaler ebenso wie auf internationaler Ebene! • Erfolgreiche Standardisierung ist sehr schwierig, weil: • komplizierte technische Probleme zu lösen sind • die beteiligten Partner, z.B. Firmen, z.T. eher gegeneinander als miteinander arbeiten • der Meinungsaustausch durch Vertraulichkeitsrestriktionen erschwert wird • Konsequenz: Standardisierung erfolgt sehr langsam (aus vielen, meist nicht-technischen, Gründen). Standardisierungsgremien Auswahl International Telecommunication Union - ITU • Sitz in Genf • hat bisher mehr als 1,000 Standards verabschiedet www.itu.org • ITU-R: Radio Communication Sector (ex: International Consultative Committee for Radio - CCIR) • ITU-T: Telecommunications Sector (ex: International Consultative Committee for Telephone and Telegraph - CCITT) European Telecommunication Standardization Institute - ETSI • Z.B. verantwortlich für den GSM-Standard; GSM = Groupe Spéciale Mobile. Heutiger Standard für Mobilfunksysteme www.etsi.org 16 Standardisierungsgremien Auswahl American National Standards Institute - ANSI www.ansi.org Freiwillige Industriekonsortien • Solche Konsortien arbeiten meist schneller und sind häufig erfolgreicher als “bürokratische” Organisationen • (siehe schnelle Verbreitung von Fast Ethernet, JAVA etc.) Institute of Electrical and Electronic Engineers - IEEE • Verantwortlich z.B. für die IEEE 802.X-Standards für Lokale Netze www.ieee.org Internet Engineering Task Force www.ietf.org Standardisierungsgremien Auswahl International Standards Organization - ISO • Organisation, die auf freiwilliger Basis arbeitet (seit 1946). • Mitglieder: Standardisierungsorganisationen von ca. 90 Ländern. www.iso.ch • Beschäftigt sich mit einem sehr weiten Spektrum von Standards • Hat 200 Technical Committees (TC) mit spezifischen Aufgaben (z.B. TC97 für Computer und Informationsverarbeitung). • TC haben Subkomitees, die wiederum in Arbeitsgruppen unterteilt sind. • Zusammenarbeit mit ITU-T bzgl. Telekommunikationsstandards, (ISO ist Mitglied von ITU-T). • Bahnbrechende Leistung von ISO bzgl. Datenkommunikation: Das ISO-OSI-Referenzmodell. • Bahnbrechend bzgl. des Konzepts, nicht wegen der daraus entstandenen Produkte! 17 Das ISO-OSI-Referenzmodell OSI: Open Systems Interconnection Bewältigung der Komplexität einer Kommunikation (also der Einzelheiten, auf die man achten muß) durch Schichten. 7 Schichten (Ebenen, Layer) 7 Anwendung 6 Darstellung 5 Sitzung 4 Transport 3 Vermittlung 2 Sicherung 1 Bit Anwendungsbezogene Protokolle Hauptkritikpunkte: Weitgehend netzunabhängiger Ende-zu-Ende-Transport Die Ebenen 5 und 6 sind nur selten implementiert worden. Adressierung und Routing von Paketen Sicherung von “Frames”; Flusskontrolle Signaldarstellung; Zeichenübertragung Generell zuviel Aufwand. Manches ist überflüssig, anderes ist überladen. Übertragungsmedium (”Ebene 0”) Das ISO-OSI-Referenzmodell Anwendungsprogramm Anwendungsprogramm Schicht Layer 7 Appli cat ion A nwendung 7 Schnittstelle Interface 6 Anwendungsprotokoll P resentation Darstellungsprotokoll D arstellung PDU 5 S e s s io n 4 T rans po rt 6 SDU Sitzungsprotokoll Transportprotokoll Sitzung 5 Transport 4 V ermittlung 3 S icherung 2 Bitübertragung 1 anwendungsorientiert Grenze des Kommunikations-Subnets 3 N etwor k Vermittlung Vermittlung Internes Subnet-Protokoll 2 D at a l ink Sicherung Sicherung 1 P h ysical Bitübertragung Bitübertragung netzorientiert Host B Host A „Schicht 0“ Zwischenknoten 18 Wechselspiel zwischen den Schichten • Eine Schicht zerlegt eine Nachricht in Protocol Data Units (PDU). • Eine Schicht bietet der über ihr liegenden Schicht Dienste an. • Zwei Kommunikationspartner tauschen PDUs aus und nutzen dazu die Dienste der nächsttieferen Schicht. • Die Schichten tauschen dabei Service Data Units (SDU) aus. Schicht n Schicht (n-1) H n-PDU Schicht n n-SDU Schicht (n-1) (n-1)-PDU H: Header, d.h. Kontrollinformationen der Schicht Der Kommunikationsprozess Anwendungsprozess Anwendungsschicht H Darstellungsschicht H Sitzungsschicht H Transportschicht H Vermittlungsschicht Sicherungsschicht H H Daten Anwendungsprozess Daten Anwendungsschicht Darstellungsschicht A-PDU Sitzungsschicht D-PDU Transportschicht S-PDU Vermittlungsschicht T-PDU V-PDU Bitübertragungsschicht T Sicherungsschicht Bitübertragungsschicht Bitstrom Übertragungsmedium 19 Probleme des Referenzmodells 1. Zeitaspekte Das Terrain war schon weitgehend besetzt; TCP/IP-Protokolle waren bereits weit verbreitet, als OSI die fertige Spezifikation vorlegte. 2. Unverbindlichkeit Ein „Referenzmodell“ ist allzu unverbindlich. Es sagt allenfalls, was gemacht werden soll, nicht aber wie es gemacht werden soll. 3. Umständlichkeit Sehr hoher und z.T. überflüssiger Aufwand (Tausende von Seiten an Spezifikationsbeschreibungen) Der Wunsch, alle Sonderfälle befriedigen zu können, führte zu einer Unzahl von Optionen, welche die Produkte aufwendig, unhandlich und unbezahlbar machten. “The option is the enemy of the standard”! Probleme des Referenzmodells 4. Politisches Umfeld OSI war zu sehr von Europa dominiert - vor allem von den damals noch mit nationalen Monopolen ausgestattenen Telefongesellschaften. Die wirkliche Marktmacht saß und sitzt aber in den USA; dort interessierte man sich für OSI vergleichsweise wenig. 5. Überhastete Produktankündigungen Erste OSI-Produkte wurden (aus Zeit-, Aufwands- und Kostengründen) zu schnell implementiert, enthielten Fehler und hatten ein insgesamt wenig überzeugendes Leistungsverhalten. Im Gegensatz dazu wurden die “eigentlich viel unmoderneren” TCP/IPProtokolle ständig modifiziert und verbessert; sie waren qualitativ hochwertig und wegen der hohen Stückzahlen konkurrenzlos preiswert. 20