Sistemi e Reti 3 Parte 1: sistemi distribuiti e applicazioni di rete

Slide dall'Università su Sistemi e Reti 3 Parte 1. Il Pdf, di Informatica per l'Università, esplora i sistemi distribuiti, le applicazioni di rete e le architetture client-server, con focus su porte logiche e gestione della congestione.

Mostra di più

20 pagine

SISTEMI E RETI 3
Parte 1
Sistemi distribuiti, applicazioni di rete,
architetture,tassonomia di Flynn
prof. Alessandro Cristini
1. SISTEMI DISTRIBUITI
Un sistema distribuito è cost ituito da un insieme di
applicazioni logicamente indipendenti che collaborano per il
perseguiment o di obiettivi comuni attraverso una
infrastruttura di comunicazione hardware e software.
NOTA: l'accesso alle risorse è concorrente.

Visualizza gratis il Pdf completo

Registrati per accedere all’intero documento e trasformarlo con l’AI.

Anteprima

Sistemi Distribuiti

Un sistema distribuito è costituito da un insieme di applicazioni logicamente indipendenti che collaborano per il perseguimento di obiettivi comuni attraverso una infrastruttura di comunicazione hardware e software. NOTA: l'accesso alle risorse è concorrente.

Vantaggi dei Sistemi Distribuiti

  • Affidabilità e fault tolerance (tolleranza ai guasti)
    Grazie alla presenza di ridondanze (per elaborazione e dati)
  • Scalabilità (orizzontale)
    Ogni host che si aggiunge alla rete, la arricchisce di hardware e software
  • Economicità
    Le risorse sono condivise (si pensi a risorse molto costose come una stampante 3D)

