思科交换机QOS限速及限制BT下载配置实例

2024-03-18 04:38

本文主要是介绍思科交换机QOS限速及限制BT下载配置实例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

实例1:思科交换机上QOS限速问题

用于交换机上对专线用户的带宽进行控制,交换机平时都是10/100/1000、三种速率的,对于其它的速率需要进行QOS进行限速,也可以对一些端口进行限制,做策略,对一些端口进行限制。

一、网络说明

user1_PC1接在Cisco3560 F0/1上,速率为1M;

ip_add 192.168.1.1/24

user2_PC2接在Cisco3560 F0/2上,速率为2M;

ip_add 192.168.2.1/24

Cisco3560的G0/1为出口,或级联端口。

二、详细配置过程

注:每个接口每个方向只支持一个策略;一个策略可以用于多个接口。因此所有PC的下载速率的限制都应该定义在同一个策略(在本例子当中为policy-map user-down),而PC不同速率的区分是在Class-map分别定义。

1、在交换机上启动QOS

Switch(config)#mls qos //在交换机上启动QOS

2、分别定义PC1(192.168.1.1)和PC2(192.168.2.1)访问控制列表

Switch(config)#access-list 1 permit 192.168.1.0 0.0.0.255 //控制pc1上行流量

Switch(config)#access-list 101 permit any 192.168.1.0 0.0.0.255 //控制pc1下行流量

Switch(config)#access-list 2 permit 192.168.1.2 0 0.0.0.255 //控制pc2上行流量

Switch(config)#access-list 102 permit any 192.168.2.1 0.0.0.255 //控制pc2下行流量

3、定义类,并和上面定义的访问控制列表绑定

Switch(config)# class-map user1-up //定义PC1上行的类,并绑定访问列表1

Switch(config-cmap)# match access-group 1

Switch(config-cmap)# exit

Switch(config)# class-map user2-up

Switch(config-cmap)# match access-group 2 //定义PC2上行的类,并绑定访问列表2

Switch(config-cmap)# exit

Switch(config)# class-map user1-down

Switch(config-cmap)# match access-group 101 //定义PC1下行的类,并绑定访问列表101

Switch(config-cmap)# exit

Switch(config)# class-map user2-down

Switch(config-cmap)# match access-group 102 //定义PC2下行的类,并绑定访问列表102

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 1000000 1000000 exceed-action drop

Switch(config)# policy-map user2-up //定义PC2上行的速率为2M ,超过丢弃

Switch(config-pmap)# class user2-up

Switch(config-pmap-c)# trust dscp

Switch(config-pmap-c)# police 2000000 2000000 exceed-action drop

Switch(config)# policy-map user-down

Switch(config-pmap)# class user1-down

Switch(config-pmap-c)# trust dscp

Switch(config-pmap-c)# police 1000000 1000000 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 2000000 2000000 exceed-action drop

Switch(config-pmap-c)# exit

5、在接口上运用策略

Switch(config)# interface f0/1

Switch(config-if)# service-policy input user1-up

Switch(config)# interface f0/2

Switch(config-if)# service-policy input user2-up

Switch(config)# interface g0/1

Switch(config-if)# service-policy input user-down

 

实例2:限制BT下载的QOS配置实例

一、找出BT程序开放的连接端口,默认为6881至6889.

二、将局域网内经常拉BT的IP统计出来,建立扩展访问列表如下:

Extended IP access list btdownloadpermit tcp any host 192.168.1.120 range 6881 6889permit tcp any host 192.168.1.135 range 6881 6889permit tcp any host 192.168.1.146 range 6881 6889permit tcp any host 192.168.1.159 range 6881 6889permit tcp any host 192.168.1.211 range 6881 6889permit tcp any host 192.168.1.223 range 6881 6889

三、建立class-map class_bt

Cisco(config)#class-map class_btCisco(config-cmap)#match access-group name btdownload

四、建立policy-map qos_bt 进行速率限制

