文章目录
- 一、应用场景
- 二、技术原理
- 三、配置实操
- 四、进阶配置
-
- 1.动态限速(Radius下发)
- 2.限速与QoS队列结合
- [3. 性能优化](#3. 性能优化)
- 五、常见故障排查
一、应用场景

运营商BRAS场景下,单用户限速主要用在这几个地方:
- IDC机房给租户做带宽承诺,防止个别用户抢占资源
- 家庭宽带的上下行带宽限速,比如100M下行/20M上行的套餐
- 专线用户的带宽保障,比如政企客户的500M专线
- 异常流量压制,比如挖矿、DDoS攻击源的临时限速
之前有次给某政企客户做专线迁移,没注意ME60的限速方向,把上行限速配成了下行,结果客户的VPN业务直接卡成狗,排查了2小时才找到问题。这里要明确:ME60的限速方向是针对设备自身的,入方向(inbound)是用户到ME60的流量,出方向(outbound)是ME60到用户的流量,和用户感知的上下行是反过来的------比如用户的下行带宽对应ME60的出方向限速。

二、技术原理

ME60的单用户限速基于令牌桶算法,这是当前主流的流量整形和限速算法,和思科的CAR、Juniper的Policer原理一致。
- 令牌桶以固定速率生成令牌,比如限速100M就是每秒生成100Mbit的令牌
- 每个数据包进入时需要消耗对应大小的令牌,有令牌就转发,没令牌就丢弃或标记
- 令牌桶有缓存区(Burst),允许短时间的突发流量,比如100M限速配20M突发,就是允许短时间跑到120M
ME60的单用户限速分两种实现方式:
静态限速:直接绑定IP、VLAN或接口,配置简单,适合固定用户动态限速:通过Radius服务器下发,适合拨号用户或动态分配IP的场景
和整段端口限速的区别:
| 类型 | 适用场景 | 粒度 | 灵活性 | 性能影响 |
|---|---|---|---|---|
| 端口限速 | 整段用户统一限速 | 端口级别 | 低 | 小 |
| 单用户限速 | 单个用户/租户精准限速 | IP/VLAN/用户 | 高 | 较大 |
单用户限速的性能消耗主要在ME60的业务板CPU,如果配置的限速条目过多(比如超过1000条),会导致业务板CPU占用率上升,严重时会影响转发性能。所以大规模场景下推荐用动态限速,或者把静态限速配置在接入层交换机,ME60只做核心转发。
三、配置实操

1.环境需求
- 设备:华为ME60-X8
- 目标:给VLAN 100下的IP 192.168.10.10配置下行100M、上行20M的限速
- 前置条件:用户流量已经能正常通过ME60转发,VLAN和IP路由已配置
2.创建流量模板(限速规则)
首先要创建一个流量模板,定义限速的带宽和突发值:
bash
system-view
# 创建名为user_car的流量模板
traffic behavior user_car
# 配置出方向(ME60到用户,即用户下行)限速100M,突发20M
car cir 102400 cbs 25600000 green pass yellow pass red discard
# 配置入方向(用户到ME60,即用户上行)限速20M,突发4M
car inbound cir 20480 cbs 5120000 green pass yellow pass red discard
参数详解:
cir:承诺信息速率,单位是kbit/s,100M=102400kbit/scbs:承诺突发尺寸,单位是byte,计算公式是cir * 250(因为令牌桶默认每4ms生成一次令牌,2504ms=1s),100M的cbs就是102400 1000/8 * 0.25=3200000byte?不对,这里要注意VRP的单位:cir是kbit/s,cbs是byte,所以正确的计算是(cir * 1000 / 8) * 突发时间,比如突发时间200ms,就是(102400*1000/8)*0.2=25600000byte,和上面的配置一致green/yellow/red:三色标记的动作,pass是转发,discard是丢弃,也可以配置remark dscp标记DSCP值,后续配合QoS队列调度
3.创建流分类(匹配用户)
然后创建流分类,用来匹配需要限速的用户:
bash
# 匹配单个IP
traffic classifier user_ip
if-match destination-address ipv4 192.168.10.10 255.255.255.255
# 如果是匹配整个VLAN的用户,用这个分类
traffic classifier user_vlan
if-match vlan-id 100
这里要注意:如果是匹配VLAN的用户,流分类的方向要和流量模板的方向对应。比如匹配VLAN 100的出方向流量,就要在流分类里加
if-match vlan-id 100,然后在流策略里绑定出方向。
4.创建流策略(绑定分类和模板)
把流分类和流量模板绑定成流策略:
bash
# 单个IP的流策略
traffic policy user_ip_policy
classifier user_ip behavior user_car
# 整个VLAN的流策略
traffic policy user_vlan_policy
classifier user_vlan behavior user_car
5.应用流策略
流策略可以应用在接口、VLAN或BD(Bridge Domain)上,这里以接口为例:
bash
# 应用到GE0/0/1接口的出方向(用户下行)
interface GigabitEthernet 0/0/1
traffic-policy user_ip_policy outbound
# 如果是入方向(用户上行),用这个命令
traffic-policy user_ip_policy inbound
# 如果是应用到VLAN,用这个命令
vlan 100
traffic-policy user_vlan_policy outbound
ME60的流策略应用顺序是:
接口 > VLAN > 全局,所以如果接口上已经有流策略,VLAN上的流策略不会生效。
6.验证配置
查看流策略应用状态
bash
display traffic policy interface GigabitEthernet 0/0/1
输出示例:
bash
Interface: GigabitEthernet0/0/1
Traffic Policy outbound: user_ip_policy
Policy Index: 1
Classifier: user_ip
Behavior: user_car
CAR:
Cir: 102400 kbps, PIR: 0 kbps, CBS: 25600000 bytes, PBS: 0 bytes
Conform Action: pass, Yellow Action: pass, Exceed Action: discard
Statistics enabled: No
查看流量统计
bash
display traffic policy statistics interface GigabitEthernet 0/0/1 outbound
如果配置了统计(在traffic behavior里加statistic enable),就能看到匹配的流量数、丢弃的流量数,用来验证限速是否生效。
实际流量测试
用iperf3在用户侧服务器和ME60另一侧的服务器之间打流:
bash
# 用户侧服务器(192.168.10.10)作为客户端,测试下行带宽(ME60出方向)
iperf3 -c 10.0.0.1 -t 60 -P 10
# 测试上行带宽(ME60入方向)
iperf3 -s -i 1
# 然后在ME60另一侧的服务器上跑:iperf3 -c 192.168.10.10 -t 60 -P 10
如果限速生效,iperf3的结果会稳定在配置的带宽附近,比如下行100M左右,上行20M左右。
四、进阶配置

1.动态限速(Radius下发)
对于拨号用户或动态分配IP的场景,用Radius下发限速更灵活。需要在ME60上配置Radius服务器:
bash
radius-server template radius1
radius-server authentication 192.168.20.1 1812
radius-server accounting 192.168.20.1 1813
radius-server shared-key simple Huawei@123
domain isp
authentication-scheme default
accounting-scheme default
radius-server template radius1
# 开启Radius下发限速
qos car radius enable
2.限速与QoS队列结合
如果要给用户的关键业务(比如语音、视频)做带宽保障,可以把限速和QoS队列结合:
bash
traffic behavior user_car
car cir 102400 cbs 25600000 green pass yellow pass red discard
# 把绿色流量放入队列5,保证带宽
queue 5
然后在接口上配置队列调度:
bash
interface GigabitEthernet 0/0/1
qos wrr queue 5 weight 5
这样用户的关键业务流量会优先被转发,即使其他流量跑满限速,关键业务也不会卡顿。
3. 性能优化
如果配置了大量静态限速条目,会导致业务板CPU占用率上升,可以做以下优化:
- 把静态限速配置在接入层交换机(比如华为S5735),ME60只做核心转发
- 用基于硬件的限速 (ME60-X8支持),在系统视图下配置
qos car hardware-accelerate enable,把限速计算从CPU offload到硬件芯片 - 合并相同限速规则的用户,比如把多个100M限速的用户放到同一个流分类里
五、常见故障排查
1.限速方向搞反
现象:配置了下行限速,但用户的下行带宽还是跑满
排查:用display traffic policy statistics查看流量统计,如果出方向的丢弃数为0,入方向的丢弃数很高,说明方向搞反了。把流策略的应用方向从outbound改成inbound,或者反过来。
2.突发值配置过小
现象:用户的业务经常卡顿,比如FTP下载速度不稳定
排查:突发值太小会导致正常的突发流量被丢弃,比如100M限速配1M突发,会导致下载速度只能稳定在100M,没有任何突发,业务感知会很差。建议突发值配成cir的20%-50%,比如100M限速配20M突发。
3.流分类匹配错误
现象:限速不生效,流量统计里的匹配数为0
排查:用display traffic classifier user_ip查看流分类的匹配规则,然后用display acl all查看ACL的命中数(如果用ACL匹配的话)。比如如果是匹配目的IP,要确认流量的目的IP是否是配置的IP,或者是否有其他流分类优先匹配了流量。
4.性能瓶颈
现象:配置限速后,所有用户的流量都卡顿
排查:用display cpu-usage查看业务板CPU占用率,如果超过80%,说明限速条目过多导致CPU过载。可以把部分限速配置迁移到接入层,或者开启硬件加速。
如果觉得这些经验对你有用,不妨动动手指点赞,再顺手收藏起来,方便后续回看或分享给有需要的朋友 ------ 您的每一份支持,都是我继续分享的动力,感谢阅读!