7.4 Kommunikation. Nachrichten- oder Byte-Ströme,

Größe: px
Ab Seite anzeigen:

Download "7.4 Kommunikation. Nachrichten- oder Byte-Ströme,"

Transkript

1 7.4 Kommunikation Kommunikation zwischen Benutzerprozessen (IPK) stellt andere Anforderungen als auftragsorientierte Kommunikation in mikrokernbasierten Betriebssystemen, vor allem großzügige Pufferung, sowohl Auftragsbeziehungen als auch Nachrichten- oder Byte-Ströme, sowohl lokal als auch übers Netz Ein/Ausgabe! bs-7.4 1

2 7.4.1 Pipes Zur Erinnerung (2.4 ): Pipe = Byte-Puffer fester Größe, erzeugt mit pipe(channel), benutzt mit read(channel[0]) für das Empfangen von Bytes (kann blockieren), benutzt mit write(channel[1]) für das Senden von Bytes (kann blockieren!), eingesetzt für Byteströme zwischen verwandten Prozessen. bs-7.4 2

3 read write Gepufferte Repräsentation: - typischerweise 0 4 KB, - entweder in anonymer Datei fester Größe (Hintergrundspeicher), die durch pipe eingerichtet wird, - oder desgl. auf RAM disk (da nicht notwendig persistent) - oder in speziellem Arbeitsspeicherbereich; - channel[0] und channel[1] verweisen auf zwei Iteratoren mit unabhängigen Lese- bzw. Schreibzeigern, die zyklisch durch den Puffer wandern. bs-7.4 3

4 7.4.2 Benannte Pipes (named pipes, fifo special files, FIFOs) sind über Dateinamen identifizierbare Pipes, erlauben IPK zwischen beliebigen Prozessen, typischerweise mit Pufferkapazität 0 (d.h. ohne Reservierung von Hintergrundspeicherplatz!). Erzeugung: mknod(path,(mode&0777) S_IFIFO,0) oder mkfifo(path,mode) oder Befehl mkfifo [ m mode] path bs-7.4 4

5 Benutzung z.b. so: >: mkfifo buffer >: ls -l prw lohr institut 0 Jul 10 11:08 buffer >: process input1 >buffer & >: process input2 >buffer & >: more buffer zeigt gemischte Ausgabe Kapazität 0: Sender wartet, bis Empfänger übernimmt Empfänger erhält EOF, wenn jeder Sender seinen Kanal geschlossen hat bs-7.4 5

6 Beachte: mit benannten Pipes lassen sich nicht nur Pipelines, sondern beliebige Datenflussgraphen aufsetzen! a 2 c 4 f 1 d 6 b 3 e 5 g >: mkfifo a b c d e f g >: 1 a b & 2 a c & 3 b d e & 4 c d f & 5 e g & 6 f g (Achtung - bei Pufferkapazität=0 drohen Verklemmungen!) bs-7.4 6

7 7.4.3 Message Queues (Unix) werden im Arbeitsspeicher gehalten, sind unabhängig von den Lebensdauern ihrer Benutzer, übertragen Einzelnachrichten, werden durch einen Schlüssel (Typ key_t) identifiziert. msqid = msgget(key,msgflag) erzeugt und/oder öffnet die M.Q. key mit Zugriffsrechten gemäß msgflag bs-7.4 7

8 Senden und Empfangen: msgsnd(msqid,&buffer,length,flag) buffer ist vom Typ struct msgbuf { long mtype; char mtext[1]; } msgrcv(msqid,&buffer,length,type,flag) bs-7.4 8

9 7.4.4 Sockets (Unix) ( socket = Steckdose) Zur Erinnerung (1.1.5 ): Port = virtueller Netzanschluss (network interface) Die von den Prozessen benutzten Ports werden auf einen oder mehrere reale Netzanschlüsse abgebildet. Socket = programmatischer Zugangspunkt für einen Port, erlaubt Senden und Empfangen von Daten (Duplex-Betrieb) mit unterschiedlich wählbaren Semantiken. bs-7.4 9

10 Typische Semantik: 2 Byte-Ströme über 2 unidirektionale Kanäle, die durch Verbindung von 2 Ports geschaffen werden. (Wenn lokal, dann gleiche Semantik wie doppelte Pipe!) Rechner 1 Rechner 2 Prozess P Prozess Q Socket a Socket b bs

11 Benutzung von Sockets 1. Erzeugung 2. Namensgebung 3. Binden an anderen Socket 4. Duplex-Kommunikation über den so entstandenen Kanal Alternative Semantiken: zuverlässiger Byte-Strom oder Einzelnachrichten ohne Reihenfolgegarantie, ohne Schutz gegen Verlust bs

12 Erzeugung eines ungebundenen Socket: int socket(int family, int type, int protocol) prozesslokale Protokoll- Dienst Potokoll Socket-Nummer Familie (i.d.r. 0 [Null]) (file descriptor!) Dienst Familie PF_UNIX PF_INET PF_NS... SOCK_STREAM TCP SPP SOCK_DGRAM UDP IDP SOCK_RAW IP... bs

13 Benennung eines Socket mit netzweit eindeutigem Namen, bestehend aus Internet-Adresse des Rechners (IP address) Port-Nummer (lokal) int bind(int socket, struct sockaddr *address, int addrlen) (Protokollfamilie, Port-Nummer, Internet-Adresse) bs

14 SOCK_DGRAM für Internet: unzuverlässige Nachrichtenübertragung mit UDP int sendto(int socket, char *buffer, int length, int flags, struct sockaddr *to, int addrlen) Absender socket sendet an Adressat to int recvfrom(int socket, char *buffer, int length, int flags, struct sockaddr *from, int *addrlen) socket empfängt an ihn gesendete Nachricht sowie Absender Pufferung der Nachrichten teils beim Sender, hauptsächlich aber beim Empfänger bs