Cisco(config)#policy-map qos_btCisco(config-pmap)#class class_btCisco(config-pmap-c)#police 5000000 8000 exceed-action drop

五、 QOS配置完毕了,不过在将QOS应用到端口前,要搞清楚一个概念,QOS机制不能与flowcontrol(流控制)功能共存在同一个端口上。关于 flowcontrol——流控制在直连的以太端口上启用,在拥塞期间允许另一端拥塞的节点暂停链路运作来控制流量速率。如果一个端口发生拥塞并且不能接收任何更多的流量,他将通知对端端口停止发送直到这种拥塞情况消失。当本地设备在他本地检测到了任何拥塞,他能够发送一个暂停帧通知链路伙伴或者远程设备已发生拥塞。紧随收到暂停帧之后,远程设备停止发送任何数据包,这样防止在拥塞期间丢弃任何一个数据包。流控制可以用两种方式设计,对称和不对称。对称设计适合于点到点的链路,而不对称设计适合于辐射型节点连接。辐射型节点中中心路由器可以中断末端系统,而反之就不行。用命令设置接口的发送或接收暂停帧为on,off或desired.(interface) flowcontrol {receive | send}{on | off | desired}缺省快速以太端口是receive off和send off.在Catalyst3550交换机上,GBT端口能够接收和发送暂停帧;快速以太端口只能够接收暂停帧。因此,对快速以太端口来说,只能用 send off来描述其状态。

六、将QOS应用到相应端口上

Cisco(config-if)#service-policy input qos_bt

 

 

实例2:限制BT下载的QOS配置实例

一、找出BT程序开放的连接端口,默认为6881至6889.

二、将局域网内经常拉BT的IP统计出来,建立扩展访问列表如下:

Extended IP access list btdownloadpermit tcp any host 192.168.1.120 range 6881 6889permit tcp any host 192.168.1.135 range 6881 6889permit tcp any host 192.168.1.146 range 6881 6889permit tcp any host 192.168.1.159 range 6881 6889permit tcp any host 192.168.1.211 range 6881 6889permit tcp any host 192.168.1.223 range 6881 6889

三、建立class-map class_bt

Cisco(config)#class-map class_btCisco(config-cmap)#match access-group name btdownload

四、建立policy-map qos_bt 进行速率限制

Cisco(config)#policy-map qos_btCisco(config-pmap)#class class_btCisco(config-pmap-c)#police 5000000 8000 exceed-action drop

五、 QOS配置完毕了,不过在将QOS应用到端口前,要搞清楚一个概念,QOS机制不能与flowcontrol(流控制)功能共存在同一个端口上。关于 flowcontrol——流控制在直连的以太端口上启用,在拥塞期间允许另一端拥塞的节点暂停链路运作来控制流量速率。如果一个端口发生拥塞并且不能接收任何更多的流量,他将通知对端端口停止发送直到这种拥塞情况消失。当本地设备在他本地检测到了任何拥塞,他能够发送一个暂停帧通知链路伙伴或者远程设备已发生拥塞。紧随收到暂停帧之后,远程设备停止发送任何数据包,这样防止在拥塞期间丢弃任何一个数据包。流控制可以用两种方式设计,对称和不对称。对称设计适合于点到点的链路,而不对称设计适合于辐射型节点连接。辐射型节点中中心路由器可以中断末端系统,而反之就不行。用命令设置接口的发送或接收暂停帧为on,off或desired.(interface) flowcontrol {receive | send}{on | off | desired}缺省快速以太端口是receive off和send off.在Catalyst3550交换机上,GBT端口能够接收和发送暂停帧;快速以太端口只能够接收暂停帧。因此,对快速以太端口来说,只能用 send off来描述其状态。

六、将QOS应用到相应端口上

Cisco(config-if)#service-policy input qos_bt

 

 

QoS其他内容

QoS配置四个步骤:

1,设置ACL匹配应用流量;

