O que acontece quando um comutador consumidor recebe um quadro Ethernet marcado com VLAN?

28

Suponha que você conecte uma porta de tronco de um comutador de rede compatível com VLAN a um comutador de rede de nível consumidor (incapaz de VLAN) por meio de um cabo direto. Agora, o switch anterior envia ao switch posterior um quadro Ethernet com etiqueta 802.1Q. O que a chave posterior deve fazer? Soltar o quadro? Encaminhar o quadro? Comportamento indefinido?

Se o comportamento é indefinido, o que é mais provável?


Edit: Obrigado por suas respostas. Para resumir, o comportamento da opção consumidor depende de:

  1. Como ele lida com quadros 0x8100no campo EtherType 1
  2. Como ele lida com quadros jumbo ou quadros com carga útil maior que 1500 bytes

A Wikipedia possui um bom diagrama comparando um quadro Ethernet sem tag e um com tag:

Quadro Ethernet

Há relatos de que alguns comutadores de nível de consumidor passam nos quadros marcados com VLAN muito bem.

1 ou mais precisamente, onde um campo EtherType é esperado para quadros sem etiqueta

netvope
fonte
11
Espero que você não esteja fazendo na esperança de usar o referido interruptor do consumidor em um algum lugar rack de produção ...
Mike Pennington

Respostas:

13

Na verdade, eu vi isso em um interruptor barato. Alguém havia conectado um switch entre uma porta de tronco com algumas vlans. Os quadros foram encaminhados com a marcação vlan intacta. As outras portas desse switch foram capazes de usar a vlan sem etiqueta.

Um switch precisa apenas do Mac de origem / destino para decidir para quais portas encaminhar os quadros, portanto, isso não é muito surpreendente, um quadro marcado ainda possui os Macs de origem e destino, no mesmo local no cabeçalho do quadro.

Lembre-se de que a Ethernet realmente suporta muitos tipos de quadros diferentes no mesmo fio. Foi projetado para ser bastante flexível sobre o que pode fazer.

Zoredache
fonte
Se o comutador não souber o Tipo Ether usado para os quadros marcados, ele será processado como se fosse um Tipo Ether normal. Isso funcionará principalmente, mas pode falhar em configurações complicadas, nas quais a porta de destino depende do MAC e do tag. Por exemplo, se você instalar um firewall de ponte entre duas VLANs marcadas, o switch sem suporte a VLAN poderá enviar alguns pacotes na direção errada. Fora isso, um problema óbvio que pode acontecer é que os pacotes são descartados porque excedem o tamanho máximo de quadros sem marcação.
kasperd
13

Geralmente, os quadros Ethernet excessivamente grandes podem ser e são descartados. Na presença de coisas como quadros de tamanho jumbo, é difícil definir grandes quadros Ethernet, por isso realmente depende - mas o descarte será provavelmente o comportamento mais frequente encontrado.

editar: Para elaborar: O tamanho padrão do quadro Ethernet IEEE 802.3 é 1518 bytes, o 802.3Q adiciona 4 bytes ao quadro, portanto, possui um MTU total de 1522 bytes, o que pode ser muito grande para alguns comutadores.

pfo
fonte
Você poderia elaborar o que os grandes quadros Ethernet têm a ver com a marcação de VLAN 802.1Q?
Martijn Heemels 22/11/11
Você está dizendo que a tag tornaria o quadro muito grande?
Shane Madden
6
@ShaneMadden Algumas implementações do 802.1q aumentam o MTU efetivo até 1522b para os quadros marcados, que serão eliminados pelos comutadores com apenas um MTU de 1500b.
sysadmin1138
3
+1 para sysadmin1138 e +1 para pfo: alguns switches antigos descartam os quadros marcados porque o 802.1q aumentou a MTU Ethernet.
Evan Anderson
A marcação de VLAN aumenta o tamanho máximo do quadro em 4 bytes, por isso é maior que 1518 bytes e, por definição, é um quadro "jumbo".
PFO
6

O comutador de classe de consumidor tentará encaminhar o endereço MAC de destino do quadro. Se o endereço MAC de destino não estiver em sua tabela CAM, ele inundará o quadro de todas as suas portas, exceto a de onde o pacote foi recebido.

Um comutador que usa o método de encaminhamento Cut Through encaminhará definitivamente o quadro, já que começa o encaminhamento assim que o endereço MAC de destino for lido - mesmo se o tamanho total do quadro for maior que o MTU - desde que não seja possível calcular o tamanho do quadro com este método de encaminhamento.

Um comutador baseado na técnica Store And Forward provavelmente fará o mesmo, desde que o tamanho do quadro seja <= MTU, desde que o FCS esteja OK.

Se o switch incapaz 802.1Q interconectar dispositivos finais, os dispositivos receberão o quadro e o descartarão, pois não "sabem" como processar os quadros 802.1Q (tipo 0x8100).

Especulo que, se o switch de classe de consumidor interconectar os switches compatíveis com 802.1Q ( o horror! ), Os quadros serão encaminhados e processados ​​pelo 802.1Q - desde que, é claro, sejam recebidos nas portas de tronco.

dkaragasidis
fonte
Eh. Os dispositivos de ponto final do Linux lidam com quadros marcados muito bem. Eu os vi fazer isso.
Zan Lynx
11
@ZanLynx True. Embora os dispositivos de ponto final não devam lidar com quadros marcados, você perde todo o ponto das VLANs configurando dispositivos de ponto final para receber e manipular quadros 802.1q.
dkaragasidis
FCS = comutação rápida de circuito? O que determina se "o FCS está OK"?
Netvope
2
@netvope: FCS - Sequência de verificação de quadro: en.wikipedia.org/wiki/Frame_check_sequence
Evan Anderson
11
@dkaragasidis Existem razões perfeitamente válidas para configurar alguns hosts para usar quadros marcados. Mas é melhor garantir que a marcação de VLAN esteja desativada nas portas voltadas para hosts que você não deseja usar quadros marcados. Os motivos para o uso de quadros marcados em um host Linux incluem um atuando como um roteador entre VLANs ou um servidor que precisa ser acessível a partir de clientes em VLANs diferentes.
kasperd