Il 0% ha trovato utile questo documento (0 voti)
51 visualizzazioni9 pagine

Reti 3

Il documento descrive le reti informatiche, evidenziando i modelli client-server, peer-to-peer e person-to-person, e introduce il concetto di Internet of Things (IoT) con dispositivi connessi. Viene anche discusso il funzionamento delle diverse tipologie di reti, come PAN, LAN, MAN e WAN, e l'importanza dei protocolli di rete per la gestione della comunicazione e della sicurezza. Infine, il documento approfondisce il layering dei protocolli e l'importanza delle interfacce tra i livelli per garantire modularità e flessibilità nella comunicazione di rete.
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato ODT, PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
51 visualizzazioni9 pagine

Reti 3

Il documento descrive le reti informatiche, evidenziando i modelli client-server, peer-to-peer e person-to-person, e introduce il concetto di Internet of Things (IoT) con dispositivi connessi. Viene anche discusso il funzionamento delle diverse tipologie di reti, come PAN, LAN, MAN e WAN, e l'importanza dei protocolli di rete per la gestione della comunicazione e della sicurezza. Infine, il documento approfondisce il layering dei protocolli e l'importanza delle interfacce tra i livelli per garantire modularità e flessibilità nella comunicazione di rete.
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato ODT, PDF, TXT o leggi online su Scribd
Sei sulla pagina 1/ 9

Computer network si rifersice ad un interconnessione di macchine autonome in grado di scambiarsi

dati, e composta da 2 o piu macchine (devices).


CLIENT-SERVER & PEER-TO-PEER & PERSON-TO-PERSON
Queste computer network formano la rete, queste possono cambiare di dimensioni e possono essere
collegate per creare una rete piu grande internet (interconnessioni di reti).
La maggior parte delle informazioni accessibili da internet sono scaricate tramite il modello client-
server, il server fornisce le informazioni mentre il client le richiede. Questo modello non funziona solo
quando il client e il server si trovano sulla stessa rete:
il server e il client avranno due processi uno che invia la request e uno che invia la reply.
Un altro modello famoso e il peer-to-peer dove ogni client puo anche fare da server (richiedere e
fornire infomazioni) un esempio e BitTorrent infatti ogni client puo hostare un local database dove
inserire informazioni richiedibili.
Person-to-person invece sono per esempio email, chat di facebook e cosi via. (sotto categoria di p2p).

IoT Internet of Things


Oggi dispositivi elettronici come tv,telecamere,sensori di fumo hanno dei embedded computer che
possono accedere ad internet (avendo OS hanno tutti i protocolli necessari implementati
nell’architettura di rete) sono connessi con internet, per esempio i sensori di fumo oltre a rilevare il
fumo e quindi emmettere un suono (parte elettronica) oggi possono anche chiamare i servizi di
emergenza passando tramite internet, questi dispositivi sono chiamati IoT devices

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?

UN INTERFACCIA EFFETTIVAMENTE COME LA SHELL DELL’OS


PERMETTE ANCHE SE COLUI CHE LA UTILIZZA NON SA LE
SPECIFICHE DEL SERVIZIO DI UTILIZZARE SERVIZI OFFERTI DALL OS.
• I SERVIZI SI RIFERISCONO ALLE INTERFACCIE TRA STRATI

• quindi primitive sono definite nell’interfaccia e servono al livello superiore


per accedere al servizio del livello inferiore, ogni servizio fornisce delle
funzioni specifiche che verranno chiamate in base al servizio scelto
• le funzioni sono le operazioni precise svolte dal livello, i servizi sono le
funzionalita offerte per il livello superiore e contiene anche una serie di
service primitive (primitive) quindi i service fanno parte dell’interfaccia
infatti NON CAMBIANO, i service si inseriscono nell’ interfaccia
perche sono un modo per il livello superiore di richiedere operazioni che
il livello inferiore rende disponibili per il livello superiore (come i metodi
in OOP) perche specificano il servizio generale e non le implementazioni
e non precisamente le funzionalita del livello inferiore, mentre
l’interfaccia serve al livello superiore per richiedere il servizio: piu
precisamente l’interfaccia contiene: primitive che servono proprio per
richiedere il servizio es: send(parametri) e i parametri sono info aggiuntive
per le primitive per specificare quale preciso servizio richiedere al livello
inferiore e cosi attivare le funzionalita implementate in quel preciso servizio.
Le primitive infatti dicono come eseguire un’azione al servizio. I protocolli
implementano il servizio. La connessione tra host avviene con l’invio di pacchetti di richiesta
che vengono inviati tramite primitive perche questi pacchetti di richiesta devono comunque
passare per il livello inferiore e quindi richiedere il servizio di esso che viene richiesto tramite
le primitive. I protocolli servono per definire il servizio offerto, tipo invio dei pacchetti
(servizio) lo implementa il protocollo UDP o TDP (che avranno funzioni diverse) cosi il
servizio non cambia in questo modo il livello superiore non subisce, ma le funzioni quindi i
protocolli possono pure cambiare tanto entrambe svolgono il servizio di invio pacchetti

• quindi llc e un interfaccia perche fornisce primitive per accedere a servizi


