Networking. Mauro Migliardi Ph. D.



Documenti analoghi
Connessioni di rete. Progetto di reti di Calcolatori e Sistemi Informatici - Stefano Millozzi. PdR_ Stefano Millozzi

Telematica II 12. Esercitazione/Laboratorio 4

10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress.

Datagrammi. NOTA: MulticastSocket estende DatagramSocket

Corso di Reti di Calcolatori

Java Socket LSO 2008

Corso di Reti di Calcolatori. Datagrammi

LABORATORIO di Reti di Calcolatori

Cenni di programmazione distribuita in C++ Mauro Piccolo

TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI

Modello client-server

Socket & RMI Ingegneria del Software - San Pietro

Architettura Client-Server

Altri tipi di connessione

Il modello client/server consente a due processi di condividere risorse e di cooperare per il raggiungimento di un obiettivo.

Introduzione alle applicazioni di rete

Esercitazione [6] Client/Server con Socket

appunti delle lezioni Architetture client/server: applicazioni client

Parte II: Reti di calcolatori Lezione 12

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

(VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ-DYD 6RFNHWGLWLSRGDWDJUDP

Applicazioni web. Parte 5 Socket

J+... J+3 J+2 J+1 K+1 K+2 K+3 K+...

Applicazioni distribuite

Reti di Calcolatori:

Programmare con le Socket TCP in java. 2: Application Layer 1

Programmare con le Socket

Esercizi (1-2): da: TCP/IP Sockets in C (Donahoo-Calvert)

Transmission Control Protocol

UDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing

Laboratorio di reti I: Il pacchetto java.net

Parte II: Reti di calcolatori Lezione 10

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Reti di Calcolatori. Il software

I Socket. Laboratorio Software M. Grotto R. Farina

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Sicurezza nelle applicazioni multimediali: lezione 9, firewall. I firewall

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Programmare con le Socket TCP

Programmazione dei socket con TCP #2

Controllo Winsock di Visual Basic

Parte II: Reti di calcolatori Lezione 11 (35)

! " # $ % &! ' ( ) (! 9 :! ; " / < 0 < "! 9 0 & %. 0 % & =! < 0 ; <. < > > <! 9?! ". & %!

Lezione n.2 20/2/2006

UnicastRemoteObject. Massimo Merro Programmazione di Rete 103 / 124

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 7 Febbraio 2005, ore 15.00

PARTE 1 richiami. SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet )

HTTP adaptation layer per generico protocollo di scambio dati

Parte II: Reti di calcolatori Lezione 13 (37)

Protocolli Internet. Canale di comunicazione. canale di comunicazione

Tesina esame Programmazione di Sistemi Mobile realizzata da Roberto Giuliani matricola Sockets e DatagramSocket

Reti di Telecomunicazione Lezione 8

PROVA FINALE Ingegneria del software

INFORMATICA DISTRIBUITA. lez 4 Livello applicazione

Reti di Telecomunicazione Lezione 6

Laboratorio di Programmazione in rete

ProgettAzione tecnologie in movimento - V anno Unità 4 - Realizzare applicazioni per la comunicazione in rete

Applicazioni web. Parte 10 Socket. Alberto Ferrari

DATAGRAM SOCKET. Angelastro Sergio Diomede Antonio Viterbo Tommaso

Socket in Java. Modelli di comunicazione

Multicast e IGMP. Pietro Nicoletti

12.5 UDP (User Datagram Protocol)

Informatica per la comunicazione" - lezione 8 -

TEST DI RETI DI CALCOLATORI I (9400N) anno 1999/2000

Protocolli di Comunicazione

ESERCITAZIONI DI LABORATORIO 1

Inizializzazione degli Host. BOOTP e DHCP

P2-11: BOOTP e DHCP (Capitolo 23)

Introduzione. Concetti Preliminari Obiettivi. Portscanning. Scan Detector. Modello TCP/IP Three Way Handshake

Sockets in Java. Lorenzo Gallucci

Socket. Nei sistemi operativi moderni i servizi disponibili in rete si basano principalmente sul modello client/server.

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella

TECN.PROG.SIST.INF. I Socket Roberta Gerboni

MODELLI ISO/OSI e TCP/IP

Laboratorio Reti di Calcolatori Laurea Triennale in Comunicazione Digitale. Anno Accademico 2013/2014

Introduzione ai Web Services Alberto Polzonetti

La sicurezza nel Web

Protocollo UDP. User Data Protocol

COMUNICAZIONE TRA PROCESSI REMOTI IN UNIX

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.

FTP. Appunti a cura del prof. ing. Mario Catalano

Introduzione ai (Java) socket

Creare connessioni cifrate con stunnel

Informatica per la comunicazione" - lezione 9 -

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 3 a lezione a.a. 2009/2010 Francesco Fontanella

