Mendeteksi frame Ethernet yang berbeda

12

Bagaimana seseorang dapat membedakan antara paket yang berbeda dalam protokol Ethernet? Ia tidak memiliki bidang "panjang" seperti yang digunakan protokol tingkat tinggi untuk melakukannya.

Karena protokol ini memiliki penanganan dalam lingkup fisik dan logis, saya berasumsi bahwa perbedaannya juga dipisahkan.

Apakah pemisahan logis dilakukan menggunakan bidang protokol "EtherType"? (yaitu mendapatkan panjang paket menggunakan jenis protokol tingkat yang lebih tinggi, yang memiliki bidang panjang di header itu).

Apakah perbedaan fisik hanyalah non-transmisi sinyal listrik? (Setahu saya, sinyal listrik tinggi / rendah mewakili 0/1 bit).

Refleksi
sumber

Jawaban:

14

Meskipun ytti menjawab, ada beberapa detail relevan yang mungkin menarik bagi Anda ...

Bagaimana seseorang dapat membedakan antara paket yang berbeda dalam protokol Ethernet? Ia tidak memiliki bidang "panjang" seperti yang digunakan protokol tingkat tinggi untuk melakukannya.

Sebenarnya ethernet memiliki beberapa enkapsulasi:

  • Ethernet II (Biasanya digunakan untuk IP, seperti yang ditentukan dalam [RFC 894], adalah enkapsulasi yang paling umum): Tidak memiliki bidang panjang , sebaliknya bidang jenis digunakan ...
       +----+----+------+------+-----+
       | 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: memiliki bidang panjang
       +----+----+------+------+------+------+-----+
       | 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)

Terlepas dari keberadaan bidang panjang 802.2, Anda selalu dapat mendeteksi ujung bingkai ethernet pada kawat dengan mencari Interframe Gap 96-bit .

Apakah pemisahan logis dilakukan menggunakan bidang protokol "EtherType"? (yaitu mendapatkan panjang paket menggunakan jenis protokol tingkat yang lebih tinggi, yang memiliki bidang panjang di header itu).

Dengan pemisahan logis, saya berasumsi maksud Anda pemisahan antara protokol yang berbeda yang dilakukan di dalam ethernet, seperti membedakan antara IPv4, IPv6 atau mungkin Spanning-Tree Frames.

  • Ethernet II biasanya menggunakan bidang Type
  • 802.2 LLC Ethernet biasanya menggunakan ekstensi SNAP Ethernet 802.2 lima byte . Protokol hanya diterjemahkan dengan ekstensi SNAP ketika byte 802.2 DSAP / SSAP adalah 0xAAAA.

Apakah perbedaan fisik hanyalah non-transmisi sinyal listrik? (Setahu saya, sinyal listrik tinggi / rendah mewakili 0/1 bit)

Secara sederhana, ya ada kesenjangan 96-bit antara frame Ethernet; namun, perhatikan bahwa ethernet menggunakan pengodean 8b / 10b (FastEthernet) dan 64b / 66b (GigabitEthernet), jadi secara teknis tidak benar untuk mengatakan "non-transmisi sinyal listrik", karena 8b / 10b tidak memiliki " diam "negara.


Bagi yang penasaran, saya juga menautkan ke spesifikasi Ethernet Versi 2 yang asli .

Mike Pennington
sumber
7

Ethernet memiliki pembukaan dan pembatas frame mulai saat start dan pada akhirnya memiliki 'IFG' atau inter-frame-gap. Ini digunakan untuk menentukan awal dan akhir bingkai.

ytti
sumber
Apakah ini pemisahan dalam lingkup fisik atau logis? Namun, bagaimana jika bidang data protokol akan menyertakan informasi / karakter / sinyal yang sama dengan pembatas awal / akhir?
Refleksi
1
Kesenjangan secara harfiah hanya itu, tidak ada risiko menemukannya di payload. Namun dalam beberapa hal lain, konteks non-ethernet ini mengkhawatirkan dan dapat diperbaiki dengan memastikan bahwa beberapa simbol tidak pernah digunakan untuk menyandikan data, tetapi hanya untuk pensinyalan, namun akan mengurangi efisiensi untuk membuang beberapa simbol untuk 'tidak berguna' data.
ytti