15 SOCK_STREAM für Internet: zuverlässiger Byte-Strom mit TCP Orientierung am Szenario Auftraggeber/Auftragnehmer : 1. Klient stellt Verbindung mit Server her; 2. sodann Nachrichtenaustausch mittels (Klient) write(s1,&request,length); read(s1,&reply,length); (Server) read(s3,&request,length);... write(s3,&reply,length); bs

16 Herstellung der Verbindung: (Klient) (Server) s1 = socket(...); s2 = socket(...); [ bind(s1,..); ] bind(s2,&local,l); listen(s2, qlength); connect(s1,&dst,l); s3 = accept(s2,&src,&l); write(s1,..); read(s3,..); close(s1); close(s3); ( Statt write/read auch send/recv(.,.,.,flags)! ) bs

17 Java unterstützt das Arbeiten mit Sockets durch Bibliotheksklassen Socket, ServerSocket, DatagramSocket, MulticastSocket,... siehe java.net.* bs

18 Implementierung von Sockets Protokollfamilie PF_UNIX: ähnlich wie (bidirektionale) Pipes Protokollfamilie PF_INET: Transportsystem des Internet, bestehend aus Treiber des Netzanschlusses + Internet-Kommunikationsprotokolle : bs

19 Protokollhierarchie: Software ist in Schichten strukturiert 7 Anwendung (application) 6 Darstellung (presentation) Anwendungsprotokolle: TELNET, FTP, HTTP,... 5 Sitzung (session) 4 Transport (transport) 3 Vermittlung (network) Anwendungssystem Transportsystem TCP, UDP IP (Systemschnittstelle - Sockets) 2 Sicherung (data link) 1 Bitübertragung (physical!) (Netztreiber) ISO OSI Internet bs

20 Protokollstapel (protocol stack) ist entweder fest eingebaut socket,.. sind Systemaufrufe (so z.b. bei Mac OS, Linux) oder dynamisch modifizierbar durch Einziehen/Löschen von Schichten: socket,.. sind Bibliotheksroutinen; sie benutzen Systemaufrufe open,ioctl,.. für die Netzanschlüsse; der Protokoll-Code liegt a) entweder in der Bibliothek b) oder dynamisch konfigurierbar im Systemadressraum (so z.b. mit "Streams" bei Unix System V, Solaris) bs

21 Stream ist eine Folge von Code-Bausteinen, durch die eine Nachricht zwischen Benutzerprozess und Gerät (Netzanschluss) hindurchläuft (und dabei verändert wird!), besteht mindestens aus Gerätetreiber und stream head, kann zwischen diesen mehrere Module enthalten*, die dynamisch eingefügt oder weggenommen werden können (stets direkt hinter dem stream head - d.h. kellerartig) * Es besteht eine entfernte Ähnlichkeit mit dem Modul-Konzept von Linux für das dynamische Hinzufügen von Treibern. bs

22 (Abbildungen aus STREAMS Programming Guide, ) bs

23 Systemaufruf ioctl(channel,command,arg) mit typischen command-werten I_PUSH Einfügen eines Moduls hinter dem stream head I_POP Entfernen Beachte: Streams sind auch bei Pipes einsetzbar bs

7.4 Kommunikation. großzügige Pufferung, sowohl Auftragsbeziehungen als auch Nachrichten- oder Byte-Ströme, sowohl lokal als auch übers Netz

7.4 Kommunikation. großzügige Pufferung, sowohl Auftragsbeziehungen als auch Nachrichten- oder Byte-Ströme, sowohl lokal als auch übers Netz 7.4 Kommunikation Kommunikation zwischen Benutzerprozessen (IPK) stellt andere Anforderungen als auftragsorientierte Kommunikation in mikrokernbasierten Betriebssystemen, vor allem großzügige Pufferung,

Mehr

2.4 Kommunikationsdienste des Betriebssystems

2.4 Kommunikationsdienste des Betriebssystems 2.4 Kommunikationsdienste des Betriebssystems Interprozeßkommunikation (inter-process communication, IPC) am Beispiel Unix Prozesse Kommunizierende Threads BS BS HW HW Interprozeßkommunikation ist sprachunabhängig:

Mehr

2.4 Kommunikationsdienste des Betriebssystems

2.4 Kommunikationsdienste des Betriebssystems 2.4 Kommunikationsdienste des Betriebssystems Interprozesskommunikation (inter-process communication, IPC) am Beispiel Unix Threads Prozesse Kommunizierende Prozesse Kommunizierende Threads BS HW Netzkommunikation

Mehr

2 Kommunikationssysteme. vs2 1

2 Kommunikationssysteme. vs2 1 2 Kommunikationssysteme vs2 Kommunikationssysteme bieten Kommunikationsdienste an, die das Senden und Empfangen von Nachrichten erlauben (sending & receiving messages) bestehen aus - Kommunikationsnetz

Mehr

Protokolle und Schichten. Grundlagen der Rechnernetze Einführung 41

Protokolle und Schichten. Grundlagen der Rechnernetze Einführung 41 Protokolle und Schichten Grundlagen der Rechnernetze Einführung 41 Protokoll und Interface Host 1 Host 2 High Level Objekt High Level Objekt Service Interface Service Interface Protokoll Peer to peer Interface

Mehr

Internet Modell. Nothing stated. Bildquelle: Andrew S. Tanenbaum, Computer Networks, Fourth Edition, 2003 Grundlagen der Rechnernetze Einführung 50

Internet Modell. Nothing stated. Bildquelle: Andrew S. Tanenbaum, Computer Networks, Fourth Edition, 2003 Grundlagen der Rechnernetze Einführung 50 Internet Modell Nothing stated by TCP/IP model Bildquelle: Andrew S. Tanenbaum, Computer Networks, Fourth Edition, 2003 Grundlagen der Rechnernetze Einführung 50 Internet Protokolle Bildquelle: Andrew

