Architetture di protocolli Gruppo Reti TLC nome.cognome@polito.it http://www.tlc.polito.it/
Architetture e protocolli Definizione CCITT Comunicazione: trasferimento di informazioni secondo convenzioni prestabilite La comunicazione richiede cooperazione Una descrizione astratta delle modalità di comunicazione tra due o più utenti richiede la definizione di un modello di riferimento
Architetture e protocolli Al massimo livello di astrazione il modello di riferimento specifica una architettura di rete
Architetture di protocolli Un’architettura di rete definisce gli oggetti usati per descrivere il processo di comunicazione le relazioni tra tali oggetti le funzioni necessarie per la comunicazione le modalità organizzative delle funzioni
Architetture di protocolli Si usano architetture stratificate semplicità di progetto facilità di gestione semplicità di standardizzazione separazione di funzioni
Separazione di funzioni: Internet router 1 router 2 router 3 host 1 host 2 host 3 host 4 subnet 1 subnet 2 subnet 4 subnet 3 applicativi controllo errori instradamento trasferimento pacchetti
OSI Applicazione 7 Presentazione 6 Sessione 5 Trasporto 4 Rete 3 Collegamento Fisico 7 6 5 4 3 2 1
Architetture stratificate OSI Application Presentation Session Transport Network Data Link Physical DECNET User Netw. Appl. Session End to End Routing Data Link Physical Application SNA Transaction Service Presentation Data Flow Trans. Control Mana. Servi. Virtual Route Explicit Route Transm. Group Data Link Physical path control half session Service Internetwork Network ARPA
OSI ed Internet OSI Internet Protocol Suite Application Presentation Session Transport Network Data Link Physical OSI Internet Protocol Suite Telnet FTP SMTP SNMP NFS XDR RPC TCP e UDP IP ICMP Protocolli di routing Arp e Rarp Non Specificati
B - ISDN Piano di gestione Livelli alti Livelli alti AAL ATM Fisico Piano di controllo Piano di utente Gestione di piano Livelli alti Livelli alti Gestione di livello AAL ATM Fisico
Protocolli Definizione CCITT Definizione di protocolli: descrizione formale delle procedure adottate per assicurare la comunicazione tra due o più oggetti dello stesso livello gerarchico Definizione di protocolli: semantica insieme di comandi e risposte sintassi struttura di comandi e risposte temporizzazione sequenze temporali di comandi e risposte
Protocolli I protocolli sono insiemi di regole: semantiche sintassi algoritmi sintassi formati temporizzazione
Modello di riferimento ISO/OSI (Open System Interconnection) è recepito nei seguenti standard ISO IS 7498 CCITT X.200 I principi fondamentali definiti dal modello di riferimento OSI sono oggi universalmente accettati. Ciò non significa che tutte le architetture di protocolli siano conformi al modello OSI.
Modello OSI mezzi trasmissivi Sistema 1 Sistema 2 Sistema 3 Sistema n Sistema j
Modello OSI processi applicativi Sistema A Sistema B Sistema C Sistema D mezzi trasmissivi processi applicativi
Strati o livelli Sistema A B strato più elevato sottosistema (N + 1) - strato (N) - strato (N - 1) - strato basso mezzi trasmissivi
Entità elementi attivi di un sottosistema svolgono le funzioni di strato interagiscono all’interno di uno strato Sistema A B (N) - strato (N) - entità mezzi trasmissivi
Stratificazione Ogni strato (o livello) Identificabili: fornisce servizi allo strato superiore usando i servizi dello strato inferiore le proprie funzioni Identificabili: fornitori di servizio utenti del servizio punti di accesso al servizio: SAP (Service Access Point)
Servizi Gli utenti del livello N, le (N+1)-entità, cooperano e comunicano usando lo (N)-servizio fornito dallo (N)-fornitore di servizio usa (N + 1) - strato (N) - strato (N) - servizio fornisce
Servizi (N) - servizio N + 1 N (N) - fornitore di servizio Black-Box per le (N + 1) - entità
Servizi (N-1) - servizio N N N - 1 N - 1 (N-1) - fornitore di servizio Black-Box per le (N) - entità
SAP (N) - livello (N) - entità (N - 1) - SAP (N-1) - entità
Protocolli Sistema A Sistema B (N) - strato (N+1) - protocollo (N+1) - entità (N+1) - entità (N) - servizio (N) - SAP (N) - protocollo (N) - strato (N) - entità (N) - entità
Indirizzi (N) - titolo (N) - Strato (N) - entità (N - 1) - SAP indirizzo
Funzioni di identificazione (N) directory (N) - entità (N-1) - indirizzo (N) - titolo
Funzioni di identificazione (N)-mapping (N) - entità (N) - SAP (N - 1) - SAP (N) - indirizzo (N - 1) - indirizzo
Tipologie di mapping one-to-one hierarchical tabular F G H J K L M K K (N) - strato C D D E A B C D E one-to-one hierarchical tabular
Connessioni (N) - entità C B A (N) - strato (N - 1) - strato (N-1) - connessioni (N - 1) - SAP
Connessioni (N) - entità C B A (N) - strato (N - 1) - strato (N - 1) - SAP connessioni punto - punto connessione punto - multipunto
Connessione (N) - entità A (N) - entità B (N) - entità C (N) - strato (N - 1) - SAP (N - 1) - strato (N - 1) - CEP
Connessioni (N) - entità A B C (N) - strato (N - 1) - strato (N - 1) - CEP.id (N - 1) - SAP (N - 1) - CEP
Accordo Accordo tra tre parti Le tre parti (N + 1) - entità (N) - fornitore di servizio
Accordo Nel caso di trasferimento di informazioni senza connessione è sufficiente un accordo tra due parti Le due parti (N + 1) - entità (N) - fornitore di servizio (N + 1) - entità (N + 1) - entità Le due parti Le due parti (N) - fornitore di servizio
Accordo Nel caso di trasferimento di informazioni con connessione è necessario un accordo tra le tre parti Le tre parti (N + 1) - entità (N) - fornitore di servizio (N + 1) - entità (N + 1) - entità (N) - fornitore di servizio
Connessioni multiplazione di (N) - connessioni su una (N-1)-connessione (N) - CEP (N+1) - strato (N) - SAP (N) - strato
Connessioni suddivisione di una (N) - connessione su più (N - 1) - connessioni (N) - CEP (N) - SAP (N) - strato
Creazione PDU (N) - PDU (N) - livello (N - 1) - SDU interfaccia SAP (N - 1) - PCI (N - 1) - SDU (N - 1) - PDU
Creazione PDU Sulle unità dati esiste la possibilità di segmentazione concatenazione La segmentazione può avvenire sia costruendo più (N)-PDU da una (N)-SDU, sia generando più (N-1)-SDU da una (N)-PDU. Analogamente per la concatenazione.
Trasferimento informazioni Sistema A Sistema B Sistema C Sistema D mezzi trasmissivi percorso delle informazioni
Trasferimento informazioni dati Trasmettitore Applicazione Presentazione Sessione Trasporto Rete Collegamento Fisico Applicazione Presentazione Sessione Trasporto Rete Collegamento Fisico Ricevitore APCI ASDU PPCI PSDU SPCI SSDU TPCI TSDU NPCI NSDU DLPCI DLSDU bit o simboli
Primitive INDICAZIONE RICHIESTA CONFERMA RISPOSTA (N + 1) - strato utente (N) - servizio utente (N) - servizio (N + 1) - strato (N) - strato RICHIESTA CONFERMA INDICAZIONE RISPOSTA (N) - SAP (N) - SAP (N) - protocollo (N) - entità (N) - entità fornitore dell’ (N) - servizio
Uso di primitive Servizio confermato Fornitore del servizio Utente Primitiva di richiesta di conferma Primitiva di indicazione di risposta
Uso di primitive Servizio non confermato Fornitore del servizio Utente Primitiva di richiesta Primitiva di indicazione
Uso di primitive Servizio iniziato dal fornitore Fornitore Utente del servizio Utente del servizio Fornitore del servizio Primitiva di indicazione Primitiva di indicazione
Uso di primitive Apertura di connessione (N + 1) - entità (N) - fornitore di servizio (N) - CONNECT REQUEST (N) - CONNECT INDICATION (N) - CONNECT (N) - CONNECT RESPONSE CONFIRM (N) - SAP (N) - SAP
Uso di primitive Trasferimento dati (N + 1) - entità (N) - fornitore di servizio (N + 1) - entità (N) - DATA REQUEST (N) - DATA INDICATION (N) - SAP (N) - SAP
Uso di primitive Chiusura di connessione iniziata dall’utente (N + 1) - entità (N + 1) - entità (N) - fornitore di servizio (N) - DISCONNECT REQUEST (N) - DISCONNECT INDICATION (N) - SAP (N) - SAP
Setti strati OSI Protocollo di applicazione applicazione presentazione sessione trasporto rete collegamento fisico applicazione presentazione sessione trasporto rete collegamento fisico Protocollo di presentazione Protocollo di sessione Protocollo di trasporto Protocollo di rete Protocollo di collegamento Protocollo di strato fisico mezzi trasmissivi
Sistemi sistemi terminali sistemi di rilegamento (relay) SISTEMA A RELAY SYSTEM SISTEMA B Applicazione Presentazione Sessione Trasporto Rete Collegamento Fisico Applicazione Presentazione Sessione Trasporto Rete Collegamento Fisico Rete Colleg. Fisico mezzi trasmissivi
Reti pubbliche protocolli di utilizzazione protocolli di accesso strati di utilizzazione strati di trasferimento strati di trasferimento strati di trasferimento protocolli di accesso protocolli di rete nodo di transito apparecchio terminale nodo di accesso sezione di accesso sezione di rete interna
Strato 1: fisico Physical layer: fornisce i mezzi meccanici, fisici, funzionali e procedurali per attivare, mantenere e disattivare le connessioni fisiche ha il compito di effettuare il trasferimento delle cifre binarie scambiate dalle entità di livello di collegamento le unità dati sono bit o simboli definizione di codifiche di linea, connettori, livelli di tensione
Strato 2: collegamento Data link layer fornisce i mezzi funzionali e procedurali per il trasferimento delle unità dati tra entità di livello rete e per fronteggiare malfunzionamenti del livello fisico funzioni fondamentali: rivelazione e recupero degli errori di trasmissione controllo di flusso delimitazione delle unità dati
Strato 3: rete Network layer fornisce i mezzi per instaurare, mantenere e abbattere le connessioni di rete tra entità di livello trasporto fornisce i mezzi funzionali e procedurali per lo scambio di informazioni tra entità di livello trasporto funzioni fondamentali: instradamento controllo di flusso e congestione tariffazione
Strato 4: trasporto Transport layer fornisce alle entità di livello sessione le connessioni di livello trasporto colma le deficienze della qualità di servizio delle connessioni di livello rete ottimizza l’uso del servizio di livello rete funzioni fondamentali: controllo d’errore controllo di sequenza controllo di flusso
Strato 4: trasporto è il livello più basso con significato da estremo a estremo esegue la multiplazione e la suddivisione di connessioni permette la frammentazione di messaggi in pacchetti e la loro ricomposizione
Strato 5: sessione Session layer assicura alle entità di presentazione una connessione di sessione organizza il colloquio tra le entità di presentazione struttura e sincronizza lo scambio di dati in modo da poterlo sospendere, riprendere e terminare ordinatamente maschera le interruzioni del servizio trasporto
Strato 6: presentazione Presentation layer risolve i problemi di compatibilità per quanto riguarda la rappresentazione dei dati da trasferire risolve i problemi relativi alla trasformazione della sintassi dei dati può fornire servizi di cifratura delle informazioni
Strato 7: applicazione Application layer Esempi di servizio fornisce ai processi applicativi i mezzi per accedere all’ambiente OSI Esempi di servizio trasferimento di file - FTAM terminale virtuale - VT posta elettronica - X.400
Esempio Rete semplicissima U 1 N 1 U 2
Esempio Supponiamo che una (4)-entità debba comunicare con una (4)-entità remota e seguiamo passo - passo primitive SDU PDU
Esempio servizio di livello 3 con connessione U 1 N 1 U 2 servizio di livello 3 con connessione servizio di livello 2 senza connessione servizio di livello 1 senza connessione
Esempio X X’ Z A B C H I J D E F G
Esempio Direttorio X,X’ A,H X X’ Z A B C H I J D E F G
Esempio N-CONNECT.request (H,A,...) X X’ Z A B C H I J D E F G
Esempio N-PDU (H,A,VCid’,call request,...) X X’ Z A B C H I J D E F G
Esempio Instradamento A,H A,Z X X’ Z A B C H I J D E F G
Esempio Mapping A,Z B,D X X’ Z A B C H I J D E F G
Esempio DL-DATA.request (D,B,DL-SDU,...) X X’ Z A B C H I J D E F G
Esempio DL-PDU (D,B,DL-SDU,DL-PCI) X X’ Z A B C H I J D E F G
Esempio Mapping B,D C,E X X’ Z A B C H I J D E F G
Esempio PH-DATA.request (E,C,simbolo) X X’ Z A B C H I J D E F G
Esempio X X’ Z A B C H I J D E F G 01100111
Esempio PH-DATA.indication (E,C,simbolo) X X’ Z A B C H I J D E F G
Esempio DL-PDU (D,B,DL-SDU,DL-PCI) X X’ Z A B C H I J D E F G
Esempio DL-DATA.indication (D,B,DL-SDU,...) X X’ Z A B C H I J D E F G
Esempio N-PDU (H,A,VCid’,call request,...) X X’ Z A B C H I J D E F G
Esempio Instradamento A,H Z,H X X’ Z A B C H I J D E F G
Esempio Mapping Z,H F,I X X’ Z A B C H I J D E F G
Esempio N-PDU (H,A,VCid’’,incoming call,...) X X’ Z A B C H I J D E F
Esempio DL-DATA.request (I,F,DL-SDU,...) X X’ Z A B C H I J D E F G
Esempio DL-PDU (I,F,DL-SDU,DL-PCI) X X’ Z A B C H I J D E F G
Esempio Mapping F,I G,J X X’ Z A B C H I J D E F G
Esempio PH-DATA.request (J,G,simbolo) X X’ Z A B C H I J D E F G
Esempio X X’ Z A B C H I J D E F G 01100111
Esempio PH-DATA.indication (J,G,simbolo) X X’ Z A B C H I J D E F G
Esempio DL-PDU (I,F,DL-SDU,DL-PCI) X X’ Z A B C H I J D E F G
Esempio DL-DATA.indication (I,F,DL-SDU,...) X X’ Z A B C H I J D E F G
Esempio N-PDU (H,A,VCid’’,incoming call,...) X X’ Z A B C H I J D E F
Esempio N-CONNECT.indication (H,A,CEP.id’,...) X X’ Z A B C H I J D E F G
Esempio N-CONNECT.response (CEP.id’,...) X X’ Z A B C H I J D E F G
Esempio N-PDU (A,H,VCid’’,call accepted,...) X X’ Z A B C H I J D E F G
Esempio N-PDU (A,H,VCid’’,call accepted,...) X X’ Z A B C H I J D E F G
Esempio N-PDU (A,H,VCid’,call connected,...) X X’ Z A B C H I J D E F G
Esempio N-PDU (A,H,VCid’,call connected,...) X X’ Z A B C H I J D E F G
Esempio N-CONNECT.confirm (A,H,CEP.id’’,...) X X’ Z A B C H I J D E F G
Esempio T-PDU (T-PCI,T-SDU) X X’ Z A B C H I J D E F G
Esempio N-DATA.request (CEP.id’’,N-SDU,...) X X’ Z A B C H I J D E F G
Esempio N-DATA.indication (CEP.id’,N-SDU,...) X X’ Z A B C H I J D E F G
Esempio T-PDU (T-PCI,T-SDU) X X’ Z A B C H I J D E F G
Esempio N-DISCONNECT.request (CEP.id’) X X’ Z A B C H I J D E F G
Esempio N-DISCONNECT.indication (CEP.id’’) X X’ Z A B C H I J D E F G