Internet
Internet è una rete di calcolatori che interconnette centinaia di milioni di
dispositivi in tutto il mondo. Ciascuno di questi dispositivi prende il nome di
Host o sistema periferico; esso è connesso attraverso reti di collegamenti o
commutatori di pacchetti. Collegamenti diversi implicano velocità di
trasmissione diverse, la velocità di trasmissione si misura in bit/secondo. La
metodologia utilizzata da internet per lo scambio di dati tra due sistemi
periferici prevede la scomposizione dei dati da trasmettere in sottoparti
indicizzate dette pacchetti. Spetta poi al commutatore riordinare i pacchetti per
riformare il file.
Internet si basa su protocolli, i principali sono il Trasmission Control Procotol
(TCP) e l’Internet Protocol (IP), per tale ragione si fa riferimento ad entrambi
usando la sigla TCP/IP.
Gli standard di internet sono sviluppati dalla IETF (Internet Engingeering Task
Force) e i documenti che li compongono prendono il nome di Request for
Comment (RFC).
Vista da un'altra prospettiva internet è un’infrastruttura che fornisce servizi a
delle applicazioni quali posta elettronica o navigazione web. Queste
applicazioni prendono il nome di applicazioni distribuite.
Protocollo
Un protocollo definisce l’ordine ed il formato dei messaggi scambiati tra due o
più dispositivi e definisce anche le azioni da intraprendere in fase di
trasmissione e/o ricezione messaggi. Internet fa un uso estensivo dei protocolli
Reti di Accesso
Una Rete Di Accesso è la rete che connette fisicamente un sistema al suo
edge router. Distinguiamo:
Accessi residenziali: i più diffusi nelle connessioni a banda larga sono
di tipo DSL o via cavo. Un accesso di tipo DSL (Digital Subscriber Line)
prevede l’utilizzo di un modem DSL che si occupa di trasformare i dati da
trasmettere in segnali analogici che viaggeranno mediante i cavi
telefonici (doppino di rame intrecciato) verso la centrale locale dove un
DSLAM (Digital Subscriber Line Access Multiplex) si occuperà di
riconvertirli in digitale. Le linee telefoniche possono trasportare
contemporaneamente dati e segnali telefonici utilizzando 3 canali di
onda; questo permette di poter utilizzare lo stesso collegamento DSL sia
per chiamate che per collegarsi ad internet
Accessi aziendali (o residenziali): Ethernet e Wi-Fi: per accedere ad
internet si utilizza una rete locale detta LAN (Local Area Network); un LAN
di tipo wireless prevede il continuo scambio di pacchetti tra host e access
point wireless detto anche base station
Accesso wireless su scala geografica: 3G e LTE: funzionano come
accessi aziendali senza vincoli di area, l’utente può trovarsi lontano dalla
stazione base invece che a pochi metri
Mezzi trasmissivi
I Mezzi Di Trasmissione possono essere vincolati, e quindi fisici, o non
vincolati. Tra i vincolati ricordiamo:
Doppino di rame intrecciato: formato da due fili di rame molto sottili
avvolti a spirale per limitare le interferenze elettriche generati da altri fili
posti nelle vicinanze; di norma un certo numero di doppini viene avvolto
in uno schermo protettivo a formare un cavo
Cavo coassiale: formato da due fili di rame concentrici; se avvolto con
speciali schermi protettivi può raggiungere alte frequenze di
trasmissione. Può inoltre essere usato come mezzo condiviso il che vuol
dire che dispositivi connessi allo stesso cavo ricevono tutti quanto inviato
da altri sistemi periferici
Fibra ottica: molto sottile e flessibile, trasporta impulsi di luce dal valore
di un bit. Può sopportare enormi velocità di trasmissione, non è sensibile
alle interferenze e non ha attenuazioni di segnale anche per lunghissime
distanze
Tra i non vincolati ricordiamo invece:
Canali radio terrestri: trasportano segnali attraverso lo spettro
elettromagnetico. Questi segnali sono in grado di attraversare superfici
ma sono sensibili alle stesse e, più in generale, a tutto l’ambiente di
propagazione. Sono inoltre soggette ad interferenze generate da
eventuali altri canali radio o segnali elettromagnetici
Canali radio satellitari: satellite per le comunicazioni che mette in
collegamento trasmettitori terrestri a microonde. Il satellite riceve il
segnale su una banda e lo rigenera su un'altra banda. Distinguiamo
satelliti a bassa quota e geostazionari
Commutazione di pacchetto
Le applicazioni distribuite utilizzano messaggi per funzionare. La sorgente
suddivide i messaggi lunghi in pacchetti che viaggiano attraverso
collegamenti e commutatori di pacchetto. I pacchetti vengono trasmessi sul
collegamento alla velocità totale di trasmissione che il collegamento stesso può
garantire: se un sistema periferico deve inviare un pacchetto da L bit su un
canale con velocità di trasmissione di R bps, questo pacchetto arriverà dopo
L/R secondi.
La maggior parte dei commutatori utilizza la trasmissione store-and-forward
cioè il commutatore deve aver ricevuto, e verificato, l’intero pacchetto prima di
poter iniziare a trasmettere il primo bit dello stesso. Banalmente se in un
qualsiasi nodo vi è un ritardo questo si protrarrà nel tempo per tutti i nodi che
lo seguono.
Ogni commutatore di pacchetto connette più collegamenti per tale ragione
mantiene un buffer di output per conservare i pacchetti che deve inviare su
quel collegamento. Se un pacchetto in arrivo richiede l’invio attraverso un
collegamento ma questo è occupato il pacchetto verrà messo nella coda di
output. I pacchetti possono quindi subire anche ritardi di accodamento nei
buffer di output; essendo poi il buffer di una dimensione finita se dovessero
arrivare pacchetti quando esso è già completamente riempito da altri si
verificherà una perdita di pacchetto: verrà eliminato o il pacchetto in arrivo o
uno di quelli che si trova già in coda. Ogni pacchetto ha nella propria
intestazione l’indirizzo IP di destinazione, proprio di ogni sistema periferico.
Ogni router mantiene una tabella di inoltro che mette in relazione gli indirizzi di
destinazione con i collegamenti in uscita; qui si usano protocolli di
instradamento. Commutazione di circuito
Definiamo commutatore di circuito un percorso lungo il quale le risorse
richieste per consentire la comunicazione tra sistemi periferici sono riservate
per l’intera durata della sessione di comunicazione. Gli host sono tutti
direttamente connessi a uno dei commutatori. Quando due host desiderano
comunicare la rete stabilisce una connessione end to end dedicata a loro
Confronto tra commutazione di pacchetto e di circuito
La commutazione di pacchetto risulta più vantaggiosa in quanto si possono
avere più utenti collegati e, nel caso ci dovesse essere un solo utente collegato,
questo non dovrà dividere la velocità con nessuno permettendo la trasmissione
dei pacchetti nel più breve tempo possibile. Tuttavia la commutazione di
pacchetto risulta inadatta per i servizi in tempo reale a causa dei suoi ritardi
end-to-end variabili e non determinabili.
Struttura della rete
Nel corso degli anni la rete di reti che forma internet si è evoluta in una
struttura altamente complessa più per motivi economici che prestazionali.
La struttura di rete 1 interconnette tutti gli ISP di accesso con un unico
ISP globale di transito. Questo, immaginario, ISP globale è una rete di
router e collegamenti che non solo copre l’intero globo ma ha anche
almeno un router prossimo a ognuno delle centinaia di migliaia di ISP di
accesso. Se tuttavia un’azienda costruisse e gestisse un ISP globale
vantaggioso economicamente e spingerebbe altre aziende ad entrare nel
mercato.
La struttura di rete 2 è formata da centinaia di migliaia di ISP di
accesso e più ISP globali di transito. Ciò permette agli ISP di accesso di
scegliere l’ISP globale secondo una convenienza economica. È quindi una
gerarchia a due livelli con i provider globali di transito in cima. Gli ISP
globali di transito devono comunque essere tutti connessi tra di loro.
Tuttavia nella realtà nessun ISP globale è presente in tutto il mondo; al
contrario in ogni regione può esservi un ISP regionale al quale tutti gli ISP
di accesso della regione si connettono. Ogni ISP regionale si connette
all’ISP di primo livello (tier-1 ISP, es: AT&T, Sprint) che è quanto di più
simile esista al nostro immaginario ISP globale di transito. In questa
struttura vi è una relazione cliente-fornitore ad ogni livello della gerarchia
Nella struttura di rete 3 può essere definita come gerarchia a molti
livelli; di fatto è una naturale evoluzione della 2 e differisce da questa per
il numero di ISP presenti prima di arrivare a quello di primo livello: vi sono
ISP di accesso in ogni città che si connettono a quelli provinciali che a
loro volta si connettono agli ISP nazionali che infine si connettono agli ISP
di primo livello
Nella struttura di rete 4 aggiungiamo a questa rappresentazione i PoP
(point of presence), il multi-homing, il peering e gli IXP. Un PoP è
semplicemente un gruppo di router vicini tra loro nella rete del provider,
tramite il quale gli ISP clienti possono connettersi al fornitore. Tramite il
multi-home qualsiasi ISP (escluso il primo livello) può connettersi a più
ISP fornitori. Per ridurre i costi ISP vicini di pari livello gerarchico possono
fare uso di peering cioè connettere direttamente le loro reti in modo che
tutto il traffico passi attraverso di esse piuttosto che transitare da un
intermediario. Utilizzando queste connessioni un’azienda può creare un
IXP (internet exchange point), un punto d’incontro dove più ISP possono
fare peering tra di loro.
Nella struttura di rete 5 ci basta aggiungere i content provider
networks cioè le reti che si occupano di distribuire contenuti, una tra
tutte: Google
Ritardi, perdite e throughput nelle reti a commutazione di
pacchetto
Un pacchetto parte da un host, attraversa una serie di router e arriva in un
altro host. Durante tutto il viaggio tale pacchetto accumula ritardi in ciascun
nodo del tragitto; i ritardi principali sono:
Ritardo di elaborazione: il tempo necessario per identificare il
pacchetto e determinare dove dirigerlo
Ritardo di accodamento: il tempo perso nella coda di trasmissione; nel
caso la coda di trasmissione dovesse essere vuota questo ritardo è nullo
Ritardo di trasmissione: consiste nel tempo richiesto per trasmettere
tutti i bit sul collegamento; poiché il nostro pacchetto può essere
trasmesso solo dopo aver trasmesso totalmente i pacchetti che lo
precedono questo ritardo non dipende dalla distanza tra i due router ma
solo dal rapporto L (dimensione del pacchetto) su R (velocità di
trasmissione)
Ritardo di propagazione: è il tempo che il pacchetto impiega una volta
immesso nel collegamento per raggiungere il router B; dipende
esclusivamente dal mezzo fisico sul quale il pacchetto viaggia e non dalle
dimensioni dello stesso
Complessivamente questi ritardi formano il ritardo del nodo.
Il ritardo di accodamento a differenza degli altri può essere trascurato a
seconda della velocità di trasmissione del collegamento e dalla natura del
traffico entrante. Definito con a la velocità media di arrivo dei pacchetti nella
coda (espressa in pacchetti al secondo) il rapporto La/R stima l’entità di questo
ritardo; nello specifico:
Se La/R > 1 allora la velocità media di arrivo dei bit nella coda supera la
velocità alla quale i bit vengono ritrasmessi in uscita da essa; in tale
situazione la coda tenderà a crescere senza limiti
Se La/R < 1 allora la natura del traffico in arrivo influisce sul ritardo in
coda. Se i pacchetti arrivano a cadenza periodica ciascun pacchetto
troverà la coda vuota; se invece arrivano a raffiche periodiche si possono
verificare dei significanti ritardi di coda
In generale quando il rapporto La/R tende ad 1 la lunghezza media della
coda aumenterà sempre di più. Poiché la capacità delle code è finita i ritardi
dei pacchetti non tendono all’infinito: quando il rapporto tende ad uno ed
un pacchetto trova la coda piena questo viene perduto, tale fenomeno è
detto buffer overflow.
Il ritardo tra sorgente e destinazione prende il nome di ritardo end-to-
end. Supponiamo l’esistenza di N-1 router tra l’host sorgente e quello di
destinazione; nell’ipotesi che la rete non sia congestionata e che il ritardo di
elaborazione sia d , che la velocità di trasmissione sia R bps e che la
elab
propagazione di ciascun collegamento sia d . I ritardi si accumulano in:
prop
d = N(d + d + d )
end-to-end elab trans prop
Il throughput istantaneo è la velocità in bps alla quale il destinatario sta
ricevendo il file; definiamo invece throughput medio il rapporto F (bit) su
T (tempo totale di trasmissione): F/T.
Sia R la velocità del collegamento tra server e router, R quella tra router e
s c
client. Si supponga che i soli bit inviati sull’intera rete siano quelli tra server
e client. Se R < R allora i bit immessi dal server scorreranno attraverso il
s c
router e arriveranno al client a una velocità di R bps. Se al contrario R < R
s c s
il router non sarà in grado di inoltrare i bit alla stessa velocità con cui li
riceve, i bit lasceranno il router ad una velocità R . Quindi per una rete
c
elementare con due collegamenti il throughput è il minimo tra R e R cioè
c s
la velocità del collegamento che fa da collo di bottiglia (bottleneck).
Architettura a Livelli
I protocolli sono organizzati in livelli o strati (layer). Ciascun protocollo
appartiene ad uno dei livelli che possono essere implementati via software,
hardware o combinazione dei due. La modularità dei protocolli rende più
facile l’aggiornamento e fornisce un modo strutturato per trattare i
componenti dei sistemi.
Considerati assieme i protocolli dei vari livelli sono detti pila di protocolli
(protocol stack). In internet tale pila è composta da 5 livelli:
Livello applicazione: è la sede delle applicazioni di rete e dei relativi
protocolli. Tra questi i principali sono HTTP, SMTP e FTP. Un protocollo
a livello applicazione è distribuito su più sistemi periferici i quali
grazie ad esso possono scambiare messaggi;
Livello di trasporto: trasferisce i messaggi dal livello di
applicazione. I più importanti sono TCP e UDP. I pacchetti a livello di
trasporto prendono il nome di segmenti;
Livello di rete: si occupa di trasferire i pacchetti, detti datagrammi,
a livello di rete da un host ad un altro. Il protocollo più importante è
l’IP;
Livello di collegamento: trasferisce un pacchetto, denominato qui
frame, da un nodo a quello successivo sul percorso;
Livello fisico: trasferisce i singoli bit del frame da un nodo a quello
successivo;
Il modello OSI nato negli anni ’70 è formato da due livelli in più che sono il
livello presentazione che fornisce i servizi che consentano alle applicazioni
che vogliono comunicare di interpretare il significato dei dati scambiati e il
livello sessione che fornisce la delimitazione e la sincronizzazione dello
scambio di dati compresi i mezzi per costruire uno schema di controllo e
recupero degli stessi Incapsulamento
Preso un host mittente, un messaggio a livello di applicazione viene passato a
livello di trasporto; nel caso più semplice questo livello prende il messaggio e
gli concatena informazioni aggiuntive che saranno utilizzate dalla parte
ricevente del livello di trasporto. Messaggio a livello di applicazione e
informazioni di intestazione a livello di trasporto costituiscono il segmento a
livello di trasporto che incapsula il messaggio a livello di applicazioni; il livello
di trasporto passa il segmento al livello di rete che aggiunge informazioni di
intestazione proprie del livello di rete andando così a creare un datagramma da
livello di rete che viene passato al livello di collegamento il quale, a sua volta,
aggiunge le proprie informazioni di intestazione creando un frame a livello di
collegamento.
In ciascun livello il pacchetto ha due tipi di campi: l’intestazione e il payload
(carico utile trasportato) che è tipicamente un pacchetto proveniente dal livello
superiore. Reti sotto attacco
Un’ampia classe di minacce alla sicurezza può essere classificata come attacchi
di negazione del servizio (DoS = Denial of Service), questi attacchi rendono
inutilizzabili dagli utenti legittimi una rete, un host o un’altra parte di
infrastruttura. Molti attacchi DoS su internet ricadono in tre categorie:
Attacchi alla vulnerabilità dei sistemi: comporta l’invio di pochi
messaggi ben costruiti ad un’applicazione vulnerabile o a un sistema
operativo in esecuzione sull’host. Può causare blocchi del servizio o
spegnimento dell’host
Bandwidth flooding (inondazione di banda): l’attaccante invia un
“diluvio” di pacchetti all’host bersaglio, tanti da ostruire il suo
collegamento al server. Per far danni è necessario che i dati siano
mandati ad una velocità approssimabile ad R (velocità di accesso).
Connection flooding (inondazione di connessioni): l’attaccante
stabilisce un gran numero di connessioni TCP completamente o solo
parzialmente aperte all’host bersaglio che risulta così ingorgato da
queste connessioni senza poter accettare connessioni valide
Un rilevatore passivo in prossimità di un trasmettitore wireless può ottenere
copia di ogni pacchetto, tale processo è detto packet sniffer e la miglior
difesa è la crittografia.
È possibile immettere pacchetti attraverso un indirizzo sorgente falso, questa
capacità è nota com
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Architettura organica
-
Risoluzioni esercizi Architettura di Internet
-
Architettura web/Architettura internet
-
Architettura gotica