Mehr

Protokollgraph. Host 1. Host 2. Protokoll 2. Protokoll 1. Protokoll 3. Protokoll 4. Grundlagen der Rechnernetze Einführung 46

Protokollgraph. Host 1. Host 2. Protokoll 2. Protokoll 1. Protokoll 3. Protokoll 4. Grundlagen der Rechnernetze Einführung 46 Protokollgraph Host 1 Host 2 Protokoll 1 Protokoll 2 Protokoll 1 Protokoll 2 Protokoll 3 Protokoll 3 Protokoll 4 Protokoll 4 Grundlagen der Rechnernetze Einführung 46 Nachrichtenkapselung Host 1 Anwendung

Mehr

Verteilte Systeme - Java Networking (Sockets) -

Verteilte Systeme - Java Networking (Sockets) - Verteilte Systeme - Java Networking (Sockets) - Prof. Dr. Michael Cebulla 30. Oktober 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 36 M. Cebulla Verteilte Systeme Gliederung Grundlagen TCP/IP

Mehr

Konsequenz für Forwarding Tabellen

Konsequenz für Forwarding Tabellen Konsequenz für Forwarding Tabellen Subnetznummer : 128. 96. 34. 0 Subnetzmaske : 255.255.255.128 128. 96. 34. 15 H1 128. 96. 34. 1 128. 96. 34.130 R1 Interface 1 Interface 2 128. 96. 34.128 255.255.255.128

Mehr

Internetanwendungstechnik. TCP/IP- und OSI-Referenzmodell. Gero Mühl

Internetanwendungstechnik. TCP/IP- und OSI-Referenzmodell. Gero Mühl Internetanwendungstechnik TCP/IP- und OSI-Referenzmodell Gero Mühl Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik Kommunikations- und Betriebssysteme (KBS) Einsteinufer 17, Sekr.

Mehr

Adressauflösung. IP Adresse Physikalische Adresse 128.96.34.1 57:FF:AA:36:AB:11 128.96.34.16 85:48:A4:28:AA:18

Adressauflösung. IP Adresse Physikalische Adresse 128.96.34.1 57:FF:AA:36:AB:11 128.96.34.16 85:48:A4:28:AA:18 Adressauflösung IP Adresse Physikalische Adresse 128.96.34.1 57:FF:AA:36:AB:11 128.96.34.16 85:48:A4:28:AA:18 IP Adresse Physikalische Adresse 128.96.34.15??? 128.96.34.16 85:48:A4:28:AA:18 128.96.34.15

Mehr

Operating Systems Principles. Event Queue

Operating Systems Principles. Event Queue Humboldt University Computer Science Department Operating Systems Principles Event Queue 1. Aufgabe 3 Wochen Zeit zum Lösen der Aufgaben Aufgabenstellung auf der SAR Website Abgabe über GOYA Abgabefrist:

Mehr

Projekt: Web-Server. Foliensatz 9: Projekt Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2014

Projekt: Web-Server. Foliensatz 9: Projekt Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2014 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Rechnernetze Übung 11

