Estratto del documento

ARCHITETTURE DI SISTEMA

L’architettura di sistema viene definita come il modo

in cui i componenti software sono posizionati e

interagiscono. Le architetture di sistema possono

essere centralizzate, decentralizzate, ibride.

ARCHITETTURE CENTRALIZZATE

La comunicazione tra client e server può essere

implementata tramite un protocollo senza

connessione quando la rete sottostante è affidabile. I

Client preparano un messaggio con i dati di input

necessari, identificano il servizio e lo inviano. I

Server invece restano in attesa della richiesta e

quando la ricevono confezionano i risultati in un

messaggio di risposta. In caso di malfunzionamenti

fra l’interazione del client e del server si può rinviare

il messaggio qualora non si riceva risposta, anche se

il client non può però sapere se il messaggio

originario è stato perso o meno.

QUANDO UNA OPERAZIONE È RIPETIBILE PIÙ

VOLTE SENZA DANNI SI DICE CHE È

IDEMPOTENTE.

In alternativa sono utilizzati protocolli orientati alla

connessione. In questo caso la qualità della rete può

influenzare il tipo di protocollo che vado a utilizzare.

All’interno di una rete LAN ho una alta affidabilità e

posso utilizzare protocolli senza connessione, nel

web invece meglio utilizzare protocolli con

connessione.

ARCHITETTURE A LIVELLI

I componenti sono organizzati a strati in cui un

componente di un livello può richiamare solo

componenti di livello sottostante. La stratificazione

consiste di:

- Livello dell’interfaccia utente: interazione tra

uomo e macchina.

- Livello applicativo: è di solito formato da una che

contiene le funzionalità centrali dell’applicativo e da

un’altra che opera su una base di dati.

- Livello dei dati: Contiene i programmi che

gestiscono i dati reali su cui le applicazioni si basano.

Per gestirli viene utilizzato un file system o un db.

ARCHITETTURE MULTI-LIVELLO

L’architettura multilivello più semplice prevede solo

una macchina client contenente solo i programmi

che implementano il livello di interfaccia utente e la

macchina server contenente programmi per

elaborazioni dei processi e dei dati. Altre architetture

multilivello potrebbero essere

ARCHITETTURA CLIENT/SERVER E LIVELLI

Nelle architetture C/S un livello (tier) corrisponde ad

un nodo o gruppo di nodi di calcolo su cui è

distribuito il sistema. Qui il sistema è organizzato

come una sequenza di livelli, organizzati in base al

tipo di servizio (responsabilità) che forniscono:

• ciascun livello funge da server per i suoi

chiamanti nel livello precedente

• ciascun livello funge da client per il livello

successivo PEER-TO-PEER

In una rete Peer-To-Peer gli elaborati condividono

risorse e servizi scambiandoli direttamente tra i

computer. Le applicazioni peer-to-peer hanno tre

caratteristiche:

le entità devono poter SCOPRIRE INTERROGARE

CONDIVIDERE le altre entità pari sulla rete.

3 TIPI: P2P Puro: non ha server centrale e tutti i

Peer hanno lo stesso ruolo. Ogni nodo si occupa di

individuare i Peer, le risorse e la condivisione di

queste. Ogni peer ha un compito complesso da

punto di vista di calcolo.

• P2P con Discovery Server: possiede un server

centrale chiamato Discovery, al quale il client

comunica la propria esistenza al momento dell'avvio

e riceve in risposta una lista con gli altri nomi della

rete che potrà poi interrogare per conoscerne i

contenuti. Quindi, quando l'utente necessita di un

contenuto, prima contatta il server individualmente,

poi inoltra la richiesta.

• P2P con Discovery e Lookup Server: in

questa architettura l'utente non solo si registra

presso il Discovery Server, ma spedisce anche una

lista dei propri contenuti ad intervalli regolari. Così,

quando la richiesta successiva viene mandata, il

server fornisce una lista dei partecipanti alla rete

insieme ai relativi contenuti, tagliando richieste

infruttuose e ottimizzando i tempi.

Per quanto riguarda un'architettura di tipo P2P Puro,

non essendoci un server centrale in grado di far

connettere tra di loro i diversi nodi, viene

solitamente integrata una OVERLAY NETWORK

VIRTUALE (rete sovrapposta) con la quale i nodi

formano una sottorete rispetto alla rete fisica

principale. A seconda di come i nodi sono collegati

tra loro e dalla loro distribuzione, è possibile dividere

le reti P2P in "strutturate" e "non strutturate":

Una rete strutturata è caratterizzata assicura che

ogni nodo possa efficientemente cercare e trovare

una risorsa o nodo. Per farlo la rete strutturata

integra una tavola Hash distribuita, all'interno della

quale a ogni risorsa corrisponde un codice

identificativo univoco.

Invece, una rete non strutturata è formata da

nodi che creano collegamenti casuali con altri nodi

della rete senza una struttura.

BIT TORRENT

è un protocollo di tipo peer-to-peer (P2P) finalizzato

alla distribuzione e condivisione di file nella Rete. Le

entità in bit torrent sono:

I Peers: Sono coloro che stanno scaricando un file

ma non lo hanno scaricato completamente, i peers

condividono i frammenti di quel file che per il

momento posseggono.

Anteprima
Vedrai una selezione di 3 pagine su 7
Stili architetturali nei sistemi distribuiti Pag. 1 Stili architetturali nei sistemi distribuiti Pag. 2
Anteprima di 3 pagg. su 7.
Scarica il documento per vederlo tutto.
Stili architetturali nei sistemi distribuiti Pag. 6
1 su 7
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher nocerinoumberto97 di informazioni apprese con la frequenza delle lezioni di Sicurezza nelle architetture orientate ai servizi e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Bari o del prof Pirlo Giuseppe.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community