La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 2.

Presentazioni simili


Presentazione sul tema: "Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 2."— Transcript della presentazione:

1 Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 2

2 Reti di CalcolatoriAndrea Frosini2 Per il funzionamento delle moderne reti di calcolatori, il software ha una enorme importanza: il software di rete è estremamente complesso e articolato per facilitarne la progettazione, la verifica, limplementazione ed il testing, il software di rete è altamente strutturato ed organizzato in strati o livelli (layers) di conseguenza, larchitettura di una rete è organizzata come una gerarchia di protocolli (protocol hierarchy) Aspetti software delle reti di calcolatori

3 Reti di CalcolatoriAndrea Frosini3 Gerarchie di protocolli I Nei diversi tipi di rete possono variare : il numero di livelli i nomi dei livelli il contenuto dei livelli le funzioni dei livelli Principio generale: scopo di un livello è offrire servizi ai livelli più alti, nascondendo i dettagli di implementazione

4 Reti di CalcolatoriAndrea Frosini4 Il livello n su un host1 porta avanti una conversazione con il livello n di host2. Le due entità coinvolte hanno pari dignità e si dicono peer entity. Le regole che governano tale conversazione sono collettivamente indicate col termine PROTOCOLLO La comunicazione tra i due livelli n avviene utilizzando i servizi offerti dal livello n-1 In realtà non cè trasferimento diretto di dati tra i due livelli n dialoganti: - ogni livello di host1 passa i dati assieme a delle informazioni di controllo al livello sottostante - al di sotto del livello 1 si trova il mezzo fisico che provvede al trasferimento dei bit da host1 a host2 - arrivati ad host2 i dati vengono passati da ciascun livello inferiore a quello superiore finché non si raggiunge il livello n desiderato. Gerarchie di protocolli II

5 Reti di CalcolatoriAndrea Frosini5 Gerarchie di protocolli III Livello 5 Livello 4 Livello 3 Livello 2 Livello 1 Protocollo di livello 5 Protocollo di livello 4 Protocollo di livello 3 Protocollo di livello 2 Protocollo di livello 1 0101000010101001111110101000010100101010 interfacce mezzo fisico

6 Reti di CalcolatoriAndrea Frosini6 Tra ogni coppia di livelli adiacenti è definita una Interfaccia che caratterizza: le operazioni primitive che possono essere richieste al livello sottostante i servizi che possono essere offerti dal livello sottostante (es. connessione sicura …) La progettazione delle interfacce è la chiave di volta per la costruzione di una buona rete di comunicazione. Gli obiettivi primari devono essere: minimizzazione delle informazioni da trasferire scalabilità, cioè possibilità di modificare l'implementazione del livello con una più attuale (e che offra quantomeno gli stessi servizi) senza dover progettare nuovamente lintera rete. Gerarchie di protocolli IV

7 Reti di CalcolatoriAndrea Frosini7 Architettura di rete I Linsieme dei livelli e dei relativi protocolli è chiamato architettura di rete La specifica dellarchitettura deve essere sufficientemente dettagliata da renderne possibile limplementazione I dettagli implementativi di ciascun livello, così come la definizione di ciascuna interfaccia tra livelli, NON fanno parte dellarchitettura di rete

8 Reti di CalcolatoriAndrea Frosini8 Architettura di rete II E quindi possibile che sui vari host di una rete ci siano implementazioni della stessa architettura di rete che differiscono tra loro anche in termini di interfacce fra livelli, purché gli host implementino correttamente i protocolli previsti (in tal modo computer diversi per struttura e sistema operativo possono dialogare) Dunque allinterno della stessa architettura di rete si ha che: - tutti gli host devono contenere implementazioni uguali in termini di livelli e sottolivelli. - gli host possono contenere implementazioni che differiscono in termini di dettagli implementativi e interfacce tra livelli Linsieme dei protocolli di una determinata architettura usati da un determinato calcolatore viene detto pila di protocolli (protocol stack).

9 Reti di CalcolatoriAndrea Frosini9 Una architettura di rete può essere: proprietaria, standard de facto o standard de iure. Una architettura proprietaria si basa su scelte indipendenti ed arbitrarie di un costruttore è generalmente incompatibile con architetture differenti rende raramente pubbliche le proprie specifiche Esempi: IBM SNA (Systems Network Architecture), Digital Decnet Phase IV, Novell IPX, Appletalk Architettura di rete III