Rechnernetze Übung 11 Rechnernetze Übung 11 Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Juli 2011 Herr Müller (Test GmbH) Sekretärin (Super AG) T-NR. 111 T-NR. 885 Sekretärin (Test GmbH) Herr Meier (Super

Mehr

PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN

PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN UNIX/Linux-Interprozesskommunikation, zugehörige Systemaufrufe und Kommandos 12. UNIX/Linux-Sockets Wintersemester 2016/17 UNIX/Linux-IPC-Mechanismen Nachrichtenbasierter

Mehr

Verteilte Systeme - Java Networking (Sockets) 2 -

Verteilte Systeme - Java Networking (Sockets) 2 - Verteilte Systeme - Java Networking (Sockets) 2 - Prof. Dr. Michael Cebulla 06. November 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 30 Michael Cebulla Verteilte Systeme Gliederung Wiederholung:

Mehr

SCHICHTENMODELLE IM NETZWERK

SCHICHTENMODELLE IM NETZWERK SCHICHTENMODELLE IM NETZWERK INHALT Einführung Schichtenmodelle Das DoD-Schichtenmodell Das OSI-Schichtenmodell OSI / DOD Gegenüberstellung Protokolle auf den Osi-schichten EINFÜHRUNG SCHICHTENMODELLE

Mehr

Rechnernetze Übung 11. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Juni 2012

Rechnernetze Übung 11. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Juni 2012 Rechnernetze Übung 11 Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Juni 2012 IP: 192.168.43.9 MAC: 02-55-4A-89-4F-47 IP: 216.187.69.51 MAC: 08-48-5B-77-56-21 1 2 IP: 192.168.43.15 MAC:

Mehr

Themen. Transportschicht. Internet TCP/UDP. Stefan Szalowski Rechnernetze Transportschicht

Themen. Transportschicht. Internet TCP/UDP. Stefan Szalowski Rechnernetze Transportschicht Themen Transportschicht Internet TCP/UDP Transportschicht Schicht 4 des OSI-Modells Schicht 3 des TCP/IP-Modells Aufgaben / Dienste: Kommunikation von Anwendungsprogrammen über ein Netzwerk Aufteilung

Mehr

Tafelübung zu BS 4. Interprozesskommunikation

Tafelübung zu BS 4. Interprozesskommunikation Tafelübung zu BS 4. Interprozesskommunikation Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund olaf.spinczyk@tu-dortmund.de http://ess.cs.uni-dortmund.de/~os/

Mehr

Client/Server-Systeme

Client/Server-Systeme Client/Server-Systeme Prof. Dr.-Ing. Wilhelm G. Spruth WS 2004 / 2005 Teil 2 Sockets cs 0200 ww6 wgs 09-96 Literatur Socket-Schnittstelle J. Martin, J. Leben: TCP/IP Netzwerke. Prentice Hall, 1994, Kapitel

Mehr

Kommunikation von Prozessen und Threads

Kommunikation von Prozessen und Threads Kommunikation von Prozessen und Threads Sommersemester 2015 Prof. Dr. Peter Mandl Prof. Dr. Peter Mandl Seite 1 Gesamtüberblick 1. Einführung in Computersysteme 2. Entwicklung von Betriebssystemen 3. Architekturansätze

Mehr

Betriebssysteme. Kommunikation von Prozessen und Threads. Sommersemester Prof. Dr. Peter Mandl. Seite 1. Prof. Dr. Peter Mandl.

Betriebssysteme. Kommunikation von Prozessen und Threads. Sommersemester Prof. Dr. Peter Mandl. Seite 1. Prof. Dr. Peter Mandl. Kommunikation von Prozessen und Threads Sommersemester 2014 Seite 1 Gesamtüberblick 1. Einführung in 2. Betriebssystemarchitekturen und Betriebsarten 3. Interruptverarbeitung in n 4. Prozesse und Threads

Mehr

PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN

PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN UNIX/Linux-Interprozesskommunikation 7. UNIX/Linux Pipes Wintersemester 2016/17 UNIX/Linux-IPC-Mechanismen Nachrichtenbasierter Informationsaustausch: 5. 1.

Mehr

Netzwerk-Programmierung in C

Netzwerk-Programmierung in C 1 / 26 Netzwerk-Programmierung in C Oliver Bartels Fachbereich Informatik Universität Hamburg 2 Juli 2014 2 / 26 Inhaltsverzeichniss 1 IPv4 und IPv6 Wie werden Daten verschickt? 2 3 Verbindungsaufbau ohne

Mehr

Projekt: Web-Proxy. Foliensatz 9: Projekt Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2015

Projekt: Web-Proxy. Foliensatz 9: Projekt Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2015 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Programmieren 2 12 Netzwerke

Programmieren 2 12 Netzwerke Programmieren 2 12 Netzwerke Bachelor Medieninformatik Sommersemester 2015 Dipl.-Inform. Ilse Schmiedecke schmiedecke@beuth-hochschule.de 1 Motivation Datenaustausch zwischen Programmen Spielstand Chat

Mehr

Netzwerke, Kapitel 3.1

Netzwerke, Kapitel 3.1 Netzwerke, Kapitel 3.1 Fragen 1. Mit welchem anschaulichen Beispiel wurde das OSI-Schichtenmodell erklärt? Dolmetscher 2. Was versteht man unter Dienstprimitiven? Request, Indication, Response, Confirm

Mehr

ARP, ICMP, ping. Jörn Stuphorn Bielefeld, den 4. Mai Mai Universität Bielefeld Technische Fakultät

ARP, ICMP, ping. Jörn Stuphorn Bielefeld, den 4. Mai Mai Universität Bielefeld Technische Fakultät ARP, ICMP, ping Jörn Stuphorn stuphorn@rvs.uni-bielefeld.de Universität Bielefeld Technische Fakultät TCP/IP Data Link Layer Aufgabe: Zuverlässige Übertragung von Rahmen über Verbindung Funktionen: Synchronisation,

Mehr

Verteilte Systeme. Organisatorisches. Secure Identity Research Group

Verteilte Systeme. Organisatorisches. Secure Identity Research Group Verteilte Systeme Organisatorisches Tutorium Do, 8:30-10:00 Philipp Schmidt (ab 28.4.) Fr, 14:15-16:00 Andreas Nüßlein (ab 29.4.) Verteilte Systeme Klassifizierung von Kommunikationsdiensten II Fehlertypen

Mehr

UDP User Datagramm Protokoll

UDP User Datagramm Protokoll UDP User Datagramm Protokoll Marco Gerland Janina de Jong Internet Protokolle WS 03 / 04 1/31 Einführung IP Datagramme werden durchs Internet geroutet abh. von der IP Adresse Anhand der Ziel IP Adresse

Mehr

Zusammenfassung für CS-Prüfung 3 Seite 1. CS-Zusammenfassung für Prüfung 3 vom Im Beispiel gibt es 3 Deadlocks

Zusammenfassung für CS-Prüfung 3 Seite 1. CS-Zusammenfassung für Prüfung 3 vom Im Beispiel gibt es 3 Deadlocks Zusammenfassung für CS-Prüfung 3 Seite 1 CS-Zusammenfassung für Prüfung 3 vom 24. 6. 2002 Deadlock Im Beispiel gibt es 3 Deadlocks Unterschied zwischen Blockieren, Verklemmen und Verhungenrn= -> Band 1

Mehr

6.1.5 Verzeichnisdateien

6.1.5 Verzeichnisdateien 6.1.5 Verzeichnisdateien Anstelle eines zentralen Verzeichnisses: Menge von Verzeichnisdateien (directory files), die selbst in Verzeichnissen verzeichnet sind, alle ab einem Wurzelverzeichnis (root directory)

Mehr

Programmierung mit sockets

Programmierung mit sockets Netzwerk-Programmierung Programmierung mit sockets Jan Krueger jkrueger@cebitec.uni-bielefeld.de Alexander Sczyrba asczyrba@cebitec.uni-bielefeld.de Übersicht Datentypen und Konvertierung Minimaler Client

Mehr

Das ISO / OSI -7 Schichten Modell

Das ISO / OSI -7 Schichten Modell Begriffe ISO = Das ISO / OSI -7 Schichten Modell International Standardisation Organisation Dachorganisation der Normungsverbände OSI Model = Open Systems Interconnection Model Modell für die Architektur

Mehr

Kommunikationsnetze. 2. Direkte TCP/IP-Verbindungen 2.1 Höhere Programmiersprachen

Kommunikationsnetze. 2. Direkte TCP/IP-Verbindungen 2.1 Höhere Programmiersprachen Kommunikationsnetze Gliederung 1. Socket-Programmierung unter C 2. Socket-Programmierung unter Java Gliederung Berkeley Sockets (Erste freie TCP/IP-Implementierung in Berkeley UNIX): SOCKET: Erzeugen eines

Mehr

Rechnernetze II SS 2015. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404

Rechnernetze II SS 2015. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Rechnernetze II SS 2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 14. Juli 2015 Betriebssysteme / verteilte Systeme Rechnernetze

Mehr

Lösung Übungszettel 6

Lösung Übungszettel 6 Lösungen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik SS 03 AG Betriebssysteme FB3 Kirsten Berkenkötter Lösung Übungszettel 6 1 Aufgabe 1: Parallel-Server 1.1 Client #include

Mehr

Rechnernetze II WS 2012/2013. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404

Rechnernetze II WS 2012/2013. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Rechnernetze II WS 2012/2013 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 5. Mai 2014 Betriebssysteme / verteilte Systeme Rechnernetze

Mehr

Netzwerk-Programmierung. Netzwerke. Alexander Sczyrba Michael Beckstette.

Netzwerk-Programmierung. Netzwerke. Alexander Sczyrba Michael Beckstette. Netzwerk-Programmierung Netzwerke Alexander Sczyrba Michael Beckstette {asczyrba,mbeckste}@techfak.uni-bielefeld.de 1 Übersicht Netzwerk-Protokolle Protkollfamilie TCP/IP Transmission Control Protocol

Mehr

10. Vorlesung Betriebssysteme

10. Vorlesung Betriebssysteme Dr. Christian Baun 10. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 1/63 10. Vorlesung Betriebssysteme Dr. Christian Baun Hochschule Mannheim Fakultät für Informatik wolkenrechnen@gmail.com Dr.

Mehr

Rechnernetze & Verteilte Systeme (T) Netzprogrammierung/Sockets (P)

Rechnernetze & Verteilte Systeme (T) Netzprogrammierung/Sockets (P) Systempraktikum im Wintersemester 2009/2010 (LMU): Vorlesung vom 07.01. Foliensatz 7 Rechnernetze & Verteilte Systeme (T) Netzprogrammierung/Sockets (P) Thomas Schaaf, Nils gentschen Felde Lehr- und Forschungseinheit

Mehr

Betriebssysteme Kap. 5: Netzwerkmanagement

Betriebssysteme Kap. 5: Netzwerkmanagement Betriebssysteme Kap. 5: Netzwerkmanagement Winfried E. Kühnhauser Wintersemester 2017/18 Winfried E. Kühnhauser CSI Technische Universität Ilmenau www.tu-ilmenau.de Betriebssysteme, WS 2017/18 wk - 1 -

Mehr

Betriebssysteme Kap. 5: Netzwerkmanagement

Betriebssysteme Kap. 5: Netzwerkmanagement Betriebssysteme Kap. 5: Netzwerkmanagement Winfried E. Kühnhauser Wintersemester 2016/17 Winfried E. Kühnhauser CSI Technische Universität Ilmenau www.tu-ilmenau.de Betriebssysteme, WS 2016/17 wk - 1 -

Mehr

DIAMETER Base Protocol (RFC3588)

DIAMETER Base Protocol (RFC3588) Base Protocol (RFC3588) ist eine (nicht rückwärtskompatible) Fortentwicklung des RADIUS Protokolls (Remote Authentication Dial In User Service, RFC2865). Die wichtigsten Unterschiede sind: Es benutzt einen

Mehr

Das TCP/IP Schichtenmodell

Das TCP/IP Schichtenmodell Das TCP/IP Schichtenmodell Protokolle Bei der TCP/IP Protokollfamilie handelt sich nicht nur um ein Protokoll, sondern um eine Gruppe von Netzwerk- und Transportprotokollen. Da die Protokollfamilie Hardwareunabhängig

Mehr

Betriebssysteme Kap. 5: Netzwerkmanagement

Betriebssysteme Kap. 5: Netzwerkmanagement Betriebssysteme, WS 2018/19 wk - 1 - Betriebssysteme Kap. 5: Netzwerkmanagement Winfried E. Kühnhauser Wintersemester 2018/19 Winfried E. Kühnhauser CSI Technische Universität Ilmenau www.tu-ilmenau.de

Mehr

Praktikum Rechnernetze Aufgabe 3: Messung mit dem Protokollanalyzer

Praktikum Rechnernetze Aufgabe 3: Messung mit dem Protokollanalyzer Praktikum Rechnernetze Aufgabe 3: Messung mit dem Protokollanalyzer 16. Mai 2001 Niels-Peter de Witt Matrikelnr. 2083921 Karsten Wolke Matrikelnr. 2083967 Helge Janicke Matrikelnr. 2083973 1 Rechnernetze

Mehr

Klausur Betriebssysteme I

Klausur Betriebssysteme I Prof. Dr. Michael Jäger FB MNI Klausur Betriebssysteme I 9.3.2000 Bitte bearbeiten Sie die Aufgaben soweit wie möglich auf den Aufgabenblättern. Nachname: Matrikelnummer: Vorname: Semester: Bitte beantworten

Mehr

Programmieren mit sockets

Programmieren mit sockets Netzwerk-Programmierung Programmieren mit sockets Sven Hartmeier shartmei@techfak.uni-bielefeld.de Übersicht Datentypen und Konversionsfunktionen minimaler Client minimaler Server Netzwerk-Programmierung

Mehr

Computer and Communication Systems (Lehrstuhl für Technische Informatik) Socket-Programmierung

Computer and Communication Systems (Lehrstuhl für Technische Informatik) Socket-Programmierung Computer and Communication Systems (Lehrstuhl für Technische Informatik) Socket-Programmierung [RN] Sommer 2012 Socket - Programmierung 1 Überblick Allgemeine Grundlagen für die Socket-Programmierung Elementare

Mehr

Betriebssysteme Teil 11: Interprozess-Kommunikation

Betriebssysteme Teil 11: Interprozess-Kommunikation Betriebssysteme Teil 11: Interprozess-Kommunikation 19.12.15 1 Übersicht Grundbegriffe Shared Memory Pipelines Messages Ports Sockets 2 Grundbegriffe Interprocess-Kommunikation = Austausch von Daten über

Mehr

Version: Das Versionsfeld gibt an ob es sich um IPv4 oder um IPv6 handelt.

Version: Das Versionsfeld gibt an ob es sich um IPv4 oder um IPv6 handelt. Folie 1 Folie 2 Folie 3 Version: Das Versionsfeld gibt an ob es sich um IPv4 oder um IPv6 handelt. IHL (IP Header Length) Im IHL-Feld wird ein vielfaches von 32 Bit angegeben. Die Summe gibt die Größe

Mehr

Transmission Control Protocol (TCP)

Transmission Control Protocol (TCP) Transmission Control Protocol (TCP) Verbindungsorientiertes Protokoll, zuverlässig, paketvermittelt stream-orientiert bidirektional gehört zur Transportschicht, OSI-Layer 4 spezifiziert in RFC 793 Mobile

Mehr

Computeranwendung in der Chemie Informatik für Chemiker(innen) 4. Netzwerke

Computeranwendung in der Chemie Informatik für Chemiker(innen) 4. Netzwerke Computeranwendung in der Chemie Informatik für Chemiker(innen) 4. Netzwerke Jens Döbler 2003 "Computer in der Chemie", WS 2003-04, Humboldt-Universität VL4 Folie 1 Grundlagen Netzwerke dienen dem Datenaustausch

Mehr

Verteilte Systeme. Protokolle. by B. Plattner & T. Walter (1999) Protokolle-1. Institut für Technische Informatik und Kommunikationsnetze

Verteilte Systeme. Protokolle. by B. Plattner & T. Walter (1999) Protokolle-1. Institut für Technische Informatik und Kommunikationsnetze Protokolle Protokolle-1 Kommunikationssubsystem Ein System, welches innerhalb eines verteilten Systems für den Nachrichtentransport zwischen Kommunikationspartnern (= Prozesse) zuständig ist (Hardware

Mehr

Netzwerk-Programmierung. Netzwerke.

Netzwerk-Programmierung. Netzwerke. Netzwerk-Programmierung Netzwerke Alexander Sczyrba Michael Beckstette {asczyrba,mbeckste}@techfak.uni-bielefeld.de Übersicht Netzwerk-Protokolle Protkollfamilie TCP/IP Transmission Control Protocol (TCP)

Mehr

Socket-Programmierung unter Java

Socket-Programmierung unter Java Socket-Programmierung unter Java 1 - Grundlagen: Datenströme Datenströme JAVA unterscheidet Streams und Reader/Writer Zur Dateneingabe: InputStream oder Reader Zur Datenausgabe: OutputStream oder Writer

Mehr

Virtuelle Kommunikation. Anwender. Physikalische Kommunikation. "Veredelung" des Dienstes

Virtuelle Kommunikation. Anwender. Physikalische Kommunikation. Veredelung des Dienstes 5. OSI Referenzmodell der ISO 5.1. Einteilung in Schichten Architektur, Aufgabenverteilung & Protokolle in Kommunikationsyst. Gruppierung zusammengehöriger Funktionen. Sieben aufeinander aufbauende Ebenen.

Mehr

Netzwerke. Netzwerk-Programmierung. Sven Hartmeier.

Netzwerke. Netzwerk-Programmierung. Sven Hartmeier. Netzwerk-Programmierung Netzwerke Sven Hartmeier shartmei@techfak.uni-bielefeld.de Übersicht Netzwerk-Protokolle Protokollfamilie TCP/IP Transmission Control Protocol (TCP) erste Schritte mit sockets Netzwerk-Programmierung

Mehr

FAQ 12/2015. PROFINET IO- Kommunikation. https://support.industry.siemens.com/cs/ww/de/view/

FAQ 12/2015. PROFINET IO- Kommunikation. https://support.industry.siemens.com/cs/ww/de/view/ FAQ 12/2015 PROFINET IO- Kommunikation https://support.industry.siemens.com/cs/ww/de/view/109479139 Dieser Beitrag stammt aus dem Siemens Industry Online Support. Es gelten die dort genannten Nutzungsbedingungen

Mehr

Programmieren mit sockets

Programmieren mit sockets Netzwerk - Programmierung Programmieren mit sockets Alexander Sczyrba asczyrba@cebitec.uni-bielefeld.de Madis Rumming mrumming@cebitec.uni-bielefeld.de Übersicht Datentypen und Konversionsfunktionen minimaler

Mehr

Mobilkommunikationsnetze - TCP/IP (und andere)-

Mobilkommunikationsnetze - TCP/IP (und andere)- - TCP/IP (und andere)- Vorlesung Inhalt Überblick ISO/OSI vs. TCP/IP Schichten in TCP/IP Link Layer (Netzzugang) Network Layer (Vermittlung) Transport Layer (Transport) Application Layer (Anwendung) Page

Mehr

2 Typische Angriffe NS-2.1 1

2 Typische Angriffe NS-2.1 1 2 Typische Angriffe NS-2.1 1 Angreifer benötigt Kenntnisse von - Betriebssystemen - Netzinfrastruktur Rechte, typischerweise Systemzugang als - Normalbenutzer - Systemverwalter - Systementwickler physischen

Mehr

J-1 Überblick. 1 Binden von Sockets. Besprechung 6. Aufgabe (jsh) Domain, z. B. (PF_ = Protocol Family) Byteorder bei Netzwerkkommunikation

J-1 Überblick. 1 Binden von Sockets. Besprechung 6. Aufgabe (jsh) Domain, z. B. (PF_ = Protocol Family) Byteorder bei Netzwerkkommunikation J 8. Übung J 8. Übung J-1 Überblick #include int socket(int domain, int type, int protocol); Besprechung 6. Aufgabe (jsh) Byteorder bei Netzwerkkommunikation Domain, z. B. (PF_ = Protocol

Mehr

Referat: Netzwerkprogrammierung in Java

Referat: Netzwerkprogrammierung in Java 1.)ISO/OSI und Internet Referenzmodell Referat: Netzwerkprogrammierung in Java ISO/OSI 7 Schichtenmodell (1-Bitübertragung, 2-Sicherung, 3-Netzwerk, 4-Transport, 5-Sitzung, 6- Darstellung, 7-Anwendung)

Mehr

Operating Systems Principles. Eventund. Threadbasierte Programmierung

Operating Systems Principles. Eventund. Threadbasierte Programmierung Humboldt University Computer Science Department Operating Systems Principles Eventund Threadbasierte Programmierung Aufgabe 2 Wochen Zeit zum Lösen der Aufgaben Aufgabenstellung auf der SAR Website Abgabe

Mehr

1.) Nennen Sie Aufgaben und mögliche Dienste der Transportschicht (Transport Layer) des ISO/OSI-Schichtenmodells.

