Reti 3
Reti 3
TIPI DI NETWORK
Oggi internet viene usato di far comunicare due o piu dispositivi in remoto.
Il broadband internet (connessione alta velocita) oggi e molto veloce, per cui oggi molti broadband
access provider (come ISP) possono inviare ai loro clienti dati a velocita di GB/s.
------------------------- MOBILE AND WIRELESS ACCESS NETWORK
Abbiamo per esempio le cellular network (reti cellulari) che funzionano in wireless e sono gestiti dal
ISP in wireless.
Un’altro tipo di connessione e l’hotspot (802.11) che effettivamente crea una rete in cui il gestore e il
device che attiva l’hostspot e condivide informazioni con tutti i device creando una vera e propria rete.
Mobile wireless network sono quei device in grado di accedere ad informazioni mentre sono in
movimento in modo wireless
Fixed wireless network sono quei device in grado di accedere ad informazioni in un punto fisso in
modo wireless
Oggi troviamo anche i data center cioe una rete molto grande di server, questi lavorano con il cloud
computing (potenti computer in grado di spostare grandi quantita di dati dai datacenter in internet e
viceversa). Oggi troviamo le CDN Content Delivery Network cioe grandi reti di server localizzate in
vari parti del globo con lo scopo di ridurre la latenza nello scambio di dati es: linux mirror, amazon e
cosi via.
------------------------- TRANSIST NETWORK (ISP)
Internet interconnette diverse reti: per esempio la rete che hosta i siti web e la data center network,
questi devono inviare i dati all’utente e l’utente li riceve grazie alla transit network che si occupa della
trasmissione dei dati tra i due end, poi la transit la invia alla access network (rete fornita dall’ ISP)
(questo solo le ISP e data center non sono collegati direttamente).
Servizi come Netflix ecc fanno a meno della transit network cosi da non essere dipendenti da essa.
Le reti di transito sono chiamate anche backbone-networks perche appunto si occupano della
trasmissione dei dati facendo la struttura tra gli end.
TOPOLOGIE
------------------------- PAN Personal Area Network
Connette piu device ad un host per esempio il collegamento del telefono con le cuffiette bluetooth e
non, oppure la connessione del tuo computer con il mouse e la tastiera.
La PAN ha dimensioni piccole di solito di massimo 10 metri, quindi quando connettiamo dispositivi in
hotspot stiamo creando una PAN.
------------------------- LAN .Local Area Network
Connette piu device ma in un’area molto piu grande che puo essere un ufficio, casa … Oggi la LAN
piu utillizzata e la wireless, ogni device si connette con un modem radio o un’antenna di solito un
computer si connette poi ad un AP Access Point, wireless router o base station.
Oggi per le wireless si usa lo standard IEEE 802.11b (11Mbps) e 802.11d (7Gbps) .11 (Wi-Fi).
Le wired lan pero hanno meno latenza, meno packet loss. Il piu famoso e IEEE 802.3 (Ethernet).
Se la LAN e molto grande possiamo anche dividerla in piu piccole LAN, immagina di stare in un
uficcio con piu reparti ogni reparto e meglio che abbia la propria LAN in modo da essere piu facile da
mantenere e da renderla indipendente una dall’altra, con per esempio delle VLAN
------------------------- Home Network
Sono un tipo di LAN queste sono LAN semplici da mantenere sicure in mani non esperte semplici da
mantenere
------------------------- MAN Metropolitan Area Network
Copre un intera citta, prima era utilizzata solo per le trasmissioni TV dove veniva messa un antenna su
una collina e poi la trasmissione dei dati via etere avveniva con gli abbonati a quel servizio che
trasmetteva su quell’antenna, questo portava anche a vari canali dedicati solo per quella specifica
antenna. Oggi pero la MAN collega sia antenne tv che internet FIGUARA 1.8
------------------------- WAN Wide Area Network
Copre un area molto grande come un continente, un paese o piu continenti.
Questa e formata da diversi host: New york, california, florida … che scambiano informazioni grazie
alla subnet mask (subnet) che al suo interno contiene i mezzi trasmissivi (transmission lines) (dove
viaggiano i bits)
che possono essere wire copper, radio frequency, optical fiber, queste man vengono collegate tramite
dei router che hanno algoritmi specifici per la trasmissione di dati. Siccome ogni rete ha diversi
protocolli trasmissivi ect… i router sono obligatori per esempio melbourne potrebbe trasmettere in
ethernet mentre poi la transmission line in se funziona con SONET, nella WAN la subnet viene gestista
da un altro operatore mentre gli host anche sono gestiti da altri operatori.
LA WAN E INFATTI UN INTERCONNESSIONE DI RETI (Melbourne, Perth … )
SUBNET & ISP & GATEWAY
In questo caso ISP fa da subnet quindi e colui che gestisce la rete che connette varie reti. In questo
caso la subnet divide la rete in una piu piccola, l’ISP fornisce l’accesso all’interconnessione e il
gateway e il device che connette piu reti (ROUTER)
NETWORK PROTOCOLS
Forniscono una serie di design di algoritmi: gestione errori(reiability), resource allocation, evolbilita
(possibilita di migliorare il protocollo) e sicurezza (per protezione da attacchi)
------------------------- REIABILITY
Immagina il livello a strati non tutti gli strati hanno algroritmi di connessione della rete.
Immagina l’inivio di bits sicuramente alcuni di questi andranno persi cambiati a causa di interferenze,
vari segnali wireless, software bugs, difetti hardware … quindi come e possibile trovare e sistemare
questi errori? Ci sono vari algoritmi che si trovano ai livelli inferiori. Anche il routing per inviare il
pacchetto nel path piu adeguato.
------------------------- RESOURCE ALLOCATION
I pacchetti che vengono inviati dovranno essere gestiti per non creare congestione (i pacchetti si
bloccano e vengono persi perche il mittente invia pacchetti piu velocemente della ricezione) questo
bisogna quindi controllarlo con il flow control, magari ridurre la larghezza banda (bandwidth)
quando viene rilevata una congestione. QoS Qality of service capacita della rete di fornire servizio
affidabile veloce sicuro …
------------------------- EVOLVABILITY
Si aggiungono protocollo ad ogni livello, che possono essere aggiornati senza influenzare gli altri, ogni
livello aggiunge il suo destinatario e ricevente tramite indirizzi.
------------------------- SECURITIY
Evitare intercettazioni e usare algoritmi di sicurezza per ogni livello, mecchanismi di autenticazione e
cosi via
PROTOCOL LAYERING
Ogni rete e organizzata a livelli ogni livello esegue un compito ben specifico che servira al livello
adiacente. Ogni livello deve offrire un servizio al livello superiore, al tempo stesso nascondendo
l’implementazione del servizio (tipo la OOP Programation).
Ogni livello per parlare
con il livello stesso del
ricevente es: 3 comunica
con l’altro 3 useranno
uno stesso protocollo
capibile solo tra di loro,
come leggere i dati
inviati nell’header e cosi
via tutte delle regole da
seguire.
I protocolli sono quindi
uguali per ogni peers
(layer dello stesso livello
es: lvl 2 e 2). Nella realta
i livelli uguali non
parlano direttamente tra
di loro ma comunicano
passando il messaggio al livello sottostante fino a raggiungere il suo peer. La comunicazione tra host
avviene in realta nel physical medium(dove vengono trasmessi i dati).
Tra ogni livello troviamo un INTERFACCIA che definisce il set di primitive e servizi(che sono
in modo generale le specifiche funzioni del layer)che il livello inferiore rende disponibili al livello
superiore(quindi specifica che servizi disponibile per il livello superiore) (quindi in teoria
l’interfaccia puo cambiare, pero in realta seguendo il modello OSI i servizi non cambiano, le
funzioni in se possono cambiare, ma questo non e un problema perche tanto i servizi non
cambiano e quindi l’interfaccia rimane la stessa, cosi anche le primitive perche servono per
richiedere i servizi e siccome i servizi non cambiano anche le primitive non cambiano)
(per esempio LLC e un interfaccia perche fornisce disponibili tutti questi servizi per il livello
superiore L'LLC è una funzione del livello Data Link?
TIPI DI SERVIZI
Ogni livello fornisce due tipi di servizi:
• Connection Oriented Service questo stabilisce la connessione con il ricevente, condividono le
risorse e poi si disconnettono. Questi dopo aver stabilito la connessione condividono parametri
come size massima dei pacchetti, QoS da utilizzare … (esempio una telefonata) ogni pacchetto
deve arrivare con l’ordine di partenza, questo e un servizio affidabile
• Connectionless Service ogni pacchetto e indipendente dall’altro puo arrivare prima il 2 e dopo
l’1, questo e un servizio non affidabile perche il ricettore non deve mandare una conferma di
ricezione dati (ACK) (receiver acknowledge)
Il primo si usa quando mittente e ricevente sono connessi tra di loro, es: VoIP, Movie download… puo
essere acknowledge quando il mittente indica che ha ricevuto il messaggio piu lento ma affidabile es:
download di un movie. VoIP invece no, meno affidabile ma piu veloce.
Il secondo invece non richiede una connessione tra mittente e destinatario es: whatzapp, servizio di
email … e anche qua si divide in quelle due dette prima
PRIMITIVE
Primitive Meaning
LISTEN Block waiting for an incoming connection
CONNECT Establish a connection with a waiting peer
ACCEPT Accept an incoming connection from a peer
RECEIVE Block waiting for an incoming message
SEND Send a message to the peer
DISCONNECT Terminate a connection
Un servizio e specificato da una serie di primitive disponibili all’utente per accedere al servizio, esse
dicono al servizio come eseguire determinate azioni oppure servono per segnalare un azione presa dal
peer entity. Se il protocol stack si trova nel sistema operativo allora le primitive sono delle system call.
Le primitive variano in base al servizio offerto, le primitive connection oriented saranno diverse da
quelle conectionless. I protocolli implementano i servizi:
ES: il server invia una primitive LISTEN (BLOCCA IL SERVER) per indicare che e pronta a ricevere
dati, qui il server non eseguira nulla finche non riceve una request di connessione che arriva con la
CONNECT inviata dal mittente con tutti i parametri necessari. L’OS invia al peer level un packet che
richiede la connessione, e il client process rimane bloccato finche non riceve una risposta
Il protocollo serve al servizio in questo modo i peer level possono comunicare e capirsi. ES: http
fornisce il servizio di trasferimento dati, questi dati dovranno avere precise informazioni e
formattazione per essere cosi non fraintesi dal peer level.
Quindi il peer riceve la richiesta di connessione, sblocca il mittente e invia la risposta ACCEPT, il serve
r poi eseguisce la RECEIVE per prepararsi ad accettare un eventuale richiesta (RECEIVE BLOCCA IL
SERVER). Il client invia una SEND seguita da una RECEIVE per attendere la risposta del server, dopo
di che il server invia una SEND che sblocca il client. Se il client ha fatto esegue una DISCONNECT e
invia al server la DISCONNECT, quando arriva al server anche invia una DISCONNECT.
I driver traducono
Nella comunicazione client-server, il kernel svolge un ruolo cruciale nella gestione della
comunicazione di rete. Riceve i dati dal processo client, li inoltra al processo server e viceversa. Il
kernel è responsabile della creazione e della gestione delle connessioni di rete, del routing dei pacchetti
e del controllo dell'accesso alla rete.
I driver sono responsabili dell'interazione con le periferiche hardware. Nel caso della rete, i driver
gestiscono l'interfaccia di rete fisica e consentono al kernel di inviare e ricevere i dati sulla rete.
Quindi, sia il kernel che i driver sono essenziali per la comunicazione client-server. Il kernel gestisce
l'intera comunicazione, mentre i driver consentono al kernel di interagire con l'hardware della rete.