Internet, IP, TCP, UDP #3, MAC Address, *cast

« Older   Newer »
  Share  
CAT_IMG Posted on 30/1/2013, 23:04     +3   +1   -1

So implementare gli object

Group:
Admin
Posts:
1,215
Reputazione:
+150

Status:


Dopo tanto tempo, riprendo a scrivere questi "tutorial" sulle reti :D
Oggi non parliamo di IP, o meglio, non solo: aggiungiamo il MAC Address

Cos'è? Piuttosto semplice: un numero (un grosso numero! 48 bit per l'esattezza) che identifica una scheda di rete.
Che sia una scheda Ethernet, WiFi, Bluetooth e che sia installata su un PC, un router, un cellulare, un tablet o quello che vi pare, ha un indirizzo MAC.

Come l'IP identifica una macchina a livello software (e tenete bene a mente la parola livello, perché nel prossimo articolo approfondirò, direi doverosamente, i vari layer o strati o livelli di astrazione presenti in una rete), l'indirizzo MAC la identifica a livello hardware, e per questo è anche detto indirizzo fisico.

In teoria, viene assegnato durante la fabbricazione fisica della scheda di rete, in pratica su molti modelli può essere modificato via software anche se questo secondo molti va contro la filosofia che c'è dietro...

L'applicazione pratica per eccellenza la analizzeremo in un prossimo articolo riguardante il protocollo TCP (prevedo che sarà il #5 o il #6), ora cercheremo invece di capire cosa significano le parole Broadcast, Anycast, Multicast, Unicast.

Broadcast
Iniziamo dal broadcasting.
Il concetto è molto semplice: inviare un pacchetto a tutte le macchine collegate in una determinata sottorete. Che può essere la nostra rete locale, una rete aziendale, la rete di una città (N.B. non applicabile in Italia, visto che qui siamo indietro di tipo 20 anni e non abbiamo la minima idea di cosa sia un rete), Internet.
Ok, fate finta che io non abbia detto Internet, visto che di fatto NON potete mandare un pacchetto in broadcast su Internet. Perché? Perché verrebbe filtrato al primo nodo che c'è tra te e il tuo ISP, visto che mandare un pacchetto a tutte le macchine collegate su Internet gli costerebbe più di quanto paghi ogni mese per la tua flat.
Dopo questo breve (doveva esserlo :asd:) discorso introduttivo, passiamo alla pratica.
In teoria (e poi vedremo la pratica in una lezione sull'hardware di rete) in una sottorete, i pacchetti vengono ricevuti da tutti i PC e presi in considerazione solo dai veri destinatari.
Mandare un pacchetto in broadcast è semplice, si può fare in due modi:
- Impostando il MAC Address al suo valore più alto FF:FF:FF:FF:FF:FF
- Impostando l'IP Address al suo valore più alto (relativamente alla maschera di sottorete)
Un utilizzo tipico di questa tecnica è l'UPnP: in pratica quando tutte le macchine in una rete ogni "tot" tempo si annunciano alle altre tramite pacchetti in broadcast. Una potrebbe dire "io ho una stampante e posso condividerla con voi", un'altra "io ho un disco rigido condiviso a cui potete accedere".
Invece di dover configurare le macchine manualmente, inserendo magari l'indirizzo IP o il nome del computer a cui è collegata una stampante di rete, il computer stesso annuncia che lui ha una stampante di rete e gli altri PC si configurano di conseguenza. Geniale, no?

Anycast
Non mi dilungherò molto sull'Anycasting, vista la complessità della sua implementazione.
Sappiate solo che un pacchetto mandato in Anycast arriverà a una di un insieme di macchine a cui è destinato, tipicamente quella più "vicina" (= facilmente raggiungibile).
Uno degli utilizzi di Anycast in particolare permette il funzionamento di Internet: la distribuzione di carico sui root server DNS.

Multicast
Il Multicast è un meccanismo molto particolare. Infatti, non è chi invia che decide chi riceverà il pacchetto, ma è chi si "registra" che deciderà che vuole riceverlo.
Non c'è uno standard per implementare questo meccanismo, ma molto spesso, in una rete IP si fa in questo modo:
Viene scelta una classe di indirizzi IP (diversa da quella già usata per la sottorete vera e propria), su cui le schede di rete si mettono in ascolto (e qui tra l'altro vediamo come più reti IP possano coesistere sullo stesso hardware e addirittura sullo stesso cavo).
I pacchetti vengono inviati in broadcast (tramite IP) su quella rete, e verranno ricevuti (o meglio, presi in considerazione) solo dalle schede di rete configurate per riceverli.

Unicast
Tenerlo per ultimo è stata in un certo senso una "trollata" ( :troll: ).
Questo è il tipo di pacchetto che inviamo più comunemente! Un pacchetto destinato a una sola macchina in rete, identificata dal suo indirizzo IP.



[devo ancora sistemare qualche cosa, soprattutto la formattazione]

Edited by ‡ (dd) - 2/2/2013, 11:45
 
Top
»Master
CAT_IMG Posted on 30/1/2013, 23:22     +1   -1




Mi sembra la parte più incompleta, anziché fare una parte #3 fai una #4 :asd:
Buona comunque :asd:


EDIT: Oddio cazzo ho scritto xD
ERROR 404: CERVELOL NOT FOUND

Volevo dire: anziché fare una parte #4, completa questa parte con cosa metteresti nell'altra, questa mi sembra un po troppo "leggera" :)
 
Top
CAT_IMG Posted on 30/1/2013, 23:29     +1   -1

So implementare gli object

Group:
Admin
Posts:
1,215
Reputazione:
+150

Status:


CITAZIONE (»Master @ 30/1/2013, 23:22)
Volevo dire: anziché fare una parte #4, completa questa parte con cosa metteresti nell'altra, questa mi sembra un po troppo "leggera" :)

CITAZIONE (‡ (dd) @ 30/1/2013, 23:04)
To Be Continued

:asd:
 
Top
doublechar
CAT_IMG Posted on 2/2/2013, 11:44     +1   -1




Grande :asd:
 
Top
3 replies since 30/1/2013, 23:04   111 views
  Share