Ytti cevaplasa da, ilginizi çekebilecek ilgili bazı detaylar vardır ...
Birisi Ethernet protokolündeki farklı paketleri nasıl ayırt edebilir? Üst düzey protokollerin bunu yapmak için kullandığı "uzunluk" alanı / alanı yoktur.
Aslında ethernet'in birden fazla kapsülü vardır:
- Ethernet II (Genellikle [RFC 894] 'de belirtildiği gibi IP için kullanılır, en yaygın kapsülleme yöntemidir): Uzunluk alanı yoktur, bunun yerine bir tür alanı kullanılır ...
+----+----+------+------+-----+
| 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: uzunluk alanı var
+----+----+------+------+------+------+-----+
| 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)
802.2'nin uzunluk alanının varlığına bakılmaksızın, 96 bit Interframe Gap'ı arayarak tel üzerindeki bir ethernet çerçevesinin sonunu her zaman tespit edebilirsiniz .
Mantıksal ayırma "EtherType" protokol alanı kullanılarak mı yapılıyor? (yani, üstbilgilerinde bir uzunluk alanı olan daha üst düzey protokol türünü kullanarak paket uzunluğunu elde etmek).
Mantıksal ayırma ile, Ethernet içinde taşınan farklı protokoller arasındaki ayrımı kastediyorum, IPv4, IPv6 veya belki de Spanning-Tree Çerçeveleri arasında ayrım yapmak gibi.
- Ethernet II normalde Tür alanını kullanır
- 802.2 LLC Ethernet normal olarak beş baytlı 802.2 Ethernet SNAP uzantısını kullanır . Yalnızca 802.2 DSAP / SSAP baytları 0xAAAA olduğunda protokollerin kodu SNAP uzantısıyla çözülür.
Fiziksel ayrım sadece elektrik sinyallerinin iletilmemesi midir? (Bildiğim kadarıyla, yüksek / düşük elektrik sinyalleri 0/1 biti temsil ediyor)
Basitçe, evet Ethernet çerçeveleri arasında 96 bit boşluk var; ancak, ethernet'in 8b / 10b kodlama (FastEthernet) ve 64b / 66b kodlama (GigabitEthernet) kullandığını unutmayın, bu nedenle "elektrik sinyallerinin iletilmemesi" demek teknik olarak doğru değildir, çünkü 8b / 10b'de " sessiz "durumu.
Meraklı olmak için, orijinal Ethernet Sürüm 2 spesifikasyonuna da bağlanıyorum .