2,设置class-map匹配相应ACL或者相应端口等等,不过一般式匹配ACL;

3,设置policy-map匹配class-map,然后定一规则动作;

4,将policy-map绑定到相应的接口上。

当然需要注意的是qos已经全局enable,默认情况先qos是disable的。使用全局命令mls qos来enable,可以通过show mls qos来查看是否enable。(mls:multilayer switching information)

QoS命令详解

Basic introduction

marking就是修改IP优先级或者DSCP,但是由于IP优先级和DSCP都是占用TOS字段,后者相当于前者的扩展,所以不能同

时设置这两种值,如果同时设置了这两 种值,那么只有IP DSCP 的值生效。

标记是后续很多QOS策略应用的基本,使用的是policy map。

Configurations

1.定义class map

Class map是一个匹配表,类似于ACL。所有的policy map实质上是对class map进行操作的

nimokaka(config)#class-map [match-all|match-any] {map-name}----参数中match-all 表示匹配所有条件,match-any表示至少符合一个条件

2.class map的匹配

nimokaka(config-cmap)#

match access-group {ACL} ―――――――――――――――匹配IP ACL (主要就是对应数据包了)

match protocol {protocol} ―――――――――――――――匹配协议(这个在NBAR—基于网络应用中使用)

match input-interface {interface} ―――――――――――――――匹配进站接口

match qos-group {Group ID} ―――――――――――――――匹配组ID(不知道干啥的)

match destination-address {mac mac-address} ―――――――――――――――匹配目标MAC 地址

match source-address {mac mac-address} ―――――――――――――――匹配源MAC 地址

match ip {dscp dscp} ――――――――――――――――――――匹配IP DSCP 值

match ip {precedence precedence} ―――――――――――――――匹配IP 优先级

match class-map {map-name} ―――――――――――――――匹配class map(class map嵌套)

match vlan {vlan-id} ―――――――――――――――匹配VLAN

3.设置policy map

nimokaka(config)#policy-map {policy-name}

nimokaka(config-pmap)#class {class-map}

4.配置优先级和DSCP值

nimokaka(config-pmap-c)#

一些用于标记的动作选项:

set ip {precedence precedence} ―――――――――――――――设置IP优先级

set ip {dscp dscp} ―――――――――――――――设置IP DSCP 值

set qos-group {Group ID} ―――――――――――――――设置组ID

set cos {cos} ―――――――――――――――设置CoS 值

priority {kbps|percent percent} [Bc] ―――――――――――――――定义优先级流量的保留的带宽(Kb or %)以及突发流量

bandwidth {kbps|percent percent} ―――――――――――――――定义保留的带宽(Kb or %)

police {CIR Bc Be} conform-action {action} exceed-action {action} [violate-action{action}]――――使用令牌桶算法进行限速

random-detect 启用WRED

queue-limit {packets} 定义队列中数据包的最大个数

service-policy {policy-map} 使用别的策略进行嵌套,做为match语句匹配的标准

shape {average|peak} {CIR [Bc] [Be]} 定义CIR,Bc以及Be进行整形

5.将配置挂接到接口上

nimokaka(config-if)service-policy [input|output] policy-name

6.检查配置

nimokaka#show policy-map [policy-name]

查看接口的policy map 信息:

nimokaka#show policy-map interface [interface]

Case

把来自192.168.10.0/24 的出站telnet 流量的IP优先级设置为5,其他的出站流量的IP 优先级设置为1:

access-list 100 permit tcp 192.168.10.0 0.0.0.255 any eq telnet

class-map match-all telnet

match access-group 100

policy-map nimokaka

class telnet

set ip precedence 5

class class-default

set ip precedence 1

interface Serial1

clock rate 100

no shut

ip address 1.1.1.1 255.255.255.252

service-policy output nimokaka

PS

Class-map嵌套:有两点理由:在创建class map的时候去调用一个已有的class map

1、管理方便,在已有的基础上增加一个修改进行平滑的过度。

