USB bağlantı noktaları ve Ethernet bağlantı noktası neden aynı denetleyiciyi paylaşıyor?


12

Pi'deki USB bağlantı noktalarının Ethernet bağlantı noktasıyla aynı denetleyiciyi paylaştığı anlaşılıyor.

Bu, Pi'yi NAS olarak kullanacak olsaydı, hem USB bağlantı noktaları hem de Ethernet bağlantı noktası aynı anda kullanılacağı için ağ üzerinden veri aktarımının kısıtlanacağı anlamına gelir.

Sorum şu ki, veri aktarımı yavaşlıyor ve bu soruna bir çözüm var mı?


Yanıtlar:


13

Paylaşılan USB / ethernet veriyolunun bir tıkanıklık olduğunu anlıyorsunuz.

Seçeneklerden biri WiFi üzerinden Pi 3 kullanmaktır. WiFi yongası , USB soketleri ile bir veriyolu paylaşmaz ve tam hızda çalışmalıdır.

Herhangi Pi kullanarak diğer bir Pi 3 den, bir USB soketine bir USB 3 Gigabit Ethernet adaptörü kullanarak bağlantı hızınıza için harikalar çalışabilir inanıyoruz yol açtı ediyorum. Jeffgeerling.com'daki bu parça , ağ verimini bu şekilde önemli ölçüde iyileştirmeyi başardığını gösteriyor.

Ağ G / Ç performansı - Raspberry Pi B + / 2


7

USB 2.0 maksimum 480Mb / sn aktarım hızına sahiptir (Mega bit )
Şimdi, gerçek dünyada gerçek aktarım hızı çok daha yavaştır.

My Pi 2, USB üzerinden maksimum 220 Mb / sn (Mega bit ) verime sahiptir.

Pi'nin 10/100 ağ bağlantı noktasını geçebileceği maksimum miktar yaklaşık 90Mb / sn'dir (Mega bit )


Yani:

  480 Mb/sec        (USB 2.0 maxium throughput)
- 260 Mb/sec        (For real-world speeds)
-  90 Mb/sec        (For the network port)
-----------
  130 Mb/sec        (Left over bandwidth)

Ağ bağlantı noktasını tamamen yükledikten sonra, 130 Mb / sn (Mega bit ) bant genişliğiniz kaldı.
Güvenli oynamak için, 100Mb / sn (Mega bit ) bırakalım .


Bu nedenle, (bir Pi 2'niz olduğunu varsayarsak):

USB bant genişliğiniz 100 Mb / sn'yi (Mega bit ) aşmadığı sürece iyi olacaksınız. 90Mb / sn (Mega bit ) ağ kartına iletilir .

Bu nedenle, USB bağlantı noktalarına bağlı HDD dışındaki şeyler 10Mb / sn'den (Megabits) daha az kullandıkça, Pi 2'nin kaldırabileceği maksimum hızda çalışacaksınız.)


5

Denetleyici bir Microchip LAN9512'dir ve örneğin bir grup bağımsız denetleyici yerine kullanılmasının nedeni muhtemelen:

  1. Fiyat. İşte bunlardan 100 tane satın alabileceğiniz bir yere bir örnek @ 5 $.

  2. Form faktörü. Raspberry Pi'nin "kredi kartı büyüklüğünde bir bilgisayar" veya "avucunuza uyan bir bilgisayar" olarak değil, "başka bir mini-ITX sistemi" veya " büyük bir şapka altına sığacak "vb.

  3. Güç. Veri sayfasının ilk sayfasına (Microchip linkinden erişilebilir) göz atmak "düşük güç çalışma modlarını uygular", "Özellikler" den biri olarak belirtilir. Bunun karşılaştırmalı olarak gerçekten ne anlama geldiğini bulmak için daha derinlere inmeniz gerekir, ancak en azından yüzeyde akla yatkın bir anlam ifade eder.

Unutmayın, pi ~ 35 $ perakende maliyeti. 135 $ veya 350 $ değil. Bu, başlığınızdaki "USB bağlantı noktaları ve Ethernet bağlantı noktası neden aynı denetleyiciyi paylaşıyor?" .