10 Reti di CalcolatoriAndrea Frosini10 Una architettura standard de facto è basata su specifiche di pubblico dominio è largamente adottate a livello mondiale Esempio: Internet Protocol Suite (TCP/IP) Architettura di rete IV Una architettura standard de iure: è basata su specifiche pubbliche è approvata da enti internazionali di standardizzazione Esempi: standard IEEE 802 (LAN), architettura OSI (Open Systems Interconnection), Decnet Phase V

11 Reti di CalcolatoriAndrea Frosini11 Tipica analogia tra il funzionamento di una rete e lesperienza umana: Funzionamento del SW di rete (analogia) Filosofo indùFilosofo africano Traduttore inglese Segretaria industano inglese swahili inglese faxese canale fisico inglese-inglese fax-fax industano-swahili

12 Reti di CalcolatoriAndrea Frosini12 Tipica analogia tra il funzionamento di una rete e lesperienza umana: Funzionamento del SW di rete (analogia) Filosofo indùFilosofo africano Traduttore ingleseTraduttore francese Segretaria industano inglese swahili francese faxese canale fisico inglese-francese fax-fax industano-swahili

13 Reti di CalcolatoriAndrea Frosini13 Si noti che: 1.Ogni protocollo è completamente indipendente, come mostra la sostituzione traduttore inglese – traduttore francese 2.Ogni peer entity immagina di parlare con la peer entity del livello corrispondente 3.Ogni livello si disinteressa di come il messaggio giungerà a destinazione 4.Il passaggio vero e proprio di dati avviene solamente tramite il fax, attraverso il canale di comunicazione designato Commenti

14 Reti di CalcolatoriAndrea Frosini14 Funzionamento del SW di rete: esempio Host 1 Host 2 H3 H2T2H2T2H3H2T2H2T2 H3H2T2H2T2 prot. liv. 4 prot. liv. 3 prot. liv. 2 canale fisico

15 Reti di CalcolatoriAndrea Frosini15 In rete tradurre significa inserire/eliminare prefissi o suffissi al messaggio in arrivo dal livello superiore o inferiore (comunicazione multi-livello). Le peer entities pensano concettualmente ad una comunicazione solo tra di loro, basata sul proprio protocollo di livello. In realtà comunicano ciascuna con il proprio livello sottostante attraverso linterfaccia che questo gli mette a disposizione. Spesso i livelli bassi sono implementati in HW. Nonostante questo gli algoritmi SW di gestione rimangono molto complessi. Funzionamento del SW di rete: concetti

16 Reti di CalcolatoriAndrea Frosini16 Servizi connection-oriented: - modellati sul servizio telefonico - hanno bisogno di - stabilire una connessione - scambiare informazioni per mezzo della connessione - rilasciare la connessione Tipologie di servizi I host1host2 1 1 0 0 0001011111 1 0 0 0 1 1 1 0

17 Reti di CalcolatoriAndrea Frosini17 Servizi connectionless: - modellati sul servizio postale - non hanno bisogno di una fase di allocazione delle risorse - ogni pacchetto viaggia indipendentemente dagli altri Tipologie di servizi II host1host2 1 0 0 000 0 1 1 1 1 1 0 0 0 1 1 1 0 0

18 Reti di CalcolatoriAndrea Frosini18 Servizi affidabili e non affidabili Un servizio affidabile permette di non perdere i dati senza che il mittente ne sia informato: tutti i dati spediti arrivano al destinatario, oppure viene segnalato un errore il ricevente invia un acknowledgment (conferma) al mittente per ogni pacchetto ricevuto in caso di errori transienti di trasmissione, il mittente può rispedire automaticamente i dati non giunti a destinazione Un servizio non affidabile (spesso chiamato datagram service) non offre alcuna certezza al mittente che i dati inviati siano stati effettivamente ricevuti dal destinatario

19 Reti di CalcolatoriAndrea Frosini19 Osserviamo: se un livello non offre affidabilità del servizio, qualora questa sia richiesta, dovrà essere fornita dai livelli superiori. Esempi Servizioaffidabilenon affidabile connection-orientedtrasmissione di un filevoce digitalizzata connectionlessrichiesta ad un DB serverposta spazzatura

