Passa al contenuto principale

6. Illustrazioni

6. Illustrazioni​

Questa sezione fornisce illustrazioni dell'elaborazione dei pacchetti SRv6 nei nodi sorgente SR, di transito e di endpoint di segmento SR.

6.1. Rappresentazione astratta di un SRH​

Per un nodo k, il suo indirizzo IPv6 è rappresentato come Ak e il suo SID SRv6 come Sk.

Le intestazioni IPv6 sono rappresentate come la tupla (sorgente,destinazione). Ad esempio, un pacchetto con indirizzo sorgente A1 e indirizzo di destinazione A2 è rappresentato come (A1,A2). Il payload del pacchetto è omesso.

Una SR Policy è un elenco di segmenti. Un elenco di segmenti è rappresentato come <S1,S2,S3>, dove S1 è il primo SID da visitare, S2 il secondo SID e S3 l'ultimo SID da visitare.

(SA,DA) (S3,S2,S1; SL) rappresenta un pacchetto IPv6 con:

  • Indirizzo sorgente SA, indirizzo di destinazione DA e intestazione successiva SRH.
  • SRH con elenco di SID <S1,S2,S3> e SegmentsLeft = SL.
  • Si noti la differenza tra i simboli <> e (). <S1,S2,S3> rappresenta un elenco di SID in cui il segmento più a sinistra è il primo. Al contrario, (S3,S2,S1; SL) rappresenta lo stesso elenco di SID, ma codificato nel formato Segment List dell'SRH, in cui il segmento più a sinistra è l'ultimo. Per fare riferimento a una SR Policy in un caso d'uso di alto livello, è più semplice usare la notazione <S1,S2,S3>. Per fare riferimento a un'illustrazione di comportamento dettagliato, è più comoda la notazione (S3,S2,S1; SL).

Al punto di ingresso della sua SR Policy, l'elenco di segmenti <S1,S2,S3> produce l'SRH (S3,S2,S1; SL=2), rappresentato completamente come segue:

Segments Left=2
Last Entry=2
Flags=0
Tag=0
Segment List[0]=S3
Segment List[1]=S2
Segment List[2]=S1

6.2. Topologia di esempio​

Negli esempi seguenti viene usata la topologia seguente:

+ * * * * * * * * * * * * * * * * * * * * +

* [8] [9] *
| |
* | | *
[1]----[3]--------[5]----------------[6]---------[4]---[2]
* | | *
| |
* | | *
+--------[7]-------+
* *

+ * * * * * * * SR domain * * * * * * * +

Figura 1
  • 3 e 4 sono router di bordo del dominio SR.
  • 5, 6 e 7 sono tutti router del dominio SR.
  • 8 e 9 sono host all'interno del dominio SR.
  • 1 e 2 sono host esterni al dominio SR.
  • Il dominio SR implementa il filtraggio in ingresso come previsto dalla Sezione 5.1 e nessun pacchetto esterno può entrare nel dominio con un indirizzo di destinazione uguale a un segmento del dominio.

6.3. Nodo sorgente SR​

6.3.1. Pacchetto interno al dominio SR​

Quando l'host 8 invia un pacchetto all'host 9 tramite una SR Policy <S7,A9>, il pacchetto è

P1: (A8,S7)(A9,S7; SL=1)

6.3.1.1. Variante ridotta​

Quando l'host 8 invia un pacchetto all'host 9 tramite una SR Policy <S7,A9> e vuole usare un SRH ridotto, il pacchetto è

P2: (A8,S7)(A9; SL=1)

6.3.2. Pacchetto tra domini SR -- Transito​

Quando l'host 1 invia un pacchetto all'host 2, il pacchetto è

P3: (A1,A2)

Il router 3 di ingresso del dominio SR riceve P3 e lo instrada al router 4 di uscita del dominio SR tramite una SR Policy <S7,S4>. Il router 3 incapsula il pacchetto P3 ricevuto in un'intestazione esterna con un SRH. Il pacchetto è

P4: (A3,S7)(S4,S7; SL=1)(A1,A2)

Se la SR Policy contiene un solo segmento (il router 4 di uscita), il router 3 di ingresso incapsula P3 in un'intestazione esterna (A3,S4) senza SRH. Il pacchetto è

P5: (A3,S4)(A1,A2)

6.3.2.1. Variante ridotta​

Il router 3 di ingresso del dominio SR riceve P3 e lo instrada al router 4 di uscita tramite una SR Policy <S7,S4>. Se il router 3 vuole usare un SRH ridotto, incapsula il pacchetto P3 ricevuto in un'intestazione esterna con un SRH ridotto. Il pacchetto è

P6: (A3,S7)(S4; SL=1)(A1,A2)

6.3.3. Pacchetto tra domini SR -- Da interno a esterno​

Quando l'host 8 invia un pacchetto all'host 1, il pacchetto è incapsulato per la parte del percorso all'interno del dominio SR. Da 8 a 3 il pacchetto è

P7: (A8,S3)(A8,A1)

Nella direzione opposta, il pacchetto generato da 1 a 8 è

P8: (A1,A8)

Nel nodo 3, P8 è incapsulato per la parte del percorso all'interno del dominio SR, con l'intestazione esterna destinata al segmento S8. Il risultato è

P9: (A3,S8)(A1,A8)

Nel nodo 8, l'intestazione IPv6 esterna viene rimossa dall'elaborazione S8 e poi il pacchetto viene elaborato nuovamente quando è ricevuto da A8.

6.4. Nodo di transito​

Il nodo 5 agisce come nodo di transito per il pacchetto P1 e invia il pacchetto

P1: (A8,S7)(A9,S7;SL=1)

sull'interfaccia verso il nodo 7.

6.5. Nodo endpoint di segmento SR​

Il nodo 7 riceve il pacchetto P1 e, usando la logica della Sezione 4.3.1, invia il pacchetto

P7: (A8,A9)(A9,S7; SL=0)

sull'interfaccia verso il router 6.

6.6. Delega di funzione con verifica HMAC​

Questa sezione descrive come una funzione possa essere delegata all'interno del dominio SR. Nelle sezioni seguenti, si consideri un host 8 collegato a un top-of-rack 5.

6.6.1. Verifica dell'elenco di SID​

Un operatore può preferire applicare l'SRH alla sorgente 8, mentre il nodo 5 verifica che l'elenco di SID sia valido.

A fini illustrativi, un controller SDN fornisce al nodo 8 un SRH che termina al nodo 9, con Segment List <S5,S7,S6,A9> e HMAC TLV calcolato per l'SRH. L'ID della chiave HMAC e la chiave associata al TLV HMAC sono condivisi con il nodo 5. Il nodo 8 non conosce la chiave. Il nodo 5 è configurato con un IACL applicato all'interfaccia connessa a 8, che richiede la verifica HMAC per ogni pacchetto destinato a S/s.

Il nodo 8 origina pacchetti con l'SRH ricevuto, incluso il TLV HMAC.

P15: (A8,S5)(A9,S6,S7,S5;SL=3;HMAC)

Il nodo 5 riceve e verifica l'HMAC per l'SRH, quindi inoltra il pacchetto al segmento successivo

P16: (A8,S7)(A9,S6,S7,S5;SL=2;HMAC)

Il nodo 6 riceve

P17: (A8,S6)(A9,S6,S7,S5;SL=1;HMAC)

Il nodo 9 riceve

P18: (A8,A9)(A9,S6,S7,S5;SL=0;HMAC)

Questo uso di un HMAC è particolarmente utile all'interno di un dominio SR aziendale [SRN].