Ethernet'in neden minimum çerçeve boyutu belirtildi?


12

Bence minimum değer 64 bayt. Bu minimum neden gereklidir?

Yanıtlar:


16

Biraz hızlı okuma yapmak, CSMA / CD'nin Çarpışma Tespiti kısmı ile ilgili gibi görünüyor. Eski yayın ortamında çerçeveler çok küçük olsaydı, bazı çarpışmalar algılanamazdı. Otomobil analojileri temamı bugün de sürdürdüğüm için, yüksek hızlı otoyollarda bisikletlere izin vermememizle aynı sebepten dolayı onlar için güvenli değil.


3
+1, bisikletler hakkında bir şey bilmiyordum ...
Kyle Brandt

6
+1 Çarpışma algılama sebebidir. 64 bayt, 10 Mb ethernet hızında 0,04 ms'dir. Daha küçük ve çarpışmalar tespit edilemez (1982'de).
sysadmin1138

Seni anlıyorsam, minimum 64 baytın nedeni diğer istasyonların bunu fark etmesi için yeterli zaman vermektir?
CodyBugstein

1
Çarpışmaların neden saptanamayacağını ayrıntılı bir şekilde açıklar mısınız?
problem

1
Eminim yüksek hızlı bir otoyolda bisiklet çarpışması tespit edilebilir. Her neyse, ABD'nin çoğu eyaletinde eyaletler arası bisikletlere izin verildiğinden, benzetmenin ne kadar uygun olduğundan emin değilim. :)
Michael Hampton

4

Mfinni'nin (kesinlikle doğru) cevabına ek olarak, minimum bir çerçeve boyutu ayarlamak, çerçevelerinizin sağlama toplamlarını doğrulamak için birden fazla alma döngüsü geçirmenizi sağlar. Ye Olde Günlerinde, bir döngü başına bir bit işleyen bir çip kolayca hayal edilebilir, ancak alma yoluna paralel çalışan özel bir yol üzerinde bir sağlama toplamı hesaplamak için birçok döngü alır. Çok sayıda kısa mesaj almak, bu sağlama toplamı mantığının birden fazla eşzamanlı işlemin tetiklenmesiyle karıştırılmasına neden olabilir. Belirli bir boyut eşiğinin altındaki herhangi bir şeyi atmak, bu sorunu basit bir şekilde önlemenizi sağlar.


Bu cevabın yanlış olduğuna inanıyorum; ortamdaki yayılma gecikmesi ve çarpışma tespiti ile ilgilidir.
Andrew Wagner

@AndrewWagner, Yanıtımda söylediğim gibi, mfinni'nin çarpışma tespiti ile ilgili yukarıdaki cevabı doğru. Demek istediğim, şartnamenin bu "tuhaflığı" donanım tasarımcıları kendi birkaç kısayol almak için izin verdi.
BMDan

2

Ethernet, paylaşılan bir ortam (eter!) Üzerinde çalışacak şekilde tasarlanmıştır. Gönderenler eteri sürdükleri sinyalin eterdekinden farklı olduğunu algılayabilirler.

Ne yazık ki tüm medyaların yayılma gecikmesi vardır (maalesef ışık bile sınırlı bir hızda hareket eder).

Çok kısa bir çerçeve gönderdiğinizi varsayalım. Alıcının çerçevenizi alırken aynı zamanda iletip iletmediğini tespit etmek için, gönderdikleri sinyalin size ulaşmasını beklemeniz gerekir, bu nedenle olup olmadığını bilmeden önce ortamın yayılma gecikmesini iki kez beklemeniz / dinlemeniz gerekir. alıcı uçta bir çarpışma.

Şimdi, bu süre içinde sadece dinlemek (sessizlik göndermek) yerine, o zaman boyunca bazı yararlı bilgiler de gönderebilirsiniz.

Bu nedenle standart, minimum kare boyutunu, TWICE'da paylaşılan ortamdaki en kötü durum yayılım gecikmesi olarak gönderebileceğiniz veri miktarı olarak ayarlar.

Bu yüzden mutsuz iseniz, büyük çerçeveler küçük mesajınız için "optimize edilmemiş" hissediyorsa, paketteki fazladan alanı başka bir şekilde sıfır göndermeniz gerektiğinde göndermek için başka bir şey bulma fırsatı olarak düşünün.

Tabii ki yerel bir ağ standardında çarpışma ve yayılma gecikmeleri ile başa çıkmanın birçok yolu var, ama o zaman ethernet olmazdı ve sanırım hepimiz ethernet'in oldukça tatlı olduğunu kabul edebiliriz.


Soru: Öyleyse neden minimum değere ihtiyacınız olduğunu anlıyorum 2 x PDama 64 bayt nereden geliyor? Kablonun uzunluğuna / tipine bağlı olmamalı mı? 64 bayt keyfi görünüyor
CodyBugstein

Eski verimlilik VS karmaşıklık dengesine geri dönüyor. Ağı otomatik olarak ölçmek ve uygun bir minimum paket boyutu seçmek için bir sistem oluşturabilirsiniz, ancak nispeten az kazanç için önemsiz bir karmaşıklık katacaktır.
Peter Green

0

CSMA / CD'nin düzgün çalışması için tutarlı çarpışma algılaması istiyorsunuz.

Alıcı bir çarpışma görürse ve gönderen bu paketi kaybetmezse. Benzer şekilde, gönderen bir çarpışma görürse ancak alıcı gönderen yeniden gönderildikten sonra yinelenen bir paket almazsanız. İkisi de arzu edilmez.

Veriler sonlu bir hızda ilerlediğinden, bir çarpışma durumunda her yerde olmasını sağlamak için minimum paket boyutu gerekir. Minimum paket boyutunu büyüdükçe CSMA / CD bozulmadan ağı daha büyük ve / veya daha hızlı yapabilirsiniz.

Neden 64 baytlık kesin olarak bilmiyorum ama çalıştıkları hızlar, Ethernet ağlarının beklenen boyutu ve beklenen boyut göz önüne alındığında, "o anda doğru görünen" yuvarlak bir sayı olmasını bekliyorum daha yüksek seviyeli paketlerin.


0

64 baytlık minimum paket uzunluğu rastgele bir sayı değil. 10Base5 fiziksel katmanında ("Fat Ethernet" koaksiyel, orijinal olarak belirtilen, izin verilen en uzun kabloya sahip fiziksel katmanlardan biri), mikrosaniye cinsinden minimum paket uzunluğunun iki katı olan minimum paket uzunluğu ile sonuçlanır. 2500 metre uzunluğunda, dört tekrarlayıcılı 500 metrelik segmentlerden oluşan kablo Bu, tüm düğümlerde güvenilir çarpışma tespiti için kablonun karşı taraflarından iletilen paketlerin kablonun her noktasında tam olarak çarpışmasını sağlamak içindir.

Diğer bilgiler:

  • Bir güvenlik yükü için minimum miktarın iki katı
  • Koaksiyel kablodaki çarpışma tespiti bir analog voltaj karşılaştırıcı tarafından yapılabilir (çarpışan paketler normal sinyal voltajının iki katına neden olur)
  • Bakır kablodaki elektrik hızı saniyede yaklaşık 200000 kilometredir
  • 10Base5 Ethernet'teki her bit, kabloda 20 metre uzunluğundadır
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.