Estratto del documento

Internet

Internet si è evoluto similmente ad un castello. All'inizio c'erano pochi piani, poi piano piano se ne sono aggiunti altri, complicandolo, rendendolo più oscuro, fino ad arrivare ad oggi dove è davvero enorme. Ogni piano rappresenta un livello, livello su livello si è costruita mano a mano l'architettura internet che conosciamo oggigiorno. Di fatto internet è una successione di livelli di astrazione. Ogni livello è sempre più complesso ed offre determinate funzionalità più complesse, ogni livello poi offre un'interfaccia di rappresentazione di una superficie molto più complessa.

Sistemi autonomi

Possiamo guardare alla rete globale dividendola in due: Abbiamo un centro con traffico elevato: lì stanno i sistemi autonomi, cioè i fornitori dei collegamenti internet, hanno più connessioni con la rete. C'è poi una periferia: poco o comunque meno trafficata, noi utenti finali, abbiamo una sola connessione con la rete. Un sistema autonomo è identificato da un numero di 16 bit.

Un sistema autonomo può decidere di farsi attraversare o meno da traffico di terzi ed in tal caso:

  • Stub: il SA (detto anche AS) è vicino a un altro sistema autonomo, ma non può esser luogo di transito;
  • Multihomed: Il SA è vicino ad altri AS, ma non vuole farsi attraversare da nessuno;
  • Di transito: il SA è vicino ad altri AS e si fa attraversare dal traffico degli altri, inoltre differenzia la banda disponibile per uno o per l'altro (può esser di meno o di più, dipende dai contratti e dalle scelte finanziarie fra gli AS considerati).

Ci sono AS principalmente nati e che svolgono soprattutto la funzione "di transito"; in tal caso si parla di AS Provider con un certo gruppo di clienti AS detto Customer Cone. Fondamentalmente quello che facciamo quando ci colleghiamo a internet, è entrare a far parte di una rete ethernet (multi point) o PPOA o PPOE. Il nostro computer entra a far parte di questa rete, e si connette al modem di casa che ci collega tramite linea telefonica con uno dei router del nostro fornitore, cioè del sistema autonomo con cui abbiamo stipulato un contratto di servizio internet. Oggigiorno avendo in casa più dispositivi collegati ad internet, al modem è affiancato un router, quindi il nostro dispositivo si connette con il router e questi ci mette in comunicazione con il modem che ci collega tramite la linea telefonica a uno dei router del provider internet. Uno dei router del provider... perché in realtà il Sistema Autonomo ne ha diversi.

Anatomia di un sistema autonomo

La rete del fornitore Il router con cui ci siamo messi in contatto è in realtà uno dei tanti router che fanno capo ad un AS. Ogni insieme di router che può coprire una certa area territoriale, come una località, città, regione è chiamato: Sottorete dell'AS e copre appunto un certo spazio geografico. Un insieme di sottoreti formano una certa Area di Sistema Autonomo, un sistema autonomo ovviamente ha più aree che lo compongono. Quindi l'insieme di aree di sottoreti connesse forma un sistema autonomo.

Ma per formarlo evidentemente le aree devono comunicare fra loro: a tal scopo ogni SA ha una sottorete dorsale detta BackBone che ha la funzione di mettere in collegamento ogni area del sistema autonomo affinché le proprie sottoreti possano comunicare fra loro e inviarsi informazioni. La BB avrà un router con questa specifica funzionalità: Il Router di BackBone.

Ecco come si può letteralmente sbucciare una cipolla, a partire da un semplice collegamento si possono scoprire diverse cose che avvengono in background e che noi, utenti finali, non vediamo.

Il protocollo IP

Il protocollo IP: proprietà importanti

Il protocollo IP è il protagonista nonché unica astrazione del livello 3. Questo protocollo impone una certa MTU cioè una Maximum Transmission Unit oltre la quale, in pacchetti con dimensioni superiori a tale quantità, si procede alla frammentazione che comunque sia, si cerca di evitare.

Il protocollo IP è detto best effort, fa del suo meglio ma non è affidabile. Questo protocollo infatti non riesce a garantire:

  • Completezza: Il protocollo può scartare pacchetti senza notificarlo;
  • Unicità: I pacchetti duplicati non vengono riconosciuti, possono essere inviati e ricevuti, non c'è controllo;
  • Sequenzializzazione: I pacchetti ricevuti in un certo ordine, non saranno rispediti in quello stesso ordine, non è garantito.

C'è quindi l'assenza di controllo di flusso. Nonostante questo è detto protocollo di convergenza. Il pacchetto IP ha una struttura che presenta differenze con altri protocolli. La mancanza di trailer non è significativa, solamente i livelli 2 e 1 lo implementano.

Anatomia di un pacchetto IP

