partiamo con un poco di basi.
Tanto per cominciare, qualsiasi cosa abbia una scheda di rete può essere nominato come HOST.
Un host può essere un server, ovvero attendere pazientamene che qualcuno gli chieda di fare qualcosa per cui è stato programmato (offrire un servizio), oppure essere un client, cioè colui che richiede il servizio.
Esiste anche la terza possibilità, tipica dei sistemi p2p (peer to peer): ovvero essere contemporaneamente un server e un client. Sono reti parecchio complicate, di cui non discuteremo, e normalmente per entrare a farne parte bisogna conoscere almeno un appartenente attivo alla rete, si può cercare a caso, come ci si può collegare ad un server che mantenga un elenco di host attivi.
Il moderno internet come lo conosciamo, si basa su un sistema a "strati" per poter veder efficacemente inviati i dati. Ogni strato rappresenta uno standard: la scelta dello standard utilizzato varia in base alle proprie necessità. Questo standard di strati si chiama ISO/OSI
http://en.wikipedia.org/wiki/OSI_model, e come possiamo vederlo è composto da ben 7 strati, dal livello fisico (cavo ethernet o antenna wifi) fino al livello applicazione(utente), e comprende decine di standard differenti.
Quindi un dato che parte dall'applicazione, entrerà nel livello sottostante gli verrà aggiunto un'header utile alla gestione della rete per quello specifico livello, e inviato nello strato sottostante, dove l'operazione si ripete fino arrivare al livello fisico, dove il dato viene inserito nella rete.
Un collegamento di computer, può essere definito LAN se ottenuto all'interno di una stanza o palazzo, MAN se ottenuto all'interno di una città, WAN se a livello mondiale. Esistono molte altre definizioni, ma queste sono le più utilizzate. Per esempio, collegare i PC di casa è una LAN, internet è una WAN
Esistono vari metodi pr collegare gli host, con un bus (un cavo che passa da PC a PC, passando per ogni HOST una sola volta), una rete ad anello (come il BUS solo che poi il cavo si colega a se stesso. spesso il cavo è doppio, e i dati "girano" in senso opposto), la tipologia "a stella" (un host centrale, di solito un router, è collegato ad ogni singolo host), infine il sistema mesh, in cui ogni host è collegato ad uno o più host in modo più o meno casuale.
Non è difficile immaginare la forza e debolezza di ogni sistema: la rete a bus, se perde un host, può dividersi in due reti separate. Una ad anello, se perde un host resta "fregata", a meno che non usi un doppio anello, nel qual caso funziona lo stesso con qualche rallentamento. se perde anche un secondo host potrebbe iniziare a dividersi in due sottoreti. Una rete a stella non ha problemi nel perdere un host, a meno che non sia l'host centrale, in quel caso cade tutta la rete. Infine la mesh, se ad esempio ogni host è collgato a tutti gli altri host, è virtualmente indistruttibile.
http://en.wikipedia.org/wiki/Computer_networkhttp://it.wikipedia.org/wiki/Local_area_networkLa nostra rete di casa (LAN) è molto differente dalla vera rete internet, di conseguenza abbiamo bisogno di un "traduttore", un qualcosa che srotoli uno o più livelli (anche tutti!) e li ricrei con le impostazione della nuova rete in cui vogliamo entrare.
Questo viene chiamato GATEWAY. Il nostro modem o router di casa fa da gateway, oltre che un altro paio di chicche che vedremo più avanti.
Una precisazione particolare vale per fastweb, che si tratta di una WAN (ovvero una LAN a livello mondiale, come internet, ma è distaccata da essa, e ci comunica attraverso, appunto i gateway)
Un gateway prende il nome dal livello ISO/OSI di rete in cui lavora:
livello 1 - hub o repeater
livello 2 - switch o bridge
livello 3 - router
Benissimo. Osserviamo ancora una volta l'ISO/OSI:
il livello 2, per funzionare, richiede che ogni host abbia un valore numerico differente: è il MAC adress (se non erro 16 byte). Dati e header, in questo livello, vengono chiamati frame.
il livello 3, per funzionare, richiede che ogni host abbia un secondo valore numerico, che al suo interno però contenga un'indicazione della posizione della rete (nulla a che vedere con la posizione geografica!): questo valore viene detto IP. Esiste una parte non modificabile, che appunto rappresenta la posizione della rete, e una modificabile, che rappresenta ogni singolo host (che poi a sua volta può nascondere più host, come vedremo più avanti). Per capire quale sia la parte modificabile e quella no si usa la maschera di rete.
Attualmente esistono 2 versioni di IP:
l'IPv4, che è quello più utilizzato, composto da 4 byte separati da un punto: es. 192.168.1.10. In questo caso la maschera di rete potrebe essere 255.255.255.0: ciò vuol dire che 192.168.1 rappresenta la posizione della rete, mentre il 10 può essere un numero che rappresenta l'host. Quindi in questo caso la maschera di rete ci limita a "soli" 255 host.
Purtroppo, gli IPv4, che sono solo 4.228.250.600, stanno finendo: quindi si è creato l'IPv6, che con 666.000.000.000.000.000.000.000 indirizzi non dovrebbe avere problemi a breve termine (per breve termine si intende mezzo universo colonizzato da host, e si spera anche qualche umano

).
l'IPv6 fondamentalmente è come l'IPv4, solo che usa 16byte (e che sono separati dal : invece che dal . e rappresentati in esadecimale), per esempio: fe80::226:18ff:feba:8b6c, e stessa cosa vale per la maschera di rete.
Dati e header, a questo livello, si chiamano "datagrammi", e già inizia a contenere un TTL, ovvero il numero di rimbalzi massimi tra host che il pacchetto può fare prima di venire distrutto (e poi vi lamentate delle poste!). Nel caso, viene creato un messaggio di errore utilizzando il protocollo ICMP (diagnostica di rete), sempre sul livello 3
Ed infine abbiamo il 4 livello, ovvero quello a cui lavora la nostra ethernet SHIELD! i due standard più famosi a questo livello sono il TCP e l'UDP.
voi potrete scegliere quale dei due standard utilizzare, quindi vediamoli subito in dettaglio....
[continuo più tardi]