1.) Nennen Sie Aufgaben und mögliche Dienste der Transportschicht (Transport Layer) des ISO/OSI-Schichtenmodells. Übung 7 1.) Nennen Sie Aufgaben und mögliche Dienste der Transportschicht (Transport Layer) des ISO/OSI-Schichtenmodells. 2.) Charakterisieren Sie kurz das User Datagram Protokoll (UDP) aus der Internetprotokollfamilie

Mehr

Python Programmierung. Dipl.-Ing.(FH) Volker Schepper

Python Programmierung. Dipl.-Ing.(FH) Volker Schepper Python Programmierung String Operationen i = 25 text1 = "Ich bin " text2 = " Jahre alt" print (text1 + str(i) + text2) print ("ich bin", i, "Jahre alt") print ("ich bin %s Jahre alt" % i) >>> Ich bin 25

Mehr

Rechnernetze II SS Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404

Rechnernetze II SS Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404 Rechnernetze II SS 2016 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 19. Juli 2016 Betriebssysteme / verteilte Systeme Rechnernetze

Mehr

Netzwerkprogrammierung unter Linux und UNIX

Netzwerkprogrammierung unter Linux und UNIX Netzwerkprogrammierung unter Linux und UNIX Bearbeitet von Stefan Fischer, Walter Müller 2. Auflage 1999. Buch. XII, 228 S. Hardcover ISBN 978 3 446 21093 6 Format (B x L): 14 x 20,9 cm Gewicht: 329 g

