49
Servizi applicativi in Internet Prof. Alfio Lombardo

Servizi applicativi in Internet Prof. Alfio Lombardo

Embed Size (px)

Citation preview

Page 1: Servizi applicativi in Internet Prof. Alfio Lombardo

Servizi applicativi in Internet

Prof. Alfio Lombardo

Page 2: Servizi applicativi in Internet Prof. Alfio Lombardo

Servizi applicativi in Internet

Condivisione di file

Consultazione in rete

Accesso remoto

Gestione delle risorse di rete

Posta elettronica

FTP

TFTP

NFSHTTP

TELNET

R-LOGIN

SMTP

SNMP

SNMPv2Direttorio

DNS FINGER WHOIS

NETFIND WAIS

Page 3: Servizi applicativi in Internet Prof. Alfio Lombardo

Il protocollo TELNETprof.: Alfio Lombardo

Page 4: Servizi applicativi in Internet Prof. Alfio Lombardo

TelnetPermette ad un utente attestato ad una data macchina di stabilire una connessione con un server di login remoto

Page 5: Servizi applicativi in Internet Prof. Alfio Lombardo

Network Virtual Terminal

Definisce la modalita' trasmissiva da usare tra

terminali eterogenei

Page 6: Servizi applicativi in Internet Prof. Alfio Lombardo

Dati: Rappresentati in accordo allo standard USASCII a 7 bit

Comandi: caratteri di controllo codificati da ottetti con il bit di ordine massimo = 1

Network Virtual Terminal

Page 7: Servizi applicativi in Internet Prof. Alfio Lombardo

Comandi TelnetGestiti dal TCP alla stregua di segnali fuori-banda

Comando Codifica Significato decimale

IAC 255 Interpreta il prossimo ottetto come comando (quando l'ottetto IAC appare come dato, il trasmittente lo duplica ed invia la sequenza di 2

ottetti IAC-IAC) EOF 236 Fine del file SUSP 237 Sospendi il processoABORT 238 Abortisci il processo EOR 239 Fine del record SE 240 Fine della sottonegoziazione delle opzioniNOP 241 Nessuna operazione

Page 8: Servizi applicativi in Internet Prof. Alfio Lombardo

Comandi TelnetDMARK 242 La porzione dati di una sequenza di SYNCH