20 Reti di CalcolatoriAndrea Frosini20 Primitive di definizione dei servizi Specifica formale di un servizio di livello n-1 : insieme di primitive (operazioni) che un'entità di livello n può utilizzare per accedere al servizio stesso Possono indicare l'azione da compiere (l'informazione va da livello n al livello n-1) cosa riportare in merito ad una azione effettuata dalla peer entity di livello n (l'informazione va dal livello n-1 al livello n) Esempi di servizi: stabilire una connessione, gestire i dati da inviare e ricevere, disconnettersi …

21 Reti di CalcolatoriAndrea Frosini21 Esempi di primitive primitivaservizio request() si chiede al servizio di fare qualcosa indication() si viene avvertiti, dal servizio, di qualche evento response() si vuole rispondere ad un evento confirm() la risposta che si attendeva è arrivata Osserviamo: un servizio non confermato utilizzerà solo le primitive request() e indication(), mentre un servizio con acknowledgment necessiterà di tutte e quattro le primitive indicate.

22 Reti di CalcolatoriAndrea Frosini22 Esempio di connessione connection oriented 1.connect.request(); servizio primitiva

23 Reti di CalcolatoriAndrea Frosini23 Esempio di connessione connection oriented 1.connect.request(); 2.connect.indication(); 3.connect.response(); 4.connect.confirm(); 5.data.request(); si cerca di inviare i dati 6.data.indication(); sono arrivati dei dati 7.disconnect.request(); si vuole terminare la connessione 8.disconnect.indication(); laltra entity vuole terminare host1 host2 Lv. n Lv. n-1 Lv. n Lv. n-1 1 2 3 4 5 5 7 6 6 8 tempo si stabilisce la connessione (confermato) si scambiano dati (non conf.) si termina la connessione (non conf.)

24 Reti di CalcolatoriAndrea Frosini24 Servizi vs. protocolli servizio: insieme di operazioni primitive che un livello offre al livello superiore. Come tali operazioni siano implementate non riguarda il livello superiore. protocollo: insieme di regole che governano il formato ed il significato delle informazioni (messaggi, pacchetti) che le peer entity si scambiano fra loro. Le entità usano i protocolli per implementare i propri servizi.

25 Reti di CalcolatoriAndrea Frosini25 Dati due livelli n-1 ed n : il livello n-1 fornisce servizi al livello n (è il service provider) il livello n usa i servizi del livello n-1 ( è il service user) i servizi offerti dal livello n sono accessibili dal livello n+1 tramite i Service Access Points (SAP) di livello n ogni SAP ha un identificatore (SAP address) che lo individua univocamente linformazione inviata dal livello n al livello n-1 tramite il corrispondente (n-1)-SAP è chiamata Protocol Data Unit di livello n o n-PDU la PDU di livello n entrando nel livello n-1 diventa una Service Data Unit di livello n-1 o (n-1)-SDU il livello n-1 processa la (n-1)-SDU aggiungendo una Protocol Control Information di livello n-1 detta (n-1)-PCI il tutto diventa la (n-1)-PDU che viene quindi passata al livello n-2 Servizi e interfacce

26 Reti di CalcolatoriAndrea Frosini26 Indirizzamento: meccanismi di identificazione di mittente e destinatario in ogni livello Regole per il trasferimento dati (livelli bassi): in una sola direzione (simplex connection) in due direzioni ma non contemporaneamente (half-duplex connection) in due direzioni contemporaneamente (full-duplex connection) Meccanismi per il controllo degli errori di trasmissione: rilevazione - correzione – segnalazione eventuali Problematiche comuni ai vari livelli I

27 Reti di CalcolatoriAndrea Frosini27 Meccanismi per il mantenimento dellordine originario dei dati e per la loro ricostruzione Meccanismi per regolare le velocità di sorgente e destinazione. Decisioni sulla dimensione (minima o massima) dei messaggi da inviare, ed eventuale frammentazione Meccanismi di multiplexing di varie "conversazioni" su di un'unica connessione Meccanismi di routing dei messaggi se esistono alternative, ed eventuale suddivisione di una "conversazione" su più connessioni contemporaneamente Problematiche comuni ai vari livelli II


Scaricare ppt "Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 2."

Presentazioni simili


Annunci Google