четверг, 8 сентября 2011 г.

IEEE 802.1QinQ

IEEE 802.1QinQ is an Ethernet networking standard formally known as IEEE 802.1ad and is an amendment to IEEE standard IEEE 802.1Q-1998. It is for Ethernet frame formats. The techniques is also known as provider bridging, Stacked VLANs or simply QinQ or Q-in-Q.

The original 802.1Q specification allows a single VLAN header to be inserted into an Ethernet frame. QinQ allows multiple VLAN headers to be inserted into a single frame.

In a multiple VLAN header context, out of convenience the term "VLAN tag" or just "tag" for short is often used in place of "802.1Q VLAN header"

QinQ allows multiple VLAN tags in an Ethernet frame; together these tags constitute a tag stack. When used in the context of an Ethernet frame, a QinQ frame is a frame that has 2 VLAN 802.1Q headers (double-tagged).

Understanding How 802.1Q Tunneling Works

802.1Q tunneling enables service providers to use a single VLAN to support customers who have multiple VLANs, while preserving customer VLAN IDs and keeping traffic in different customer VLANs segregated.


A port configured to support 802.1Q tunneling is called a tunnel port. When you configure tunneling, you assign a tunnel port to a VLAN that you dedicate to tunneling, which then becomes a tunnel VLAN. To keep customer traffic segregated, each customer requires a separate tunnel VLAN, but that one tunnel VLAN supports all of the customer's VLANs.

The customer switches are trunk connected, but with 802.1Q tunneling, the service provider switches only use one service provider VLAN to carry all the customer VLANs, instead of directly carrying all the customer VLANs.

With 802.1Q tunneling, tagged customer traffic comes from an 802.1Q trunk port on a customer device and enters the service-provider edge switch through a tunnel port. The link between the 802.1Q trunk port on a customer device and the tunnel port is called an asymmetrical link because one end is configured as an 802.1Q trunk port and the other end is configured as a tunnel port. You assign the tunnel port to an access VLAN ID unique to each customer.




Untagged, 802.1Q-Tagged, and Double-Tagged Ethernet Frames




Настрока


SW1

interface FastEthernet0/7
description QinQ
switchport access vlan 101
switchport mode dot1q-tunnel


SW1

interface FastEthernet0/8
description QinQ
switchport access vlan 101
switchport mode dot1q-tunnel


#system mtu 1504

#show system mtu

System MTU size is 1500 bytes
On next reload, System MTU will be 1504 bytes
System Jumbo MTU size is 1500 bytes
Routing MTU size is 1500 bytes




При попадании пакета на порт interface FastEthernet0/7 sw1 к пакету принудительно будет добавлятся еще один заголовок dot1q.
И по всей сети он будет идти как обычный vlan 101 - но внутри будет удвоенный заголовок ( или двойной tag ) и размер такого пакета будет 1504 байт и на всем пути следования такого пакета необходимо поставить минимальный размер MTU 1504 - то есть на всех транзитных коммутаторах (если такие имеются) надо тоже ставить , более того на всем транзитном железе (если оно будет) , которое обрабатает ethernet фреймы необходимо выставить MTU 1504.

Если же System MTU будет меньше, то при реализации Q-in-Q и System MTU size is 1500 bytes коммутатор просто удалит этот второй заголовок dot1q для Q-in-Q и пакет не будет иметь соответсвующий заголовок , тем самым он будет отброшен .


Для того , что бы проходили пакеты двойной упаковки или vlan в vlan или Q-in-Q необходимо иметь как минимум System MTU size is 1504 bytes - для чего это надо , так как размер ethernet фрейма вместе с заголовками составляет 1500 байт ( по умолчанию ) , а при упаковке (или перепакови) Q-in-Q на обычный фрейм накладывается еще один заголовок dot1q - а это еще 4 байта . Вот и получается , что как минимум надо ставить System MTU size is 1504 bytes или больше .

Пакеты с 2-м тагом может пропустить любое оборудование на котором можно выставить значение MTU больше 1500


It is also important to understand some of the limitations of 802.1q tunnels. Namely:
- They do not support carrying VTP, DTP, or CDP packets to the remote device
- Spanning-tree filtering is automatically enabled on the PE (Provider Edge) port.
- Layer 3 features on the PE ports are not supported such as L3 QoS and L3 ACL’s
- Fallback bridging is not supported for VLAN’s carrying customer traffic in the Metro Ethernet