Center for Biotechnology Bielefeld Bioinformatics Service Netzwerk - Programmierung Netzwerke Alexander Sczyrba Jan Krüger.

Slides:



Advertisements
Ähnliche Präsentationen
Powerpoint-Präsentation
Advertisements

2. Link Layer Lernziele: Verstehen wie IP prinzipiell über eine Link Layer Verbindung übertragen wird.
Kirsten Kropmanns Allgemeine Technologien II 21. April 2009
Konfiguration eines VPN Netzwerkes
Geschichte und Funktion des Internets.
Technische Informatik II Vorlesung 11: Netze Peter B. Ladkin Sommersemester 2001 Universität Bielefeld Technische Fakultät.
Netze Vorlesung 11 Peter B. Ladkin
2. Link Layer Lernziele: – Verstehen wie IP prinzipiell über eine Link Layer Verbindung übertragen wird.
1. Einführung Lernziele: Auffrischen des Wissens aus Rechnernetze
Martin MauveUniversität Mannheim1 3.6 User Datagram Protocol (UDP) RFC 768. J. Postel. User Datagram Protocol unzuverlässiges Transportprotokoll.
Rechnernetze 1 Vorlesung im SS’07
Einführung in die Technik des Internets
Netzwerkkomponenten (Hardware)
3 Wie funktioniert TCP/IP?
Mit Schülern ein internetfähiges Netzwerk aufbauen
Learning By Doing TCP/IP Netzwerke mit TCP/IP Das Internet verwendet weitgehend das rund 30-jährige TCP/IP-Protokoll (TCP: Transmission Control Protocol,
Peer-to-Peer-Netzwerke
Referent: Kiron Mirdha Betreuer: Rene Hilden Juli 2012
1 Übersicht Absicherung Internet Layer Absicherung Transport Layer Absicherung Application Layer.
WAP = Wireless Application Protocol Protokollstack Ein Protokoll ...
Firewall.
Julia Grabsch Florian Hillnhütter Fabian Riebschläger
Allgemeine Technologien I Sitzung am Mailserver
Netzwerkprogrammierung
Referat von Markus Hertel
Grundlagen der Netzwerktechnik
Abgeleitet aus dem OSI-Referenzmodell sieben Schichten
Netzwerke.
Die Transportprotokolle: Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Die Socket-Schnittstelle.
Unterschiedliche Netzwerke
1 (C)2006, Hermann Knoll, HTW Chur, FHO teKRY407 Geheimhaltung, Authentikation, Anonymität Protokolle: Übersicht Referat Santos: Hash-Funktionen.
Meldungen über Ethernet mit FINS/UDP
Netzwerke.
Funktionsweise der 4. Schicht im OSI-Modell am Beispiel TCP und UDP.
Funktionsweise der 4. Schicht im OSI-Modell
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Systeme II Christian Schindelhauer Sommersemester 2006.
Provider und Dienste im Internet
2. Kommunikation und Synchronisation von Prozessen 2
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom ISO/OSI Referenzmodell.
von Prof. Thomas Deutsch
Internet-Grundtechnologien. Client / Server Client („Kunde“): fordert Information / Datei an im Internet: fordert Internetseite an, z.B.
 Sind Adresskomponenten (an der IP- Adresse angehängt, von ihr durch Doppelpunkt getrennt)  Werden in Netzwerkprotokollen eingesetzt um Datenpakete.
Ein Referat von Rahul Chanana, Sebastian Callian und Steffen Klikar.
TCP/IP.
Schutzvermerk nach DIN 34 beachten TCP / IP. Schutzvermerk nach DIN 34 beachten TCP / IP und das OSI-Referenzmodell Process / Application Host-to-Host.
Kirsten Kropmanns Allgemeine Technologien II 9. März 2009
Network Address Translation (NAT)
Netzwerke. IPv4 Rechner/Server werden im Internet eindeutig durch IP Adressen identifiziert Adressen sind 32-Bit-Zahlen, die in viermal acht Bit aufgeteilt.
Kornelia Bakowsk a ‌ WG13 ‌‌‌ Köln, Protokollfamilie Welche Protokolle benötige ich um eine Seite im Internet zu öffnen?
IS: Datenbanken, © Till Hänisch 2000 Windows Netzwerke TCP/IP oder was ?
TCP/IP Ti ßi pi ai pi. Wozu braucht man TCP/IP? ¥ Um festzustellen, ob das Moorhuhn (oder andere Programme) sicher sind. ¥ Um nachzusehen, ob noch `ne.
LINUX II Harald Wegscheider
Center for Biotechnology Bielefeld Bioinformatics Service Netzwerk - Programmierung Vorbesprechung, Administrativa, Einführung Alexander Sczyrba
Center for Biotechnology Bielefeld Bioinformatics Service Netzwerk - Programmierung Kommunikation von Prozessen Signale und Pipes Alexander Sczyrba
Center for Biotechnology Bielefeld Bioinformatics Service Netzwerk - Programmierung Programmieren mit sockets Alexander Sczyrba
Center for Biotechnology Bielefeld Bioinformatics Service Netzwerk - Programmierung I/O Multiplexing Alexander Sczyrba
Center for Biotechnology Bielefeld Bioinformatics Service Netzwerk - Programmierung Concurrent Clients Alexander Sczyrba
Othmar GsengerErwin Nindl Christian Pointner. Inhalt Was ist Anycast? Secure Anycast Tunneling Protocol (SATP) Was ist Anytun Verschlüsselung Live Demo.
1. Einführung Lernziele: Auffrischen des Wissens aus Rechnernetze
2 Kommunikationssysteme
Netzwerk - Programmierung
Crashkurs Computernetzwerke
ISO / OSI Referenzmodell
Manuel Blechschmidt & Volker Grabsch CdE Sommerakademie 2006 Kirchheim
Port-Forwarding Der PC möchte vom Internet aus auf den http-Server zugreifen. Er sieht nur die IP-Adresse und den Port des Routers. http-Server PC Router.
Othmar Gsenger Erwin Nindl Christian Pointner
Netzwerke Netzwerkgrundlagen.
PC2 PC1 Router IP: MAC: AA:AA:AA:11:11:11
TCP/IP Transmission Control Protocol/Internet Protocol
 Präsentation transkript:

Center for Biotechnology Bielefeld Bioinformatics Service Netzwerk - Programmierung Netzwerke Alexander Sczyrba Jan Krüger

Center for Biotechnology Bielefeld Bioinformatics Service Übersicht ● Netzwerk-Protokolle ● Protokollfamilie TCP/IP ● Transmission Control Protocol (TCP) ● erste Schritte mit sockets

Center for Biotechnology Bielefeld Bioinformatics Service vernetzte Rechner ● Problem: ● versende Daten von Rechner A zu Rechner B ● A und B sind (indirekt) durch Netzwerk(e) verbunden ● Möglichkeiten: ● ein Protokoll für alles ● Familie von spezialisierten Protokollen, die aufeinander aufbauen

Center for Biotechnology Bielefeld Bioinformatics Service Netzwerk-Schichten

Center for Biotechnology Bielefeld Bioinformatics Service link layer ● modelliert physikalische Verbindung ● Hardware-Adressen ● Daten in Frames ● empfindlich gegenüber Störungen ● Prüfsummen ● Beispiel: Ethernet,...

Center for Biotechnology Bielefeld Bioinformatics Service network layer ● modelliert Verknüpfung von mehreren Netzwerken ● Packets innerhalb von Frames ● connectionless, unreliable, best effort ● routing ● eigener Adressraum ● Beispiel: Internet Protocol (IP) ● Domain Name System (DNS) für „lesbare“ Adressen

Center for Biotechnology Bielefeld Bioinformatics Service transport layer ● demultiplexing, Port-Nummern ● well known ports, /etc/services ● User Datagram Protocol (UDP): ● ähnlich zu IP: Datagramme, connectionless, unreliable ● Transmission Control Protocol (TCP): ● Datenstrom ● „Verbindung“ ● Zuverlässigkeit durch Quittierverfahren ● flow control, congestion avoidance

Center for Biotechnology Bielefeld Bioinformatics Service application layer ● nutzt transport layer ● TCP oder UDP hängt von Problemstellung ab ● Programmierschnittstellen: ● Berkeley sockets ● X/Open Transport Interface ●...

Center for Biotechnology Bielefeld Bioinformatics Service encapsulation Ethernet header IP header TCP header Applicatio n header User data Ethernet trailer

Center for Biotechnology Bielefeld Bioinformatics Service Kommunikation zwischen den Schichten http TCP IP Ethernet Rechner 1 http TCP IP Ethernet Rechner 1 application transport network link

Center for Biotechnology Bielefeld Bioinformatics Service Routing http TCP IP Ethernet Rechner 1 http TCP IP Ethernet Rechner 1 application transport network link Ethern et IP Route r

Center for Biotechnology Bielefeld Bioinformatics Service Transmission Control Protocol ● Bestätigung von empfangenen Paketen ● erneuter Versand von verlorenen Paketen ● sequence numbers Data ACK Data ACK Data

Center for Biotechnology Bielefeld Bioinformatics Service Verbindungsaufbau CLOSED LISTEN ESTABLISHE D SYN_RCVDSYN_SENT active open passive open SYN ACK SYN+ACK

Center for Biotechnology Bielefeld Bioinformatics Service Verbindungsabbau FIN ACK FIN ESTABLISHE D CLOSING TIME_WAITFIN_WAIT_2 FIN_WAIT_1 CLOSE_WAI T LAST_ACK CLOSE D

Center for Biotechnology Bielefeld Bioinformatics Service TCP verwenden ● Verbindung durch socket pair identifiziert: (IP-AdresseL, PortL, IP-AdresseR, PortR) ● Verbindungsdaten anzeigen: ● $ netstat -A inet | more … Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 leonardo.TF:1018 kaylee.TF:nfs ESTABLISHED tcp 0 0 leonardo.TF:50657 simon.TF:nfs TIME_WAIT tcp 0 0 leonardo.TF:38896 donatello.TF:ssh ESTABLISHED … (TF = TechFak.Uni-Bielefeld.DE)

Center for Biotechnology Bielefeld Bioinformatics Service Aufgaben ● Erzeuge eine ssh-Verbindungen zu einem Rechner (z.B. von goldfinger nach goldeneye). Beobachte in zwei verschiedenen Terminals (jeweils eines auf dem jeweiligen Rechner) die Ausgabe von netstat. Welche Einträge kommen neu hinzu? ● Tip: Der service heißt „ssh“ ● Schließe die ssh-Verbindung wieder. Wie verändert sich die Ausgabe von netstat ?

Center for Biotechnology Bielefeld Bioinformatics Service Aufgaben ● Die Skripte server.pl und client.pl befinden sich im Archiv uebung4.tar.gz. (Auspacken kannst Du dieses Archiv nach dem Download mit dem Kommando tar -xvf uebung4.tar.gz) ● Bei den nachfolgenden Aufgaben brauchst Du drei Terminals, um alle Programme starten zu können. ● Starte den Server. Du mußt dabei eine Portnummer angeben: ● $ server.pl ● Sieh Dir den Zustand des Servers an: ● $ netstat -a | grep 54321

Center for Biotechnology Bielefeld Bioinformatics Service Aufgaben ● Laß den Client Daten vom Server lesen: ● $ client.pl ● Benutze wa¨hrenddessen netstat, um die Verbindung zu untersuchen. ● Rufe den Client zwei weitere Male auf. Was a¨ndert sich bei jedem Aufruf? ● Rufe den Client mit einer festen Portnummer auf: ● $ client.pl ● Wiederhole auch diesen Aufruf zweimal.

Center for Biotechnology Bielefeld Bioinformatics Service Aufgaben ● Starte mehrere Clients gleichzeitig: ● client.pl & [enter] client.pl & [enter] client.pl & [enter] ● Was ist zu beobachten? ● Starte zwei Clients mit der gleichen Portnummer gleichzeitig: ● client.pl & [enter] client.pl & [enter] ● Was passiert? ● Beende den Server und versuche ihn sofort mit der gleichen Portnummer neu zu starten. Was passiert? ● Was passiert, wenn Du den Client mit CTRL-C abbrichst, während er Daten vom Server liest?