(accompagnata da una notifica urgente del TCP)BRK 243 Segnale di "break"IP 244 Segnale di "interruzione del processo"AO 245 Segnale di "svuotamento dell'output"AYT 246 Segnale "are you there" EC 247 Segnale di "cancellazione carattere"EL 248 Segnale di "cancellazione riga"GA 249 Segnale di "go ahead" SB 250 Inizio della sottonegoziazione delle opzioniWILL 251 Richiesta del permesso (conferma dell'intenzione)

di attuare l'opzione specificataWON'T 252 Rifiuto di attuare l'opzione specificataDO 253 Conferimento del permesso (o richiesta) al paritario

di attuare l'opzione specificataDON'T 254 Rifiuto del permesso di attuare l'opzione specificata

Page 9: Servizi applicativi in Internet Prof. Alfio Lombardo

Opzioni TelnetNome Codice RFC SignificatoTrasmissione binaria 0 856 set di caratteri ad 8 bitEcho 1 857 Permette di ritrasmettere a

ritroso i dati ricevutiSoppressione Go 3 858 Sopprime la trasmissione del Ahead segnale di go ahead dopo i datiStato 5 859 Richiede al remoto lo stato di

un'opzione TelnetMarca temporale 6 860 Richiede l'inserimento di

una marca temporale nel flusso di dati di ritorno

per sincronizzare i due estremi di una connessione

Tipo di terminale 24 884 Avvia lo scambio di

informazioni riguardanti le caratteristiche del terminale

Page 10: Servizi applicativi in Internet Prof. Alfio Lombardo

Sequenza di SYNCH

Usata per inserire un carattere di controllo all'interno del flusso di dati

SYNCH ::=: "IAC (segnale utente) IAC DMARK“

Es: se l’utente preme “control-C” sul proprio terminale per interrompere un processo Telnet invia la sequenza:

IAC IP IAC DMARK

DoveIP = 244 = Segnale di "interruzione del processo"

Page 11: Servizi applicativi in Internet Prof. Alfio Lombardo

I protocolli FTP/TFTP/NFSprof.: Alfio Lombardo

Page 12: Servizi applicativi in Internet Prof. Alfio Lombardo

Condivisione di file

Copia completa

Accesso

on-line

FTP, TFTP NFS

Page 13: Servizi applicativi in Internet Prof. Alfio Lombardo

Entita’ logiche coinvolte in una applicazione di condivisione di file

Page 14: Servizi applicativi in Internet Prof. Alfio Lombardo

File Transfer Protocolrfc 959 rfc1123

SISTEMA CLIENTESISTEMA CLIENTE

DT PI

Sistema Operativo

SISTEMA SERVENTESISTEMA SERVENTE

PI DT

Sistema Operativo

TCP/IPinternet

Connessione

di controllo

Connessione

dati

Connessione

dati

Page 15: Servizi applicativi in Internet Prof. Alfio Lombardo

SISTEMA SERVENTE_1SISTEMA SERVENTE_1

PI DT

Sistema Operativo

SISTEMA SERVENTE_2SISTEMA SERVENTE_2

DT PI

Sistema Operativo

Connessione

dati

Connessione

di controllo

Connessione

di controllo

SISTEMA CLIENTSISTEMA CLIENT

PI DT

Sistema Operativo

Page 16: Servizi applicativi in Internet Prof. Alfio Lombardo

Connessione di controllo

Si appoggia su una connessione Telnet (NVT)

Cliente: SYNC, InterruptProcess

Servente: DONT, WONT

Page 17: Servizi applicativi in Internet Prof. Alfio Lombardo

Protocollo FTP

Comandi

Comandi di servizio: specificano la natura delle operazioni da compiere sul file system; Comandi di controllo di accesso; Comandi per la specifica dei parametri di trasferimento :

modalità di trasferimento, sintassi dei dati struttura dei file

Page 18: Servizi applicativi in Internet Prof. Alfio Lombardo

Controllo d’accesso

User FTP

Anonymous FTP

Page 19: Servizi applicativi in Internet Prof. Alfio Lombardo

Modalita’ di trasferimento

Stream

Block (restart)

Compressed

Si definisce attraverso il comando MODE

Page 20: Servizi applicativi in Internet Prof. Alfio Lombardo

Sintassi dei dati

ASCII EBCDIC IMAGE LOCAL

Si definisce attraverso il comando TYPE

Page 21: Servizi applicativi in Internet Prof. Alfio Lombardo

Struttura del file

File

Record

Pagina

Si definisce attraverso il comando STRU

Page 22: Servizi applicativi in Internet Prof. Alfio Lombardo

Tabella primo digit 1yz indica che l’azione richiesta è stata intrapresa ma che si deve aspettare una ulteriore risposta per inoltrare un nuovo comando 2yz indica che l’azione richiesta è stata completata con successo 3yz indica che il comando è stato accettato ma che l’azione richiesta è tenuta in sospeso poichè si aspettano ulteriori comandi 4yz indica che il comando non è stato accettato e l’azione richiesta non verrà intrapresa a causa di una condizione di errore temporanea. L’azione può essere richiesta nuovamente 5yz indica che il comando non è stato accettato e l’azione richiesta non verrà intrapresa a causa di una condizione di errore permanente. L’azione non può essere richiesta nuovamente

Tabella secondo digit x0z indica un errore di sintassi x1z indica una risposta a richieste di informazioni per esempio un help x2z indica una risposta relativa a una richiesta di connessione dati o controllo x3z indica una risposta ai processi di controllo d’accesso x4z non ancora specificato x5z indica lo stato del file system del server a fronte di una richiesta di trasferimento o di una qualunque azione da compiere sul file system

RISPOSTE

Page 23: Servizi applicativi in Internet Prof. Alfio Lombardo

CLIENTE SERVENTE

USER

220messaggi TCP

331

PASS

230

RETR

STOR

TYPE

226

150

200

550

QUIT

CONTROLLOD’ACCESSO

RICHIESTATRASMISSIONE DATI

SPECIFICA DEI PARAMETRI DITRASMISSIONE

TRASMISSIONE DATI

RICHIESTA CHIUSURA CONNESSIONE

Page 24: Servizi applicativi in Internet Prof. Alfio Lombardo

Trivial File Transfer Protocol rfc. 783

Permette operazione di trasferimento di file scelta della sintassi di trasferimento

Non consente autenticazione d'utente operazioni di management.

Utilizza UDP

Fa uso di meccanismi di timeout, ack e ritrasmissione

Page 25: Servizi applicativi in Internet Prof. Alfio Lombardo

RRQ (read request): è un pacchetto che viene inviato dal client al server per chiedere la lettura di un file.

WRQ (write request): è un messaggio che viene mandato dal client al server per richiedere la scrittura di un file.

OpCode NomeFile EOS Modalita’ EOS

I messaggi

EoS= End Of String= 00000000

Page 26: Servizi applicativi in Internet Prof. Alfio Lombardo

I messaggi

DATA

OpCode N.Blocco Data

ACK

OpCode N.Blocco

ERROR

OpCode CodErr StrinErr EOS

(512 byte)

(512 max)

Page 27: Servizi applicativi in Internet Prof. Alfio Lombardo

Coderr

Descrizione

0 Non definito; si veda stringaerr , se presente.

1 File non trovato.

2 Violazione di accesso.

3 Disco pieno o allocazione ecceduta.

4 Operazione di TFTP non ammessa.

5 Numero di porta sconosciuto.

6 File già esistente.

7 L’utente specificato non esistente.

Page 28: Servizi applicativi in Internet Prof. Alfio Lombardo
Page 29: Servizi applicativi in Internet Prof. Alfio Lombardo
Page 30: Servizi applicativi in Internet Prof. Alfio Lombardo
Page 31: Servizi applicativi in Internet Prof. Alfio Lombardo
Page 32: Servizi applicativi in Internet Prof. Alfio Lombardo

Network File System rfc. 1094

Permette di realizzare un file system globale in un ambiente eterogeneo

Utilizza XDR

Page 33: Servizi applicativi in Internet Prof. Alfio Lombardo

NFSclient

application

interfaccia

Mountclient

Mountserver

NFSserver

remotedisk

remotefile

systemmanager

localdisk

1

2

3

localfile

systemmanager

       1) il Mount Client invia al mount Server il pathname del file o della directory da montare;         2) il Mount Server ritorna il filehandle al Mount Client; 3) l’NFS Client comunica con l’NFS Server attraverso il filehandle;

