Differences between revisions 1 and 2
Revision 1 as of 2015-12-19 22:06:19
Size: 4834
Editor: lukisi
Comment:
Revision 2 as of 2015-12-27 15:47:08
Size: 4840
Editor: lukisi
Comment:
Deletions are marked like this. Additions are marked like this.
Line 6: Line 6:
Il nuovo indirizzo ''virtuale'' ''globale'' [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. 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.
Line 28: Line 28:
L'assegnazione del nuovo indirizzo ''globale'' a 𝛽~-,,B,,-~ non comporta un comando di assegnazione di indirizzo per il nodo 𝛽, poiché anche questo indirizzo è ''virtuale'' al livello 0. 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.

Modulo QSPN - Esempio di uso degli indirizzi virtuali

Passo 4

In questo passo aggiungiamo un nuovo nodo al g-nodo g1(𝛼).

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.

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)

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 passo 5.

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