Rilevamento di diversi frame Ethernet


12

Come si può distinguere tra diversi pacchetti nel protocollo Ethernet? Non ha campo / area "lunghezza" poiché i protocolli di livello superiore usano per farlo.

Poiché questo protocollo ha una gestione sia in ambito fisico che logico, presumo che anche la distinzione sia separata.

La separazione logica viene eseguita utilizzando il campo del protocollo "EtherType"? (ovvero ottenere la lunghezza del pacchetto usando il tipo di protocollo di livello superiore, che ha un campo di lunghezza nelle intestazioni).

La distinzione fisica è semplicemente la non trasmissione di segnali elettrici? (Per quanto ne sappia, i segnali elettrici alto / basso rappresentano 0/1 bit).

Risposte:


14

Sebbene ytti abbia risposto, ci sono alcuni dettagli rilevanti che potrebbero interessarti ...

Come si può distinguere tra diversi pacchetti nel protocollo Ethernet? Non ha campo / area "lunghezza" poiché i protocolli di livello superiore usano per farlo.

In realtà Ethernet ha molteplici incapsulamenti:

  • Ethernet II (in genere utilizzato per IP, come specificato in [RFC 894], è l'incapsulamento più comune): non ha un campo di lunghezza , invece viene usato un campo di tipo ...
       +----+----+------+------+-----+
       | 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)
  • Ethernet 802.2 LLC: ha un campo di lunghezza
       +----+----+------+------+------+------+-----+
       | 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)

Indipendentemente dall'esistenza del campo di lunghezza dell'802.2, è sempre possibile rilevare la fine di un frame ethernet sul filo cercando il gap dell'interframe a 96 bit .

La separazione logica viene eseguita utilizzando il campo del protocollo "EtherType"? (ovvero ottenere la lunghezza del pacchetto usando il tipo di protocollo di livello superiore, che ha un campo di lunghezza nelle intestazioni).

Per separazione logica, presumo tu intenda la separazione tra diversi protocolli portati all'interno di Ethernet, ad esempio si distingue tra IPv4, IPv6 o forse Spanning-Tree Frames.

  • Ethernet II normalmente utilizza il campo Tipo
  • 802.2 LLC Ethernet normalmente utilizza l' estensione SNAP Ethernet 802.2 a cinque byte . I protocolli vengono decodificati solo con l'estensione SNAP quando i byte DSAP / SSAP 802.2 sono 0xAAAA.

La distinzione fisica è semplicemente la non trasmissione di segnali elettrici? (Per quanto ne so, i segnali elettrici alto / basso rappresentano 0/1 bit)

Semplicisticamente, sì, esiste un divario a 96 bit tra i frame Ethernet; tuttavia, si noti che Ethernet utilizza una codifica 8b / 10b (FastEthernet) e codifica 64b / 66b (GigabitEthernet), quindi non è tecnicamente corretto dire "non trasmissione di segnali elettrici", poiché 8b / 10b non ha un " stato "silenzioso".


Per i curiosi, sto anche collegando alla specifica Ethernet versione 2 originale .


7

Ethernet ha un preambolo e avvia il delimitatore di frame all'inizio e alla fine ha 'IFG' o inter-frame-gap. Questi sono usati per determinare l'inizio e la fine del frame.


È una separazione nell'ambito fisico o logico? Tuttavia, cosa succede se il campo dati del protocollo includerà informazioni / caratteri / segnali identici ai delimitatori di inizio / fine?
Riflessione

1
Gap è letteralmente proprio questo, non c'è rischio di trovarlo nel payload. Tuttavia, in alcuni altri contesti non ethernet questa è una preoccupazione e può essere risolta assicurandosi che alcuni simboli non vengano mai usati per codificare i dati, ma solo per la segnalazione, diminuirebbe comunque l'efficienza sprecando alcuni simboli per "non utili" dati.
ytti,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.