Anwendungsnahe Adressierung i Internet im I t t Telekommunikationsdienste und –netze z Adressierung erfolgt über logische Namen – – z Aufbau eines logischen Namens – – – 3 Di 3. Die IInternett t Protokollsuite (II) ♦ z Einfacher zu merken Dienste einfacher auf andere Rechner übertragbar Weltweit eindeutig Hierarchische Struktur Gliederung g in Domänen Beispiel – ikmcip1.e-technik.tu-ilmenau.de Die Transportschicht Rechner Land Abteilung Institution z Benötigt: – Fachgebiet „Kommunikationsnetze“ – – Abbildung logischer Name → IP-Adresse Ursprünglich: Datei (hosts (hosts.txt), txt) die jede Nacht vom Server geladen wurde Problem: steigende Anzahl der Namen ließ zentrale Datei nicht mehr zu 94 03. Internet-Transport [TKDN] WS 2007/08 DNS N DNS-Namensraum – Namensraum ist in Zonen aufgeteilt Länder us de e-technik z Allgemeine Kategorie (vorrangig innerhalb der USA) se ... tu-ilmenau uk net org gov mil ac co www edu nasa ... ikmcip1 95 DNS – Resource R R Records d 03. Internet-Transport [TKDN] WS 2007/08 Fünf-Tupel, Fünf Tupel der einzelne Ressourcen näher beschreibt: – – com – Geplante, z.T. bereits realisierte weitere Zonen (top level domains): • arts • firm • info i f • nom • rec • shop • web – Domain_name Domain name Time_to_live Class Type z z z z z – 96 A (IP-Adresse des Rechners) MX (Mail Exchange) HINFO (CPU und Betriebssystem des Rechners in ASCII) CNAME (Canonical Name) ... Value 03. Internet-Transport [TKDN] WS 2007/08 DNS - Beispieldatenbank B i i ld t b k Domain_name Domain name cs.vu.nl cs.vu.nl cs vu nl cs.vu.nl cs.vu.nl flits.cs.vu.nl flits.cs.vu.nl flits.cs.vu.nl flits.cs.vu.nl flits.cs.vu.nl www.cs.vu.nl ftp.cs.vu.nl p laserjet Time_to_live Time to live 86400 86400 86400 86400 86400 86400 86400 86400 86400 86400 86400 97 Class IN IN IN IN IN IN IN IN IN IN IN IN IN Type TXT TXT MX MX HINFO A A MX MX CNAME CNAME A HINFO DNS - Name N S Servers Value „Faculteit Wiskunde en Informatica” „Vrije Universiteit Amsterdam” 1 zephyr 1. zephyr.cs.vu.nl cs vu nl 2. top.cs.vu.nl Sun Unix 130.37.16.112 192.31.231.165 1. flits.cs.vu.nl 2. zephyr.cs.vu.nl star.cs.vu.nl zephyr.cs.vu.nl p y 192.31.231.216 „HP Laserjet IIISi” Proprietary All Allgemeine i K Kategorien t i int edu sun yale l eng cs ai gov mil org acm eng jack net jp i ieee jill – t b tu-bs yahoo h keio nec cs www cs csl ibr pc24 d IP-Adresse für www.nasa.gov ? Info etc. d MX-Daten MX Daten für ieee ieee.org org ? c mail [email protected] @ nicht-rekursiv: DNS-Name Server Endsystem Name Info f smtp 199.172.136.14 Name Info 99 e 198.116.142.34 Router Info z DNS-Name Server Endsystem y f http 198.116.142.34 N Name 03. Internet-Transport [TKDN] WS 2007/08 faxe 03. Internet-Transport [TKDN] WS 2007/08 c http://www.nasa.gov/ rekursiv: Name ... DNS B DNS: Beispiele i i l Jede Zone hat einen primären und beliebig weitere sekundäre Nameserver Anfragen können rekursiv oder nicht-rekursiv beantwortet werden z de co DNS N DNS: Nameserver – us ac linda robot 98 03. Internet-Transport [TKDN] WS 2007/08 com Lä d Länderspezifisch ifi h e gemini.ieee.org, IP-Adresse 199.172.136.14, SMTP Router 100 03. Internet-Transport [TKDN] WS 2007/08 Die Internet-Protokollfamilie: Wi d h l Wiederholung z z TCP (Transmission Control P t Protocol): l) Dienste Di t Die Bezeichnung TCP/IP wird häufig als Synonym für die gesamte Protokollfamilie verwendet Einordnung g der Internetprotokolle p in das ISO/OSIReferenzmodell: z – – – Kommunikationssteuerungsschicht TCP IGMP ICMP Multiplexen z Datenübertragung – – IP ARP Vermittlungsschicht – Sicherungsschicht – – RARP – z Im Weiteren wird die Transportschicht behandelt 101 z 102 03. Internet-Transport [TKDN] WS 2007/08 z z z FTPServer Port 21 129.13.42.112 129.13.42.115 FTPBenutzer A Port 400 FTPBenutzer B Port 400 TCP TCP IP Netzzugang z TCP IP IP Netzzugang Netzzugang Internet 103 03. Internet-Transport [TKDN] WS 2007/08 Vollduplex. Reihenfolgetreue. g Flusskontrolle mit Fenstermechanismus. Fehlerkontrolle durch Folgenummern (Sequenznummern), Prüfsumme, g, Übertragungswiederholung. g g g Quittung, Unterstützung von Sicherheitsstufen und Prioritäten. Zeitbehaftete Daten: Falls Auslieferung in bestimmter Zeit nicht möglich ist,, wird der Dienstbenutzer informiert. Fehleranzeige TCP: fest vereinbarte Port-Nummern ( ll k (well-known ports) t ) Identifikation von TCP TCP-Diensten Diensten geschieht über Ports (TSAPs in der OSI-Terminologie) Portnummern bis 255 sind für häufig benutzte Dienste reserviert (z.B. 21 für FTP, 23 für TELNET, 80 für HTTP) Ein Socket S besteht aus der Internetadresse eines Rechners und einem Port. Notation: (IP-Adresse:Portnummer) → Internet-weit eindeutig Beispiel – Der FTP-Server der TU Ilmenau ist über den Socket 141.24.191.41:21 erreichbar: 141.24.191.41 Mehrere Prozesse können gleichzeitig eine TCP-Instanz benutzen. 03. Internet-Transport [TKDN] WS 2007/08 TCP Ad TCP: Adressierung i z Verbindungsaufbau zwischen zwei „Sockets“ (entspricht CEP im TSAP). Datentransfer über virtuelle Verbindung. G i h t Verbindungsabbau Gesicherter V bi d bb ((alle ll D Daten t müssen ü quittiert itti t sein). i ) z – Transportschicht UDP Verbindungsverwaltung 104 Viele Anwendungen wählen TCP als Protokoll, allerdings muss der richtige Port gewählt werden, um auf der Gegenseite mit der richtigen Anwendung zu kommunizieren. – 13: Tageszeit – 20: FTP Daten – 25: SMTP (Simple Mail Transfer Protocol) – 53: DNS (Domain Name Server) – 80: HTTP (Hyper Text Transfer P t Protocol) l) – 119: NNTP (Network News Transfer Protocol)) > telnet walapai 13 Trying 129.13.3.121... Connected to walapai. Escape character is '^]' ] . Mon Aug 4 16:57:19 1997 Connection closed by foreign host > telnet mailhost 25 Trying 129.13.3.161... Connected to mailhost . Escape character is '^]'. 220 mailhost ESMTP Sendmail 8.8.5/8.8.5; 8 8 5/8 8 5; Mon, 4 Aug 1997 17:02:51 +0200 HELP 214-This is Sendmail version 8.8.5 214-Topics: 214 Topics: 214- HELO EHLO MAIL RCPT DATA 214- RSET NOOP QUIT HELP VRFY 214- EXPN VERB ETRN DSN 214-For 214 For more info use "HELP HELP <topic>". <topic> . ... 214 End of HELP info 03. Internet-Transport [TKDN] WS 2007/08 TCP Verbindungsaufbau TCP: V bi d fb TCP V TCP: Verbindungsmanagement bi d t Verbindungen können nach der Erstellung eines Sockets – – aktiv (connect) oder passiv (listen/accept) Ve erbindungs saufbau z aufgebaut f b t werden. d Aktiver Modus: Anforderung einer TCP-Verbindung mit dem spezifizierten Socket. Passiver Modus: Ein Benutzer informiert TCP, dass er auf eine eingehende Verbindung wartet. z – – Spezifikation p eines speziellen p Sockets, von dem er eine eingehende g Verbindung erwartet wird (fully specified passive open) oder Alle Verbindungen annehmen (unspecified passive open). Geht ein Verbindungsaufbauwunsch g ein, wird ein neuer Socket erzeugt, g der dann als Verbindungsendpunkt dient. 105 SYN rcvd FIN wait1 ACK; - FIN wait2 Send SYN; SYN+ACK (gleichzeitig) SYN sent Estblshd SYN+ACK; ACK Close; FIN FIN; ACK FIN; ACK Closing Close wait FIN+ACK; ACK; ACK FIN; ACK Close; FIN Timed wait (Timeout; -) ACK; - 03. Internet-Transport [TKDN] WS 2007/08 TCP P k tf TCP-Paketformat: t A Aufbau fb 0 Source Port TCP P k tf TCP-Paketformat t z 31 16 Destination Port z Sequence Number z Piggyback Acknowledgement 4 bit TCP header length 6 bit unused UAERS F RCOSY I GKMTNN Checksum Window z Paket Paketkopf z z z z Urgent Pointer z Options (0 oder mehr 32-bit-Worte) z z Daten ... z Dieses Bit wird in der Literatur auch durch PSH (Push-Bit) bezeichnet. 107 03. Internet-Transport [TKDN] WS 2007/08 Last ACK Closed 106 03. Internet-Transport [TKDN] WS 2007/08 Close; - Listen RST; - Close; FIN Anmerkung: Die Verbindung wird von den TCP-Instanzen ohne g der Dienstbenutzer aufgebaut g ((es existiert z.B. weiteres Eingreifen kein Primitiv, das T-CONNECT.Rsp entspricht). z SYN; SYN+ACK Close; - Close e Passive – Listen; - ACK; - Close Ac ctiv z Connect;; SYN Closed z z 108 Source- und Destinationport: identifizieren die Endpunkte der Verbindung Source Verbindung. Wie die Hosts ihre Ports zuweisen, bleibt ihnen überlassen (bis auf die standardisierten bis Nummer 255) Sequence number: enthält die Byte-Folgenummer Piggyback acknowledgement: Huckepackverschickung von Quittungen. Q Die nächste erwartete Folgenummer TCP header length: Anzahl der 32-bit-Wörter im Paketkopf URG: Wird auf 1 gesetzt gesetzt, falls der Urgent Pointer verwendet wird SYN: Wird beim Verbindungsaufbau verwendet, um CONNECT.Req/Ind anzuzeigen ACK: Unterscheidet bei gesetztem SYN-Bit eine CR-PDU von einer CC-PDU. Signalisiert die Gültigkeit des Acknowledgement-Feldes FIN: Gibt an, dass der Sender keine Daten mehr senden möchte RST: Wird benutzt, um eine Verbindung zurückzusetzen EOM (bzw. PSH): Dieses Bit zeigt das Ende einer Nachricht an Window: Dient zur Flusskontrolle. Anzahl der Bytes, die nach dem höchsten bestätigten Byte gesendet werden dürfen Checksum: Enthält die Prüfsumme über Paketkopf und Daten Urgent Pointer: Relativer Zeiger auf wichtige Daten Das Options-Feld kann Optionen variabler Länge aufnehmen 03. Internet-Transport [TKDN] WS 2007/08 TCP-Verbindungsaufbau i Detail im D t il A B Active Open TCP-Verbindungsaufbau: V Verwaistes i t SYN Passive Open A B A beantragt Verbindung Passive Open Altes SYN kommt an B akzeptiert und bestätigt B akzeptiert und bestätigt A akzeptiert p und beginnt g Übertragung A verweigert Bs Verbindung z 3-Wege-Handshake – – Beide SYNs müssen bestätigt sein Für den Empfänger gilt die Verbindung erst nach der Bestätigung seines SYNs als aufgebaut 109 03. Internet-Transport [TKDN] WS 2007/08 110 03. Internet-Transport [TKDN] WS 2007/08 TCP-Verbindungsaufbau: V Verspätetes ät t SYN/ACK A B TCP Duplikaterkennung TCP: D lik t k z Passive Open z Datenpakete werden zur Duplikaterkennung durchnummeriert Unter Umständen wird ein Datenpaket mehrfach bestätigt – Active Open z A beantragt g Verbindung g Altes SYN/ACK kommt an z A bricht „alte“ Verbindung ab B akzeptiert und bestätigt neue Verbindung Sequenznummernbereich muss groß genug sein, dass zwei Pakete mit der gleichen Sequenznummer genügend weit auseinander liegen Allerdings: – – z A bestätigt und beginnt Übertragung 03. Internet-Transport [TKDN] WS 2007/08 – 112 Datenpakete können Verbindungsabbau überstehen und irrtümlich einer neuen Verbindung zugeordnet werden Durch einen Systemzusammenbruch kann die Paketnummerierung verloren gehen Problemvermeidung: – 111 Kein Anzeichen für Duplikate Uhr-unterstützte Sequenznummer (Clock-based initial sequence number) Sendeverzögerung (Quiet Time) 03. Internet-Transport [TKDN] WS 2007/08 TCP: Flusskontrolle / St k t ll Staukontrolle TCP F TCP: Fenstermanagement t t Sender Empfänger p g z Empfängerpuffer 0 4K Leer Anwendung schreibt 2KB z z – – 2K z Anwendung schreibt 3KB Voll Sender ist blockiert Flusskontrolle regelt den Datenfluss zwischen den Endsystemen Staukontrolle befasst sich mit Stausituationen in den Zwischensystemen Flusskontrolle in TCP: Fenstermechanismus mit Kreditvergabe z Anwendung liest 2KB Staukontrolle in TCP: Problem „congestion collapse“: Stau in Zwischensystemen führt oftmals dazu, dazu dass Transportprotokolle nach einem Timeout Pakete wiederholen. ⇒ Die Stausituation wird verstärkt! TCP: „slow start“ und „multiplicative p decrease“ Mechanismen – 2K Sender kann bis zu 2KB übertragen – 1K 113 ACK-Feld ACK Feld im Paketkopf bestätigt alle niedrigeren Bytefolgenummern Window-Feld gibt an, wie viele Bytes der Empfänger zusätzlich akzeptiert 2K Bei Datenverlust reduziert TCP den Schwellwert, bis zu dem eine Steigerung der Senderate möglich ist, auf die Hälfte des aktuellen Fensterwerts (multiplicative decrease). N h einer Nach i St Stauperiode i d wird i d di die F Fenstergröße t öß um ein i D Datenpaket t k t erhöht höht und d weiterhin nach jeder empfangenen Quittung (slow start) ⇒ Der „slow start“ Mechanismus verhindert, dass nach einem Stau direkt zu hoher Verkehr auftritt 114 03. Internet-Transport [TKDN] WS 2007/08 03. Internet-Transport [TKDN] WS 2007/08 TCP Staukontrolle TCP: St k t ll am Beispiel B i i l TCP V TCP: Verbindungsabbau bi d bb Timeout 40 z – Übertra agungsfen nster (KB) 36 Schwelle 32 Noch ausstehende Datenpakete können erkannt werden, so dass der Verbindungsabbau erst mit Eintreffen des letzten Datenpakets vollzogen werden kann. Close 28 24 A B A sendet VerbindungsabbauAnfrage Schwelle 20 B bestätigt und sendet eigenes Verbindungsabbau-Signal 16 12 A bestätigt den Verbindungsabbau von B. Ist dieses Signal bei B angekommen angekommen, gilt die Verbindung als abgebaut. 8 4 Anzahl der Übertragungen 0 115 Bestätigter und nummerierter Verbindungsabbau 0 2 4 6 8 10 12 03. Internet-Transport [TKDN] WS 2007/08 14 16 18 20 22 24 116 03. Internet-Transport [TKDN] WS 2007/08 Stream Control Transmission P t Protocol l SCTP UDP (User (U Datagram D t P Protocol) t l) Unzuverlässig, verbindungslos Unzuverlässig verbindungslos, einfacher und schneller als TCP Demultiplexing der empfangenen Pakete basiert auf der PortNummer O ti Optionale l Prüfsumme P üf z z z 0 16 z – 31 Source Port Destination Port Message Length Checksum – – Paketkopf – D t ... Daten z – – z z festgelegte, sogenannte „well-known“ Ports: – 13: 13 53: 123: SCTP ist i t als l Kompromiss K i zwischen i h TCP und d UDP entwickelt worden: SCTP-Assoziation: – daytime d ti domain name server network time protocol Verbindungsorientiert: SCTP-Assoziation SC Nachrichtenbasiert Ermöglicht Flusssteuerung Segmentieren und Blocken – Zusammengesetzt aus mehreren Streams Ein Stream entspricht einer unidirektionalen gerichteten Verbindung sehr viele Multimedia-Anwendungen nehmen UDP statt TCP wegen Leistungsvorteilen 117 118 03. Internet-Transport [TKDN] WS 2007/08 03. Internet-Transport [TKDN] WS 2007/08 Firewall zum Schutz des WWWServers SCTP P k t fb SCTP-Paketaufbau IP IPHeader • • • • Common C Header Chunk 1 Source Port Nummer (2 Bytes) Destination Port Nummer (2 Bytes) Verification Tag (4 Bytes) Prüfsumme (4 Bytes) Chunk 2 WWW-Server WWW S HTTP TCP IP LLC MAC PHY Chunk n Notebook WWW-Browser HTTP TCP IP LLC MAC (WLAN) PHY (Code...) • Chunk-Header: o Type o Flags o Länge • Chunk-Inhalt 03. Internet-Transport [TKDN] WS 2007/08 120 Coax Funk Router Router Router Router Glasfaser Router Router Glasfaser Firewall Bridge LLC MAC (WLAN) MAC (Ethernet) PHY (Code...) PHY Funk 119 Router Router Router IP LLC MAC (Ethernet) PHY UTP5 – Twisted Pair 03. Internet-Transport [TKDN] WS 2007/08 LLC MAC (FDDI) PHY Fi Firewalls ll im i Internet I t t z ⇒ Firmen Behörden, Firmen, Behörden Privatpersonen, Privatpersonen Universitäten sind von den Protokollen TCP/IP her gleichberechtigt an das Internet angebunden Das interne Netz von unerwünschten Zugriffen von außen schützen: – – – z z z 123 z Umsetzung zwischen verschiedenen mail-Systemen dynamische Abbildung einer IP-Adresse auf viele verschiedene interne Endsysteme POSTEL, J.: J : User Datagram Protocol, Protocol August 1980, RFC 768. POSTEL, J.: J : Transmission Control Protocol – DARPA Internet Program Protocol Specification, September 1981 1981, RFC 793 793. POSTEL, J.: Domain Name System Structure and Delegation März 1994 Delegation, 1994, RFC1591 RFC1591. FREED, N.: Behavior of and Requirements for Internet Firewalls Firewalls, Oktober 2000 2000, RFC 2979 2979. STEWART, R.: Stream Control Transmission Protocol September 2007, Protocol, 2007 RFC 4960 . 03. Internet-Transport [TKDN] WS 2007/08 z 122 RFCs RFC z z Beispiel: p Ausfiltern von Paketen mit dem Port 80 verhindert den Zugriff g auf normale WWW-Server; werden z.B. 129.13.x.y Adressen gefiltert, kann kein Rechner der Telematik auf etwas zugreifen! 03. Internet-Transport [TKDN] WS 2007/08 z z Außer Paketfilter sind oft noch Anwendungsgateways und Adressübersetzung integriert z z z Am sichersten ist nur die physikalische Trennung zwischen Rechnern am Internet und firmeninternen Rechnern Firewalls sind meist Router,, die Pakete anhand der IP-Adresse und Port-Nummer herausfiltern können (zusätzliche Vermerke in einer LogDatei möglich) z 121 Lit Literatur t BADACH, A.; A ; HOFFMANN, E. E (2007): Technik der IP-Netze: IP Netze: Funktionsweise, Protokolle und Dienste. Carl Hanser Verlag, München, Wien, 2. Auflage. ISBN 978-3-446-21935-9. 978 3 446 21935 9 COMER, D.E. (2000): Internetworking with TCP/IP. Bd. 1: Principles, Protocols and Architecture. Prentice Hall, New Jersey. ISBN 0 0-13-018380-6. 13 018380 6 COMER, D.E. (2002). Computernetzwerke und Internets mit InternetAnwendungen. g Pearson Studium / Prentice Hall, München, 3. überarbeitete Auflage. ISBN 3-8273-7023-X. PETERSON, L.; DAVIE, B.S. (2003). Computernetze – Eine systemorientierte Einführung Einführung. dpunkt.verlag, dpunkt verlag Heidelberg, Heidelberg 3 3. Auflage Auflage. ISBN 3-89864-242-9. STEVENS, W.R. (1994). TCP/IP Illustrated. Bd. 1: The Protocols. Addison Wesley, Wesley Reading, Reading Mass. Mass ISBN 0-201-63346-9. 03. Internet-Transport [TKDN] WS 2007/08