Mehr

Verteilte Systeme Kapitel 4: Realisierung von Netzwerkdiensten

Verteilte Systeme Kapitel 4: Realisierung von Netzwerkdiensten Verteilte Systeme Kapitel 4: Realisierung von Netzwerkdiensten Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Inhaltsüberblick der Vorlesung

Mehr

OSI Referenzmodell. Aufbau des Referenzmodells Funktionsweise

OSI Referenzmodell. Aufbau des Referenzmodells Funktionsweise OSI Referenzmodell Aufbau des Referenzmodells Funktionsweise Aufbau des Referenzmodells POEL 2007 OSI Referenzmodell 2 Physical Layer Schicht 1 Diese Schicht definiert das reine physikalische Übertragungsmedium

Mehr

TCP/IP-Protokollfamilie

TCP/IP-Protokollfamilie TCP/IP-Protokollfamilie Internet-Protokolle Mit den Internet-Protokollen kann man via LAN- oder WAN kommunizieren. Die bekanntesten Internet-Protokolle sind das Transmission Control Protokoll (TCP) und

Mehr

Client/Server-Systeme

Client/Server-Systeme Client/Server-Systeme Prof. Dr.-Ing. Wilhelm G. Spruth WS 2003/2004 Teil 2 Sockets cs 0200 ww6 wgs 09-96 Literatur Socket-Schnittstelle J. Martin, J. Leben: TCP/IP Netzwerke. Prentice Hall, 1994, Kapitel

