先说下设备 光猫:中兴 g7615 路由:GT-AX6000
场景: 我在同路由器下搭了一台 debian 做 web 服务,然后通过路由器端口转发提供外网访问
我在都单独测了光猫下的内网,和路由器下的内网 100 个并发 http 请求,都是在毫秒内完成的
但是当请求出了光猫之后,再绕回来,在多并发的情况下就出现了严重的延迟, 而且所有机器 ping 光猫(192.168.1.1)的延迟也从 1ms 提高到 50-600ms 但是 ping 路由器(192.168.50.1) 却还是 1ms
求教这是哪里出了问题? 是光猫的上游的限制,导致了延迟吗?
1
yyzh 2023-10-19 23:16:57 +08:00 via Android
不懂啥叫出了光猫之后,再绕回来
|
2
MRlaopeng OP @yyzh 就是, 我做内网测试的时候都是访问
光猫访问 https://192.168.1.1/index.html 路由器访问 https://192.168.50.1/index.html 然后假设我的公网 ip 是.121.121.121.121 然后继续访问 https://121.121.121.121/index.html 一个请求的话延迟就是毫秒, 但是如果一次性并发 100 个请求,延迟立马变成七八秒 |
3
MRlaopeng OP @yyzh 请求的内容不大,100 个请求才 300kb 的流量,所以不会达到宽带的上传上限, 这条副宽是 30m 的上行
|
4
ferock 2023-10-19 23:27:45 +08:00 via iPhone
路由器是光猫?
|
7
MRlaopeng OP |
8
datocp 2023-10-20 02:27:02 +08:00 via Android
这个问题有点高深,竟然不清楚 ping 桥接光猫的意义是什么。。。
通常 icmp ping 反应了当前网络 lan 还是 wan 的拥挤程度?应该是 wan 。是有计算公式的。 qos 设定分组,似乎是在 135kb 的线路, 分 20%给高优先级的游戏流量,实际游戏产生的流量不超过 10kb ,游戏延迟为 19ms 。 分 80%给其它所有的流量,可以高达接近 600ms 的延迟。 所以基本在延迟控制方面,根据电话线 adsl 的观察, 60%的上行流量可以获得极低的延迟。 80%的上行流量可以获得最高的下行速度+可以接受的延迟 超过 80%的上行流量,下行反而降低,延迟更高。 看似很简单,绝对不是网上简单的说,把总上行设定为 speed.net 测试值的 80%就可以了。这种设定根据测试没任何用,当然 openwrt sqm 似乎一直在强调这个 80%的作用。 所以如何确定当前网络上行只有测试流量,没有其它流量。并把它控制在 80%以下才是关键,在光纤可以控制到 95%。 以前会使用 icmp ping 和 tcping 来测试 tcp 的真正延迟变化。openwrt 的 htb qos 才是模糊化的适合共享网络,提供流量分组并以高优先级方式出列比常见的先进先出队列延迟控制还是更高级的,毕竟它在同一条线路实现了 19/600ms 两种存在。而没有 qos 的网络通常就是根据上行的比例,延迟不断的整体波动中。 |
9
465456 2023-10-20 08:15:16 +08:00
现在的光猫都是 iHGU 设备,这是带网关的,把光猫变桥接,变成二层设备用。
|
10
ttvast 2023-10-20 10:34:01 +08:00
@MRlaopeng
光猫访问 https://192.168.1.1/index.html 路由器访问 https://192.168.50.1/index.html 你光猫都是桥接的,怎么叫”光猫访问“? 桥接的网络谁还关心光猫的 ip 地址啊。 然后 https://121.121.121.121/index.html 这个地址,正常情况下,你是访问不到的,只有外网的机器才能访问的到,不知道你是怎么测试的? |
11
MRlaopeng OP @ttvast ,,我也觉得奇怪为什么我能访问到, 我是通过访问 ddns 后的域名, 解析后也就是我的公网 ip
确实是能访问到另外一台电脑的 web 服务 那个光猫访问我是这样做的, 我在第一个电脑开启了 web 服务, 然后 2 电脑访问 192.168.1.158(一电脑的 ip) 然后并发 100 条, 也是毫秒级返回的 所以光猫性能是没问题的 |
12
iijboom 2023-10-20 13:57:00 +08:00
https://www.v2ex.com/t/972245
宽带连接数限制测试工具 我就不吐槽你的帖子了... 实在是... 只提醒一下如要测试后果自负(例如管理 vps 的系统被认为是遭遇了 ddos 攻击,停机邮件警告之类的,或者宽带这头出啥问题) |
13
peasant 2023-10-20 16:50:22 +08:00
@MRlaopeng #11 我之前用端口转发访问 NAS ,只要我在局域网里通过公网 IP 访问就会导致断网,从外面用公网 IP 访问一切正常,奇怪你这居然能在局域网里通过公网 IP 访问。
|
15
nkloveni 2023-10-20 18:15:08 +08:00
@MRlaopeng 你这个和家宽的连接数没有关系,内网去访问 WAN 接口的公网 IP ,数据包根本没有出路由器。延迟大的话换个路由器试试。或者你从外网发起检测下公网 IP 的连接数。NAT loopback 是 iptables 实现的,未必能用上 HW 加速
|
18
ogodeikhan24k 2023-10-21 01:19:53 +08:00
@MRlaopeng
你先查下你这个路由器的公网 PPPoE 的 IP 是不是你说的公网 IP 121.121.121.121 另外你浏览器访问 https://121.121.121.121/index.html ,页面是 debian 的 web 吗? |
19
MRlaopeng OP @ogodeikhan24k 是的,路由器显示的 WAN IP: 121.121.121.121
然后浏览器访问 https://121.121.121.121/index.html 确实就是访问到我另外一台机器的 web |
20
ogodeikhan24k 2023-10-21 02:50:07 +08:00
@MRlaopeng
你从路由器的内网机器访问路由器的外网 IP ,数据通过端口转发到另一台内网机器的 web server 这个路径就是典型的 nat reflection ,数据没出过路由器,连光猫都没经过。 感觉要么你路由器的问题,要么你 debian web server 的问题。 |
21
MRlaopeng OP @ogodeikhan24k ,,我也觉得奇怪,, 不知道他这个数据是怎么走的
|
22
MRlaopeng OP @ogodeikhan24k 但是还有个问题,,就是我从外地的网络访问时,也会出现这样的严重延迟卡顿
|
23
erfesq 2023-10-21 10:14:43 +08:00 via Android
有的猫腊鸡,比如某和的猫,猫自己似乎就被设定了最大 tcp 并发,反正我后来换了某为的铁壳猫,桥接就稳了不少
|
24
nkloveni 2023-10-21 10:16:41 +08:00
@MRlaopeng 贴下 mtr 的图吧,还有一个简单的办法就是用你的 web server 直接拨号,然后从外网去测。大概率怀疑你这个 router 有问题
|
25
MRlaopeng OP @nkloveni root@debian2:~# mtr 121.33.149.105 -r
Start: 2023-10-21T19:41:23+0800 HOST: debian2 Loss% Snt Last Avg Best Wrst StDev 1.|-- 121.33.149.105 0.0% 10 1.2 1.6 1.0 2.9 0.7 |
27
nkloveni 2023-10-22 09:00:46 +08:00
@MRlaopeng 你用的啥路由器,按说第一跳应该回显你的内网网关 IP ,而不是 wan 的 IP 。回显 wan 的 IP 也代表是路由器影响的,还没到局端的 bras 上,和光猫没关系
|
28
datocp 2023-10-22 11:28:46 +08:00 via Android
当年在使用 tomato 的 h218n ,就有个问题百思不得其解。怎么说这个路由也有 100mbps 端口,电信上行也就 135kb 。
论网速不可能出现拥塞 论并发数应该也影响不到 lan 访问 论 cpu 占用不得而知 一迅雷就无法访问 web 管理界面,直到用 qos 以后才正常。所以也许简单的理解为 cpu 性能不行。 |