Internetanwendungstechnik (Übung)
|
|
|
- Tobias Lehmann
- vor 9 Jahren
- Abrufe
Transkript
1 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. EN6, Berlin
2 Programmierschnittstelle für TCP/IP? > Protokolle (z.b. TCP, UDP) definieren > Aufbau der Nachrichten > Ablauf und Regeln des Nachrichtenaustausches > Protokolle (z.b. TCP, UDP) definieren nicht > Schnittstelle zur Anwendung (API) TCP UDP IP Anwendung Schnittstelle (API) Internetanwendungstechnik (Übung), Sommersemester
3 Sockets als Programmierschnittstelle > Socket (engl. Steckdose) als zentrale Abstraktion > Berkley Sockets / BSD Socket API > Ursprung in 4.2BSD Unix Operating System (1983) > De facto Standard Netzwerk API > Teil des Portable Operating System Interface (POSIX) Standards Unterstützung durch fast aller Betriebssysteme > Menge von C Funktionen und Datentypen > Senden/Empfangen von Daten > Verbindungsmanagement > Tiefgreifendere Einstellungen (Puffergrößen, etc.) > Anbindungen für viele andere Sprachen (z.b. auch Java) Internetanwendungstechnik (Übung), Sommersemester
4 Internetanwendungstechnik (Übung), Sommersemester Socket-Programmierung mit Java
5 Socket Programmierung mit Java > Paket java.net enthält unter anderem folgende Klassen > Socket TCP Client Socket > ServerSocket TCP Server Socket > DatagramSocket UDP Socket > MulticastSocket UDP Multicast Socket > DatagramPacket UDP Datagram Internetanwendungstechnik (Übung), Sommersemester
6 Internetanwendungstechnik (Übung), Sommersemester Struktur einer TCP-basierten Anwendung Client Server create socket create server socket connect write data to stream wait for connect read data from stream read data from stream write data to stream
7 Internetanwendungstechnik (Übung), Sommersemester Echo Client mit TCP public class EchoClient { public static void main(string[] args) throws IOException { Socket echosocket = new Socket(EchoServer.HOST_NAME, EchoServer.PORT_NUM); PrintWriter out = new PrintWriter( echosocket.getoutputstream(), true); BufferedReader in = new BufferedReader( new InputStreamReader(echoSocket.getInputStream())); BufferedReader stdin = new BufferedReader( new InputStreamReader(System.in)); String userinput; while ((userinput = stdin.readline())!= null) { out.println(userinput); System.out.println("echo: " + in.readline()); out.close(); in.close(); stdin.close(); echosocket.close();
8 Internetanwendungstechnik (Übung), Sommersemester Echo Server mit TCP public class EchoServer { public static final int PORT_NUM = 6789; public static final String HOST_NAME = "localhost"; public static void main(string args[]) throws IOException { ServerSocket serversocket = new ServerSocket(PORT_NUM); Socket socket = null; EchoServerThread echoserverthread = null; while (true) { socket = serversocket.accept(); echoserverthread = new EchoServerThread(socket);
9 Internetanwendungstechnik (Übung), Sommersemester Echo Server Thread mit TCP public class EchoServerThread extends Thread { private Socket socket; public EchoServerThread(Socket socket) { this.socket = socket; this.start(); public void run() { try { BufferedReader br = new BufferedReader( new InputStreamReader(socket.getInputStream())); PrintWriter out = new PrintWriter(new OutputStreamWriter( socket.getoutputstream()), true); String line = null; while ((line = br.readline())!= null) { out.println(line); catch (Exception ex) { ex.printstacktrace();
10 Internetanwendungstechnik (Übung), Sommersemester Struktur einer UDP-basierten Anwendung Client Server create UDP socket create UDP socket create datagram create datagram buffer send datagram create datagram buffer receive datagram create datagram receive datagram send datagram
11 Internetanwendungstechnik (Übung), Sommersemester Date Client mit UDP public class DateClient { public static void main(string[] args) throws IOException { DatagramSocket socket = new DatagramSocket(); byte[] buf = new byte[256]; InetAddress address = InetAddress.getByName(DateServer.HOST_NAME); DatagramPacket packet = new DatagramPacket(buf, buf.length, address, 4445); socket.send(packet); packet = new DatagramPacket(buf, buf.length); socket.receive(packet); String received = new String(packet.getData()); System.out.println("Date: " + received); socket.close();
12 Internetanwendungstechnik (Übung), Sommersemester Date Server mit UDP public class DateServer { public static final String HOST_NAME = "localhost"; public static void main(string[] args) throws IOException { while (true) { byte[] buf = new byte[256]; DatagramSocket socket = new DatagramSocket(4445); DatagramPacket packet = new DatagramPacket(buf, buf.length); socket.receive(packet); String dstring = new Date().toString(); buf = dstring.getbytes(); InetAddress address = packet.getaddress(); int port = packet.getport(); packet = new DatagramPacket(buf, buf.length, address, port); socket.send(packet); socket.close();
13 Internetanwendungstechnik (Übung), Sommersemester Socket-Programmierung mit C
14 Protokolle und Socket-Typen Verschiedene Protokollfamilien > PF_INET > IPv4 Internet Protokolle > PF_INET6 > IPv6 Internet Protokolle > PF_IPX > Novells Protokolle > PF_UNIX, PF_LOCAL > Lokale Kommunikation > PF_APPLETALK > Appletalk Verschiedene Socket-Typen > SOCK_STREAM > Verbindungsorientiert > Bytestrom > SOCK_DGRAM > Verbindungslos > Nachrichten > SOCK_SEQPACKET > Verbindungsorientiert > Nachrichten > SOCK_RAW > Zugriff auf tiefere Schichten > Privilegierter Benutzer Nicht alle Socket-Typen für alle Protokollfamilien verfügbar! Internetanwendungstechnik (Übung), Sommersemester
15 Socket-Operationen > Operationen für TCP/UDP Client/Server > socket Erzeugt einen neuen Socket C/S > bind Bindet Socket an Portnummer C/S > close Schließt einen Socket C/S > Operationen für TCP > listen Bereitschaft zum Verbindungsaufbau S > accept Annehmen einer neuen Verbindung S > connect Verbindung aufbauen C > send Daten senden C/S > recv Daten empfangen C/S > shutdown Verbindungsabbau C/S > Operationen für UDP > sendto Daten an entfernten Endpunkt senden > recvfrom Daten von entferntem Endpunkt empfangen Internetanwendungstechnik (Übung), Sommersemester
16 Erzeugen eines Sockets > int socket (int domain, int type, int protocol); > Erzeugt neuen Socket und liefert zugehörigen Socket-Deskriptor > domain: Protokollfamilie (z.b. PF_INET, PF_INET4) > type: Socket-Typ (z.b. SOCK_STREAM, SOCK_DGRAM) > protocol: Protokollnummer (z.b. TCP, UDP) > return: Socket-Deskriptor bei Erfolg, sonst -1 > Beispiel TCP > int sd = socket (PF_INET, SOCK_STREAM, 0); > Protokoll unspezifiziert Wahl des Default-Protokolls für gegebene Kombination aus Protokollfamilie und Socket-Typ Internetanwendungstechnik (Übung), Sommersemester
17 Internetanwendungstechnik (Übung), Sommersemester Socket-Adressen > Bestimmen Adresse des Kommunikationsendpunktes > struct sockaddr { unsigned short sa_family; // Adressfamilie (AF_xxx) char sa_data[14]; // 14 Bytes Protokolladresse ; > Angepasste Typen für einzelne Protokollfamilien (z.b. IPv4) > struct sockaddr_in { short int sin_family; // immer AF_INET unsigned short int sin_port; // Port-Nummer struct in_addr sin_addr; // IP-Adresse unsigned char sin_zero[8]; // Gleiche Größe wie sockaddr ;
18 Verbindungsaufbau > Passives Verbinden (Server) > Warten auf Verbindungsaufbau durch Client > Socket dient nur der Annahme der Verbindungswünsche > Erzeugung eines neuen Sockets für jede angenommene Client- Verbindung > Aktives Verbinden (Client) > Explizite Verbindung zu bekannten (meist entfernten) Kommunikationsendpunkt > Lokale Adresse (meist) beliebig Internetanwendungstechnik (Übung), Sommersemester
19 Binden von Sockets (Server) > int bind (int sd, struct sockaddr *my_addr, socklen_t addrlen); > Weist dem Socket einen Kommunikationsendpunkt (lokale Adresse) zu > sd: Socket-Deskriptor > my_addr: lokale Socket-Adresse (Kommunikationsendpunkt) > addrlen: Größe von addr in Bytes > return: 0 bei Erfolg, sonst -1 Internetanwendungstechnik (Übung), Sommersemester
20 Warten auf Verbindungswünsche (Server) > int listen(int sd, int backlog); > Wartet auf Verbindungswünsche am Socket > sd: Socket-Deskriptor > backlog: max. Anzahl noch nicht angenommener Verbindungswünsche (max. Länge der Warteschlange) > return: 0 bei Erfolg, sonst -1 Internetanwendungstechnik (Übung), Sommersemester
21 Annehmen von Verbindungen (Server) > int accept(int sd, struct sockaddr *addr, socklen_t *addrlen); > Annehmen von Verbindungswünschen an Socket > Erzeugen eines neuen Sockets für angenommene Verbindung > sd: Socket-Deskriptor (Socket im Listen-Mode) > addr: Leere Socket-Addressstruktur für Adresse des Partners > addrlen: Größe von addr in Bytes > return: bei Erfolg den Socket-Deskriptor der angenommenen Verbindung, sonst -1 Internetanwendungstechnik (Übung), Sommersemester
22 Verbindungsaufbau (Client) > int connect(int sd, const struct sockaddr *addr, socklen_t addrlen); > Aufbauen einer Verbindung zu einem (entfernten) Socket > socket: Socket-Deskriptor > addr: Socket-Adresse des Partners zu dem die Verbindung aufgebaut werden soll > addrlen: Größe von addr in Bytes Internetanwendungstechnik (Übung), Sommersemester
23 Ablauf des Verbindungsaufbaus Server > sd = socket( ); > addr.sin_family = AF_INET; addr.sin_addr.s_addr = INADDR_ANY; addr.sin_port = htons(80); memset( &(addr.sin_zero), '\0', 8); > bind(sd, addr, sizeof(addr)); > listen(sd, 10); > cd = accept(sd, caddr, &addrlen) Client > sd = socket( ); > addr.sin_family = AF_INET; addr.sin_addr.s_addr = inet_addr(" "); addr.sin_port = htons(80); memset( &(addr.sin_zero), '\0', 8); > connect(sd, &addr, sizeof(addr) ); Internetanwendungstechnik (Übung), Sommersemester
24 Senden von Daten > ssize_t send(int sd, const void *buf, size_t len, int flags); > Senden einer Nachricht oder Menge von Bytes > sd: Socket-Deskriptor > buf: Sendepuffer mit zu übertragenden Daten > len: Anzahl der zu sendenden Bytes > flags: z.b. MSG_DONTWAIT, MSG_MORE > return: Anzahl gesendeter Bytes bei Erfolg, sonst -1 > ssize_t sendto(, const struct sockaddr *to, socklen_t tolen); > Sendet Nachricht an Zielendpunkt (z.b. bei UDP) > Weitere Parameter analog zu send > to: Socket-Adresse des Ziels > tolen: Größe von to in Bytes > Alternativ: write( ); > Nutzung des Socket-Deskriptors als File-Deskriptor Internetanwendungstechnik (Übung), Sommersemester
25 Empfangen von Daten > ssize_t recv(int sd, void *buf, size_t len, int flags); > Empfängt Nachricht oder Menge von Bytes > sd: Socket-Deskriptor > buf: Puffer zum Ablegen der empfangenen Daten > len: Anzahl zu empfangener Bytes > flags: z.b. MSG_DONTWAIT, MSG_PEEK > return: Anzahl der tatsächlich gelesenen Daten, sonst -1 > ssize_t recvfrom(, struct sockaddr *from, socklen_t *fromlen); > Empfängt Daten von angegebenen Endpunkt > Weitere Parameter analog zu recv > from: Socket-Adresse des Senders > fromlen: Größe von from in Bytes > Alternativ: read( ) > Nutzung des Socket-Deskriptors als File-Deskriptor Internetanwendungstechnik (Übung), Sommersemester
26 Verbindungsabbau > int shutdown(int sd, int how); > (Einseitiges) Schließen einer bidirektionalen Verbindung > sd: Socket-Deskriptor > how: Bestimmt den zu schließenden Teil der Verbindung > SHUT_RD: Unterbindet weitere Empfangsoperationen > SHUT_WR: Unterbindet weitere Sendeoperationen > SHUT_RDWR: Schließt gesamte Verbindung > return: 0 bei Erfolg, sonst -1 Internetanwendungstechnik (Übung), Sommersemester
27 Freigabe > int close(int sd); > Freigabe belegter Betriebsmittel > sd: Socket-Deskriptor (File-Deskriptor) > return: 0 bei Erfolg, sonst -1 Internetanwendungstechnik (Übung), Sommersemester
28 Nützliches > gethostbyname( ); > Namensauflösung des Hostnamens via DNS > Liefert IP-Adresse > getsockname( ); > Liefert lokale Socket-Adresse (Kommunikationsendpunkt) > getpeername( ); > Liefert entfernte Socket-Adresse (Kommunikationsendpunkt) > getsockopt( ); / setsockopt( ); > Lesen/Setzen verschiedener Optionen > Optionen meist protokollspezifisch Internetanwendungstechnik (Übung), Sommersemester
29 Nützliches > poll( ); > Abfragen des Zustandes (I/O-Bereitschaft) eines Sockets > select( ); > Auswahl des nächsten bereiten Sockets > Header Files > sys/types.h > sys/socket.h > netinet/in.h > arpa/inet.h > netdb.h Internetanwendungstechnik (Übung), Sommersemester
30 Internetanwendungstechnik (Übung), Sommersemester Literatur > Socket-Programmierung mit Java > Java Tutorial, Trail: Coustom Networking > C-Programmierung > M. Werner. C-Crashcourse. (Unix-Praktikum im WS 2006/07). > B. Hall. Beej's Guide to C Programming. > Netzwerk-Programmierung > Unix Manual Pages. > B. Hall. Beej's Guide to Network Programming Using Internet Sockets. > MSDN Library. Windows Sockets 2.
31 Internetanwendungstechnik (Übung), Sommersemester Fragen?
Rechnernetze II SS 2015. Betriebssysteme / verteilte Systeme [email protected] Tel.: 0271/740-4050, Büro: H-B 8404
Rechnernetze II SS 2015 Betriebssysteme / verteilte Systeme [email protected] Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 14. Juli 2015 Betriebssysteme / verteilte Systeme Rechnernetze
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
Tafelübung zu BS 4. Interprozesskommunikation
Tafelübung zu BS 4. Interprozesskommunikation Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund [email protected] http://ess.cs.uni-dortmund.de/~os/
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
Byteorder bei Netzwerkkommunikation Netzwerkprogrammierung - Sockets Netzwerkprogrammierung - Verschiedenes
U9 9. Übung U9 9. Übung Besprechung Aufgabe 7 (lash) Informationen zu Aufgabe 8 (simail) Byteorder bei Netzwerkkommunikation Netzwerkprogrammierung - Sockets Netzwerkprogrammierung - Verschiedenes U9.1
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
Netzwerkprogrammierung & Threads
& Threads Praktikum aus Softwareentwicklung 2 Netzwerp. - 1 & Threads URL, URLConnection, UDP, TCP Threads Parallele Programme, Synchronisation, Netzwerp. - 2 Grundlagen (1/2) Kommunikation zwischen verteilten
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
# Socketprogrammierung
# Socketprogrammierung Socketprogrammierung in C/C++ Christian Benjamin Ries 21.02.2008 Dipl.-Ing. (FH) Christian Benjamin Ries 1 # Agenda Ziel Einführung Netzwerkprotokolle Was sind Sockets? Funktionen
U8-3 Netzwerkkommunikation und Byteorder. U8-2 Evaluation. U8-4 Sockets. U8-1 Überblick. Wiederholung: Byteorder. 0 1 2 3 14 a2 b5 c8 0x14a2b5c8
U8 8. Übung U8 8. Übung U8-3 Netzwerkkommunikation und Byteorder U8-3 Netzwerkkommunikation und Byteorder U8-1 Überblick Wiederholung: Byteorder Besprechung der Miniklausur Online-Evaluation big endian
Programmieren II. Sockets. Vorlesung 16. Handout S. 1. Dr. Klaus Höppner. Hochschule Darmstadt Sommersemester 2010. Sockets.
Programmieren II Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2010 1 / 19 2 / 19 Über einen Socket kann eine Anwendung die Implementierung des Netzwerkprotokolls des darunter liegenden Betriebssystems
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
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
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
Programmieren II. Timer. Vorlesung 11. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011. Timer. Sockets.
Programmieren II Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 / 26 Timer Sockets SMTP-Client 2 / 26 Timer Mit einem Timer können bestimmte Aktionen periodisch wiederkehrend durchgeführt
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)
TCP-Sockets in Java und C. Verteilte Systeme Hochschule Regensburg Vorlesung 4, 25.04.2012 Universitätsstraße 31, 93053 Regensburg
TCP-Sockets in Java und C Hochschule Regensburg Vorlesung 4, 25.04.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Ziel: Threads sollen unabhängig von ihrer Position kommunizieren
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
1. Netzwerkprogrammierung für mobile Geräte
1. Netzwerkprogrammierung für mobile Geräte Lernziele 1. Netzwerkprogrammierung für mobile Geräte Themen/Lernziele: Konzepte der verbindungslosen Kommunikation beherrschen Client/Server-Anwendungen auf
Programmiermethodik. Übung 13
Programmiermethodik Übung 13 Sommersemester 2010 Fachgebiet Software Engineering [email protected] Agenda Vorstellung Musterlösung HA9 Mancala Showroom Client/Server Kommunikation in Java
Client-Server TCP/IP - Kodierung
Client-Server TCP/IP - Kodierung Die klassen Ein (engl. Sockel) ist eine bidirektionale Netzwerk-Kommunikationsschnittstelle, deren Verwaltung das Betriebssystem übernimmt. Die Kombination aus IP-Adresse
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
An Open Interface for Network Programming under Microsoft Windows. DI. Dr. Peter René Dietmüller
Windows Sockets An Open Interface for Network Programming under Microsoft Windows DI. Dr. Peter René Dietmüller Institut für Informationsverarbeitung und Mikroprozessortechnik Johannes Kepler Universität
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
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
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
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
Netzwerkprogrammierung mit Sockets und C. Ulrich Vogel
Netzwerkprogrammierung mit Sockets und C Ulrich Vogel Netzwerkprogrammierung mit Sockets und C von Ulrich Vogel Dieses Tutorial ist eine Einführung in die Netzwerkprogrammierung mit Hilfe von Sockets.
Themen. Web Service - Clients. Kommunikation zw. Web Services
Themen Web Service - Clients Kommunikation zw. Web Services Bisher: Implementierung einer Java Anwendung und Bereitstellung durch Apache Axis unter Apache Tomcat Java2WSDL Erzeugen einer WSDL-Datei zur
Dienstspezifikation nach RFC 2396 193
Dienstspezifikation nach RFC 2396 193 Für die Kombination aus Rechnernamen (oder alternativ einer IP-Adresse) und einer Portnummer gibt es mit RFC 2396 einen Standard: hostport host [ : port ] host hostname
Network Communication. Dr. Jürgen Eckerle WS 06/07
Network Communication Dr. Jürgen Eckerle WS 06/07 1 Thread-Programmierung ist wichtig um Nebenläufigkeit bei der Netzwerkprogrammierung zu realisieren Typisches Muster beim Server: Server-Handler. Der
2 Verbindungslose Kommunikation mit UDP
2 Verbindungslose Kommunikation mit UDP Das User Datagram Protocol (UDP) stellt grundlegende Funktionen zur Verfügung, um mit geringem Aufwand Daten zwischen kommunizierenden Prozessen austauschen zu können.
TCP und UDP Sockets in Java
TCP und UDP Sockets in Java Grundlegende Mechanismen Server reserviert Port: Klient: - Server: bind Server nimmt Verbindungswünsche an Klient: - Server: listen Klient möchte sich verbinden Klient: connect;
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
Verbindungen zu mehreren Clients. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 23: Netzwerkprogrammierung/ Kommunikation 2
Universität Osnabrück 1 Verbindungen zu mehreren Clients 3 - Objektorientierte Programmierung in Java Vorlesung 23: Netzwerkprogrammierung/ Kommunikation 2 Wie könnte das bereits vorgestellte Programm
Einführung in die Netzwerkprogrammierung mit Sockets und C
Einführung in die Netzwerkprogrammierung mit Sockets und C 1 BrB/V0.1 1 Vorwort Dieses Tutorial ist eine Einführung in die Netzwerkprogrammierung mit Hilfe von Sockets und der Programmiersprache C. Als
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
Verteilte Systeme - 1. Übung
Verteilte Systeme - 1. Übung Dr. Jens Brandt Sommersemester 2011 1. Rechnerverbünde Kommunikationsverbund: Beispiele: E-Mail (SMTP, POP/IMAP), Instant Messaging (XMPP, IRC, ICQ,...), Newsgroups (NNTP)
Netzwerkprogrammierung mit C++
Netzwerkprogrammierung mit C++ Bernhard Trummer Linux User Group Graz für die Linuxtage03 [email protected] 24. April 2003 Typeset by FoilTEX Übersicht System Calls: Wie erzeugt man Sockets? Wie
FOPT 5: Eigenständige Client-Server-Anwendungen (Programmierung verteilter Anwendungen in Java 1)
1 FOPT 5: Eigenständige Client-Server-Anwendungen (Programmierung verteilter Anwendungen in Java 1) In dieser Kurseinheit geht es um verteilte Anwendungen, bei denen wir sowohl ein Client- als auch ein
Socket-Programmierung unter Java
Datenströme -Programmierung unter Java 1 - Grundlagen: Datenströme JAVA unterscheidet Streams und Reader/Writer Zur Dateneingabe: InputStream oder Reader Zur Datenausgabe: OutputStream oder Writer Verwende
Beispiel Time Client/Server
Beispiel Time Client/Server /** * * Programmbeschreibung: * --------------------- * Dieses Programm ermittelt über eine TCP/IP-Verbindung die Uhrzeit eines * entfernten Rechners, wobei es sowohl die Rolle
Berkeley Sockets 187
Berkeley Sockets 187 Für TCP/IP gibt es zwei Schnittstellen, die beide zum POSIX-Standard gehören: Die Berkeley Sockets wurden 1983 im Rahmen von BSD 4.2 eingeführt. Dies war die erste TCP/IP-Implementierung.
Beispiel Block 1 Programmierrichtlinien und Fehlerbehandlung Argumentbehandlung Signale Sockets Übungsaufgaben. Benedikt Huber WS 2011/2012
Beispiel Block 1 Programmierrichtlinien und Fehlerbehandlung Argumentbehandlung Signale Sockets Übungsaufgaben Benedikt Huber WS 2011/2012 1 Organisatorisches Vorlesung am Dienstag den 18.10.2011 entfällt
für IPv4 und IPv6 (Mitfinanziert durch die KTI)
Socketprogrammierung für IPv4 und IPv6 (Mitfinanziert durch die KTI) Andreas Hofmann, [email protected] April, 2004 Inhaltsverzeichnis 1 Einleitung 4 1.1 Dokumenteninfo 4 1.2 Homepage 4 2 Daten-Strukturen
Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.
Einfache Ein- und Ausgabe mit Java 1. Hallo-Welt! Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. /** Die Klasse hello sendet einen
Teil 1: Ein einfacher Chat
Teil 1: Ein einfacher Chat Verteilte Systeme / Chat Der Weg ist das Ziel Im Laufe dieses Projektes werden Sie schrittweise ein Chat-Programm entwickeln. Dabei werden Sie einiges über den Aufbau des Internets
Netzprogrammierung: Kommunikation über Sockets
Netzprogrammierung: Kommunikation über Sockets Robert Tolksdorf und Peter Löhr Überblick Internet-Dienste und -Protokolle IP-Adressen und Rechnernamen Portnummern Kommunikation über Sockets TCP UDP Multicast
TCP/IP Programmierung. C# TimeServer Java6 TimeClient
TCP/IP Programmierung C# TimeServer Java6 TimeClient Stand 19.10.11 21:24:32 Seite 1 von 16 Inhaltsverzeichnis Erläuterung...3 Software...3 C#TimeServer...4 Klasse ServerThread...6 Starten und Beenden...7
PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker
Netzwerkprogrammierung PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker Steffen Helke, Marcus Mews Technische Universität Berlin Fachgebiet Softwaretechnik 17. Juni 2013 Übersicht Grundlagen
Kontrollfragen: Internet
Kontrollfragen: Internet 1. Zählen Sie mindestens 5 Internet-Dienste auf. 2. Was ist eine virtuelle Verbindung? Vergleichen Sie eine virtuelle TCP/IP-Verbindung mit der Leitungsvermittlung (analoge Telefonverbindung).
U7-1 Hinweise zur Evaluation. U7-2 Netzwerkkommunikation und Byteorder. U7-3 Sockets. Evaluation. Frage "eigener Aufwand zur Vor- und Nachbereitung"
U7 Interprozesskommunikation mit Sockets U7 Interprozesskommunikation mit Sockets U7-1 Hinweise zur Evaluation U7-1 Hinweise zur Evaluation Evaluation Frage "eigener Aufwand zur Vor- und Nachbereitung"
Android VPN. Am Beispiel eines Netzwerktunnels für das Domain Name System (DNS) 1 Andiodine - Android DNS-VPN
Android VPN Am Beispiel eines Netzwerktunnels für das Domain Name System () 1 Inhalt VPN Framework in Android Übersicht zu Iodine Funktionsweise Demonstration 2 VPN und Android Verfügbar seit Android 4.0
Informatik B. Vorlesung 16 Netzwerkprogrammierung. Dr. Ralf Kunze
Vorlesung 16 Netzwerkprogrammierung 1 Netzwerkprogrammierung Mit Java-Programmen ist es möglich, Verbindungen über Netze aufzubauen Die Basisfunktionalität zur Netzwerkprogrammierung stellt das Paket java.net
15 Transportschicht (Schicht 4)
Netzwerktechnik Aachen, den 16.06.03 Stephan Zielinski Dipl.Ing Elektrotechnik Horbacher Str. 116c 52072 Aachen Tel.: 0241 / 174173 [email protected] zielinski.isdrin.de 15 Transportschicht (Schicht
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
Klausur zur Vorlesung Verteilte Systeme im SS 2007 Prof. Dr. Odej Kao 24. Juli 2007
Klausur zur Vorlesung Verteilte Systeme im SS 2007 Prof. Dr. Odej Kao 24. Juli 2007 Name: Vorname: Matrikelnummer: Studiengang: E-Mail: Schreiben Sie zunächst sofort Ihren Namen und Matrikelnummer auf
Internetanwendungstechnik (Übung)
Internetanwendungstechnik (Übung) IPv6 Stefan Bissell, Gero Mühl Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik Kommunikations- und Betriebssysteme (KBS) Einsteinufer 17, Sekr.
Java Reflection. Meta-Programmierung mit der java.lang.reflection API. Prof. Dr. Nikolaus Wulff
Java Reflection Meta-Programmierung mit der java.lang.reflection API. Prof. Dr. Nikolaus Wulff Java Reflection Die Java Reflection API liefert per Introspection Informationen über Klassen => Meta-Daten.
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
Remote Method Invocation
Remote Method Invocation Aufruf von Methoden über die Grenzen der VM hinweg. Javaprozesse der rufenden und gerufenen Methode können auf verschiedenen Hosts laufen. Eine RMI-Applikation besteht aus dem
Einführung in die Programmierung
Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In
4.1 Sockets in der Programmiersprache C
Parallelverarbeitung Folie 4-1 4 Die Socket-Schnittstelle 4.1 Sockets in der Programmiersprache C Sockets wurden zum ersten Mal im Jahr 1982 mit BSD-UNIX 4.1c für VAX-Rechner der ehemaligen Firma Digital
Praktikum Datenbanken und verteilte Systeme Sommersemester 2015
Sommersemester 2015 Tutorial 1 Datenbankzugriff für die Server-Anwendung 2 1.1 Squirrel SQL-Client 2 1.2 Java-Client mit JDBC unter Eclipse 2 2 Entwicklung einfacher Client-Server-Anwendungen 4 2.1 Entwicklung
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
