总结:我拔掉了网络插头来移动我的办公桌,现在通过我的 DIR-655 的以太网 LAN 桥下载比它插入的以太网交换机慢 10 到 30 倍。
背景
我的网络是
SMC cable modem <-> Cisco firewall <-> Netgear switch <-> D-Link WiFi†
| | | |
SMC8014 ASA-5505 GS608v2 gigE DIR-655 rev A3 gigE
†DIR-655 用作接入点,而不是路由器(尽管 D-Link 称之为接入点,我称之为网桥)。“WAN”端口未使用;Netgear 连接到内置路由器/防火墙内的内置 4 端口以太网 LAN 交换机。
端点:
- MacBook Pro 17" 2010 年中
- iPhone 4S
- Fedora 12 Linux 服务器运行速度相当快的双 Athlon X2、VelociRaptors 等。
所有电缆长度均小于 10 英尺,大部分为 CAT-5e,部分为 CAT-6,全部为预制电缆。所有 WiFi 端点距离 D-Link 均在 3 英尺以内。
昨天我拔掉了插头并重新整理了一些东西,现在通过 D-Link 连接 - 即使通过有线交换机,就在传入网线旁边 - 也比直接连接到 Netgear 交换机慢 30 倍,无论是在我的 MacBook 还是 iPhone 上。
我如何衡量“变慢”
我主要使用http://speedtest.net,当然它实际上只能测量宽带速度。我还安装了http://www.speedtest.net/mini.php在我的本地服务器上,但无法用它测试 iPhone。
结果
Speedtest.net, closest server over Comcast business-class:
CONFIG | PING (ms) | DOWN (Mbps) | UP (Mbps)
Mac <-> Ethernet <-> Netgear | 9 | 31.6 | 6.8
Mac <-> Ethernet <-> D-Link | 8 | 4.1 | 6.0
Mac <-> WiFi <-> D-Link | 9 | 1.4 | 2.9
iPhone <-> WiFi <-> D-Link | 67 | 0.4 | 1.6
Speedtest Mini on Linux PC:
CONFIG | DOWN (Mbps) | UP (Mbps)
Mac <-> Ethernet <-> NetGear | 97.2 | 76.9
Mac <-> Ethernet <-> D-Link | 8.2 | 24.2
Mac <-> WiFi <-> D-Link | 1.0 | 8.6
Slow typing in SSH:
Mac <-> Ethernet <-> Netgear <-> Linux PC: smooth
Mac <-> Ethernet <-> D-Link <-> Linux PC: choppy
请注意,D-Link 的上传速度在宽带上是正常的,本地速度较慢(但我认为这是 D-Link 的限制),并且总是比下载速度快!由于 ssh 只是由于输入速度慢而不稳定,因此我也不认为这是一个节流类型的问题;带宽并不多。
我尝试过的方法
- 交换所有“好”和“坏”的电缆
- 将“坏”的电缆从 D-Link 重新插入到 Netgear,然后发现它变成了“好”的电缆
- 将电缆从电线上拉开
- 验证 Mac 是否自动检测 D-Link 为千兆以太网
- 尝试验证 D-Link <-> Netgear 连接的链接速度,但固件没有报告
- 验证 D-Link 没有发现 TX/RX 错误或冲突
- 在 Netgear 和 D-Link 上使用不同的以太网端口
- 将 D-Link 重置为出厂设置
- 将D-Link固件从1.21升级到1.35NA,2010/11/12,最新
- 重启至少一次
- 在 Mac 上,在以太网测试期间禁用 Wi-Fi,并在 Wi-Fi 测试期间拔下以太网
- 使用 iStumbler 验证 D-Link 没有选择过载的 Wi-Fi 信道(通常我的信道和相邻信道上只有 1-5 个邻居,这是我的公寓楼的平均值)
- 确认连接到 Wi-Fi 的唯一客户端是 iPhone
- 根据 WISH 日志检查网络上没有任何聊天内容
- 启用和禁用各种 D-Link 设置,包括强制 WAN 自动检测为千兆以太网
所以。
我不介意购买新的接入点——我也不介意拥有双链路网络——但作为一个从 gated v4 彻底改写以来就一直从事网络工作的人,以及在 Wireshark 出现之前经常使用物理嗅探器的人,我感到很困惑。我讨厌困惑。
我能做什么可能发生了什么变化才会导致这种情况?我该如何测量?我能想到的只有静电——厚地毯、袜子、暖通空调——但我没有感觉到,这种情况真的还会发生吗?
我可以测试是以太网层还是 TCP 层速度慢吗?我对现代网络实用程序不熟悉;在 Google 上搜索时很难不碰到“问:为什么我的网络速度慢?答:你的微波炉开着吗?”
如果我在这里得不到答案,是否有大人物能帮我将其迁移到 serverfault,而不会被骂?用 Inigo Montoya 的话来说,“我必须知道。”别让我像可怕的海盗罗伯茨那样。
答案1
我在使用 Netgear 交换机时也遇到过类似的问题,该交换机有一个“上行”端口,实际上是两个接口共享的。如果你在上行链路旁边的端口插入了什么东西,速度就会下降一个数量级。我也有很多网络经验,所以我打开了 tcpdump,对它进行了彻底的分析。
我把电缆移到一个端口,瞧,速度恢复了。这影响了无线和有线客户端。这是最奇怪的事情。我拉动开关,扔进一个 cisco 2548,再也没有遇到过这个问题。
不幸的是,我不确定他们是否有 ethtool 或 mii-tool 或标准 *nix t-shooting 工具。
SSH 不稳定听起来像是 Nagles 算法或慢启动类型的问题,导致数据包缓慢释放到网络中。您是否确认确实没有网络拥塞?
这听起来和我遇到的问题一模一样。