QinQ tunneling junos example

Home » Blog » Configuration Template » Juniper » QinQ tunneling junos example

QinQ tunneling junos example

06.02 2024 | by massimiliano

QinQ tunneling è una tecnica di tipo service provider che permette di creare un collegamento layer 2 tra due client […]



QinQ tunneling è una tecnica di tipo service provider che permette di creare un collegamento layer 2 tra due client sites.

Il Provider può segregare questi clienti in VLAN traffic over link (caso di overlapping vlan-id) oppure aggregate (bundle) differenti Vlan Client all’interno di un singolo Service VLAN.

C-VLAN (UNI): è il tipo di pacchetto che traversa da un client verso il Provider’s VLAN [al tag originale 802.1Q del cliente viene aggiunto il tag vlan 802.1Q (tunneling) del provider]

S-VLAN (NNI): è il tipo di pacchetto che ha il compito di segregare il traffico del cliente con il proprio originale tag-vlan, grazie alla tecnica di QinQ 802.1Q tunneling che traversa la rete del Provider; in direzione downstream quando il pacchetto arriva al nodo di destinazione della rete Provider, S-VLAN viene rimossa e rilasciato il pacchetto nella sua forma originale.

E’ possibile mappare una C-VLAN verso una S-VLAN (rapporto di 1:1) oppure multiple C-VLAN verso una S-VLAN (rapporto N:1)

Access Interface sono le customer-facing ed accettano sia frame tagged che untagged

Quando si usa il rapporto N:1 è necessario utilizzare l’opzione native per specificare una S-VLAN per frame untagged e una priority per accettare pacchetti tagged; priority tagged packets hanno un Vlan-Id settato a 0 e il valore di priority può essere configurato attraverso un CoS value)

Class of Service sono invariati in direzione downstream del pacchetto; in ingresso è possibile copiare priority e CoS settings to S-VLAN

QinQ tunneling è configurabile solo in una porta in access mode (not trunk)

MTU ha necessità di essere ridotto in un link access almeno di 4 byte in modo tale che la frame non ecceda il valore di MTU del trunk link quando la S-VLAN viene aggiunta; viceversa il trunk link ha necessità di essere aumentato per una migliore gestione di pacchetti con un frame size largo.

La tecnica Vlan Translation sostituisce una C-VLAN tag con una S-VLAN tag invece di aggiungerla ed utilizza lo statement «mapping swap» a livello di «edit vlans interface» ed inoltre se la configurazione riguarda il rapporto 1:1 non vi è necessità di includere il comando «dot1q-tunneling» per la configurazione S-VLAN, viceversa con il rapporto N:1 è necessario utilizzare il comando «dot1q-tunneling»

A partire dalla release 14.1X53-D40, è possibile utilizzare la tecnica di Dual Vlan Tag Translation (anche conosciuta come Vlan Tag Rewrite) che permette l’ingresso di pacchetti di tipo single-tag, dual-tag ed untagged.

Esempio di Config on PE Junos:

set interface ge-2/0/1 unit 1010 encapsulation vlan-ccc  # ccc = L2VPN circuit cross-connect specifica per un collegamento PE-CE

set interface ge-2/0/1 unit 1010 vlan-id 1010

set interface ge-2/0/1 unit 1010 input-vlan-map swap

set interface ge-2/0/1 unit 1010 input-vlan-map vlan-id 2020

set interface ge-2/0/1 unit 1010 output-vlan-map swap

Verifica:

show interface ge-2/0/1.1010 | match vlan

 VLAN-Tag [ 0x8100.1010 ]

 In (swap-swap .2020) Out (swap-swap . 1010)

Encapsulation: VLAN-CCC

OperationFunction
swap-pushswap a VLAN tag and push a new VLAN tag
pop-swappop an outer Vlan tag and swap an inner Vlan tag
swap-swapswap both outer and inner Vlan tags
Torna in alto