如果我的电脑连接了多个占用大量带宽的 USB/以太网外围设备,并导致了带宽问题,那么我是否可以正确地假设拥有更多 USB/以太网主控制器将有助于解决带宽问题?
我目前的理解是,主机控制器是带宽的实际来源,并且带宽在不同的 USB/以太网端口之间分配,因此添加更多端口并不能解决带宽问题,但添加更多主机控制器可以。
因此,如果我没记错的话,带宽问题可以通过使用带有更多主机控制器的主板或通过包含自己的主机控制器的 PCIe 卡连接外围设备来解决。我理解得对吗?
更多信息:假设问题出在带宽上,而不是软件或其他任何东西。我犹豫着是否要添加具体信息,以使问题具有普遍性并适用于其他人。在我的具体情况下,我认为问题出在带宽上,因为我可以控制物理设备使用的带宽,并且除非达到允许的带宽使用值的特定阈值,否则一切都会正常工作。
更多细节:
- 我试图获得的带宽:我有 3 个需要 125MB/s 的设备,还有 1 个需要至少 7MB/s 的设备。
- 所有设备均通过 USB 连接。需要 125MB/s 的 3 个设备通过 USB3.0 连接,另一个设备通过 USB2.0 连接
- USB2.0 端口是主板自带的,而 3 个 USB3.0 端口是辅助的。
- CPU 是 Intel i5 4570 @ 3.20 GHz。
我想强调的是,我不是在问我是否存在带宽问题。我是在问,如果存在带宽问题,是否可以通过拥有更多主机控制器来解决?
答案1
简而言之,多个 USB 或以太网控制器可以解决带宽问题。
但也存在一些限制和条件。
- 您永远无法解决 PCI 或旧插槽的问题。
- pcie 1.0插槽也会使其变得非常困难。
许多主板都有您需要处理的共享 pcie 资源。
a. 如果您有 2 个 pcie x16 插槽,则只有同时使用两个插槽,它们才可能以 x8 运行。
b. 如果使用量超过 4 倍,则有些会以 4 倍速度运行。
c. 这些问题可以通过正确的主板和/或 CPU 来解决。
使用非共享 pcie 3.0 应该可以解决这个问题。即使在 2.0 版本中,仍然有大量带宽。
单个 pcie 2.0 通道,x1,为 500mb/s 单个 pcie 3.0 通道,x1,为 1000mb/s
我不相信 x2 格式曾经被使用过。因此,使用 x4 插槽,您将获得 2000mb/s 或 4000mb/s,具体取决于 2.0 还是 3.0。对于使用 1250mb/s 加上一些开销的 10g 网卡来说,这个带宽足够了。
另外单个NIC卡带有4个独立以太网插头就足以运行。
因此,如果您使用 1 或 2 张卡解决以太网问题,并且剩余 2 个或更多插槽,则使用附加控制器解决 USB 问题应该可行。
最后,您的 CPU/芯片组必须能够足够快地处理传入数据以满足所有设备的需求。如果您只是将数据记录到磁盘,如摄像机,那么您只需要大约 4 个 SSD 即可实现足够的读/写带宽,具体数量取决于您购买的品牌/型号的性能。
如果每个流都是视频,而您要将其转码为 h265,则需要更多的 CPU 能力。即使是单个 GPU 加速也不足以实时处理那么多流。
如果您只是运行一个仅共享文件而不太处理文件的文件服务器,那么您应该不会遇到任何问题。