今儿看到 RouterOS 里 PPPoE 接口入站流量有七七八八的 DSCP 标记,更听闻新出的宽带提速包有“QoS 保障”,就突然想了解一下是怎么整的。
这个是爱某艺流量入站的 DSCP ,目前看电信入站是 8 ,移动入站是 1 。
突发奇想,如果我反手给他标记个 63 ,能不能有什么 Buff 。
于是简单,及不严谨的测试了一下(质量没想到怎么测比较讲究,目前只测了打上标,对端能收到啥,欢迎 dalao 补充)。
环境简单凑的,有电信家宽(含精品网)、电信商宽(含精品网)、GWBN (真 GWBN ,非电信合作版) 、移动家宽、都是 PPPoE 。
测试方法,在 RouterOS 中,给 POSTROUTING 、OUTPUT ,打 DSCP 标签,然后在目标 ROS 里 Torch 抓包看。
测试结果(比较懒,还是手动的,就直接 TXT 记录了):
ICMP 测试:
电信家宽 1(实发 DSCP) -> 电信家宽 2(实收 DSCP):
1-1
2-2
3-3
4-4
5-5
6-6
7-7
8-空
9-1
10-2
11-3
12-4
13-5
14-6
15-7
16-空
17-1
18-2
19-3
20-4
21-5
22-6
23-7
24-空
25-1
26-2
27-3
28-4
29-5
....(懒)
39-7
40-空
41-1
....(懒)
47-7
....(懒)
57-1
63-7
ICMP:移动家宽-1 63 出,电信家宽-2 收 1
ICMP:移动家宽-1 不带标出,电信家宽-2 收 1
ICMP:GWBN 63 出,电信家宽-2 收 7
=========
DNS UDP53, nslookup 解析 baidu.com:
电信家宽-1 47 出,电信家宽-2 收 7
电信家宽-1 63 出,电信家宽-2 收 7
电信商宽-1 47 出,电信家宽-2 收 7
电信商宽-1 63 出,电信家宽-2 收 7
电信商宽-1 不带 DSCP 出,电信家宽-2 收空
移动家宽-1 不带标出,电信家宽-2 收 1
移动家宽-1 63 出,电信家宽-2 收 1
SSH TCP:22(tcping):
电信 DSCP 46 出,电信家宽-2 收 6
电信 DSCP 47 出,电信家宽-2 收 7
移动家宽-1 不带标出,电信家宽-2 收 1
移动家宽-1 63 出,电信家宽-2 收 1
////
判断下来就是运营商会改 DSCP 标头。
然后自己打的表头,没准有可能在一定情况下会被 Honered ?(毕竟他改写了,还是说做了位数转换)
具体有没有用,路由有没有变化,还不太清楚。
另外就是,长城宽带到电信,打 63 都能收 7 。
移动到电信不管怎么打,目前测试下来收到都是 1 ,估计是给最拉寄的。
各位 dalao 有没有研究过这个?
1
scarh 2022-05-18 00:34:52 +08:00
猜测对于运营商来说对用户的出向流量打标记用于业务保障,毕竟语音或视讯对延时和抖动敏感。不过就算用户接入侧流量上来带了 QoS 标记,运营商设备也大概率会不信任或直接覆盖吧。
就算报文带了标记,运营商的转发设备不做对应的 QoS 策略,等于没用。 |
2
datocp 2022-05-18 08:43:21 +08:00
多年前倒是讨论起这个 DSCP 标记对本地 WMM QOS 有影响,讨论的结果就是重置标记。从基于访问目的端口的 QOS 来说,在 openwrt 使用 CONNMARK ,是可以只标记在上行的标记带到下行方向,只是没有找到应用的地方。
# iptables -t mangle -S -P PREROUTING ACCEPT -P INPUT ACCEPT -P FORWARD ACCEPT -P OUTPUT ACCEPT -P POSTROUTING ACCEPT -N QOSO -A PREROUTING -i eth0.2 -j DSCP --set-dscp 0x00 -A PREROUTING -i eth0.2 -j CONNMARK --restore-mark --nfmask 0xff --ctmask 0xff |
3
makusuofute 2022-05-18 11:01:35 +08:00
换个简单明了的说法就是
在网关上费尽心思打的标记到 ISP 这里全部换成 IPS 自己的了。 |
4
a8Fy37XzWf70G0yW 2022-05-18 20:21:12 +08:00 3
感謝您的發現。
經得當設定後,目前我搭建在臺灣家中的 wireguard 伺服器速率已起飛。 |
5
nbsn 2022-05-18 23:23:34 +08:00
DSCP 跟 TTL 一样,是一跳一跳的行为。如果网络设备在入口,不信任你的 DSCP 标记,就会被重写,因此基本无效。
|
6
i3x 2022-05-18 23:51:14 +08:00 via Android
@scarh 电信的光猫哪怕桥接都有这个设置。在 vlan qos 下面就是这个。
vlan 实际填写。 qos 本身 0 ,tr069 是 7 ,我改了这个没发现什么区别。 dscp 感觉更没有什么意义了? |
7
tutugreen OP @i3x VLAN 那个好像就同二层下有效,看猫上是说 802.1p ,可能就你到 OLT 这一段,和你的邻居相比优先(?)
但上海这边网络业务是不打 VLAN 的,untag ,好像这层没得操作。 @nbsn @makusuofute 好像是哦,查了一下 DSCP 头,有原先 IP 优先级 3 位( 0-7 ),和 DSCP (使用之前多的预留位,达成 0-63 ),向下兼容,也就是可能 DSCP 实际上去之后,原本 IP 优先级的标志一直在( 0-7 ),后面预留位可能不兼容或者其他原因,就抹掉了(?) 看之前的结果,可能是他按照规则把我发过去的( 0-63 )改写成兼容的( 0-7 )了? 但如果这么说的话,爱某艺流量被标为 8 ,实属拉寄中的拉寄了(毕竟如果客户端自己标,出去会被改写 0-7 ,它现在是 8 的话那这个流量很大可能是上面某层识别并标记的。) |
8
i3x 2022-05-19 23:11:02 +08:00 via Android
@tutugreen 没有 vlan 就是 untag 。还有改写透传可选。透传类似 trunk ,改写和 untag 都可以设置吧。
至少我在本地交换机里设置也没感觉到 qos 的影响。 反倒是比如 hw 的所谓安全网关,指定了优先特征之后,非优先的通信莫名其妙的卡。以运行 minecraft 服务器为例。。。优先服和普通服都有人在玩,但是普通服就很卡了以至于甚至符合非优先规则的 ssh ,空闲情况会断开。。不开的话两个都不卡。开了的话优先也没有变得更加流畅。 |
9
liuxyon 2022-06-05 08:06:38 +08:00 via Android
@viberconnection 求经验分享一下.
|
10
root9000 2022-06-23 13:55:46 +08:00
我这联通可以收到,10 和 48 的,10 是一些电视直播的,48 是路由跟踪骨干网返回的,不管没有用我给打上 48 出了
|