TL; DR 版本:原来这是 Windows Server 2008 R2 中的一个深层 Broadcom 网络错误。更换英特尔硬件修复了它。我们不再使用 Broadcom 硬件。曾经。
我们一直在使用HAProxy和来自 Linux-HA 项目的heartbeat。我们使用两个 linux 实例来提供故障转移。每个服务器都有自己的公共 IP 和一个 IP,该 IP 使用虚拟接口 (eth1:1) 在两个 IP 之间共享:69.59.196.211
虚拟接口 (eth1:1) IP 69.59.196.211 被配置为它们背后的 Windows 服务器的网关,我们使用 ip_forwarding 来路由流量。
我们在我们的 linux 网关后面的一台 Windows 服务器上偶尔遇到网络中断。HAProxy 将检测服务器离线,我们可以通过远程连接到故障服务器并尝试 ping 网关来验证:
使用 32 字节数据 Ping 69.59.196.211: 来自 69.59.196.220 的回复:目标主机无法访问。
arp -a
在此失败的服务器上运行显示网关地址(69.59.196.211)没有条目:
接口:69.59.196.220 --- 0xa Internet 地址 物理地址类型 69.59.196.161 00-26-88-63-c7-80 动态 69.59.196.210 00-15-5d-0a-3e-0e 动态 69.59.196.212 00-21-5e-4d-45-c9 动态 69.59.196.213 …
有没有人有一些数据或基本计算可以回答何时需要帧合并 (NAPI) 以及何时每帧一个中断就足够了?
我的硬件:IBM BladeServer HS22、Broadcom 5709 千兆网卡硬件 (MSI-X),带有双 Xeon E5530 四核处理器。主要用途是 Squid 代理服务器。交换机是不错的 Cisco 6500 系列。
我们的基本问题是,在高峰时段(100 Mbps 流量,只有 10,000 pps),延迟和数据包丢失会增加。我已经做了很多调整和内核升级到 2.6.38,它改善了丢包,但延迟仍然很差。Ping 是零星的;在本地 Gbps LAN 上甚至跳到 200 毫秒。即使 CPU/内存负载很好,Squid 的平均响应也会从 30 毫秒跳到 500 毫秒以上。
在高峰期间,中断攀升至大约 15,000 次/秒。Ksoftirqd 使用的 CPU 不多;我已经安装了 irqbalance 来平衡所有内核的 IRQ(eth0 和 eth1 各 8 个),但这并没有多大帮助。
Intel NIC 似乎从来没有这些问题,但事实上刀片系统和固定配置的硬件,我们有点被 Broadcoms 困住了。
一切都指向 NIC 是罪魁祸首。我现在最好的想法是尝试减少中断,同时保持低延迟和高吞吐量。
不幸的是,bnx2 不支持自适应 rx 或 tx。
NAPI vs Adaptive Interrupts线程答案提供了对中断调节的很好的概述,但没有关于如何为给定的解决方法计算最佳 ethtool 合并设置的具体信息。有没有比试错法更好的方法?
上面提到的工作负载和硬件配置是否还需要 NAPI?或者它应该能够在每个数据包的单个中断上生存?
我有一对 Broadcom NetXtreme 57711 10GbE 卡。我把一个放在戴尔 R710 中;它可以很好地用卡启动,操作系统(CentOS 7)可以识别它,而且一切看起来都很好。但是,当我将另一张卡放入 R730xd(也运行 CentOS)时,发生了意想不到的事情:系统一启动操作系统,R730xd 的风扇就开始高速运转,并且无论发生什么事情都在高速运行. 在与 Lifecycle Controller 或 BIOS 屏幕交互时,风扇不会全速运行。它们仅在计算机开始启动操作系统时和操作系统启动之前才开始全速旋转,因此它似乎不是操作系统的功能。
我已将 R730xd 的固件更新为可用的最新版本,我已尝试在 BIOS 中设置 CPU 性能配置文件,并尝试在 iDRAC 中设置热配置文件,但似乎没有任何改变行为;系统始终进入全开喷气发动机模式。谷歌搜索显示,至少有其他人遇到了与向 R730xd 添加 PCI 卡相关的类似粉丝行为(虽然不清楚它是否是同一张卡——它似乎不是)。
我究竟做错了什么?更重要的是,这种行为是否可以改变,让风扇不会全速卡住?
我有一个由 3 个主机组成的 HyperV 集群。每台主机都连接到我在以太通道中运行的两台 Nexus 5548 交换机。交换机上的 LACP 和服务器端使用 Broadcom 802.3ad 的 NIC 组合。这为我提供了 2GB 的带宽并提供了容错能力。
我在执行实时迁移时遇到的问题。在实时迁移之前,两个 Nexus 交换机都会在 ARP 表中显示 VM 的 MAC。迁移后,一台交换机显示 VM 的 MAC,另一台显示它移动到的 HyperV 主机的 MAC。
我运行了一个数据包捕获,看到 HyperV 主机发送了一个免费的 ARP,其中包含 VM 的 IP 和主机的 MAC,而不是 VM 的 MAC。发生这种情况时,我会失去第 3 层连接。我必须手动清除交换机中的 ARP 条目或等待大约 7 分钟以使其自行更正。
我环顾四周,人们在使用 Broadcom 处理 NIC 组合时遇到了类似的问题。有没有人看到这个?有什么建议吗?
-------- 编辑在下面添加
我只在使用 Link Aggregation 802.3ad 进行组队时遇到这个问题。Broadcom 团队选项是...
我切换到 Smart Load Balancing 和 VM Live …
我有一个很奇怪的。
当我从两个不同的 Windows 2008 服务器下载文件(并且仅下载)时,我因过多的“TCP Dup ACK”和“TCP 快速重传”而丢失数据包。上传速度还行。
仅当客户端计算机(Win7)以 100mb/s 连接时才会发生这种情况。在 1GB 时,没有错误,我可以全速运行。如果我将客户端 nic 设置为 100Mb/s,我会收到很多“TCP Dup”错误并且下载速度下降到大约 2-5MB/s。上传速度为 10MB/s 或以上。
这仅发生在 Windows 2008 Server 机器上(戴尔,但硬件不同)。如果我在Win7客户端和Linux服务器之间传输,则不会出现此问题。
这就像 Server 2008 无法正确缩放 TCP 窗口,使交换机过载或其他什么,然后暂停流量。
由于设备较旧,部分网络以 100Mb/s 的速度运行,因此这确实在某些建筑物中造成了问题。
我在这里从客户端上传了一个 pcap 文件。 https://dl.dropboxusercontent.com/u/24907255/slow.pcap.gz
它显示了一个 50MB 的文件正在写入服务器,然后从服务器读回错误。
谢谢你的帮助。我难住了。
2013 年 11 月 28 日更多信息。
我关闭了整个网络,这样网络上只有一台客户端和一台服务器。问题没有变化。
如果我将每个接口、服务器、客户端和 Cisco 2960 交换机都设置为 100Mbs,那么问题就会消失。如果我将服务器和交换机接口设置为 auto 或 1Gbs,问题又回来了。
如果我用 Netgear 10/100 交换机绕过交换机并将客户端和服务器都设置为自动,我就没有问题。
我确实发现了这一点。在正常设置中,服务器以 1Gbs 切换,我在客户端和 Cisco 交换机之间插入 Netgear 10/100 交换机,我的速度问题更严重。速度从 5-7MB/s 到 2-3MB/s,是的,我尝试过固定和自动网络速度。这可以解释为什么某些建筑物与主 Cisco 交换机之间有 2 个交换机跃点的原因更多地存在速度问题。
继续ping。一切都在 1GB/s 时,我可以 ping …
windows-server-2008 network-share broadcom tcp-window-scaling
我在两台服务器上遇到问题,两台服务器都有相同的症状。当它们在失去连接后重新连接到交换机时,它们会处于“未识别的网络”状态。只有在 NIC 中循环选择 ipv6 或重新启动后,它才会再次识别域并允许服务器之间的连接。
我的临时修复涉及通过 RDP 访问服务器、访问 NIC 设置以及启用或禁用 IPv6。NIC 启用还是禁用 IPv6 并不重要 - 无论哪种方式都会出现问题。我想更改 IPv6 设置更多的是重置 NIC,而不是任何其他操作。重新启动也可以使服务器恢复,尽管比 IPv6 技巧花费的时间更长。
现在,所有服务器都连接到同一个交换机,但我们遇到了一个问题,即尽管已连接到 UPS,但在发电机测试期间它仍然断电。这是一个完全独立的问题,但我只是想让您知道为什么服务器失去网络连接。
有近10台服务器,似乎只有这2台服务器有问题。它们是彼此通信的数据库和应用程序服务器。它们是同时购买并安装到位的。它们都启用了 Broadcom NIC 组合,但只有一根电缆连接到交换机的每条电缆。每台服务器上连接 4 个 NIC 时也会出现同样的问题。
当网卡处于未识别状态时,它们无法 ping 其他服务器,我猜测是因为该状态将它们置于不允许与其他域服务器通信的防火墙类中,因为它仍然连接到互联网并且可以可以远程访问。
配置的 DNS 服务器 IP 在每个服务器上都相同:192.168.X.6、192.168.X.9 - 都是内部 ADDS 服务器。
知道为什么会发生这种情况吗?希望这对您来说已经足够详细了。请让我知道,如果你有任何问题。
networking ipv6 windows-server-2008-r2 network-teaming broadcom
我们购买了一些带有 QLogic/Broadcom BCM57810 PCI Express 卡的 Dell PowerEdge R730 服务器,并将它们连接到 Cisco 4900M 交换机 - 10Gb 链接不能可靠地工作。它们有时无法连接,有时几分钟后连接,当它们连接时,它们一天掉线几次。断开连接可持续 4 分钟或 2 小时。
Cisco 交换机拥有与 Dell PowerVault SAN 的现有 10Gb 铜缆链路,这些链路已稳定运行数月。
我在 VMware 日志中看到断开连接的消息如下:
bnx2x 0000:82:00.1: vmnic5: NIC Link is Down
Run Code Online (Sandbox Code Playgroud)
和
network connectivity on virtual switch "vSwitch2". Physical NIC vmnic5 is down.
Run Code Online (Sandbox Code Playgroud)
我看不到任何有用的错误代码或之前的消息,只能看到由链接丢失引起的消息。在 Windows 上,它显示为断开连接的卡,在交换机上显示为断开连接的交换机端口。
当链接连接时,它们工作 - 巨型帧 ping ping、iSCSI 会话建立、数据存储出现以及找到的所有路径。但是连接是断断续续的。
我们已经检查过:
我已经阅读了一些关于支持或至少配置 Broadcom NIC 和 Hyper-V 的相互矛盾的文章。我有一对带有 4 个 Broadcom 5708 NIC 的 Dell R805。我已经将他们组队(一组用于公共连接,一组用于私人连接)并且我已经安装了 Hyper-V。不过,我遇到了一些间歇性连接问题,我担心这可能是由于团队合作造成的。基本上我想知道是否有人在父分区中成功设置了 NIC 组合并通过 Hyper-V 交换机使用了组合适配器。如果是这样,您用来配置它的配置/正确步骤是什么。我有运行 Windows Server 2008 R2 的服务器。现在服务器处于测试模式,但我担心我们不会
我在带有 Broadcom BCM5716 的 Dell R310 服务器上安装了全新的 CentOS 6。由于某种原因,板载 NIC 导致引导挂起。
Welcome to CentOS Linux
Starting udev: udev: starting version 147
Boardcom NetXtreme II Gigabit Ethernet Driver bnx2 v2.0.23b (Feb 01, 2011)
bnx2 0000:02:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
Run Code Online (Sandbox Code Playgroud)
就是这样......然后它只是挂起/冻结。如果我通过 BIOS 设置禁用网卡,CentOS 可以正常启动。
我已经从Broadcom 的网站下载并安装了最新的驱动程序。有任何想法吗?
所以我有一台Dell PowerEdge R610
服务器正在运行Debian Jessie
,根据一些文档,它的芯片组有问题:https : //www.novell.com/support/kb/doc.php?id=7014344 ( Intel 5500 rev 13
)。
提供的外壳测试确认了该芯片组的存在: lspci -nn | grep -qE '8086:(340[36].*rev 13|3405.*rev (12|13|22))' && echo "Interrupt remapping is broken"
它已VT-d
在 BIOS中禁用并已GRUB_CMDLINE_LINUX_DEFAULT="quiet intremap=off"
添加到/etc/grub/default
.
我的问题是,这是否会影响MSI-X
NIC 卡的功能(哪个应该在内核之间传播中断)?
在这个特定的服务器上,确实只有一个内核在服务中断,但我不确定这是否是禁用 BIOS 和内核设置的结果。或者还有其他什么东西在起作用?
(不幸的是,我无法访问 BIOS 来更改设置并在功能打开的情况下进行测试)。
谢谢你。
CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7
0: 43 0 0 0 0 0 0 0 IO-APIC-edge timer
1: 3 0 0 0 0 0 0 0 …
Run Code Online (Sandbox Code Playgroud) broadcom ×10
nic ×3
networking ×2
10gbethernet ×1
arp ×1
boot ×1
centos6 ×1
centos7 ×1
debian ×1
fan ×1
hardware ×1
hyper-v ×1
intel ×1
interrupts ×1
ipv6 ×1
mac-address ×1
qlogic ×1
vmware-esxi ×1