Topologia delle reti. Rete Multipoint: ogni nodo è connesso agli altri tramite nodi intermedi (rete gerarchica).

Letture consigliate: W. Richard. Stevens, UNIX Network Programming, volume 1 Networking APIs: Socket and XTI, second edition, ed.

(VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ-DYD 6RFNHWGLWLSRVWUHDP

Standard: OSi vs TCP/IP. Il livello di trasporto. TCP e UDP. TCP: Transmission Control Protocol. TCP: funzionalità

Contesto: Peer to Peer

Programmazione di rete in Java Java fornisce per la gestione della comunicazione le classi del package di networking java.net

Laboratorio di Programmazione in Rete

PROGRAMMARE IN JAVA VOLUME II

Il client deve stampare tutti gli eventuali errori che si possono verificare durante l esecuzione.

2.1 Configurare il Firewall di Windows

Reti di Calcolatori. Master "Bio Info" Reti e Basi di Dati Lezione 2

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

Corso di Reti di Calcolatori T

Socket API per il Multicast

CORSO DI RETI SSIS. Lezione n.2. 2 Novembre 2005 Laura Ricci

Transcript:

Software Architectures Networking Mauro Migliardi Ph. D.

A word of wisdom The word networking strikes fear in the hearts of many programmers. Fear not! Using the networking capabilities provided in the Java environment is quite easy. Ci credete? Incredibile, ma vero. 2

Networking Package java.net Networking in Java e basato sullo stack TCP/IP Internet oriented OSI? Chi era costui? Accesso a TCP e UDP TCP == Stream UDP == datagram 3

java.net non da accesso a protocolli di livello piu basso (e.g. IP) da accesso a protocollo di livello piu alto (e.g. HTTP) supporto SSL con package presenti in distribuzione standard Javax.net.ssl 4

Classi del package java.net Le principali sono InetAddress Inet4Address, Inet6Address SocketAddress InetSocketAddress Socket ServerSocket DatagramSocket DatagramPacket MulticastSocket DatagramSocketImpl SocketImpl 5

Classe InetAddress La classe incapsula le informazioni necessarie a identificare un computer su Internet nome indirizzo IP non ha costruttore metodi static getbyname e getallbyname 6

Classe InetSocketAddress Constructor Summary InetSocketAddress(InetAddress addr, int port) Creates a socket address from an IP address and a port number. InetSocketAddress(int tadd tport) Creates a socket address where the IP address is the wildcard address and the port number a specified value. InetSocketAddress(String hostname, int port) Creates a socket address from a hostname and a port number. Method Summary static InetSocketAddress createunresolved(string host, int port) Creates an unresolved socket address from a hostname and a port number. boolean equals(object obj) Compares this object against the specified object. InetAddress getaddress() Gets the InetAddress. String gethostname() Gets the hostname. int getport() Gets the port number. boolean isunresolved() Checks whether the address has been resolved or not. 7

Classe SocketImpl classe astratta che definisce le funzionalita richieste ad un socket praticamente la libreria socket del C le classi concrete non danno accesso a tutte solo ai sottoinsiemi specifici per l implementazione e.g. Socket!= DatagramSocket 8

Classe Socket e la classe concreta che incapsula il socket di tipo stream solo AF_Inet, non ci sono socket AF_UNIX e solo socket client permette di iniziare una connessione ad un host su un port permette di specificare interfaccia e port locali 9

Classe Socket (Cont.) Inizialmente supportava solo opzioni dimensione buffers opzione linger opzione no-delay opzione bloccante con timeout La versione corrente supporta molte piu opzioni JavaDocs 10

ServerSocket e il socket che permette di accettare connessioni supporta accept permette di specificare port e interfaccia locale binding permette di specificare il numero di connessioni appese listen (backlog) 11

DatagramSocket socket per il protocollo UDP connectionless permette di specificare il port locale permette di specificare l interfaccia locale supporta connect per limitare la destinazione cui si inviano o da cui si ricevono datagram 12

MulticastSocket estende il DatagramSocket aggiungendo la capacita di ascoltare su gruppi join leave indirizzi multicast (classe D da 224.0.0.1 a 239.255.255.255) aggiunge i metodi per gestire Time To Live dei datagram 13

Connessione di sockets due socket (stream) connessi costituiscono un canale bidirezionale coppia InputStream/OutputStream p agli stream di basso livello si possono sovrapporre tutti gli stream del package di I/O XDR stream di caratteri Oggetti!!! 14

Serializzazione su rete ObjectInputStream ObjectOutputStream ATTENZIONE: l ordine di apertura e importante Due coppie di ObjectStream costituiscono un canale full duplex su cui e possibile inviare oggetti completi overhead, performance inferiori i i agli stream non OO molto dipendente dalla banda di memoria assimmetrico: ricezione piu pesante della trasmissione 15

Programmazione Client/Server datagram byte stream XDR caratteri oggetti 16