Mehr

Rechnernetze I SS Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 23.

Rechnernetze I SS Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 23. Rechnernetze I SS 2012 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 23. ärz 2012 Betriebssysteme / verteilte Systeme Rechnernetze I (1/12) i Rechnernetze

Mehr

.NET Networking 1. Proseminar Objektorientiertes Programmieren mit.net und C# Matthias Jaros. Institut für Informatik Software & Systems Engineering

.NET Networking 1. Proseminar Objektorientiertes Programmieren mit.net und C# Matthias Jaros. Institut für Informatik Software & Systems Engineering .NET Networking 1 Proseminar Objektorientiertes Programmieren mit.net und C# Matthias Jaros Institut für Informatik Software & Systems Engineering Agenda Motivation Protokolle Sockets Anwendung in.net

Mehr

Dynamische Datenstrukturen Jiri Spale, Algorithmen und Datenstrukturen - Dynamische Datenstrukturen 1

Dynamische Datenstrukturen Jiri Spale, Algorithmen und Datenstrukturen - Dynamische Datenstrukturen 1 Dynamische Datenstrukturen 2006 Jiri Spale, Algorithmen und Datenstrukturen - Dynamische Datenstrukturen 1 Dynamische Datenstrukturen Keine konstante Kardinalität Speicherzuweisung erfolgt während der