Page 34: Servizi applicativi in Internet Prof. Alfio Lombardo

fhstatus MOUNPROC_MNT(dirpath):

esegue il montaggio di una directory remota.

mountlist MOUNTPROC_DUMP(void):questa procedura ritorna nella struttura "mountlist" la lista degli host e dei file system che essi hanno montato

exportlist MOUNTPROC_EXPORT(void): questa procedura ritorna un numero variabili di ingressinella struttura "export list". Ogni ingresso contiene il nome di un file system e una lista di gruppi a cui è permesso importarlo.

Il protocollo di Mount:

principali procedure

Page 35: Servizi applicativi in Internet Prof. Alfio Lombardo

attrstat NFSPROC_GETATTR (fhandle): ritorna nel dato strutturato attrstat gli attributi del file.

attrstat NFSPROC_SETATTR (sattrargs):

permette di cambiare gli attributi di un file.

readres NFSPROC_READ (readargs):

effettua la lettura di un file remoto

Esempi di procedure NFS

Page 36: Servizi applicativi in Internet Prof. Alfio Lombardo

I protocolli SMTP/MIMEprof.: Alfio Lombardo

Servizi avanzati di Telecomunicazione

Page 37: Servizi applicativi in Internet Prof. Alfio Lombardo

Simple Mail Transfer Protocolrfc 821, 822

Page 38: Servizi applicativi in Internet Prof. Alfio Lombardo
Page 39: Servizi applicativi in Internet Prof. Alfio Lombardo

Header Significato

To:Indirizzi email dei destinatari primari

Bcc:Indirizzi email dei destinatari secondari non visibili dal destinatario primario

Cc:Indirizzi email dei destinatari secondari

From:Persona che ha creato il messaggio

Sender:

Indirizzo email del mittente

Received:

Linea aggiunta da ogni agente di trasferimento lungo il percorso

Return-Path:

È usato per identificare un percorso di ritorno al mittente

Header del messaggio SMTP (RFC822)

Page 40: Servizi applicativi in Internet Prof. Alfio Lombardo

Header Significato

Date:Data ed ora in cui il messaggio è stato mandato.

Replay-To:

Indirizzo E-Mail al quale devono essere mandate le risposte.

Message-id:

Identificatore unico del messaggio.

In-Reply-

To:

Identificatore del messaggio al quale si sta rispondendo.

References:

Altri identificatori del messaggio.

Keywords:

Parole chiave scelte dall'utente.

Subject:

Descrizione breve del messaggio.

Header aggiuntivo del messaggio SMTP ( RFC822)

Page 41: Servizi applicativi in Internet Prof. Alfio Lombardo

