Laboratorio di TelematicaPROGRAMMA a.a.2005/2006 Come funziona una architettura di protocolli (esercit./lab.)Approfondimento su Architettura TCP/IP - Indirizzamento IP:subnetworking, supernetting, Indirizzi privati, NAT, PAT risoluzione degli indirizzi: DNS, ARP, RARP, DHCP (esercit./lab.)Error Reporting (ICMP) TCP (esercit. /lab.) - InterProcess Communication: i socket (Progetto di un protocollo in lab.)
- Il livello applicativo in Internet: FTP, Telnet, SNMP
Prof. Alfio [email protected]
Testi consigliatiM. Baldi, P. NicolettiInternetworkingMc Graw HillRaccolta Lucidi, Dispensa di telematica, ed esercizi on-line:www.diit.unict.itBehrouz A. ForouzanI Protocolli TCP/IPMcGraw Hill
Cose unarchitettura di protocolli ?
A PA P
N_EntityN_EntityN+1_EntityN-1_Entity
Background: larchitettura TCP/IP
Rete geografica di calcolatoriFunzioni di accesso alla reteFunzioni end-to-end
OSI TCP/IPARCHITETTURE A CONFRONTO
Problematiche inerenti allinterconnessione a livello III (rete)Armonizzazione dei serviziGestione dimensioni massime di pacchettoSupporto QoSCompatibilita meccanismi di controllo di flusso e di congestioneCompatibilita tra schemi di indirizzamento
Protocolli di rete orientati alla connessione (virtual circuit switching)NODONODONODONODOCIRCUITO VIRTUALE
Protocolli di rete orientati al datagramma (datagram switching)DATAGRAMNodoNodoNodoNodo
Servizi di Rete Connection Oriented
Servizi di Rete Connectionless
CONCATENAZIONE DI CIRCUITI VIRTUALIMMMMX.25SNAOSIATM
CONCATENAZIONE DI RETI DATAGRAMMAMMMM
151.97.6.5044.3.1436439667035.3.5464439367137.67.2.4ABCompatibilita tra schemi di indirizzamento
TUNNELINGWANEthernet APacchetto WANMMEthernet BPacchetto IPPacchetto IP
Protocolli inerenti al livello di Rete in INTERNETInternet Protocol (IP)Internet Control Message Protocol (ICMP)Address Resolution Protocol (ARP)Reverse Address Resolution Protocol (RARP)Protocolli di routing: OSPF, EGP, RIP
Il pacchetto IP
Problemi nellattuale sistema InternetEsaurimento degli indirizzi IPEvoluzione delle applicazioni di utente
Protocolli di Internetworkingemergenti in INTERNETMobile IPInternet Protocol vers.6 (IPv6)ReSerVation Protocol (RSVP) Multi Protocol Label Switching (MPLS)
Message nesting nellArchitettura TCP/IPdatiapptcpetheth
PRO & CONTRO
LARCHITETTURA TCP/IPProtocolli largamente usatiModello di riferimentodipendente daiprotocolli
Macrolezione 1:Architetture Protocolli e Servizi
Sin dallo sviluppo delle prime reti di calcolatori sembrato naturale organizzare il software di comunicazione (protocolli) in pi funzionalit che tenessero conto delle esigenze sempre presenti in una rete di calcolatori. Tra laltro, la rete di comunicazione non un mezzo passivo e trasparente a tali comunicazioni; bisogna, al contrario, immaginare che ha funzioni da svolgere e quindi essa stessa un interlocutore nei confronti dei processi residenti sugli elaboratori. Si possono,quindi, individuare tre tipologie di funzioni comuni a tutti i protocolli:
- funzioni di accesso alla rete;- funzioni di trasporto;- funzioni di "applicazione" in senso stretto.
Le funzioni di accesso alla rete affrontano i problemi legati allo scambio di dati fra elaboratore e rete di comunicazione; ad esempio l'elaboratore deve fornire alla rete l'indirizzo del corrispondente, per linstradamento dei dati; l'elaboratore pu richiedere meccanismi di correzione degli errori di trasmissione. Il protocollo di questo strato o gruppo di strati relativo alla comunicazione fra calcolatore dutente e rete di comunicazione e dipende dal tipo di rete utilizzato (rete a commutazione di circuito, rete a commutazione di pacchetto, rete locale, etc.). Per ogni tipo di rete ci sar, dunque, un insieme di protocolli standard da utilizzare.
Le funzioni di trasporto sono relative ad altri problemi, comuni a tutte le applicazioni, quali la necessit che i dati arrivino a destinazione in modo corretto (magari anche in presenza di guasti di parti della rete) e nella stessa sequenza di invio; hanno poi il compito, allinterno dellelaboratore, di consegnare correttamente i dati al programma applicativo destinatario. In altri termini forniscono un trasporto delle informazioni che sia affidabile da estremo ad estremo. Anche queste funzioni possono, dunque, essere raccolte in uno stesso strato, comune a tutti i servizi.
Le funzioni di applicazione, infine, rispondono a requisiti sp ecifici, necessari a garantire lo svolgimento del particolare servizio applicativo (es. il trasferimento di un file, etc.). Anche per queste funzioni si possono realizzare uno o pi strati di protocolli.
Nella commutazione di pacchetto orientata alla connessione (ovvero a circuito virtuale), il servizio di comunicazione si esplica attraverso tre fasi separate (stati della connessione)Apertura della connessione (segnalazione/gestione)Utilizzo della connessione Abbattimento della connessione (segnalazione/gestione)I vantaggi di tale tecnica sono vari; esiste la possibilit di allocare risorse a quella particolare comunicazione e di negoziare i parametri di qualit del servizio (QoS). Inoltre linstradamento svolto solamente nella fase di apertura della connessione e le UI dutente seguono lo stesso percorso nella rete. Il concetto di connessione associato in una rete geografica ad una memoria degli eventi (cio allo stato); ogni comunicazione lascia una traccia nei nodi attraversati dalle informazioni ad essa relativa.
Lattraversamento dei nodi pu essere di vari tipi a seconda dei vincoli temporali e di qualit prescritti dalla comunicazione: ad esempio pu essere ad immagazzinamento e rilancio, oppure di tipo cut-through. Le reti di tipo X.25, sono esempi di reti che utilizzano commutazione di pacchetto orientata alla connessione e con attraversamento di tipo immagazzinamento e rilancio. In questo caso utilizzata appieno la possibilit, data da questo tipo di attraversamento, di garantire un completo controllo sullaffidabilit trasmissiva dello scambio di dati, anche se a prezzo di un maggior tempo di attraversamento della rete. Le reti di tipo ATM sono un altro esempio. In questo caso, per, si d priorit ai tempi di attraversamento (bassi), a scapito delle procedure di controllo recupero di errori.Nella commutazione di pacchetto non orientata alla connessione (ovvero datagram), linstradamento svolto, per ogni UI, sulla base dellinformazione contenuta nel campo indirizzo di destinazione e tramite lesame di opportune tabelle di routing.Le UI possono seguire differenti percorsi allinterno della rete.Non esiste, in questo caso, alcuna possibilit di allocazione di risorse e di negoziazione della QoS, se non attraverso meccanismi complessi, proprietari, o di difficile applicabilit ad estese porzioni della rete.Anche in questa tecnica, lattraversamento pu essere del tipo ad immagazzinamento e rilancio, oppure cut-through.Esempi di reti che utilizzano tale tecnica sono la rete Internet, la rete di segnalazione a Canale Comune N.7, etc.
Quando unapplicazione invia dei dati, utilizzando larchitettura TCP/IP, i dati vengono inviati verso il livello fisico attraverso tutti i livelli della pila protocollare fino ad essere trasmessi dal livello fisico (livello hardware). Ogni livello aggiunge delle informazioni di controllo, preponendo degli header (ed a volte aggiungendo anche dei trailer) ai dati che riceve. I dati dutente, ai quali viene preposta unintestazione (header) dallo strato di applicazione, vengono passati al protocollo dello strato di trasporto (in questo caso TCP, ma del tutto analogo il caso di UDP): questultimo esegue varie operazioni e aggiunge unintestazione alla PDU che gli stata inviata. Lunit di dati prende ora il nome di segmento. Lo strato di trasporto fornisce quindi il segmento allo strato di rete, che presta anchesso servizi specifici e aggiunge unintestazione. Questa unit (che la terminologia di Internet definisce ora datagramma) viene passata ai livelli inferiori, dove lo strato di collegamento dati aggiunge la propria intestazione e una coda (trailer); lunit di dati (che ora prende il nome di trama) viene poi trasmessa in rete dallo strato fisico. In figura mostrato un esempio di imbustamento dei dati, nellipotesi che la sottorete sia una LAN di tipo Ethernet.