USBポートとイーサネットポートが同じコントローラを共有するのはなぜですか?


12

私の理解では、PiのUSBポートはイーサネットポートと同じコントローラーを共有しています。

つまり、PiをNASとして使用すると、USBポートとイーサネットポートの両方が同時に使用されるため、ネットワークを介したデータ転送が制限されます。

私の質問は、データ転送がどのような影響で遅くなるかであり、この問題の回避策はありますか?


2
(Pi 3では)もうありません:raspberrypi.stackexchange.com/q/44433/24224
PNDA

回答:


13

共有されたUSB /イーサネットバスがボトルネックになっていることは理解できました。

1つのオプションは、Wi-Fi経由でPi 3を使用することです。WiFiチップ USBソケットとバス共有しておらず、フルスピードで実行する必要があります。

任意のパイ使用し、他のパイ3以上を、私はUSBソケットにUSB 3ギガビットイーサネットアダプタを使用すると、接続速度のための驚異を働かせることができることを信じるように導かです。jeffgeerling.comのこの作品は、彼がこの方法でネットワークスループットを大幅に改善できたことを示唆しています。

ネットワークI / Oパフォーマンス-Raspberry Pi B + / 2


7

USB 2.0は480MB /秒(メガの最大転送速度があるビットが
今、現実の世界では、実際の転送速度がはるかに遅いです。

私のパイ2は、220MB /秒(メガの最大有するビット USB上スループット)。

Piは10/100ネットワークポートを介してプッシュすることができmaxiumは90MB程度である/秒(メガビット


そう:

  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)

だから、後に完全にネットワークポートをダウンロードし、あなたは130MB /秒(メガ持つビット左帯域幅のを)。
安全なそれを再生するには、のが100MB /秒(メガことにしましょうビットは)左に。


したがって、(あなたがパイ2を持っていると仮定して):

限り、あなたのUSBの帯域幅が100MB /秒(メガ超えないようビット)、あなたは大丈夫です。90MB /秒(メガビットその)は、ネットワークカードに転送に使用されます。

したがって、USBポートに接続されたHDD以外のものが10Mb /秒(メガビット)未満を使用する限り、Pi 2が処理できる最大速度で動作します。)


5

コントローラはMicrochip LAN9512であり、たとえば独立したコントローラの束の代わりに使用される理由は、おそらく次のとおりです。

  1. 価格。 以下は、 100ドルで各$ 5を購入できる場所のです。

  2. フォームファクタ。Raspberry Piが「クレジットカードサイズのコンピューター」または「手のひらに収まるコンピューター」としてブログで紹介されたり、ハイテクでブログされたりしたのを覚えているかもしれませんが、「まだ別のmini-ITXシステム」や「大きな帽子の下に収まります」など。

  3. 力。データシートの最初のページ(マイクロチップリンクからアクセス可能)をちらりと見ると、「省電力動作モードを実装」が「機能」の1つとして挙げられています。比較の意味で実際にそれが何を意味するのかを理解するには、もっと深く掘り下げる必要がありますが、少なくとも表面的には、それは考えられる意味があります。

覚えておいてください、パイは〜35ドルの小売りを要します。$ 135や$ 350ではありません。タイトルの文字通りの質問に対する答えです「なぜUSBポートとイーサネットポートが同じコントローラを共有するのですか?」

複数のUSBポートが同じバスを共有するのは珍しいアプローチではないことに注意してください-それはおそらく標準です。現在使用しているラップトップには3つのUSBポートがありますが、lsusb報告されているのは2つの2.0 "フルスピード"ハブのみです。したがって、これらのポートのうち少なくとも2つはハブを共有し、同時に両方が「フルスピード」になることはありません。あなたが現在のシステムをチェックすると、それは同様の線に沿って組み立てられていると確信しています。

イーサネットとそれを組み合わせるのは珍しいですが、USB 2.0が480 Mbpsを提供する必要があるのに対し、10/100イーサネット接続では最大100を必要とすることに注意してください。

Wikipediaは、仕様をソースとして引用して、「バスアクセスの制約により、高速信号速度の実効スループットは280メガビット/秒または35 MB /秒に制限されている」と述べています。それがポートごとなのか、バス全体なのかは不明です。

データ転送の速度はどの程度低下しますか

明らかに、合計で480 Mbpsを超えることはなく、おそらく280を超えることもありません。個人的には、ローカルイーサネットからUSBへの転送が10 MB /秒を超えるpiの報告を見たことも聞いたこともありません。通常の目的で一貫してドライブ(つまり、80 Mbps)。 ただし、その数はプロトコル自体が処理されたのものであり、変数が追加されますが、割合は小さいと思います。イーサネットでは、接続されているネットワークのトポロジとアクティビティによって大きく異なる場合があります。

この問題の回避策はありますか

つまり、パイプに含まれているよりも多くの水をパイプに押し込むことができますか、それともポンプをより速く、またはいくつかの組み合わせで、またはその2つで再び動作させることができますか? より高速のポンプまたはより大きなパイプが必要な場合は、より高速のポンプとより大きなパイプを購入してください。


1

USBポートとイーサネットポートが同じコントローラを共有するのはなぜですか?

pi 1〜3のSoCにはイーサネットコントローラーがなく、USBコントローラーが1つしかなく、イーサネットに簡単に使用できる他のインターフェイスはありません。EbenはBCM2835の設計にいくらか影響を与えることができましたが、それは最終的にはBroadcom製品であり、Broadcomの彼のボスはショットを呼んでいたはずですが、彼がやり遂げることができたのはそれだけでした。

また、Piは子供たちがプログラミングを学ぶことができる安価なコンピュータとして設計されたことを思い出してください。それがピックアップされ、他のあらゆる種類のものにも使用されたという事実は、単なる幸運な副作用でした。

LAN9512(後でLAN9514に置き換えてポートを追加し、LAN7515で高速イーサネットを提供)は、USBポートとイーサネットポートを追加する便利なソリューションを提供しました。

アームコアpi2とpi3をアップグレードしたとき、チップの残りの部分をそのままにすることを決定しました(1GBのRAMを許可するようにメモリコントローラーのバグを修正する以外)。これは、アップグレードを可能な限り安価でリスクの低いものにすることによって動機付けられたと理解しています。

最後に、SoC設計の大幅な見直しをせざるを得なくなった。幸いにも、彼らはまた、そのような見直しが経済的に実行可能になるまで顧客ベースを築いてきました。ラズベリーpi 4では、イーサネットチップを備えたUSBハブがなくなり、新しいSoCのMACによって駆動されるイーサネットPHYチップと新しいSoCのPCIeによって駆動されるUSB3コントローラーに置き換えられました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.