Windows网络带宽问题


5

我们有一台带有五个以太网端口(每个1 Gb)的计算机(运行Windows 10),其中两个是内置的,另外三个是在两个PCIe卡上。四个以太网端口共有六个摄像头插入其中(带有两个开关,因此没有端口同时处理两个以上的摄像头)。该系统最初设计为分布在多台计算机上运行,​​因为摄像机发送未压缩的图像,因此有一个服务运行(最初在每台计算机上)抓取帧并将它们交给记录/显示程序(现在是压缩格式) )。

系统运行时,四个以太网端口低于其理论极限: 在此输入图像描述

另一方面,当查看处理传入流量的服务时,我看到99%的使用率(它是100%,但我将所有卡设置为千兆全双工,然后降至99%),而实际使用率几乎是四个传入流量的总和(按顺序排列:CPU,内存,网络,磁盘,GPU):

在此输入图像描述

正如您所看到的,内存和CPU使用率非常低,800 Mb / s的速度应低于网络容量,但它显示100%,捕获程序的功能就好像带有严重的带宽问题。缩小到四个摄像头(总计约600 Mb / s)可以恢复行为。

最奇怪的是,对于一些试验,六个摄像头总共工作得很好,所以我的感觉是Windows 10在某种程度上认为我们只有1000 Mb / s的带宽,并且试图限制以后以某种方式踢的使用。

我错过了什么?

硬件(编辑)

主板:GA-X99-Designare EX

设备管理器中列出的设备:

  • Intel以太网连接(2)I218-V
  • 英特尔I211千兆网络连接
  • 英特尔PRO / 1000 PT双端口服务器适配器
  • 英特尔PRO / 1000 PT双端口服务器适配器#2
  • Realtek PCIe GBE系列控制器

两个PCIe网卡:

  • TP LINK TG-3468
  • GigE卡PCIe英特尔PRO / 1000 PT双端口服务器适配器

接口状态:

Name                      InterfaceDescription                    ifIndex Status       MacAddress             LinkSpeed
----                      --------------------                    ------- ------       ----------             ---------
Ethernet                  Intel(R) I211 Gigabit Network Connec...      12 Up           1C-1B-0D-6C-A0-27         1 Gbps
Ethernet 2                Intel(R) Ethernet Connection (2) I218-V      15 Up           1C-1B-0D-6C-A0-29         1 Gbps
Slot04 x16                Realtek PCIe GBE Family Controller           14 Up           18-D6-C7-01-C9-F6       100 Mbps
Ethernet 4                Intel(R) PRO/1000 PT Dual Port Ser...#2       9 Up           68-05-CA-3F-CB-32         1 Gbps
Ethernet 3                Intel(R) PRO/1000 PT Dual Port Serve...      20 Up           68-05-CA-3F-CB-33         1 Gbps

似乎Realtek GBE(应该是TP LINK TG-3468,它可以做1 Gbps)是100 Mbps。它通过Cat5e电缆连接到千兆交换机。我不确定这是否相关,但也似乎很奇怪。


那么,除了Windows可能有一个不正确的度量衡量网络使用情况之外,没有实际问题吗?
music2myear

@ music2myear不幸的是,经过短暂的工作,捕获系统就像没有足够的带宽一样。这就是为什么我觉得Windows可能认为我们没有足够的,并试图通过一个程序人为地限制使用。
fbence

我不知道Windows中有任何内置的限制行为。
music2myear

设备如何连接(即摄像机和端口的IP地址)?你使用什么类型的网卡?
davidgo

适配器都有localaddresses 192.168.X.1,其中X是0到3,摄像机都有192.168.XY,其中X是它们插入的相应适配器,Y是2或3.用于互联网的那个(第五个) )具有静态非本地IP。单端口网卡是TP LINK TG-3468,主板上有两个(GA-X99-Designare EX是主板:带有cFosSpeed互联网加速器软件的双Intel®GbELAN),第三个我需要的校验。我认为摄像头使用端口80,服务和记录器使用高端的一些随机端口。
fbence

Answers:


3

您获得的800 Mb / s组合网络性能意味着您一次只使用一个网络适配器。

解释可以在Microsoft文章中找到 同一网络上的多个适配器应该如何表现,我引用该文章(本文使用两个适配器的示例案例):

在这种情况下,您可能希望同一物理网络上的两个适配器执行负载平衡。但是,根据定义,在以太网网络拓扑中,一次只能有一个适配器在网络上进行通信。因此,两个适配器不能同时传输,并且必须等待网络上的另一个设备正在传输。此外,广播消息必须由每个适配器处理,因为两者都在同一网络上侦听。此配置需要大量开销,不包括任何与协议相关的问题。此配置不提供为同一网络提供冗余网络适配器的好方法。

如果所有适配器都在同一物理网络和协议子网上,则上述文本说明了您所看到的网络性能损失,因为它们是串联而非并行工作。

本文中提到的开销导致您实际上无法达到1 Gbps的限制,但只能达到800 Mbps。

要在配置中使用5个适配器,您至少需要将计算机连接到5个不同的VLAN,但可能会遇到其他限制。

我不相信Windows 10是这种配置的良好平台。Windows Server 2016可能能够在正确的配置下做得更好。在Server 2012和后者中。Windows本身支持桥接/聚合NIC,也称为NIC Teaming。

另一种解决方案是用一个10 Gbps网络适配器替换五个1 Gbps适配器。这可能是一个更好的解决方案,甚至可能比Windows Server便宜。构建交换网络的基本原则是总是需要更快的技术来聚合多个低速段。10千兆位可以聚合这五个1千兆位网段。如果出现问题,您可能需要由布线专家验证您的网络。


通过相同的物理网络,您的意思是,例如,所有卡都连接到同一个交换机,其他所有卡都连接到该交换机?在那种情况下,情况并非如此。所有适配器都有不同的IP-s,摄像机分别连接到它们。由于可以使用四个适配器用于摄像机(第五个适配器用于连接到互联网),这意味着两个适配器可以处理两个摄像头,另外两个适配器可以处理两个摄像头。另一方面,Windows Server可能是个好主意。我不知道我是否可以快速购买一个。
fbence

我的意思是所有都在同一网段,例如192.168.0.x / 24。网络中只允许一个发送器,否则冲突将导致传输错误。我相信在这里使用一个10 Gbps网络适配器将是一个更好的解决方案,甚至可能比Windows Server便宜。构建交换网络的基本原则是总是需要更快的技术来聚合多个低速段。10千兆位可以聚合这五个1千兆位网段。如果出现问题,您可能需要由布线专家验证您的网络。
harrymc

我明天要检查一下,但我相信它们不在同一个网络上,每个适配器都在192.168.x.1 / 24上。
fbence

关键是他们是否在同一物理网络上进行传输。如果是这样,他们必须轮流。
harrymc

抱歉! 我还没来得及去那里纠缠机器。我计划明天,我会在那之后澄清这个问题。
fbence 1818年

2

你的Windows是外语,所以我肯定不能说...

在英文版的Windows上,任务管理器中的第三列是磁盘使用情况

您的硬盘似乎无法处理数据吞吐量,这更有意义。如果是这种情况,则需要计算必要的磁盘吞吐量并获得更快的磁盘子系统来处理该负载。可能是高速RAID阵列,甚至是两个,用于分配负载。


谷歌重建,它是“网络”
Baldrickk
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.