(+generali) che a sua volta specificano funzioni ben precise.
• LLC Fornisce una serie di servizi (che hanno una serie di funzioni al loro
interno) fornisce un'interfaccia formata da delle primitive (quindi llc offre i
servizi quindi non e un interfaccia e questi servizi possono essere richiesti dal
livello superiore tramite le primitive fornite dall’llc quindi un interfaccia) LLC
Fornisce i seguenti servizi con le seguenti funzioni e quindi il livello superiore
tramite le primitive fornite dall'llc decide quale delle 3 utilizzare
(Unacknowledged Connectionless Service, Connection Oriented Service e
Semireliable Connectionless Service) ognuna delle quali fornisce funzioni ben
specifiche Il sottolivello LLC prevede 3 modi di funzionamento:•
Unacknowledged Connectionless Service: costituito solo da primitive di trasfe-
rimento dati, è un servizio non affidabile e non orientato alla connessione. (e un
servizio che fornisce primitive per far accedere il livello superiore ad esso)
• es di interfaccia SEND (src, dst, prot, TOS, TTL, BufPTR, len, Id, DF, opt =>
result) {questa e una primitive a cui si forniscono vari parametri per richiedere il
servizio del livello sottostante}
. Infatti una delle cose piu importanti nella creazione di una rete e definire un’interfaccia pulita tra i
livelli, per far si che le interfaccie funzionino ogni livello dovra avere delle funzioni ben precise. Le
interfaccie inoltre conferiscono ai livelli modularita quindi ogni livello puo cambiare tranquillamente
senza interferire con quello sopra o sotto. Immagina se dobbiamo cambiare tutti i mezzi di trasmissione
da linee telefoniche a satelliti: dobbiamo cambiare molti protocolli grazie alle interfaccie questo non
sara un problema siccome poi i servizi e le primitive richieste saranno sempre quelle ma con output di
servizi diversi.
L’architettura di rete specifica il set di layer e di protocolli utilizzati
Il modello di rete specifica solo i layer e i servizi (NON LE FUNZIONI) in modo astratto senza
indicare info specifiche come protocolli …
Le interfaccie possono anche cambiare da macchina a macchina purche la macchina possa
utilizzare i correttamente i protocolli.
La lista di protocolli usati in un’architettura prende il nome di protocol stack.
Es di interfaccia immagina un traduttore il livello superiore invia il testo da tradurre in tedesco
l’interfaccia fa si che il livello superiore possa richiedere il servizio di traduzione al livello inferiore, se
l’interfaccia e pulita e fatta bene il livello superiore puo anche cambiare protocollo e usare il francese
comunque potra richiedere il servizio di traduzione proprio tramite la comune interfaccia. Per ogni
livello viene aggiunto un header che contiene le informazioni necessarie leggibili solo dal peer level
perche il protocollo definisce come formattare e leggere l’header, l’header contiene info come
numero progressivo, indirizzo mittente destinatario, algoritmo di gestione errori e cosi via…
insieme all’header viene passato il payload che viene incapsulato insieme all’header e passato cosi
sotto forma di PDU Protocol Data Unit al livello inferiore che poi aggiungera un altro header … in
ricezione ogni header verra poi tolto dal peer corrispondente.
IMPORTANTE DA CAPIRE CHE INTERFACCIA: il livello in se pensera che la
comunicazione sia in orizontale aggiungendo cosi info e usando protocollo stesso e capibili per il peer
ricevente e hanno interfaccie con comandi come getToOtherSide e sendToOtherSide (PRIMITIVE)
che pensera siano per il peer ma che in realta richiedono il servizio del livello inferiore. Le
interfaccie quindi creano un astrazione per il livello in questo modo non gli serve sapere
l’implementazione in se.
ALTRO ESEMPIO DI INTERFACCIA Per esempio, consideriamo l'interfaccia tra il livello di
trasporto (TCP) e il livello di rete (IP). L'interfaccia può definire le primitive send e receive che
possono essere utilizzate dal livello di trasporto per inviare e ricevere pacchetti di dati.
(EFFETTIVAMENTE COSI SE DOVESSIMO CAMBIARE PROTOCOLLI DEI LIVELLI LE
PRIMITIVE SICCOME I SERVIZI SONO SEMPRE QUELLI {DEFINITI DAL MODELLO DA
UTILIZZARE} LE PRIMITIVE PERMETTONO ASTRAZIONE DEI LIVELLI)

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.

QUESTE SONO PRIMITIVE USATE PER RICHIEDERE UN SERVIZIO AL LIVELLO


INFERIORE E VICEVERSA COME MOSTRATO ANCHE QUA:
Request: A primitive sent by layer (N + 1 ) to layer N to request a service. It invokes the
service and passes any required parameters.
1. Indication: A primitive returned to layer (N + l) from layer N to advise of activation of a
requested service or of an action initiated by the layer N service.
2. Response: A primitive provided by layer (N + 1) in reply to an indication primitive. It may
acknowledge or complete an action previously invoked by an indication primitive.
3. Confirm: A primitive returned to the requesting (N + l)st layer by the Nth layer to acknowledge
or complete an action previously invoked by a request primitive.

Potrebbero piacerti anche