交换机使用QoS来对端口限速

哎……,这一段时间一直都很忙呀,很久都没有来写博客了,今天正好没有事。就带家大一起来看看这个交换机里面的 QoS 吧。
一直以来想对这个交换机上面 QoS 来做一个限制,今天正好没有事情做,于是利用办公室里面的 4006 交换机来做一下这个测试。
4006 上面我没有做任何配置。下面按照惯例来看看拓扑图吧。
现在呢?在没有做 QoS 的时候我们来看看它的下载速度。
从这里我们可以看见,我从 192.168.0.230 上面下载一个 VM 虚拟机,速度是 10.5M ,因为我内网都是 100M 口嘛。
那下面我们就通过这台 4006 交换机来带着大家做一下这个配置嘛!
在这里我们还是先来讲讲我们做这个实验的思路吧,首先我们给要限速的一些 PC 使用 ACL 挑选出来。然后我们将 ACL 绑定在类上面,再将类绑定在策略上面,最好再将这个策略应用在接口上面。大至就是这样一个流程来做。但是这里要注意的是每个接口每个方向只支持一个策略;一个策略可以用于多个接口。
1 、在交换机上启动 QOS
Switch(config)#mls qos  // 启用 QOS 功能
2 、分别定义 PC1(192.168.0.187) PC2(192.168.0.189) 访问控制列表
Switch(config)#access-list 1 permit host 192.168.0.187  // 控制pc1 上行流量
Switch(config)#access-list 110 permit ip any host 192.168.0.187  // 控制pc1 下行流量
Switch(config)#access-list 2 permit host 192.168.0.189  // 控制pc2 上行流量
Switch(config)#access-list 120 permit ip any host 192.168.0.189  // 控制pc2 下行流量
3 、定义类,并和上面定义的访问控制列表绑定
Switch(config)#class-map user1-up  // 定义 PC1 上行的类,并绑定访问列表
Switch(config-cmap)#match access-group 1
Switch(config-cmap)#exit
Switch(config)#class-map user2-up  // 定义PC2 上行的类,并绑定访问列表
Switch(config-cmap)#match access-group 2
Switch(config-cmap)#exit
Switch(config)#class-map user1-down  // 定义PC1 下行的类,并绑定访问列表
Switch(config-cmap)#match access-group 110
Switch(config-cmap)#exit
Switch(config)#class-map user2-down  // 定义PC2 下行的类,并绑定访问列表
Switch(config-cmap)#match access-group 120
Switch(config-cmap)#exit
4 、定义策略,把上面定义的类绑定到该策略
Switch(config)#policy-map user1-up   // 定义 PC1 上行的速率为 1M
Switch(config-pmap)#class user1-up
Switch(config-pmap-c)#trust dscp
Switch(config-pmap-c)#police 1024000 1024000 exceed-action drop
Switch(config-pmap-c)#exit
Switch(config-pmap)#policy-map user2-up   // 定义 PC2 上行的速率为 2M
Switch(config-pmap)#class user2-up
Switch(config-pmap-c)#police 2048000 1024000 exceed-action drop
Switch(config-pmap-c)#exit
Switch(config-pmap)#exit
Switch(config)#policy-map user-down    // 总出口的下行速率
Switch(config-pmap)#class user1-down
Switch(config-pmap-c)#trust dscp
Switch(config-pmap-c)#police 1024000 1024000 exceed-action drop
Switch(config-pmap-c)#exit
Switch(config-pmap)#class user2-down
Switch(config-pmap-c)#trust dscp
Switch(config-pmap-c)#police 2048000 1024000 exceed-action drop
Switch(config-pmap-c)#exit
5 、在接口上运用策略
Switch(config)#int fa3/15  // 从该接口出去的数据最大 1M
Switch(config-if)#service-policy input user1-up
Switch(config-if)#exit
Switch(config)#int fa3/26  // 从该接口出去的数据最大 2M
Switch(config-if)#service-policy input user2-up
Switch(config-if)#exit
Switch(config)#int fa3/2   // 应用我们刚才前面建立的下载策略
Switch(config-if)#service-policy input user-down
Switch(config-if)#exit
现在我们来测试一下看看呢?当我 PC1 接在 15 口上面时。
 
我们可以看到差不多速度就在 125K 左右,而当我们 PC2 接在 26 口上面呢?
我们可以看见,能够达到 200 K ,你想一下你们家里面的 ADSL 如果是 1M 的,下载速度是不是就只有 130-140Kb ,而 2M ADSL 则能够达到 200-230K 。我们可以看见它已经实现了我们的这个限速功能了吧。
那我们现在将 PC2 接在本交换机的其他任意一个口看看有没有影响呢?现在我将 PC2 接在 13 口的。
我们可以看见,它还是没有影响。这是为什么呢?因为我们下载的策略应用在 fa3/2 这个接口上面的,而我们服务器就连在这个接口上面,当然我们 PC 连在其他那些端口上面都是一样的效果,我这里只是拿的两台 PC 来做的实验,而在我们实际工作中,不可能这么做,我们可以将上面的 ACL 改成你要做限速的网段就 OK 了。
这个功能是不是很实用呢。有时间也来练习练习嘛!

你可能感兴趣的:(职场,休闲,交换机,qos,端口限速)