2、允许用户在同一个class map里分别使用匹配所有(match-all)和匹配任何(match-any)。

比如4个匹配标准:A、B、C和D。现在想让class map 匹配A,或匹配B,或同时匹配C和D,就可以使用class map的嵌套:

创建一个新的class map,定义为匹配所有(match-all)新标 准为匹配E即同时匹配C和D;然后定义另一个匹配任何

(match-any)的class map,去匹配A, 或B,或E(即同时匹配C 和D)。

交换机QoS的配置方法(cisco3550/3560、cisco3750)

(一)配置流量分类和策略

1. 全局#class-map [match-all(默认:完全符合)/Match-any] ―――(建立一个流量分类的策略)

2. Map#match access-group ――――――(使用ACL进行流量分类,可以重复配置)

3. Map#match input-interface <接口>――――――(基于接口进行流量分类)

4. Map#match vlan <#>――――――――――――(基于vlan进行流量分类)

5. Map#match protocol ……――――――――(基于协议进行流量分类)

(二) 定义策略

1. 全局#policy-map ――――――――――――(建立一个策略文件)

2. Pm#class ―――――――――――(对定义好的分类流量作策略)

3. Pm-c#bandwidth <值/百分比> ――――――――――――――(用于设置权值*占用接口的带宽比例)

4. Pm-c#set ip precedence <0-7> ―――――――――――――(设置marking值)

5. Pm-c#set cos……

6. Pm-c#set dscp……

(三) 加载策略

1. 接口#service-policy  ――――――――――(在接口上加载策略)

(四) 全局#mls qos ――――――――――――――――――――――(打开开QoS功能)

(五) 接口#mls qos trust ――――――(在接口上设置信任状态和信任边界,一旦接口上收到相应Marking的值,则根据策略进行处理)

八. 显示命令

(一) #show class-map  

交换机端口限速的配置方法(cisco3550/3560、cisco3750)

mls qos

!

class-map match-all IPclass ―――――――――――――――――所有抓取所有流量

match ip dscp 0

!

!

policy-map rate-256K

class IPclass

police 256000 20000 exceed-action drop

policy-map rate-512K

class IPclass

police 512000 20000 exceed-action drop

policy-map rate-2M

class IPclass

police 2096000 200000 exceed-action drop

policy-map rate-6M

class IPclass

police 6296000 600000 exceed-action drop

policy-map rate-4M

class IPclass

police 4200000 300000 exceed-action drop

policy-map rate-800M

class IPclass

police 800000000 800000 exceed-action drop ―――定义policy-map,800M开始延时增加,到达800.8M后开始丢弃(丢包)

interface FastEthernet0/22

service-policy input rate-256K ―――――――――――――――――――应用policy到交换机端口上

service-policy output rate-256K  

(二) #show policy-map  

(三) #show policy-map interface <接口> ――――――――――(显示接口加载的策略)

 

原博客地址:http://hi.baidu.com/5ijsj/item/2cdce81ab87fcd08e75c361c

 

这篇关于思科交换机QOS限速及限制BT下载配置实例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/821198

相关文章

Linux 安装、配置Tomcat 的HTTPS

Linux 安装 、配置Tomcat的HTTPS 安装Tomcat 这里选择的是 tomcat 10.X ,需要Java 11及更高版本 Binary Distributions ->Core->选择 tar.gz包 下载、上传到内网服务器 /opt 目录tar -xzf 解压将解压的根目录改名为 tomat-10 并移动到 /opt 下, 形成个人习惯的路径 /opt/tomcat-10

uniapp接入微信小程序原生代码配置方案(优化版)

uniapp项目需要把微信小程序原生语法的功能代码嵌套过来,无需把原生代码转换为uniapp,可以配置拷贝的方式集成过来 1、拷贝代码包到src目录 2、vue.config.js中配置原生代码包直接拷贝到编译目录中 3、pages.json中配置分包目录,原生入口组件的路径 4、manifest.json中配置分包,使用原生组件 5、需要把原生代码包里的页面修改成组件的方

