1 Netzwerke Nicola Kaiser / Gruppe Technik Lehrstuhl für Computerlinguistik, Ruprecht-Karls-Universität Heidelberg, WS 04/05 2 Inhalt Hardware Kommunikation Internetworking Praxis 3 Rechner (Knoten) Rechner (Knoten) Router/Gateway 4 Hardware ... Host: Netzwerkkarte Bus-Interface (zur CPU) Leitungsinterface Cip Leitungen: Kupfer: Twistedpair, Cross-Over, Koaxial Glasfaser Luft Rechner (Knoten) 5 Mehr Hardware zur Paketvermittlung Router - Schnittstelle zw. Netzwerken, auch Gateway genannt, untersucht, zerlegt und leitet Pakete an die richtige Stelle weiter Repeater - Signalverstärker Hub - Multiport-Repeater: verbreitet alles auf allen Leitungen Switch - intelligenter, lernender Hub, nur Host angeschlossen Bridge - LAN-Switch, verbindet statt Rechner LANs, früher nur 2 Ports, daher Bridge, heute viele 6 Grundlegendes Pakete werden vermittelt alle Knoten (Rechner) müssen physisch miteinander verbunden sein (durch Kabel oder W-LAN) alle müssen eindeutige Adressen haben systematisches Ermitteln eines Weges vom Sender zum Empfänger: Routing 7 Local Area Network (LAN) ... am häufigsten: Ethernet 10 Mbit/s 100 Mbit/s - Fast Ethernet 1000 Mbit/s - Gigabbit Ethernet die gesamte Logik ist auf der NW-Karte implementiert Zusammenschluß der Segmente mittels Repeater maximal 4 Repeater zwischen 2 Hosts (-> Gesamtlänge von maximal 2500m) 8 Local Area Network (LAN) 2 jedes Signal wird über das gesamte Netzwerk gesendet (Broadcasting) alle hören mit und kämpfen um Zugriff Algorithmus in der Hardware zur Medienzugriffssteuerung (Media Acess Controll = MAC) Weltweit eindeutige Ethernet-Adressen (MAC-Adresse) es gibt auch andere LAN-Technologien, z.B. Token-Ring-NW 9 Kommunikation ... Client-Server-Konzept (z.B. ftp, www) Anfrage/Antwort Kanäle Request/Reply Protocl (RRP) Streaming-Konzept (z.B. Video on Demand) Nachrichten-Strom Kanal Message-Stream-Protocl (MSP) 10 Kommunikation 2 - Leistung Bandbreite: Bit/s Latenz: Zeit, die vergeht, bis eine Nachricht vom Sender zum Empfänger gelangt häufig doppelt gemessen: Round-Trip-Time (RTT) Probleme gekippte Bits verloren gegange Pakete abgestützte Rechner 11 Internetworking ... Zusammenschalten verschiedener Netze mit unterschiedlichen Realisierungskonzepten Wie findet man die Wege zwischen Millionen von Teilnehmern? Eindeutige Adressierung? physikalisches NW: ein Eth-NW oder T-R-NW oder ... logisches NW: Zusammenschluß mehrer physikalischer NWs 12 Internetworking 2 gemeinsame Kommunikationsgrundlage: Internet Protocol (IP) wichtigstes Protokoll für heterogene, skalierbare NWs läuft auf allen Knoten Verbindung zwischen mehreren physikalischen NWs: Router ein einheitliches Adressierungsschema für alle Host verbindungsloses Modell zur Datenzustellung: “best effort” - garantiert keinen Erfolg, Pakete können verloren gehen 13 IP-Adressen ... Adressen sollen global eindeutig sein Hirarchie 2-stufig: Netzadresse, Rechneradresse Idee: wenige Netze mit vielen Rechnern, viele Netze mit wenigen Rechnern Router, die zwischen 2 Netzen liegen haben folglich 2 Adressen 14 IP-Adressen 2 IPv4 - momentan noch am häufigsten benutze Variante 4x8 Bit, dezimal: xxx.xxx.xxx.xxx, z.B. 147.142.207.16 5 Klassen insgesamt alle Hosts und Router mit gleichem NW-Teil hängen im selben NW jedes physikalische Netz hat mindestens einen Router, der außerdem an ein anderes Netz angeschlossen ist IP-Adresse gehört zum NW, MAC-Adresse zum Rechner (Netzwerkkarte) 15 IP-Adressen 3 im Paket-Header stehen allerhand nützliche Informationen IP-Version ... TTL- Time To Live: Pakete, die zu lange im Netz herumirren, ohne ihr Ziel zu erreichen, werden verworfen Checksum Sender Empfänger Inhalt ;-) 16 IP-Adressen 4 IPv6 neue Paketform, längere Adresse (mehr Adressen insgesamt) 128 Bit großer Adressraum in Hexadezimal (unlesbarer) IPsec - Anteil von IPv6, der mit Sicherheit zu tun hat, z.B Verschlüsselung, Authentifizierung keine Klasseneinteilung momentan werden IPv4 und IPv6 nebeneinander benutzt Tunneling: IPv6 Pakete werden von Routern in IPv4 Pakete gekapselt 17 Ende-zu-Ende Protokolle ... Prozess-zu-Prozess Verbindung TCP - Transmission Controll Protocol Verbindung wird geöffnet und am Ende geschlossen angenommene Pakete werden bestätigt verloren gegangene Pakete werden erneut übertragen Vollduplex, d.h. unterstützt beide Richtungen 18 Ende-zu-Ende Protokolle 2 RCP - Remote Procedure Call Client/Server Konzept Anfrage/Antwort Protokoll fast wie ein normaler Prozessaufruf, nur über Rechnergrenzen hinweg Anwender merkt beim Prozessaufruf nicht, dass ein anderer Rechner bemüht wird (z.B. Fileserver) kein Verbindungsauf- und -abbau wie bei TCP 19 Domain Name System (DNS) bisher haben wir IP-Adressen benutzt, um die Hosts zu identifizieren praktisch für Router, schwer zu merken für Meschen wir wollen unseren Rechnern lieber “menschliche” Namen geben der Domain Name Service (DNS) übersetzt diese Namen in IP-Adressen janus.cl.uni-heidelberg.de -> 147-142.207.16 20 Noch ein paar Stichwörter DHCP - Dynamic Host Configuration Protocol IP-Adressen werden vom Server bzw. Router automatisch und dynamisch vergeben VPN - Virtual Private Network benutzt Verschlüsselung auf Protokoll-Ebene um sichere Datenübertragung zu gewährleisten simuliert damit ein lokales NW 21 Praxis ...und hier noch ein paar Linux-Kommandozeilen-Tools ... ping <rechnername/ip-adresse> schickt Test-Pakete, brechnet aus der Antwort die Kommunikationszeit zum testen, ob der Rechner überhaupt online ist, und ob die Kommunikationszeit vernünftig ist traceroute <rechnername/ip-adresse> listet alle Zwischenstationen, die ein Paket vom Sender zum Empfänger passiert, auf 22 Praxis ...und hier noch ein paar Linux-Kommandozeilen-Tools 2 ifconfig (iwconfig u.U. für W-LAN-Karte) zeigt die aktuelle NW-Konfiguration an mit Optionen kann von Hand konfiguriert werden (man ifconfig) ifup <interface> / ifdown <interface> aktiviert bzw. deaktiviert das angesprochene Interface üblicherweise: eth0 - Ethernetkarte, eth1 W-LAn-Karte (keine Gewähr) 23 Praxis ...und hier noch ein paar Linux-Kommandozeilen-Tools 3 ssh <loginname@rechnername/ip-adresse> secure shell - zum einloggen auf einem entfernten Rechner über die Textkonsole scp <quelle> <ziel> secure copy - zum Übertragen von Dateien auf einen entfernten Rechner, benutz eine secure shell 24 Praxis ...und hier noch ein paar Linux-Kommandozeilen-Tools 4 (s)ftp - (secure) Internet File Transfer Protocol zum Übertragen von Daten von und auf entfernte Rechner funktioniert in der Textkonsole und im Browser telnet <host> weiteres Protokoll zum entfernten Login Für Windows gibt es (halb-graphische) Clients für ssh, scp und telnet, z.B. PuTTY 25 Literatur Thomas Ludwig: Skript zur Vorlesung “Betriebsysteme und Netzwerke”, WS 03/04 Joseph D. Sloan 2001: Network Troubleshooting Tools, O´Reilly