MIME rfc 1521, 1522

Header SMTP Header MIME documento

MIME Version: Identifica la versione MIME Content-Description: Stringa,descrivere il contenuto

del messaggio. Content-ID: Identificativo unico Content-Tranfer-Encoding: Tipo di codifica usata nel

corpo del messaggio Content-Type: Natura del messaggio.

Header MIME

Page 42: Servizi applicativi in Internet Prof. Alfio Lombardo

Simple Network Management Protocol

Il modello architetturale per la gestione delle reti in Internet  consiste di quattro componenti:

Elementi di rete Stazioni di gestioneInformazioni di gestione Protocollo di gestione (SNMP).

UDP UDP

Page 43: Servizi applicativi in Internet Prof. Alfio Lombardo

le  informazioni di gestione vengono definite come abstract data type

SMI

tutte le variabili che rappresentano le risorse da gestire presenti in una rete vengono mantenuta  nel MIB

Il protocollo SNMP è utilizzato per lo scambio delle informazioni di gestione

Page 44: Servizi applicativi in Internet Prof. Alfio Lombardo

SNMP supporta due tipi di transazione:

messaggi sincroni di tipo domanda - risposta attraverso un meccanismo di polling

messaggi asincroni chiamati trap

+

polling orientato ai trap: un modello nel quale si eseguono verifiche ad intervalli lunghi con accelerazioni al momento della rilevazione di un trap

Page 45: Servizi applicativi in Internet Prof. Alfio Lombardo

messaggio SNMP è di 484 bytes

GetRequest: viene usata dalla stazione di gestione per richiedere il valore di una o più variabili all’agente GetNextRequest: viene usata dalla stazione di gestione per richiedere il valore della variabile successiva. SetRequest: permette alla stazione di gestione di assegnare un valore ad una o più variabili GetResponse:è generata da un agente solo dopo aver ricevuto una GetRequest-PDU, una GetNextRequest-PDU o una SetRequest-PDU trap: mandata dall’agente al gestore ogniqualvolta si verificano eventi imprevisti

Messaggi SNMP

Page 46: Servizi applicativi in Internet Prof. Alfio Lombardo

Object

Nome dell’oggetto

Syntax

Sintassi astratta per il tipo di dato presentata utilizzando ASN.1

Definition

Descrizione testuale della semantica dell'oggetto

Access

Una tra le seguenti possibilità: solo lettura, lettura e scrittura, solo scrittura e non accessibile

Status

Uno tra: obbligatorio, opzionale o obsoleto

SMI:Lo standard indica che gli oggetti devono essere definiti usando

i campi seguenti:

Page 47: Servizi applicativi in Internet Prof. Alfio Lombardo

MIB  Il Management Information Base (MIB) è uno standard che definisce le variabili necessarie per la gestione di una rete, nel senso che esse sono in grado di descrivere lo stato di differenti elementi gestiti (managed device).

•System •Interfaces •Address Translation •IP •ICMP •TCP •UDP •EGP •Trasmission (MIB II) •SNMP (MIB II)

Page 48: Servizi applicativi in Internet Prof. Alfio Lombardo

Gruppo IP Il gruppo IP tratta del traffico IP dal nodo e verso il nodo. E’ particolarmente ricco di contatori per tenere traccia del numero di pacchetti scaricati per un qualsiasi motivo. Sono inoltre disponibili delle statistiche riguardo la frammentazione e il riassemblamento dei dati.

Le variabili del gruppo sono: ipForwarding            ipDefaultTTL          ipInReceives ipInHdrErrors           ipInAddrErrors        ipForwDatagrams ipInUnknownProtos       ipInDiscards          ipInDelivers ipOutRequests           ipOutDiscards         ipOutNoRoutes ipReasmTimeout          ipReasmReqds          ipReasmOKs ipReasmFails            ipFragOKs             ipFragFails ipFragCreates           ipAddrTable           ipAddrEntry ipAdEntAddr             ipAdEntIfIndex        ipAdEntNetMask ipAdEntBcastAddr        ipRoutingTable        ipRouteEntry ipRouteDest             ipRouteIfIndex        ipRouteMetric1 ipRouteMetric2          ipRouteMetric3        ipRouteMetric4 ipRouteNextHop          ipRouteType           ipRouteAge

Page 49: Servizi applicativi in Internet Prof. Alfio Lombardo

Macrolezione 8:

Progetto di applicazioni distribuite

Macrolezione 9:

Livello applicativo in Internet