Detectando diferentes quadros Ethernet


12

Como alguém pode distinguir entre pacotes diferentes no protocolo Ethernet? Ele não possui campo / área de "comprimento", como os protocolos de nível superior usam para fazer isso.

Como esse protocolo possui manipulação nos escopos físico e lógico, presumo que a distinção também seja separada.

A separação lógica é realizada usando o campo de protocolo "EtherType"? (ou seja, obter o tamanho do pacote usando o tipo de protocolo de nível superior, que possui um campo de comprimento nos cabeçalhos).

A distinção física é simplesmente a não transmissão de sinais elétricos? (Pelo que sei, sinais elétricos altos / baixos estão representando 0/1 bits).

Respostas:


14

Embora o ytti tenha respondido, há alguns detalhes relevantes nos quais você pode estar interessado ...

Como alguém pode distinguir entre pacotes diferentes no protocolo Ethernet? Ele não possui campo / área de "comprimento", como os protocolos de nível superior usam para fazer isso.

Na verdade, a Ethernet possui vários encapsulamentos:

  • Ethernet II (normalmente usado para IP, conforme especificado em [RFC 894], é o encapsulamento mais comum): não possui um campo de comprimento , mas um campo de tipo é usado ...
       +----+----+------+------+-----+
       | DA | SA | Type | Data | FCS |
       +----+----+------+------+-----+
                 ^^^^^^^^

       DA      Destination MAC Address (6 bytes)
       SA      Source MAC Address      (6 bytes)
       Type    Protocol Type           (2 bytes: >= 0x0600 or 1536 decimal)  <---
       Data    Protocol Data           (46 - 1500 bytes)
       FCS     Frame Checksum          (4 bytes)
  • 802.2 LLC Ethernet: possui um campo de comprimento
       +----+----+------+------+------+------+-----+
       | DA | SA | Len  | LLC  | SNAP | Data | FCS |
       +----+----+------+------+------+------+-----+
                 ^^^^^^^^

       DA      Destination MAC Address (6 bytes)
       SA      Source MAC Address      (6 bytes)
       Len     Length of Data field    (2 bytes: <= 0x05DC or 1500 decimal)  <---
       LLC     802.2 LLC Header        (3 bytes)
       SNAP                            (5 bytes)
       Data    Protocol Data           (46 - 1492 bytes)
       FCS     Frame Checksum          (4 bytes)

Independentemente da existência do campo de comprimento do 802.2, você sempre pode detectar o final de um quadro ethernet no fio, procurando o Interframe Gap de 96 bits .

A separação lógica é realizada usando o campo de protocolo "EtherType"? (ou seja, obter o tamanho do pacote usando o tipo de protocolo de nível superior, que possui um campo de comprimento nos cabeçalhos).

Por separação lógica, suponho que você queira dizer separação entre diferentes protocolos carregados dentro da Ethernet, como a distinção entre IPv4, IPv6 ou talvez Spanning Tree Frames.

  • Ethernet II normalmente usa o campo Tipo
  • A Ethernet 802.2 LLC normalmente usa a extensão SNAP Ethernet 802.2 de cinco bytes . Os protocolos são decodificados apenas com a extensão SNAP quando os bytes 802.2 DSAP / SSAP são 0xAAAA.

A distinção física é simplesmente a não transmissão de sinais elétricos? (Que eu saiba, sinais elétricos altos / baixos estão representando 0/1 bits)

Simplisticamente, sim, existe um espaço de 96 bits entre os quadros Ethernet; no entanto, observe que a ethernet usa as codificações 8b / 10b (FastEthernet) e 64b / 66b (GigabitEthernet); portanto, não é tecnicamente correto dizer "não transmissão de sinais elétricos", pois 8b / 10b não possui " estado silencioso ".


Para os curiosos, também estou ligando à especificação original da Ethernet Versão 2 .


7

A Ethernet possui preâmbulo e delimitador de quadro inicial no início e no final possui 'IFG' ou gap entre quadros. Eles são usados ​​para determinar o início e o fim do quadro.


É uma separação no escopo físico ou lógico? No entanto, e se o campo de dados do protocolo incluir informações / caracteres / sinais iguais aos delimitadores de início / fim?
Reflexão

1
Gap é literalmente apenas isso, não há risco de encontrá-lo na carga útil. No entanto, em algum outro contexto não-Ethernet, isso é uma preocupação e pode ser corrigido, certificando-se de que alguns símbolos nunca sejam usados ​​para codificar dados, mas apenas para sinalização, no entanto, diminuiria a eficiência desperdiçar alguns símbolos por 'não úteis' dados.
Ytti
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.