Birden fazla USB bağlantı noktasının aynı veriyolunu paylaşması alışılmadık bir yaklaşım olmadığını unutmayın - muhtemelen normdur. Şu anda bulunduğum dizüstü bilgisayarın 3 USB bağlantı noktası olduğunu fark ettim ancak lsusbyalnızca iki adet 2.0 "Tam hızlı" hub bildiriyor. Bu bağlantı noktalarından en az ikisi bir hub paylaşıyor ve ikisi de aynı anda "Tam hız" a sahip olmayacak. Mevcut sisteminizi kontrol ederseniz benzer hatlar boyunca bir araya getirildiğinden eminim.

Ethernet'i birleştirmek olağandışıdır, ancak USB 2.0'ın 480 Mbps sağlamasına dikkat etmek gerekirken, 10/100 ethernet bağlantısı bunlardan en fazla 100'ü gerektirir.

Wikipedia , "veri yolu erişim kısıtlamaları nedeniyle, Yüksek Hızlı sinyalleme hızının etkin iş hacmi 280 Mbit / s veya 35 MB / s ile sınırlıdır" diye belirtiyor. bunun liman başına mı yoksa bir bütün olarak otobüs için mi olduğu belli değil.

veri aktarımının hangi etkiye yavaşladığı

Açıkçası toplamda 480 Mbps'den fazla olmayacaksınız ve muhtemelen 280'den fazla almayacaksınız. Şahsen, yerel ethernet'ten USB'ye 10 MB / s'den daha iyi aktarım yapan bir pi raporlarını hiç görmedim veya duymadım. normal amaçlar için sürekli (yani, 80 Mbps). Bununla birlikte , bu sayı protokollerin kendileri işlendikten sonra , bu bir değişken ekleyecektir, ancak bence küçük bir yüzde - ethernet ile bağlı ağın topolojisine ve aktivitesine bağlı olarak büyük ölçüde değişebilir.

bu soruna bir çözüm var mı

Demek istiyorsan, bir borudan boruyu içermek için yapılmış olandan daha fazla su sıkabilir miyim, yoksa daha hızlı çalışmak için bir pompa alabilir miyim ya da ikisini birden, hayır. Daha hızlı bir pompaya veya daha büyük bir boruya ihtiyacınız varsa, daha hızlı bir pompa ve daha büyük bir boru satın alın.


1

USB bağlantı noktaları ve Ethernet bağlantı noktası neden aynı denetleyiciyi paylaşıyor?

Pi 1 ila 3'teki SoC'de bir Ethernet denetleyicisi olmadığından, yalnızca tek bir USB denetleyicisi vardır ve Ethernet için kolayca kullanılabilecek başka arabirimleri yoktur. Eben BCM2835 tasarımı üzerinde bir miktar etkiye sahip olsa da, sonuçta bir Broadcom ürünü oldu ve Broadcom'daki patronları çekimleri çağırıyordu, ancak kaçabileceği çok şey vardı.

Ayrıca Pi'nin çocukların programlamayı öğrenebilecekleri ucuz bir bilgisayar olarak tasarlandığını unutmayın. Her türlü başka şey için de alınıp kullanıldığı gerçeği sadece şanslı bir yan etkiydi.

LAN9512 (daha sonra daha fazla bağlantı noktası eklemek için LAN9514 ve daha hızlı Ethernet sağlamak için LAN7515 ile değiştirildi), ekstra bir USB bağlantı noktası ve Ethernet bağlantı noktası eklemek için uygun bir çözüm sağladı.

Kol çekirdeklerini pi2 ve pi3'ü yükselttiklerinde, çipin geri kalanını yalnız bırakmaya karar verdiler (1GB ram'a izin vermek için bir bellek denetleyicisi hatasını düzeltmek dışında). Yükseltmeyi olabildiğince ucuz ve düşük riskli yapmaya çalışarak bunun motive olduğunu anlıyorum.

Sonunda, SoC tasarımının büyük bir revizyonunu yapmaktan başka seçeneklerinin olmadığı noktaya ulaştılar. Neyse ki, müşteri tabanlarını da böyle bir revizyonun finansal olarak uygulanabilir olduğu noktaya kadar oluşturmuşlardı. Ahududu pi 4 ile ethernet çipli USB hub'ı gitti, yerini yeni SoC'de bir MAC tarafından yönlendirilen bir Ethernet PHY yongası ve yeni SoC'da PCIe tarafından sürülen bir USB3 denetleyicisi aldı.

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.