Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-1
1011010110
01100 01100
0101101011
Reti di Calcolatori
IL LIVELLO APPLICAZIONIDNS, SNMP e SMTP
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-2
1011010110
01100 01100
0101101011
Applicazioni di Rete
Domain Name System (DNS)
Simple Network Manag. Protocol (SNMP)
Posta elettronicaMultipurpose Internet Mail Extensions (MIME)
Simple Mail Manag. Protocol (SMTP)
Post Office Protocol (POP3)
Interactive Mail Access Protocol (IMAP)
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL
1011010110
01100 01100
0101101011
Livello Applicativo
Porte TCP
Indirizzo IP138.190.12.34
Indirizzi Ethernet00-21-52-21-C6-84
telnetwww
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-4
1011010110
01100 01100
0101101011
Applicazioni di Rete
Nel Livello Applicazioni abbiamo programmi applicativi e servizi usati dagli utenti della rete. Esempi significativi:
Domain Name System (DNS)Risoluzione dei nomi delle risorse sulla rete.SNMP (Simple Network Management Protocol)Gestione di risorse di rete.POP3 (Post Office Protocol) e IMAP (Interactive Mail Access Protocol)Accesso remoto alle caselle di posta elettronica.Simple Mail Transfer Protocol (SMTP) Gestione della posta elettronica.FTP (File Transfer Protocol)Trasferimento file remoti.HTTP (HyperText Transfer Protocol)Server WWW e browsers Web.Telnet, Usenet news, ssh, ...
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-5
1011010110
01100 01100
0101101011
Domain Name System (DNS)
Il DNS è un database distribuito che permette di convertire i nomi simbolici degli host negli indirizzi IP numerici.
www.deis.unical.itCorrisponde a
160.97.27.7
Gli utenti usano nomi simbolici ma per comunicare sulla rete servono gli indirizzi IP numerici.Quando gli host sono pochi la tabella di conversione può essere memorizzata localmente ad ogni host (es, /etc/hosts in Unix).Il DNS è distribuito: ogni sito mantiene il suo database relativo agli hostlocali eseguendo su una macchina il server DNS che può essere interrogato da altri siti su Internet.
Gli indirizzi delle macchine in rete sono definiti in formato numerico, ma sono più facili da usare se sono indicati come delle stringhe. Sono più facili da ricordare e da capire.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-6
1011010110
01100 01100
0101101011
Lo Spazio dei Nomi in Internet
I nomi in Internet sono organizzati in modo gerarchico.I nodi rappresentano domini e le foglie domini senza sottodomini.
it
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-7
1011010110
01100 01100
0101101011
I domini di Internet
I nomi dei componenti sono stringhe (case-insensitive) fino a 63
caratteri mentre il nome completo di un cammino non può
superare 255 caratteri.
Un nome di dominio assoluto termina con un punto (es.
www.unical.it.).
I nomi che non terminano con un punto sono relativi ad un
contesto particolare.
Ciascun dominio controlla l’allocazione dei suoi sottodomini.
Un dominio è organizzato in base ad esigenze organizzative e non
ad aspetti fisici della rete.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-8
1011010110
01100 01100
0101101011
I Domini Generici
In genere non sono riferiti ad una posizione geografica.
Sono in fase di attivazione nuovi domini generici (es. info)
Alcuni paesi inseriscono sottodomini equivalenti a quelli generici (es, .ac.au e .com.au - istituzioni accademiche e commerciali dell’Australia)
Il NIC gestisce il primo livello; i sottolivelli sono gestiti localmente (gestione DNS servers, assegnazione nomi, ecc.).
com organizzazioni commercialiedu università USAgov organizzazioni governative USAint organizzazioni internazionalimil rete militare USAnet fornitori di servizi di reteorg organizzazioni no profit
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-9
1011010110
01100 01100
0101101011
Descrittori di Risorsa
Ciascun dominio può essere associato ad un insieme di descrittori di risorse (resource records).
Quando un DNS riceve un nome di dominio per la sua risoluzione invia in risposta i descrittori di risorsa associati a quel nome.
Un DNS mappa nomi di domini in descrittori di risorsa.
Un descrittore di risorsa è una quintupla:
NomeDominio TempoDiVita Tipo Classe Valore
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-10
1011010110
01100 01100
0101101011
Tipi di Descrittore
AIndirizzo IPNSName server. Permettono di specificare i name server dei domini radice.PTRalias o nome associato a un indirizzo IP (risoluzione inversa).CNAMEContiene il nome reale (canonico) per nomi che sono alias di hostes. wwwinfo.deis.unical.it CNAME si.deis.unical.it.HINFOInformazioni sull’host (CPU, Sistema Operativo, ...)MXScambio posta (Mail Exchange). Permette di definire nomi virtuali o un host alternativo per la consegna della posta elettronica, es. deis.unical.it MX mail.deis.unical.it
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-11
1011010110
01100 01100
0101101011
Name Server e Zone
Una zona è un sottoalbero del DNS amministrato separatamente.Per evitare problemi lo spazio dei nomi DNS è suddiviso in zone non sovrapposte.Ogni zona contiene un name server primario e uno o più name server secondari.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-12
1011010110
01100 01100
0101101011
Name Server
Un Name Server ha autorità per una o più zone.
I Name Server secondari ottengono le informazioni dal NameServer primario interrogandolo periodicamente, mentre i NameServer primari leggono le loro informazioni da un file.
Quando si aggiunge un nuovo host nella zona si aggiunge una riga alla tabella presente sul Name Server primario.
I messaggi per il servizio DNS sono inseriti in pacchetti UDP o TCP.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-13
1011010110
01100 01100
0101101011
Il Resolver
Quando un’applicazione deve convertire un nome di host nell’indirizzo IP o viceversa, chiama una procedura resolver che contatta il DNS server del suo dominio.
Quando un resolver chiede di risolvere il nome al name server locale:
Il nome dell’host è locale, viene restituito il record di autorità.
Il nome è relativo ad un host di un’altra zona viene effettuata una interrogazione ricorsiva su più server per ottenere l’indirizzo (a meno che non sia nella cache).
In Java la procedura è incapsulata nella classe InetAddress.
nslookup è un programma client che permette di esplorare la tabella del Name Server.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-14
1011010110
01100 01100
0101101011
Interrogazione Ricorsiva
Si propaga la richiesta al name server di livello superiore:
La richiesta non si propaga ai livelli superiori se un name server ha la risposta nella cache. Le risposte presenti nella cache non sono con autorità in quanto potrebbe esserci incoerenza con il vero valore.I record sono inseriti nella cache con un time-to-live per indicare il valore temporale della loro validità.
si.deis.unical.it
www.unito.it ?
deis.unical.it unical.it it unito.it
OK
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-15
1011010110
01100 01100
0101101011
Simple Network Management Protocol
SNMP definisce un protocollo e un insieme di meccanismi per la gestione e il controllo di una rete di calcolatori.
Il modello SNMP (v2) consiste di:
Nodi di rete gestiti.
Stazioni di gestione.
Informazioni di gestione.
Un protocollo di gestione.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-16
1011010110
01100 01100
0101101011
Simple Network Management Protocol
Nodi di rete gestiti: host, router, bridge, dischi, stampanti, ...
Stazioni di gestione: host con compiti di gestione.
Informazioni di gestione: insiemi di oggetti che compongono la MIB (Management Information Base).
Un protocollo di gestione.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-17
1011010110
01100 01100
0101101011
Simple Network Management Protocol
Le Stazioni di gestione eseguono dei processi di gestione che comunicano con processi sui nodi gestiti detti agenti SNMP.
Un agente notifica alle stazioni di gestioni gli eventi anomali tramite una trap SNMP, mentre le stazioni eseguono il polling SNMP per rilevare eventuali malfunzionamenti.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-18
1011010110
01100 01100
0101101011
Simple Network Management Protocol
Un processo di gestione su una stazione invia una richiesta di informazioni ad un agente.
L’agente dovrà replicare con le informazioni richieste.
I dati spediti utilizzano la sintassi di trasferimento Abstract SyntaxNotation (ANS.1) che specifica gli oggetti e le regole di codifica.
Il protocollo SNMP definisce sette messaggi da inviare:Get-request richiede il valore di una o più variabili.Get-next-request richiede il valore della variabile successiva.Get-bulk-request richiede una tabellaSet-request aggiorna una o più variabiliInform-request descrizione della MIB localeSnmpV2-trap segnalazione di una trap da agente a gestoreReply messaggio di risposta.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-19
1011010110
01100 01100
0101101011
La Posta Elettronica o Email
Questa applicazione permette di scambiare dati tra due o più utenti identificati univocamente sulla rete.
Gli standard RFC 821 e RFC 822 proposte da ARPANET sono stati accettati a scapito di altre proposte come X.400 proposto dal CCITT.
Due sottosistemi:Useragent : agenti utenti che permettono di inviare e ricevere messaggi di posta.
Transferagent : agenti di trasferimento che si occupano di far arrivare i messaggi dal mittente al destinatario.
Questi implementano cinque funzioni base:composizione trasferimento
notifica visualizzazione
eliminazione
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-20
1011010110
01100 01100
0101101011
Formato dei Messaggi
(a) Posta normale (b) Posta elettronica
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-21
1011010110
01100 01100
0101101011
La Posta Elettronica
Agenti utenteProgrammi per leggere, comporre e gestire la posta e le mailboxes (es. Eudora, Netscape Messenger, Outlook, Pine, Mailtool)Possono utilizzare protocolli per la gestione di mailbox remote (POP3, IMAP).
Agenti di trasferimentoGestiscono il trasferimento dei messaggi dalla sorgente alla destinazione e la ricezione dei messaggi sui server di posta.Sono programmi di sistema che sono eseguiti in background e usano il protocollo SMTP per trasferire i messaggi sulla rete (es. sendmail, postfix).
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-22
1011010110
01100 01100
0101101011
Trasferimento di Email
Nodo Client
mittente agenteutente
coda dellaposta da spedire
agente ditrasferimento
destinatario agenteutente
mailboxesdegli utenti
agente ditrasferimento
Nodo Server
connessione TCPtramite la porta 25
SMTP
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-23
1011010110
01100 01100
0101101011
Indirizzi di Posta Elettronica
Hanno il formato
Gli indirizzi sono risolti dal DNS che individua il server a cui inviare il messaggio (eventualmente usa una richiesta MX)Il server di posta riceve i messaggi e li accoda nella mailboxdell’utente.La mailbox è un file di testo in una directory specifica nel server (es. in Unix può essere /spool/mail/utente )
L’utente può accedere alla posta localmente leggendo il file mailbox. Il client per la lettura della posta provvede a individuare i singoli messaggi nella mailbox.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-24
1011010110
01100 01100
0101101011
Campi Intestazione
To:Indirizzo DNS del destinatario (o destinatari).Cc:Copia in carta carbone (indirizzi “per conoscenza”)Bcc:Copia in carta carbone con indirizzi invisibili ai riceventi.From:indirizzo di ha scritto il messaggio (necessario).Sender:indirizzo di chi ha inviato il messaggio (opzionale).
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-25
1011010110
01100 01100
0101101011
Campi Intestazione (cont.)
Received:Indica l’agente che ha ricevuto il messaggio insieme a un timestamp. Viene inserito da ogni agente durante il trasferimento. Si puo’ cosi ricostruire il percorso della email.Date:Data e ora in cui il messaggio è stato inviatoReply-to:Indirizzo al quale inviare le risposte (reply) se diverso da From.Message-Id:Numero unico che individua il messaggioSubject:Argomento del messaggio
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-26
1011010110
01100 01100
0101101011
Un Esempio di Intestazione
Received: from haldo.deis.unical.it (haldo.deis.unical.it [160.97.27.7])by si.deis.unical.it (8.11.4/8.11.4) with ESMTP id f6VN4VL04035 for <[email protected]>; Tue, 31 Jul 2001 22:04:31 -0100 (GMT) Received: from mail.cs.umn.edu (mail.cs.umn.edu [128.101.33.100])by haldo.deis.unical.it (8.9.1b+Sun/8.9.1) with ESMTP id WAA01060 for <[email protected]>; Tue, 31 Jul 2001 22:00:22 +0100 (WET DST) Received: from cs.umn.edu (nt20.cs.umn.edu [160.94.178.220])by mail.cs.umn.edu (8.11.3/8.11.3) with ESMTP id f6VK2vI02949; Tue, 31 Jul 2001 15:03:07 -0500 (CDT) Message-ID: <[email protected]> Date: Tue, 31 Jul 2001 15:02:57 -0500From: Michael Stewart <[email protected]> X-Mailer: Mozilla 4.7 [en] (WinNT; I) X-Accept-Language: en To: Domenico Talia <[email protected]> CC: [email protected] Subject: Talia - Kluwer Book Contribution (Complimentary Copy of Book
Address)
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-27
1011010110
01100 01100
0101101011
Testo delle Email
La posta è inviata come testo ASCII usando un codice a 7-bit trasmesso su 8 bit con il bit più significativo a 0.
Non permette di trasmettere caratteri non ASCII con messaggi di email senza una opportuna codifica.
La soluzione è stata quella di usare il formato MIME per permettere alle email di contenere e trasportare caratteri non ASCII.
MIME definisce una struttura al corpo del messaggio e definisce come codificare i messaggi non ASCII.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-28
1011010110
01100 01100
0101101011
MIME
Multipurpose Internet Mail Extensions (RFC 1521)Aggiunge dei campi di intestazione per definire la struttura del corpo del messaggio (è gestita dall’agente utente)
Mime-Version: versione MIMEContent-Type: tipo del messaggioContent-Transfer-Encoding: modo di trasferimentoContent-ID: identificatore unicoContent-Description: contenuto del messaggio
I tipi di contenuto sono organizzati in categorie predefinite.Ad es., text/plain, text/html, image/gif, multipart/mixed,application/octet-stream.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-29
1011010110
01100 01100
0101101011
Esempi di Intestazioni MIME
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Length: 1240 Status: RO
MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 354
MIME-Version: 1.0 Content-Type: text/html; charset="iso-8859-1" X-Priority: 3 X-MSMail-Priority: Normal Content-Length: 3705
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-30
1011010110
01100 01100
0101101011
Il protocollo SMTP definisce la sequenza di comandi (inviati in ASCII) necessaria per il trasferimento dei messaggi usando una connessione TCP sulla porta 25 della macchina destinataria.Insieme minimale di comandi usati dal client:
Il Protocollo SMTP
HELO <host>“Saluta” il server.MAIL From: <indirizzo>indica il mittente del messaggio.RCPT To: <indirizzo>Indica il destinatario.DATAInvio corpo del messaggio terminato da un punto (.) su una lineaQUITChiude la connessione.
“busta”
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-31
1011010110
01100 01100
0101101011
Gateway di Posta Elettronica
Quando le macchine che si scambiano messaggi di posta elettronica non supportano tutte connessioni TCP occorre far usodi un gateway al livello delle applicazioni.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-32
1011010110
01100 01100
0101101011
Caselle Postali Remote
Se non si usa una macchina che implementa il protocollo SMTP si può fare uso della posta elettronica tramite l’accesso a caselle di posta remote.
I protocolli di trasmissione che si usano in questo caso per spedire e ricevere messaggi di posta tramite caselle remote sono:
Post Office Protocol (POP3)protocollo semplice per recuperare i messaggi e memorizzarli sulla macchina dell’utente.
Interactive Mail Access Protocol (IMAP)più complesso per permettere di leggere i messaggi conservandolisul server di posta.
Distributed Mail System Protocol (DMSP)permette di gestire la posta su più server e in maniera asincrona.
D. D. TaliaTalia –– RETI DI CALCOLATORI RETI DI CALCOLATORI -- UNICALUNICAL 6-33
1011010110
01100 01100
0101101011
Funzionamento di un Cliente POP