Il pacchetto IP è così costituito:

  • Header
    • Due campi di 4 ottetti: Indirizzo IP mittente e destinatario
    • TTL (Time to Leave)
    • Protocollo con cui elaborare il payload
    • Un campo di 2 ottetti: La checksum del solo header
    • Un altro campo di 2 ottetti: Lunghezza dello header
    • Versione del protocollo (IPv4 o IPv6)
    • Priorità ecc.

Altri 2 campi nello Header sono opzionali deputati per gestire la frammentazione:

  • Id del pacchetto a cui il frammento si riferisce
  • Posizione del frammento nel pacchetto originario

Tutto il resto è payload che contiene informazioni per i protocolli a livelli superiori di astrazione. Non c'è trailer. Il TTL detto anche Time To Leave, è il tempo limite espresso in numero di "hop" (salti da un gateway router all'altro durante una certa route, cioè durante l'intero percorso dal mittente al destinatario) per l'esistenza di un pacchetto in rete. Questo per non farlo vagare indefinitivamente. Un router che riceve un pacchetto con TTL:0 lo scarta, senza inoltrarlo.

Come si fa però a conoscere il destinatario? Ancor prima il mittente? Ogni router o gateway intermedio durante una certa route? Servono degli identificatori. Il problema degli identificatori si presenta molto spesso in internet, c'è la necessità di etichettare ogni nodo mittente, intermedio e destinatario all'interno di una certa sottorete. E per ogni livello di astrazione si introduce spesso un nuovo livello di indirizzamento per consentire le varie identificazioni univoche.

Indirizzamento delle interfacce IP

Al livello 3, l'indirizzamento necessario è l'indirizzo IP che specifica l'interfaccia di rete di un certo nodo. Nel pacchetto IP nello header sono necessari l'indirizzo IP del mittente e del destinatario per poter comunicare ai router il percorso di un certo pacchetto. L'indirizzo IP è detto indirizzo logico, può esser associato manualmente ad un certo nodo od automaticamente attraverso un determinato protocollo cioè DHCP. Ad ogni modo il suo formato è detto anche dotted squad. 125.56.7.2 è un esempio di dotted squad. Bit separati da punti. Un indirizzo IP equivale a 32 bit (4 ottetti x 8 = 32 bit).

Un indirizzo IP può anche rappresentare una determinata sottorete, perciò si parla di rete IP, di cui ogni sottorete appartenente a una certa classe è determinata da un prefisso uguale e una parte variabile.
192.168.5.0
192.168.5.1
192.168.5.2
192 è il prefisso, i 3 IP fanno parte di una stessa sottorete. La lunghezza del prefisso determina quanti indirizzi appartengono alla classe. Secondo la regola prefisso più corto classe più ampia. Un Sistema autonomo un certo numero di indirizzi IP che deve fornire ai suoi clienti al momento della loro connessione ad internet (Ogni volta diverso= IP dinamico, Sempre uguale= IP statico).

Protocollo ICMP

IP implementa un protocollo di controllo dell'assenza del destinatario o della sua irraggiungibilità. Il protocollo sta per Internet Control Message Protocol, e i suoi messaggi viaggiano come payload di pacchetti IP. La sua funzione è inviare pacchetti di controllo (ping) a un certo IP per controllare che ci sia connessione e il tempo in millisecondi per lo scambio di pacchetti andata e ritorno. Se non è presente il destinatario o è irraggiungibile, un router intermedio incontrato dal pacchetto spedito durante la sua route, spedisce un messaggio "Port Unreachable" al mittente notificandolo dell'impossibilità dell'informazione di essere recapitata. Inserisce poi nel messaggio i primi 64 bit del pacchetto che ha generato il problema, ovvero la porzione iniziale. Controlla e verifica lo stato della comunicazione.

Multicast in IP

La comunicazione unicast è quel tipo di comunicazione che va da un certo mittente a un certo destinatario attraversando eventualmente diversi router intermedi effettuando un certo numero di "hop". Ma se volessimo inviare un pacchetto, delle informazioni, a più di un destinatario?

Le comunicazioni possono svolgersi in

  • Broadcast: il caso meno frequente, sconsigliato, pesante, limitato perciò a funzioni di sistema e protocolli, in questà modalità il pacchetto viene ricevuto da tutti gli host in una sottorete.
  • Multicast: il più consigliato, più sicuro, quello che vedremo, in tal caso il pacchetto viene ricevuto dai soli host interessati.

Per il Broadcast data una certa sottorete di ip Xxx.yy.kk.z Si sostituisce la parte finale con .255 : Xxx.yy.kk.255 Altrimenti più semplicemente si sostituisce completamente: 255.255.255.255 Per il Multicast, si usa una certa classe di indirizzi, precisamente la classe D (una classificazione deprecata). Il range multicast va da: 224.0.0.0 a 239.255.255.255. Anche l'indirizzo MAC è speciale: 01:00:5E.