Mehr

Internetanwendungstechnik (Übung)

Internetanwendungstechnik (Übung) Internetanwendungstechnik (Übung) Sockets Stefan Bissell, Gero Mühl Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik Kommunikations- und Betriebssysteme (KBS) Einsteinufer 17, Sekr.

Mehr

Kapitel 4: Design von Client/Server-Software. Middleware in Java vieweg 2005 Steffen Heinzl, Markus Mathes

Kapitel 4: Design von Client/Server-Software. Middleware in Java vieweg 2005 Steffen Heinzl, Markus Mathes Kapitel 4: Design von Client/Server-Software Definition: Client und Server Client Ein Client ist ein Dienstnutzer, der von einem Server aktiv einen Dienst anfordert und anschließend darauf wartet, dass

Mehr

5 Verteilte Algorithmen. vs5 1

5 Verteilte Algorithmen. vs5 1 5 Verteilte Algorithmen vs5 1 Charakterisierung eines verteilten Systems? Prozesse als Systemkomponenten: Spezifikation eines Prozesses (Vgl. Spezifikation eines ADT) syntaktisch: z.b. Ports oder Parameter

Mehr

5.) Nach erfolgreicher Übertragung entfernt der Sender seinen Daten-Rahmen vom Ring. Wodurch kann ein verwaister Rahmen entstehen?

5.) Nach erfolgreicher Übertragung entfernt der Sender seinen Daten-Rahmen vom Ring. Wodurch kann ein verwaister Rahmen entstehen? Übung 5 1.) In einem CSMA/CD-LAN mit einer Übertragungsrate von 10 Mbps soll der erste Bit- Schlitz nach jeder erfolgreichen Rahmenübertragung für den Empfänger reserviert sein, der dann den Kanal besetzt

Mehr

Netzwerk Teil 1 Linux-Kurs der Unix-AG

Netzwerk Teil 1 Linux-Kurs der Unix-AG Netzwerk Teil 1 Linux-Kurs der Unix-AG Andreas Teuchert 5. Januar 2015 Wiederholung: OSI-Schichtenmodell Layer 1: Physical Layer (Kabel, Funk) Layer 2: Data Link Layer (Ethernet, WLAN) Layer 3: Network

Mehr

Netzwerke. Netzwerk - Programmierung. Alexander Sczyrba. Madis Rumming.

Netzwerke. Netzwerk - Programmierung. Alexander Sczyrba. Madis Rumming. Netzwerk - Programmierung Netzwerke Alexander Sczyrba asczyrba@cebitec.uni-bielefeld.de Madis Rumming mrumming@cebitec.uni-bielefeld.de Übersicht Netzwerk-Protokolle Protokollfamilie TCP/IP Transmission

Mehr

Gesamtdokumentation. Autoren: Thomas Merkel (19868) Janik Lemcke (19865) Arkadiusz Rawa (19893) Letzte Änderung: Freitag, 28.

Gesamtdokumentation. Autoren: Thomas Merkel (19868) Janik Lemcke (19865) Arkadiusz Rawa (19893) Letzte Änderung: Freitag, 28. Team: sysopr12 Autoren: (19868) Janik Lemcke (19865) (19893) Letzte Änderung: Freitag, 28. Januar 2011 Janik Lemcke Seite 1 von 20 Inhaltsverzeichnis 1 Konzeption...3 1.1 RFC...3 1.1.1 Szenario...3 Login...3

Mehr

Peer-to-Peer- Netzwerke

Peer-to-Peer- Netzwerke Peer-to-Peer- Netzwerke Christian Schindelhauer Sommersemester 2006 2. Vorlesung 27.04.2006 schindel@informatik.uni-freiburg.de 1 Organisation Web-Seite http://cone.informatik.uni-freiburg.de/ teaching/vorlesung/peer-to-peer-s96/

Mehr

DMXface ACTIVE SEND mit RS232

DMXface ACTIVE SEND mit RS232 DMXface ACTIVE SEND mit RS232 Für DMXface FW Version ab 5.07 Allgemeines... 2 Einstellen des ACTIVE Send für RS232 Port 1... 3 Daten Sendungen vom DMXface... 4 DMX Daten... 4 Infrarot Empfang... 4 Änderungen

Mehr

Java und Netzwerkkommunikation

Java und Netzwerkkommunikation Java und Netzwerkkommunikation Ziel: Kommunikation über Rechnergrenzen hinweg Grundlagen Sockets in Java Java-Netzwerk-Einführung Seite 1 Grundbegriffe Senden und Empfangen von Daten! Frau B Herr A Sender

Mehr

Verteidigung der Diplomarbeit 3D-Netzwerk-Visualisierung

Verteidigung der Diplomarbeit 3D-Netzwerk-Visualisierung 1 Verteidigung der Diplomarbeit 3D-Netzwerk-Visualisierung Stefan Ziegler 11. März 2005 INHALTSVERZEICHNIS 2 Inhaltsverzeichnis 1 Aufgabe 3 2 Umsetzung 4 3 Struktur 5 4 Paketverarbeitung 8 5 Grafische

Mehr

Einführung in die Netzwerktechnik

Einführung in die Netzwerktechnik eurogard Gesellschaft für industrielle Nachrichtentechnik und Datenbankentwicklung mbh Kaiserstraße 100 52134 Herzogenrath www.eurogard.de Ich Falk Schönfeld Seit 10 Jahren bei eurogard GmbH Entwickler

Mehr

2. Architektur von Kommunikationssystemen

2. Architektur von Kommunikationssystemen 2. Architektur von Kommunikationssystemen 2.1 2.2 TCP/IP-basierte Protokollarchitektur Digitale Kommunikationssysteme Prof. Dr. Habermann / Dr. Hischke 12-01 / 1 Das OSI-Referenzmodell wird ausführlich

Mehr