Vorlesung: Netzwerke WS 2007/08 Kapitel 1 Grundlagen Session 02 Prof. Dr. Michael Massoth [Stand: 25.10.2007] Copyright: © Michael Massoth 2-1 Netzwerke, WS 2007/08 2-2 Allgemeine Informationen (1): Prüfungsleistung (Klausur): Schriftlich, ca. 90 Minuten, zugelassen wird nur, wer alle Studienbzw. Hausaufgaben und alle Praktikumsversuche hat Freiwillige Probeklausuren (mehrere über das Semester verteilt) Literatur: Larry L. Peterson und Bruce S. Davie, Computernetze, 3. Auflage (2003), dpunkt.verlag, [PetersonDavie] Andrew S. Tanenbaum, Computernetzwerke, 4. Auflage (2003), Pearson Studium Verlag, [Tanenbaum] James F. Kurose und Keith W. Ross, Computernetze, 1. Auflage (2001/02), Pearson Studium Verlag (Bafög-Ausgabe), [KuroseRoss] Copyright: © Michael Massoth 2-2 Netzwerke, WS 2007/08 2-3 Allgemeine Informationen (2): Didaktische Vorgehen: Sehr enge Anlehnung an das Lehrbuch von [Peterson & Davie] Schwerpunkte: Kapitel 2.6 - 2.8, 3.2, 4.1 - 4.3, 5.1 - 5.3, 9.1 - 9.2 Lehrbuch von [Peterson & Davie] hat ein sehr gutes internationales Ranking Vorteile: Schwierigkeitsgrad und Stoffmenge ideal für 3. bis 4. Semester Lehrbuch von international anerkannten Experten: Peterson ist Professor für Computer Science an der Princton-Universität, Davie ist Fellow bei Cisco System und Senior Member bei IEEE Copyright: © Michael Massoth 2-3 Netzwerke, WS 2007/08 2-4 Allgemeine Informationen (3): Praktikum Einteilung in Gruppen: Bei ca. 60 Studierenden 3 Gruppen (Massoth/Ottenbacher) Î A, B, C Jede Gruppe besteht aus 5 Teams Î z. B. A1, A2, A3, A4, A5 Jedes Team besteht aus 4 Personen Starttermine: Gruppe A: 01.11.2007, 08:30-13:30 Uhr, F16/18 Gruppe B: 08.11.2007, 08:30-13:30 Uhr, F16/18 Gruppe C: 15.11.2007, 08:30-13:30 Uhr, F16/18 Copyright: © Michael Massoth 2-4 Netzwerke, WS 2007/08 2-5 Grundlagen (Teil 1) ; ; ; ; ; Motivation Was ist ein Computernetzwerk? Nutzen und Vorteile Einsatz von Computernetzwerken Client/Server- und Peer-to-Peer-Modell Copyright: © Michael Massoth 2-5 Netzwerke, WS 2007/08 2-6 Grundlagen (Teil 2) ; Einteilung der Netze Anforderungen (engl. Requirements) Copyright: © Michael Massoth 2-6 Netzwerke, WS 2007/08 Anforderungen an das Netzwerkdesign (1) 2-7 Frage: Welche verschiedenen Perspektiven gilt es bei den Anforderungen an das Netzwerkdesign zu berücksichtigen? [Frage ans Auditorium, Tafel] → Interessengruppen Copyright: © Michael Massoth 2-7 Netzwerke, WS 2007/08 Anforderungen (1): Mit Antworten 2-8 Frage: Welche verschiedenen Perspektiven gilt es bei den Anforderungen an das Netzwerkdesign zu berücksichtigen? [Frage ans Auditorium, Tafel] → Interessengruppen Anwendungsprogrammierer: Aufzählung aller Dienste, die das Netz zur Verfügung stellen soll, damit seine Anwendungen fehlerfrei und hinreichend schnell laufen Beispiele: Benötigte Bandbreite, Zeitsensitivität, Datenverlust Netzwerkdesigner: Kosten, Effizienz und Fairness bei Zugriff mehrerer Benutzer Skalierbarkeit und Robustheit (Ausfallsicherheit + Zuverlässigkeit) Netzwerkbetreiber: Kostengünstiger Betrieb, einfache Verwaltung und Abgrenzung von Fehlern, Sicherheit, Skalierbarkeit und Robustheit Leichte Berechnung der Nutzungsgebühren (engl. Billing, Charging) Copyright: © Michael Massoth 2-8 Netzwerke, WS 2007/08 Dienstgüte (Quality of Service) 2-9 Dienstgüte (Quality of Service) nach verschiedenen Klassen: Delay: Verzögerung Jitter: Varianz der Verzögerung Throughput: Durchsatz Packet Loss: Paketverlust Sicherheit, Zuverlässigkeit Verzögerung Durchsatz Verlust Sicherheit, Zuverlässigkeit Copyright: © Michael Massoth 2-9 Netzwerke, WS 2007/08 One-Way-Delay und Round-Trip-Time 2 - 10 Distinguish for Delay [ms] between: One-Way-Delay Round-Trip-Delay (= Round-Trip-Time, RTT) Copyright: © Michael Massoth 2 - 10 Netzwerke, WS 2007/08 Anforderungen ausgewählter Anwendungen 2 - 11 [KR, Abb.2.4, S.96] Copyright: © Michael Massoth 2 - 11 Netzwerke, WS 2007/08 Anforderungen (2) Copyright: © Michael Massoth 2 - 12 2 - 12 Netzwerke, WS 2007/08 Anforderungen (3) 2 - 13 Frage: Welche technischen Anforderungen muss das Netzwerkdesign erfüllen? [Frage ans Auditorium] (a) (b) € oder $ Host Host Application Effizienz Channel Host Application ■■■ Zuverlässigkeit Host Copyright: © Michael Massoth 2 - 13 Host Netzwerke, WS 2007/08 2 - 14 Grundlagen (Teil 3): Netzwerkarchitektur Schichten, Schnittstellen und Protokolle OSI-Referenzmodell Hybrid-Referenzmodell und Internet-Architektur Copyright: © Michael Massoth 2 - 14 Netzwerke, WS 2007/08 2 - 15 Lernziele heute: Referenzmodelle (OSI, TCP/IP, Hybrid) Datenkapselung Lernziele im Detail: Schichten, Schnittstellen, Protokolle und Dienste (Services) kennen Protokolle und Dienste unterscheiden können OSI-, TCP/IP- und Hybrid-Referenzmodell kennen und unterscheiden können Copyright: © Michael Massoth 2 - 15 Netzwerke, WS 2007/08 Architekturmodelle für die Kommunikation (1) Copyright: © Michael Massoth 2 - 16 2 - 16 Netzwerke, WS 2007/08 Architekturmodelle für die Kommunikation (2) head of department head of department secretary secretary enterprise mail department enterprise mail department postal office postal office postal transportation postal transportation 2 - 17 Bemerkungen: Jede Schicht hat seine eigenen Regeln und Aktivitäten Die oberen Schichten nutzen und vertrauen auf die Dienste der unteren Schichten Die unteren Schichten bieten verschiedene Dienste den oberen Schichten an Gleiche Schichten auf verschiedenen Systemen tauschen spezielle Kontrollinformationen aus, wie z. B.: Geschäftszeichen, Bearbeiterkürzel, Datum, Anlagenverzeichnis, Absender- und Empfängeradresse, PLZ Briefmarke, Poststempel, Bearbeitungsvermerke (Einschreiben, Luftpost,…) Copyright: © Michael Massoth 2 - 17 Netzwerke, WS 2007/08 Architekturmodelle für die Kommunikation (3) 2 - 18 Ziel ist die Implementierung verteilter Systeme Î Vorgehen: Unterteilung in Schichten (zur Reduzierung der Komplexität): Schichten sind Funktionseinheiten komplexer Modelle Definition der Schnittstellen: Zwischen angrenzenden Schichten eines Systems Bestimmen Signale oder Nachrichten zwischen den Schichten Definition der Protokolle: Zwischen gleichen Schichten auf verschiedenen Systemen (Hosts) Regeln u.a. Auf- und Abbau von Verbindungen, Datentransfer oder Fehlerbehandlung Achtung: Klare Unterscheidung zwischen Diensten und Protokollen! Copyright: © Michael Massoth 2 - 18 Netzwerke, WS 2007/08 Protokolle 2 - 19 Ein Protokoll definiert das Format und die Reihenfolge von Nachrichten, die zwischen zwei oder mehr kommunizierenden Einheiten ausgetauscht werden, sowie die Aktionen, die bei der Übertragung und/oder beim Empfang einer Nachricht oder eines anderen Ereignisses unternommen werden. Beispiele: Ein menschliches Protokoll und ein Netzwerkprotokoll Copyright: © Michael Massoth 2 - 19 Netzwerke, WS 2007/08 Schichten, Schnittstellen und Protokolle Copyright: © Michael Massoth 2 - 20 2 - 20 Netzwerke, WS 2007/08 Services und Protokolle 2 - 21 Zusammenhang zwischen einem Service (Dienst) und einem Protokoll. Copyright: © Michael Massoth 2 - 21 Netzwerke, WS 2007/08 Protokolle 2 - 22 In der Kommunikationstechnik geht es bei Protokollen um die Festlegung und Durchführung der Vereinbarungen zum Datenaustausch, z.B.: Welche Station sendet an wen und aus welchem Anlass? Welches Format haben die Nachrichten? Was geschieht bei Fehlern? Welche Randbedingungen sind zu beachten? Merke: Protokolle definieren Syntax: das Format gültiger Meldungen Grammatik: genaue Abfolge der Meldungen Semantik: Vokabular gültiger Meldungen und deren Bedeutung Copyright: © Michael Massoth 2 - 22 Netzwerke, WS 2007/08 Mehr über Services (1) 2 - 23 Ein Netzwerk (bzw. verschiedene Schichten) stellt einer Anwendung (z. B. HTTP, Email, FTP) verschiedene Dienste zur Verfügung: Zuverlässiger Datenübertragungsdienst: Daten kommen alle, ohne Fehler, nicht doppelt und in der richtigen Reihenfolge an. Flusskontrolldienst (engl. flow control): Stellt sicher, dass ein Sender einen langsamen Empfänger nicht durch zu schnelles Senden der Daten überfordert. Wird im Internet durch Sende- und Empfangs-Pufferspeicher in den Endsystemen und Zurückhalten von Bestätigungen realisiert. Überlastkontrolldienst (engl. congestion control): Verhindert Daten-Staus im Netz, die entstehen, wenn Puffer in den Routern überlaufen und deswegen Nachrichten verloren gehen. Im Internet reduzieren dazu Endsysteme ihre Übertragungsrate indem sie die Daten-Bestätigungen kontrolliert zurückhalten. Copyright: © Michael Massoth 2 - 23 Netzwerke, WS 2007/08 Mehr über Services (2) 2 - 24 Verbindungsorientierter Dienst (connection oriented service): Ist ein zuverlässiger Datenübertragungsdienst Abwicklung in 3 Verbindungsphasen: Aufbau (3-Wege-Handshake), Übertragung, Abbau (Half-Close). Die Verbindung ist nur sehr locker, deshalb „verbindungsorientiert“. Die Router im Netz wissen nichts von den Verbindungen. Im Internet realisiert als zuverlässiger Datenübertragungsdienst inklusive Flusskontrolle und Überlastkontrolle durch das Transport Control Protocol (TCP) Copyright: © Michael Massoth 2 - 24 Netzwerke, WS 2007/08 Mehr über Services (3) 2 - 25 Verbindungsloser Dienst (connectionless service): Keine Auf- und Abbauphase (kein Handshake). Daten werden daher schneller übertragen. Keine Bestätigungen: Sender erfährt nicht, ob Nachricht den Empfänger erreicht hat (best effort) Keine Flusskontrolle Keine Überlastkontrolle Wird im Internet vom User Data Protocol (UDP) bereitgestellt Ist kein zuverlässiger Datenübertragungsdienst sondern arbeitet nach dem „best effort“-Prinzip Copyright: © Michael Massoth 2 - 25 Netzwerke, WS 2007/08 2 - 26 Überblick (für heute) OSI-Referenzmodell Hybrid-Referenzmodell und Internet-Architektur Nachrichtentechnische Grundlagen: Signale und Übertragung Copyright: © Michael Massoth 2 - 26 Netzwerke, WS 2007/08 2 - 27 Grundlagen (Teil 3): Netzwerkarchitektur ; Schichten, Schnittstellen und Protokolle OSI-Referenzmodell Hybrid-Referenzmodell und Internet-Architektur Copyright: © Michael Massoth 2 - 27 Netzwerke, WS 2007/08 2 - 28 Lernziele heute: Referenzmodelle (OSI, TCP/IP, Hybrid) und Datenkapselung Lernziele im Detail: OSI-, TCP/IP- und Hybrid-Referenzmodell verstehen und unterscheiden können Wesentlichen Funktionen der einzelnen OSI-Schichten kennen Horizontale und vertikale Kommunikation kennen Datenkapselung verstehen und auf ein Referenzmodell (OSI, TCP/IP, Hybrid) anwenden können Wissen was ein Socket und ein Protokollgraph ist Copyright: © Michael Massoth 2 - 28 Netzwerke, WS 2007/08 2 - 29 Grundlagen (Teil 3): Netzwerkarchitektur ; Schichten, Schnittstellen und Protokolle OSI-Referenzmodell Hybrid-Referenzmodell und Internet-Architektur Copyright: © Michael Massoth 2 - 29 Netzwerke, WS 2007/08 Das OSI-Referenzmodell Application processes 2 - 30 (WWW, Email, FTP, …) Application processes Exchange Unit Layer 7 Application Application Protocol 6 Presentation Presentation Protocol Session Protocol 5 Session 4 Transport 3 Network 2 Data Link Data Link 1 Physical Physical Transport Protocol Network Application Data Presentation 6-PDU Session Transport 5-PDU 4-PDU (Segment) Network 3-PDU (Packet) Data Link Data Link 2-PDU (Frame) Physical Physical Bit PDU = Protocol Data Unit Copyright: © Michael Massoth 2 - 30 Netzwerke, WS 2007/08 OSI-Modell: Transportorientierte Schichten 2 - 31 1. Bitübertragungsschicht (Physical Layer): ungesicherte Verbindung zwischen Systemen Übertragung unstrukturierter Bitfolgen über physikalisches Medium Physikalischer Anschluss, Umsetzung der Daten in Signale 2. Sicherungsschicht (Data Link Layer): gesicherter Datentransfer zwischen direkt verbundenen Dienstnehmern (Punkt-zu-Punkt-Übertragung) Zerlegung des Bitstroms (Schicht 1) in Rahmen (engl. Frames) Fehlererkennung und -behebung, Bestätigungsrahmen 3. Vermittlungsschicht (Network Layer): Logische Adressierung des Zielsystems, Fragmentierung Wegewahl (Routing Î Internetworking), Vermittlung, Staukontrolle 4. Transportschicht (transport layer): (fehlerfreier) Datentransfer von Endpunkt zu Endpunkt bietet Transparenz bzgl. Übertragungs- und Vermittlungstechnik Copyright: © Michael Massoth 2 - 31 Netzwerke, WS 2007/08 OSI-Modell: Anwendungsorientierte Schichten 2 - 32 5. Kommunikationssteuerungsschicht (Session Layer): Ablaufsteuerung und -koordinierung (Synchronisation im weitesten Sinn) Kommunikationsbeziehung als Sitzung (Session), Dialogsteuerung Verbindungsaufbau, Durchführung und Flusskontrolle, Verbindungsabbau 6. Darstellungsschicht (Presentation Layer): Datendarstellung von Information (Syntax und Sematik) Beispiele: Konvertierung EBCDIC ↔ ASCII, oder auch Entschlüsselung Kommunikation wird trotz unterschiedlicher lokaler Datenformate der Teilnehmer bzw. Endgeräte ermöglicht, wie z. B. für Buchungsdatensätze 7. Anwendungsschicht (Application Layer): macht dem OSI-Benutzer Dienste verfügbar stellt unterschiedliche Dienste (je nach Anwendung) bereit: z.B. Dateitransfer, zuverlässigen Datenaustausch, entfernten Prozeduraufruf Beispiel: HyperText Transfer Protocol (HTTP) für Webbrowser Copyright: © Michael Massoth 2 - 32 Netzwerke, WS 2007/08 Horizontaler und vertikaler Kommunikation 2 - 33 Vertikale Kommunikation: Eine Nachricht wird (von oben nach unten, Schicht 7 Î 2) Schicht für Schicht verpackt und beim Empfänger in umgekehrter Schichtreihenfolge (von unten nach oben, Schicht 2 Î 7) wieder entpackt Î Data Encapsulation and De-encapsulation Horizontale Kommunikation: Auf den gleichen Schichten von Sender und Empfänger werden jeweils die gleichen Protokollfunktionen verwendet. Die Schichten können jeweils den der Schicht entsprechenden Zustand des Datenpakets verstehen. Copyright: © Michael Massoth 2 - 33 Netzwerke, WS 2007/08 Data Encapsulation (1) Link Header Email data Transport Header data Network Transport Header Header data Network Transport Header Header data Link Trailer APDU (Data) TPDU (Segment) NPDU (Packet) LPDU (Frame) 1010010100010101111101100010110110001 Copyright: © Michael Massoth 2 - 34 Bits 2 - 34 5 Anwendung 4 Transport 3 Vermittlung 2 Sicherung 1 Bitübertragung Netzwerke, WS 2007/08 Data Encapsulation (2) Link Header 2 - 35 Email data (1) Build the data Transport Header data (2) Package the data for end-to-end transport Network Transport Header Header data (3) Add the network address to the header Network Transport Header Header data Link Trailer 1010010100010101111101100010110110001 Copyright: © Michael Massoth (4) Add local MAC-address to data link header (5) Convert to bits for transmission 2 - 35 Netzwerke, WS 2007/08 2 - 36 Grundlagen (Teil 3): Netzwerkarchitektur ; Schichten, Schnittstellen und Protokolle ; OSI-Referenzmodell Hybrid-Referenzmodell und Internet-Architektur Copyright: © Michael Massoth 2 - 36 Netzwerke, WS 2007/08 Vergleich: OSI- und TCP/IP-Referenzmodell (1) Copyright: © Michael Massoth 2 - 37 2 - 37 Netzwerke, WS 2007/08 OSI-Modell und TCP/IP-Suite 2 - 38 Source: “Introducing TCP/IP,” by FindTutorials.com Copyright: © Michael Massoth 2 - 38 Netzwerke, WS 2007/08 Hybrid-Referenzmodell (1) Hybrid-Modell OSI-Modell Copyright: © Michael Massoth 2 - 39 2 - 39 Netzwerke, WS 2007/08 Hybrid-Referenzmodell (2) 2 - 40 Wir benutzen für die Vorlesung (meist) das Hybrid-Referenzmodell! Copyright: © Michael Massoth 2 - 40 Netzwerke, WS 2007/08 Hybrid-Referenzmodell (3): Sockets und Treiber Portnummer Application 2 - 41 80 für HTTP, 25 für SMTP Sockets ID Transportprotokoll IP-Adresse Transport 6 für TCP, 17 für UDP Network 172.17.5.xx Labor-PC Treiber MAC-Adresse Data Link 00:03:6C:1C:56:96 Physical Copyright: © Michael Massoth 2 - 41 Netzwerke, WS 2007/08 Hybrid-Referenzmodell (4): Socket 2 - 42 Ein Socket ist die Kombination von einer IP-Adresse und einem Port Computer B Computer A Requests to Destination Port 23 Source Port = 2500 Destination Port = 2500 Source Port = 23 Austausch der Quell- und Ziel-Sockets Copyright: © Michael Massoth 2 - 42 Netzwerke, WS 2007/08 Internetarchitektur als Protokollgraph 2 - 43 Protokollgraph hat die Form einer Eieruhr: IP als Mittelpunkt der Architektur IP als gemeinsame Methode zum Austausch von Paketen zwischen unterschiedlichsten Netzwerken Unterhalb von IP beliebig viele verschiedene Netzwerktechnologien Darstellung der Internet-Architektur als Protokollgraph Copyright: © Michael Massoth 2 - 43 Netzwerke, WS 2007/08 Eieruhr-Modell 2 - 44 Everything over IP No assumptions! No guarantees! IP over Everything Copyright: © Michael Massoth 2 - 44 Netzwerke, WS 2007/08 Adressierung Portnummer Application 2 - 45 80 für HTTP, 25 für SMTP Sockets ID Transportprotokoll IP-Adresse (IPv4) Transport 6 für TCP, 17 für UDP Network 172.17.5.xx Labor-PC Treiber MAC-Adresse Data Link 00:03:6C:1C:56:96 Physical Copyright: © Michael Massoth 2 - 45 Netzwerke, WS 2007/08 MAC-Adressierung 2 - 46 Einzigartige Identifikation Herstellerbezeichnung Flache Hierarchie Keine Unterstützung des Routing-Prozesses Keine Informationen zu Standort und Netzzugehörigkeit Copyright: © Michael Massoth 2 - 46 Netzwerke, WS 2007/08 IP-Adressierung Copyright: © Michael Massoth 2 - 47 2 - 47 Netzwerke, WS 2007/08 IPv4 Header 0 4 Version 8 HLen 16 TOS 31 Length Ident TTL 19 Flags Protocol Felder im IPv4-Header: Offset Checksum SourceAddr DestinationAddr Options (variable) Pad (variable) Data Copyright: © Michael Massoth 2 - 48 2 - 48 Version des IP-Protokolls (4 Bit) Länge des Headers (4 Bit) Type of Service (TOS) für Quality of Service Länge des Gesamtpakets Identifier, Flags und Fragment Offset dient der Fragmentierung Time To Live: Sender setzt per Default = 256, jeder Router verringert um 1, bei 0 wird Paket verworfen Upper Layer Protocol Netzwerke, WS 2007/08 IPv4-Packet Copyright: © Michael Massoth 2 - 49 2 - 49 Netzwerke, WS 2007/08 2 - 50 Vielen Dank für Ihre Aufmerksamkeit! Noch Fragen? Fragen und Diskussion Copyright: © Michael Massoth 2 - 50 Netzwerke, WS 2007/08