Nella situazione tipica di Multicast, abbiamo un certo streaming di un mittente collegato ad un router multicast. Il mittente spedisce su uno degli indirizzi di multicast. Per ricevere i pacchetti in multicast, un nodo aderisce al gruppo configurando opportunamente la propria interfaccia (join). Per far uscire dalla sottorete i pacchetti multicast, è necessario che il router sappia quali interfacce sono configurate per quel gruppo multicast in una rete adiacente, per inoltrarvi i pacchetti.

Protocollo IGMP

Il protocollo IGMP si occuperà di registrare adesioni e abbandoni a gruppi multicast, non di trasportare informazioni. (Internet Group Membership Protocol) Come funziona? I mittenti e i destinatari dei messaggi IGMP sono i router ed i destinatari del multicast. Le comunicazioni avvengono tra nodi tra di loro immediatamente adiacenti tramite 1 connessione a livello 2. Un certo router multicast deve poter rilevare gli host interessati a ricevere lo stream, e per far ciò invia a intervalli regolari un messaggio di Query. Al messaggio di Query, risponde il gruppo interessato a far parte del multicast, gli host o router interessati al gruppo inviano in risposta un messaggio Report:

  • Se riceve il report, il router entra a sua volta a far parte del gruppo da cui lo riceve;
  • Risponderà ai successivi report su quel gruppo in maniera positiva;
  • In tal modo la catena di report viaggerà upstream incapsulando via via altri router;
  • Fino ad arrivare al router multicast che riceve direttamente lo streaming dal mittente, il router "aprirà il rubinetto" e il flusso di dati inizierà downstream (dall'alto verso il basso).

C'è però un problema, poniamo il caso di una General Query, un caso particolare di query ricevuta da tutti i gruppi in una sottorete. Se tutti gli host dei gruppi interessati (potenzialmente molti) potessero inviare il proprio Report, il router ne riceverebbe troppi e andrebbe in sovraccarico. Allora per evitare la "valanga" che potenzialmente congestionerebbe il traffico impegnando eccessivamente il router, il querier (router multicast) nel suo messaggio inserisce un timer casuale. A questo messaggio rispondono gli host impostando un timer a loro volta casuale ma fra 0 e il timer del querier. Scaduto il timer, l'host spedisce il report per quel gruppo, gli altri azzerano il proprio timer senza inviare report. In questo modo si evita la valanga. Un router multicast rileva l'assenza di un gruppo ogni 2 minuti e lo elimina dalla tabella. Questo impone tuttavia tempi molto lunghi per l'interruzione del flusso di dati. Nel caso di una general query, prima di essere sicuri per tutti i gruppi bisognerà aspettare diversi periodi di 2 minuti. Se il flusso di dati viaggia downstream e attraversa più sottoreti allora il tempo da aspettare sarà ordine di ore.

Per ridurre questo tempo si utilizza il messaggio di leave che viene inviato a tutti i routers e solamente da chi:

  • Vuole uscire dal multicast;
  • È stato l'ultimo a spedire report per quel gruppo, un evento poco frequente.

La qual cosa riduce il numero di messaggi di leave ricevuti e rileva tempestivamente l'abbandono al multicast. Il router non sa se però ci sono altri host interessati nel gruppo da cui ha ricevuto la leave, che ci siano ancora altri interessati è poco probabile, se un host di un gruppo vuole abbandonare, molto più facilmente anche i suoi compagni vorranno, tuttavia il router può inviare una query specifica su quel gruppo per accertarsi di tale fatto. La tecnica legata al messaggio Leave consente di abbassare da 260 secondi a 2 secondi il tempo necessario a interrompere il routing per un gruppo inattivo. Abbiamo detto che IGMP non si occupa di trasportare informazioni, quali sono i protocolli che permettono questo? I protocolli di trasporto. E per scoprirli è necessario salire lo scalino dei livelli di astrazione e studiare il Livello 4.

Ethernet

A livello 3 c'è la gestione del collegamento internet fra due nodi, un certo mittente comunica con uno o più destinatari e gli indirizzamenti sono gli indirizzi IP. Il modo in cui un collegamento si realizza, dipende dalla tecnologia utilizzata. Dalla tecnologia a livello 2 utilizzata. Il livello 2 detto anche Link Layer è un livello di data link, cioè mette in collegamento nodi appartenenti a una stessa sottorete. A questo livello abbiamo molteplici astrazioni, a livello 3 ne avevamo solo una detto di convergenza cioè IP.

Abbiamo Ethernet, PPP, WiFi. La PDU a questo livello è detta frame. Il protocollo più usato è Ethernet.

Protocollo Ethernet

Ethernet ha come PDU il frame. Il frame ha una struttura più semplice del pacchetto IP. Ethernet sfrutta come tecnologia lo switch, lo switch collega nodi appartenenti ad una stessa sottorete. Ethernet realizza una connessione condivisa. Una connessione broadcast a cui tutti partecipano. Questo protocollo introduce un altro livello di indirizzamento (fisico non logico) il MAC Address. Un MAC Address è univoco per ogni nodo ed è assegnato dal produttore della scheda di rete. I primi 3 ottetti indicano il produttore. L'indirizzo è esadecimale.

Un frame ethernet ha questa struttura (finalmente vediamo un trailer):

  • Preambolo di 8 ottetti (termina con doppio 0 e 1)
  • Indirizzo MAC mittente e destinatario
  • Payload (cioè IP)
  • Trailer con checksum

Questa struttura è altamente significativa per quanto riguarda il trattamento del frame da parte dello switch. Lo switch ha due modalità con cui trattare il frame:

  • Cut and Through: La modalità che deriva dalla struttura del frame. Lo switch invia il frame sulla destinazione non appena ne è noto il MAC, per questo è subito nell'intestazione. E la checksum nel trailer solo alla fine della ricezione. Il tempo di trattamento del frame è quindi minimo, ma essendo inviato subito non si riconoscono frame danneggiati che possono essere spediti subito quindi questa modalità non è adatta a reti inaffidabili (wifi su tutte).
  • Store and Forward: Per reti inaffidabili. Il frame viene registrato nella memoria dello switch che lo riconosce se è danneggiato e non lo invia. Il tempo del trattamento del frame è elevato ma in cambio di sicurezza in più particolarmente adatto a reti inaffidabili come wifi.

Relazione tra indirizzo MAC e IP

Quando IP al livello 3 consegna un pacchetto allo strato 2, link layer deve sapere il MAC address dei nodi mittente e destinatario. Dei nodi è noto solo l'indirizzo IP. Quindi serve sapere il MAC mittente e destinatario da mettere intestazione nel frame. Per risolvere tale questione, ci viene in aiuto il Protocollo ARP. (Address Resolution Protocol) Questo protocollo associa a una certa interfaccia di rete, il MAC address che viene a conoscere.

Il protocollo funziona così:

  • Invio in broadcast su 255.255.255.255 l'indirizzo IP da risolvere; (Who has, ARP Request)
  • Risponde il nodo con quell'IP comunicando il suo MAC address (ARP Reply)
  • Registrazione in una cache dell'associazione IP-MAC così da non dover ricevere altre richieste uguali la prossima volta

Agli albori Ethernet implementava un controllo sulle collisioni, un protocollo detto CSMA-CD che faceva sì che il nodo che doveva spedire si accertasse prima che la linea non fosse occupata, se era libera okay spediva, altrimenti rispediva dopo un tempo che cresceva progressivamente (exponential back off). Il protocollo era fondamentale perché dato un dominio di utenti incompatibili {A,B,C,D} Se A stava comunicando con B, C non poteva comunicare con D né viceversa. Lo strumento utilizzato era l'Hub che provocava un collision domain unico, una sola trasmissione alla volta. Essendo però passati allo switch in full duplex, il collision domain è assente pertanto CSMA-CD è del tutto inutile. Oggi i dispositivi ethernet sono quindi in grado di essere usati da più utenti simultaneamente!

Ora, uno switch fisicamente ha dei buchi che, con poca fantasia, si chiamano porte a cui son collegati dei cavi. Associa...

Anteprima
Vedrai una selezione di 8 pagine su 33
Appunti per l'esame di protocolli e servizi di rete Pag. 1 Appunti per l'esame di protocolli e servizi di rete Pag. 2
Anteprima di 8 pagg. su 33.
Scarica il documento per vederlo tutto.
Appunti per l'esame di protocolli e servizi di rete Pag. 6
Anteprima di 8 pagg. su 33.
Scarica il documento per vederlo tutto.
Appunti per l'esame di protocolli e servizi di rete Pag. 11
Anteprima di 8 pagg. su 33.
Scarica il documento per vederlo tutto.
Appunti per l'esame di protocolli e servizi di rete Pag. 16
Anteprima di 8 pagg. su 33.
Scarica il documento per vederlo tutto.
Appunti per l'esame di protocolli e servizi di rete Pag. 21
Anteprima di 8 pagg. su 33.
Scarica il documento per vederlo tutto.
Appunti per l'esame di protocolli e servizi di rete Pag. 26
Anteprima di 8 pagg. su 33.
Scarica il documento per vederlo tutto.
Appunti per l'esame di protocolli e servizi di rete Pag. 31
1 su 33
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 mariateresa200127 di informazioni apprese con la frequenza delle lezioni di Telematica 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 Pisa o del prof Ciuffoletti Augusto.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community