Integrazione e Trasparenza nei Sistemi Distribuiti

  • Integrazione
    Consente la coesistenza di hardware e software differente
  • Trasparenza
    • di accesso (modalità di accesso alle risorse e differenti rappresentazioni dati nascosti all'utente)
    • di locazione (il DNS nasconde la locazione in rete ovvero l'IP della risorsa)
  • Apertura
    • Interoperabilità (implementazioni differenti coesistono e lavorano insieme) Portabilità (un'applicazione sviluppata su un dato sistema può essere eseguita su di un differente sistema)

Svantaggi dei Sistemi Distribuiti

  • Produzione del software
    Necessità di introdurre linguaggi di programmazione che garantiscano la portabilità (es. Java) ed API (Application Programming Interface, ovvero delle interfacce per risolvere problemi di comunicazione tra sistemi differenti)
  • Complessità
    Sistema complesso, caratterizzato da hardware differente che sfrutta la rete Internet per le comunicazioni. E difficile valutare le prestazioni del sistema

Sicurezza e Comunicazione nei Sistemi Distribuiti

  • Sicurezza
    Con la connessione di più host si crea la possibilità di accedere a dati e risorse anche a chi non ne ha il diritto: nascono nuove problematiche connesse alla sicurezza che nei sistemi centralizzati erano inesistenti
  • Comunicazione
    Il trasferimento a distanza delle informazioni richiede nuove tipologie di sistemi di telecomunicazione, sia cablati che wireless, e l'aumento esponenziale degli utenti fa sì che giornalmente aumenti la richiesta di bande trasmissive, anche per migliorare la qualità del servizio offerto e offrire nuove tipologie di applicazioni sempre più performanti

Applicazioni di Rete

Un'applicazione di rete è costituita da un insieme di programmi che vengono eseguiti su due o più host contemporaneamente, utilizzando risorse comuni (accesso concorrente agli archivi) mediante la rete di comunicazione che li connette. Applicazione distribuita

Livello di Applicazione

  • Nel modello ISO/OSI e TCP/IP, tale livello si occupa di implementare le applicazioni di rete utilizzate dall'utente finale.
  • Fornisce diversi servizi agli utenti di Internet.
  • È flessibile > consente di aggiungere nuovi protocolli.

Comunicazione C/S nel Livello di Applicazione

NOTA: In questo livello la comunicazione C/S avviene tramite una connessione logica. → come se esistesse un collegamento diretto tra client e server. In realtà, vanno gestiti i livelli sottostanti nel modello TCP/IP per aprire la connessione, inviare/ricevere dati e chiudere la connessione > Socket.

Servizi e Porte Logiche

NOTA: Inoltre, uno stesso host server può offrire più servizi (es. email, sito Web). Dunque, per richiedere un servizio specifico occorre indicare l'indirizzo IP dell'host e il tipo di servizio, ovvero il processo: identificato da protocollo e numero della porta. Le porte logiche sono identificate da 16 bit, dunque in totale si hanno 216 (65536) possibili porte (da 0 a 65535), di cui le prime 1024 sono riservate.

Architetture

Architettura Client-Server

  • Deve esserci sempre un server attivo che offre un servizio, in attesa che uno o più client si connettano a esso e rispondere alle richieste effettuate.
  • Il server deve possedere un IP statico. 12000000

Comunicazione Client-Server

. Il client non può comunicare direttamente con altri client, ma solo con il server; mentre più client possono comunicare contemporaneamente con lo stesso server. Necessità di evitare la congestione > impiego di server farm

Architettura P2P

  • Gli host (peer) dialogano direttamente tra loro.
  • Ogni peer fornisce una risorse e ottiene in cambio altre risorse (binomio dare e ricevere).

P2P Decentralizzato

Uno stesso peer ha sia la funzione di client che di server (servent).

P2P Centralizzato

. Ha un server centrale (directory server) che conserva informazioni sui peer (mapping) e risponde alle richieste su quelle informazioni effettuando la ricerca in modalità centralizzata. · Dati e informazioni sono conservati dai peer.

P2P Ibrido

· Non vi è un server, ma alcuni peer (detti super-nodi, super- peer o ultra-peer), determinati dinamicamente, hanno la funzione di indicizzazione. · Gli altri nodi sono chiamati leaf peer.

Tassonomia di Flynn

La tassonomia di Flynn (1966) è un sistema di classificazione delle architetture dei calcolatori che classifica i sistemi di calcolo a seconda della molteplicità (S singolo o M multiplo) del flusso di istruzioni (I)e del flusso dei dati (D)che possono gestire. SISD SIMD MISD MIMD

Classi della Tassonomia di Flynn

ONella classe SISD non vi è alcun parallelismo: le operazioni vengono eseguite sequenzialmente, su un dato alla volta. E la classica architettura di von Neumann: i PC monoprocessore. OAlla classe SIMD appartengono le architetture composte da molte unità di elaborazione che eseguono contemporaneamente la stessa istruzione ma lavorano su insiemi di dati diversi. I sistemi SIMD sono utilizzati principalmente per supportare computazioni specializzate in parallelo. Esempi: array processor, supercomputer vettoriali, ecc.

MISD e MIMD

La classe MISD, in cui più flussi di istruzioni (processi) lavorano contemporaneamente su un unico flusso di dati, non è stata finora utilizzata praticamente. Nella classe MIMD più istruzioni vengono eseguite contemporaneamente su più dati diversi. Sotto questa classificazione ricadono i cluster di computer, che negli ultimi anni stanno avendo una notevole diffusione.

Suddivisione della Classe MIMD

La classe MIMD può essere ulteriormente suddivisa come: Sistemi a memoria distribuita: in questa categoria ricadono le macchine che assegnano ad ogni nucleo di calcolo (nodo) una propria memoria riservata. Se un nodo deve accedere ai dati memorizzati in altro nodo deve farne richiesta attraverso uno scambio di messaggi tra i nodi o tecniche analoghe. Sistemi a memoria condivisa: in questa categoria ricadono le macchine dove più unità di calcolo pur eseguendo programmi differenti accedono alla stessa memoria.

Non hai trovato quello che cercavi?

Esplora altri argomenti nella Algor library o crea direttamente i tuoi materiali con l’AI.