Ex *_*ris 12 bandwidth router throttling
在最近的更新和安全“强化”之后,位于 120Mbps 电缆调制解调器连接后面的 CentOS6 NAT 路由器/防火墙似乎将吞吐量限制在 30Mbps。
在更新和强化之前,我获得了 90Mbps。
我检查了 CPU 和网络使用情况,这些似乎都不是限制因素。 tc
没有显示任何流量整形正在进行,我不知道如何进一步解决这个问题。
我有一个 CentOS 6 系统作为 NAT 路由器/防火墙在 Comcast 电缆调制解调器后面运行,它也作为 NAT 路由器运行
1000 100
eth1 eth0
Internet-------Modem-------------CentOS6-----------------LAN
10.0.0.0/24 192.168.10.0/24
Run Code Online (Sandbox Code Playgroud)
双 NAT 是 CentOS 系统的遗产,以前曾作为以桥接模式运行的时代华纳电缆调制解调器后面的路由器/防火墙。当我进入 Comcast 领域时,我打算将调制解调器切换到桥接模式,但从未尝试过,而且双 NAT 从未引起过问题。我获得了 90Mbps 的吞吐量,没有任何问题。
在准备在 Comcast 调制解调器上转换为桥接模式时,我决定通过禁用一些不需要的服务并执行“yum update”来“强化”CentOS 系统,我已经有一段时间没有这样做了。加固后,我进行了速度测试,惊讶地发现吞吐量低至 30Mbps。
我尝试像这样将我的主桌面系统直接连接到调制解调器
eth1 eth0
Internet---Modem-------------CentOS6-----------------LAN
| 10.0.0.0/24 192.168.10.0/24
|
+--------------Desktop(Win7)
Run Code Online (Sandbox Code Playgroud)
运行 speedtest.net 验证了我的 Comcast 连接能够达到 120Mbps,因此我在 CentOS 系统上更改的某些内容导致吞吐量上限为 30Mbps。每次我从 LAN(在 CentOS 系统后面)进行速度测试时,我都会得到一个在 30Mbps 的 1-2% 内的值,所以几乎感觉有些东西在人为地限制吞吐量。
我想也许流量整形以某种方式启用了,但tc
似乎表明它不活跃
[jhg@perseus ~]$ sudo tc -s qdisc
qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 64159459406 bytes 44745482 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev eth1 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 2871293442 bytes 26151570 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0
Run Code Online (Sandbox Code Playgroud)
“硬化”包括
删除的包:
redis dovecot
redhat-lsb-compat ipa-client
redhat-lsb nfs-utils-lib
redhat-lsb-printing nfs-utils
foomatic subversion
foomatic-db spamassassin
foomatic-db-ppds certmonger
cups yp-tools
mysql-server ypbind
mysql rpcbind
Run Code Online (Sandbox Code Playgroud)
当前启用的服务:
abrt-ccpp cpuspeed kdump nmb
abrt-oops crond lvm2-monitor ntpd
abrtd dhcpd mcelogd postfix
acpid dkms_autoinstaller mdmonitor rsyslog
atd haldaemon messagebus smb
auditd ip6tables named sshd
autofs iptables netfs sysstat
blk-availability irqbalance network udev-post
Run Code Online (Sandbox Code Playgroud)
我的问题是:接下来我应该怎么做才能弄清楚为什么我的 CentOS 6 路由器似乎人为地将吞吐量限制在 30Mbps?
Ex *_*ris 17
所以,这里的问题原来是一个硬件问题。一个月前一切正常,人们不希望故障硬件仍然在降级模式下“工作”,但这就是正在发生的事情。
揭示问题的故障排除步骤实际上是查看电缆调制解调器背面的以太网端口灯。不是绿色的“1Gbps”灯而是橙色的,表示“100Mbps”。在该模式下,调制解调器似乎仅支持高达 30Mbps 左右的吞吐量。
我知道调制解调器 (Arris TG-852G) 有 GBEthernet 端口,所以有些东西阻止了 Centos 以 1Gbps 的速度与调制解调器通信。使用ethtool
我看到了这个:
Settings for eth1:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Link partner advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Link partner advertised pause frame use: Symmetric Receive-only
Link partner advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000033 (51)
drv probe ifdown ifup
Link detected: yes
Run Code Online (Sandbox Code Playgroud)
它基本上是说(从 Centos 适配器的角度来看)“我可以支持 GBEthernet,并且正在宣传 GBEthernet,但对等方不支持 GBEthernet——所以我以 100Mbps 的速度连接”。
我尝试了几个在线论坛(包括此处)中建议的各种修复方法,例如使用不同的电缆、关闭自动协商、仅宣传 1GB 速度或手动将速度设置为 1GB。关闭 auto-neg 并尝试几种不同的 Cat6 电缆没有效果,另外两条电缆根本无法建立连接。
我得出结论它必须是适配器本身并订购了一个新的适配器。安装后,它立即以 1Gbps 的速度连接。问题解决了。
这个故事的寓意当然是,尽管现在没有移动部件的设备的硬件故障很少见,但它们仍然有可能发生,并且应该在责怪软件之前将其消除。
归档时间: |
|
查看次数: |
813 次 |
最近记录: |