swiper实例

大家好,我是燐子,今天给大家带来swiper实例   微信小程序中的 swiper 组件是一种用于创建滑动视图的容器组件,常用于实现图片轮播、广告展示等效果。它通过一系列的子组件 swiper-item 来定义滑动视图的每一个页面。 基本用法   以下是一个简单的 swiper 示例代码:   WXML(页面结构) <swiper autoplay="true" interval="3

Java面试题:通过实例说明内连接、左外连接和右外连接的区别

在 SQL 中,连接(JOIN)用于在多个表之间组合行。最常用的连接类型是内连接(INNER JOIN)、左外连接(LEFT OUTER JOIN)和右外连接(RIGHT OUTER JOIN)。它们的主要区别在于它们如何处理表之间的匹配和不匹配行。下面是每种连接的详细说明和示例。 表示例 假设有两个表:Customers 和 Orders。 Customers CustomerIDCus

Lipowerline5.0 雷达电力应用软件下载使用

1.配网数据处理分析 针对配网线路点云数据,优化了分类算法,支持杆塔、导线、交跨线、建筑物、地面点和其他线路的自动分类;一键生成危险点报告和交跨报告;还能生成点云数据采集航线和自主巡检航线。 获取软件安装包联系邮箱:2895356150@qq.com,资源源于网络,本介绍用于学习使用,如有侵权请您联系删除! 2.新增快速版,简洁易上手 支持快速版和专业版切换使用,快速版界面简洁,保留主

IDEA配置Tomcat远程调试

因为不想把本地的Tomcat配置改乱或者多人开发项目想测试,本文主要是记录一下,IDEA使用Tomcat远程调试的配置过程,免得一段时间不去配置到时候忘记(毕竟这次是因为忘了,所以才打算记录的…) 首先在catalina.sh添加以下内容 JAVA_OPTS="-Dcom.sun.management.jmxremote=-Dcom.sun.management.jmxremote.port

Android多线程下载见解

通过for循环开启N个线程,这是多线程,但每次循环都new一个线程肯定很耗内存的。那可以改用线程池来。 就以我个人对多线程下载的理解是开启一个线程后: 1.通过HttpUrlConnection对象获取要下载文件的总长度 2.通过RandomAccessFile流对象在本地创建一个跟远程文件长度一样大小的空文件。 3.通过文件总长度/线程个数=得到每个线程大概要下载的量(线程块大小)。

Steam邮件推送内容有哪些?配置教程详解!

Steam邮件推送功能是否安全?如何个性化邮件推送内容? Steam作为全球最大的数字游戏分发平台之一,不仅提供了海量的游戏资源,还通过邮件推送为用户提供最新的游戏信息、促销活动和个性化推荐。AokSend将详细介绍Steam邮件推送的主要内容。 Steam邮件推送:促销优惠 每当平台举办大型促销活动,如夏季促销、冬季促销、黑色星期五等,用户都会收到邮件通知。这些邮件详细列出了打折游戏、

微信小程序开发必知必会:文件结构和基本配置

一、微信小程序基本文件结构 1.  project.config.json:项目的基本配置文件,包括项目名称、appid、项目目录、页面文件夹等。     {"setting": {"urlCheck": false,"es6": true,"postcss": true,"nodeModulesPath": "D:\\\\node_modules"},"appid": "wxd678e

【杂记-浅谈DHCP动态主机配置协议】

DHCP动态主机配置协议 一、DHCP概述1、定义2、作用3、报文类型 二、DHCP的工作原理三、DHCP服务器的配置和管理 一、DHCP概述 1、定义 DHCP,Dynamic Host Configuration Protocol,动态主机配置协议,是一种网络协议,主要用于在IP网络中自动分配和管理IP地址以及其他网络配置参数。 2、作用 DHCP允许计算机和其他设备通