Differences between revisions 2 and 5 (spanning 3 versions)
Revision 2 as of 2015-12-27 15:47:08
Size: 4840
Editor: lukisi
Comment:
Revision 5 as of 2016-07-27 10:28:50
Size: 111
Editor: lukisi
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Modulo QSPN - Esempio di uso degli indirizzi virtuali =

== Passo 4 ==
In questo passo aggiungiamo un nuovo nodo al g-nodo g~-,,1,,-~(𝛼).

Il nuovo indirizzo ''virtuale'' ''definitivo'' [2, 1, 0] viene assegnato a 𝛽. Quello che si forma è un nodo completamente nuovo, che si assegna a caso un nuovo identificativo, chiamiamolo 𝛽~-,,B,,-~, mantenendo comunque lo stesso indirizzo link-local che aveva prima.

Ad esso si associa un nuovo fingerprint, una nuova mappa dei percorsi vuota e un nuovo set di archi.

La duplicazione di un arco esistente tra due nodi è una operazione che i due nodi eseguono in accordo, dialogando tra loro tramite il vecchio arco. Ad esempio, tramite l'arco 𝛼-𝛽~-,,i(1,2),,-~ il nodo 𝛽~-,,i(1,2),,-~ comunica a 𝛼 di avere una nuova identità: 𝛽~-,,B,,-~. Quindi i due nodi realizzano il nuovo arco 𝛼-𝛽~-,,B,,-~.

Nel disegno seguente evidenziamo in rosso gli elementi nuovi.

{{drawing:grafo5.adraw}}

Riassumiamo l'esito di queste operazioni di concertazione nel seguente elenco di tutti gli archi ora esistenti:
 * 𝛼-𝛽~-,,B,,-~
 * 𝛾-𝛽~-,,B,,-~
 * 𝜀-𝛽~-,,B,,-~
 * 𝛼-𝛽~-,,i(1,2),,-~
 * 𝛾-𝛽~-,,i(1,2),,-~
 * 𝛾-𝛿
 * 𝛿-𝜇
 * 𝜀-𝛽~-,,i(1,2),,-~

Non ci sono, comunque, da fare nuove assegnazioni di indirizzi né di rotte verso nodi vicini.

L'assegnazione del nuovo indirizzo ''definitivo'' a 𝛽~-,,B,,-~ non comporta un comando di assegnazione di indirizzo per il nodo 𝛽, poiché anche questo indirizzo è ''virtuale'' al livello 0.

Il nodo 𝛽 segnala al suo utilizzatore che non espone più il percorso verso il g-nodo [0], che prima si raggiungeva passando per l'arco 𝛼-𝛽~-,,i(1,2),,-~.

Quindi diamo questi comandi:
 * nodo 𝛽
 . {{{
ip r del 10.0.0.0/30 via 169.254.69.30 dev eth1
}}}

Ora il nodo 𝛽~-,,B,,-~ chiede un ETP completo ai vicini tramite i suoi archi e li processa con questo nuovo indirizzo. Grazie ad essi:
 * Il nodo 𝛽~-,,B,,-~ sa di poter raggiungere il g-nodo [1] passando per l'arco 𝛾-𝛽~-,,B,,-~.
 . Questa destinazione però non sarà esposta dal modulo poiché si tratta del massimo distinto g-nodo di 𝛽~-,,i(1,2),,-~ per 𝛽~-,,B,,-~.
 * Il nodo 𝛽~-,,B,,-~ sa di poter raggiungere il nodo [0, 1, 0] passando per l'arco 𝛼-𝛽~-,,B,,-~.

Quindi diamo questi comandi:
 * nodo 𝛽
 . {{{
ip r add 10.0.0.2/32 via 169.254.69.30 dev eth1
}}}

Il nodo 𝛽~-,,B,,-~ avendo ora completato il suo bootstrap, comunica via ETP ai suoi vicini 𝛼 e 𝛾 tutti i percorsi che conosce. Quindi ora:
 * Il nodo 𝛼 sa di poter raggiungere il g-nodo [1] passando per l'arco 𝛼-𝛽~-,,B,,-~.
 * Il nodo 𝛾 sa di poter raggiungere il g-nodo [0] passando per l'arco 𝛾-𝛽~-,,B,,-~.

Sono due conoscenze nuove, ma che non cambiano il miglior percorso verso quelle destinazioni per 𝛼 e 𝛾. Quindi nessun comando verrà dato.

Ora che il nodo 𝛽~-,,B,,-~ ha trasmesso i suoi primi ETP ai diretti vicini 𝛼 e 𝛾, dopo aver atteso qualche istante per permettere la loro processazione da parte di 𝛼 e 𝛾, il nodo 𝛽~-,,i(1,2),,-~ rimuove i suoi archi con nodi che non appartengono al suo g-nodo di livello 2. Si ricordi infatti che il livello più alto in cui i due g-nodi A e B differiscono è 2. Quindi 𝛽~-,,i(1,2),,-~ rimuove il suo arco con il nodo 𝛼.

Questo fa si che il nodo 𝛼 non può più raggiungere il g-nodo [1] passando per l'arco 𝛼-𝛽~-,,i(1,2),,-~. Però abbiamo detto prima che aveva appreso di poterlo fare passando per l'arco 𝛼-𝛽~-,,B,,-~.

Andrebbe quindi cambiata, dal nodo 𝛼, la rotta verso 10.0.0.4/30. Ma cambiare da 𝛽~-,,i(1,2),,-~ a 𝛽~-,,B,,-~ è superfluo trattandosi del medesimo indirizzo link-local.

Andrebbe poi rimossa, dal nodo 𝛼, la sua rotta verso 𝛽~-,,i(1,2),,-~, ma poiché esso ha una rotta verso 𝛽~-,,B,,-~ che ha il medesimo indirizzo link-local non serve alcun comando.

Andrebbe poi rimossa, dal nodo 𝛽, la rotta di 𝛽~-,,i(1,2),,-~ verso 𝛼, ma poiché 𝛽~-,,B,,-~, che è lo stesso nodo, ha una rotta verso 𝛼 non serve alcun comando.

Riassumiamo l'elenco degli archi ora presenti e il grafo che descrive la rete.
 * 𝛼-𝛽~-,,B,,-~
 * 𝛾-𝛽~-,,B,,-~
 * 𝜀-𝛽~-,,B,,-~
 * 𝛾-𝛽~-,,i(1,2),,-~
 * 𝛾-𝛿
 * 𝛿-𝜇
 * 𝜀-𝛽~-,,i(1,2),,-~

{{drawing:grafo6.adraw}}

Temporaneamente, il nodo 𝛽 non è in grado di comunicare con gli altri nodi della rete in quanto ha solo indirizzi ''virtuali'' al livello 0. Nonostante questo, il nodo è perfettamente in grado di inoltrare pacchetti provenienti da altri nodi e destinati ad altri nodi nella rete. Quindi sebbene 𝛽 sia un nodo punto di articolazione, il grafo resta connesso.

Proseguiamo con il [[../Step5|passo 5]].
[[https://github.com/lukisi/documentation/blob/master/ita/ModuloQspn/UsoIndirizziVirtuali/Step4.md|Redirect]]

Netsukuku/ita/docs/ModuloQSPN/Esempio1/Step4 (last edited 2016-07-27 10:28:50 by lukisi)