当前位置: 首页 > news >正文

QoS 基本原理与配置

        QoS(Quality of Service,服务品质保证)是指一个网络能够利用各种各样的技术向选定 的网络通信提供更好的服务的能力。QoS是服务品质保证,提供稳定、可预测的数据传送服 务,来满足使用程序的要求,QoS不能产生新的带宽,而是根据应用的需求以及网络管理的 设置来有效的管理网络带宽。QoS并不能产生新的带宽,但是它可以将现有的带宽资源做一个最佳的调整和 配置,完整的应用QoS,可以对网络的数据传输做到完全的控管。

        IP 协议的数据传送规范,只针对发送端和接收端的地址和服务等作出规定,并且利用 OSI 四层以上的,如TCP协议等来确认数据包的传送正确无误,但是,IP协议没有提供和保 护传输数据包的带宽,而是以尽力而为(Best Effort)的方式来提供带宽服务。

        QoS 的基本模型分为四个部分:Classification(分类)、Policing(监管)、Mark(重写) 和Scheduling(排程),其中分类、监管和重写是顺序执行的 QoS 的入口行为,整形和排程 是QoS的出口行为。

  • 分类:通过检查数据包的分类信息,来区别不同的流量,并且根据数据包的分类信息生成内 部优先级和丢弃优先级。
  • 监管和重写:在入口的流量经过分类,并且每个数据包都被分配了一个内部优先 级和丢弃优先级值以后,就可以进行监管和重写。
  • 整形和排程:出口的数据包会都具有内部优先级值和丢弃优先级。整形行为根据数据包的 内部优先级值将其分配到不同的优先级队列中,而排程行为根据配置的优先级队列权重和 丢弃优先级来进行数据包转发服务。

QoS 配置举例:

案例1:

动QoS功能,将端口ethernet 1/0/1 出口队列的权重改为1:1:2:2:4:4:8:8,配置成信任cos 模式,但是不改变报文里的DSCP值,并且将此端口的默认cos值设为5。

Switch#config 
Switch(config)#interface ethernet 1/0/1  
Switch(Config-If-Ethernet1/0/1)# mls qos queue wrr weight 1 1 2 2 4 4 8 8
Switch(Config-If-Ethernet1/0/1)#mls qos cos 5 

配置结果:

全局启动了 QoS 功能,端口 ethernet 1/0/1 出口带宽的比例依次为 1:1:2:2:4:4:8:8。当从 ethernet 1/0/1 进来的报文带 cos 值时,根据cos值到出口队列的映射关系,cos值0-7分别 对应出口队列 1,2,3,4,5,6,7,8,放到不同的优先队列,如果进来的报文不带 cos 值,则将其cos值设为5,根据对应关系,放入优先级队列6。所有经过的报文不改变其携 带的DSCP值。

案例2:

在端口ethernet1/0/2 上,将属于网段192.168.1.0 内的报文带宽限制为10M比特/秒,突发值 设为4M字节,超过带宽的该网段内的报文一律丢弃。

Switch#config 
Switch(config)#access-list 1 permit 192.168.1.0 0.0.0.255 
Switch(config)#class-map c1 
Switch(Config-ClassMap-c1)#match access-group 1 
Switch(Config-ClassMap)# exit 
Switch(config)#policy-map p1 
Switch(Config-PolicyMap-p1)#class c1 
Switch(Config-PolicyMap-p1-Class-c1)#policy 10000 4000 exceed-action drop  
Switch(Config-PolicyMap-p1-Class-c1)#exit 
Switch(Config-PolicyMap-p1)#exit 
Switch(config)#interface ethernet 1/0/2 
Switch(Config-If-Ethernet1/0/2)#service-policy input p1

配置结果:

先设置一个ACL:1,匹配网段192.168.1.0。全局启动QoS功能,创建一个class-map:c1, 在class-map 中匹配ACL1,再创建一个policy-map:p1,在 P1中引用c1,设置对应的policy 来限制带宽和峰值。然后在端口ethernet 1/0/2 应用此policy-map。设置后,网段192.168.1.0 内的报文带宽在端口ethernet 1/0/2上被限制为10M比特/秒,突发值为4M字节,超过带宽 的该网段内的报文一律丢弃。

案例3:

如图,虚线框内组成一个QoS域,SW1将不同的流量分类,分配不同的IP优先级,如在端 口ethernet 1/0/1 上将属于网段192.168.1.0 内的报文的IP优先级设为5,与 SW2 相连的端口 为trunk 口。在SW2 上,将与SW1相连的端口ethernet 1/0/1,设置信任cos。这样在QoS 域的内部,不同优先级的报文就走不同的队列,分配不同的带宽。

交换机1上的QoS配置:

Switch#config 
Switch(config)#access-list 1 permit 192.168.1.0 0.0.0.255 
Switch(config)#class-map c1 
Switch(Config-ClassMap-c1)#match access-group 1 
Switch(Config-ClassMap-c1)# exit 
Switch(config)#policy-map p1 
Switch(Config-PolicyMap-p1)#class c1 
Switch(Config-PolicyMap-p1-Class-c1)#set ip precedence 5 
Switch(Config-PolicyMap-p1-Class-c1)#exit 
Switch(Config-PolicyMap-p1)#exit 
Switch(config)#interface ethernet 1/0/1 
Switch(Config-If-Ethernet1/0/1)#service-policy input p1 

交换机2上的QoS配置:

Switch#config 
Switch(config)#interface ethernet 1/0/1

注意:

如果配置了动态vlan(mac vlan/voice vlan/ip subnet vlan/protocol vlan),报文的 COS 值等于动态vlan的COS值。

目前策略表只支持绑定到入口,对出口不支持。

目前建议不要在vlan和属于该vlan的端口上同时使用policy map。

http://www.dtcms.com/a/360048.html

相关文章:

  • 学生请假就餐系统
  • AI 赋能 Java 开发效率:全流程痛点解决与实践案例(二)
  • 使用cursor claude sonnet4的一些感受
  • 【系统分析师】高分论文:论原型法及其在系统开发中的应用
  • Langflow 框架中 Prompt 技术底层实现分析
  • LangChain中Prompt处理机制的技术架构与核心思想分析
  • [信号与系统个人笔记]第三章 连续时间信号与系统的频域分析
  • PPO、DPO和GRPO的区别
  • 【百度】C++开发(25届提前批 一面)面经
  • MongoDB 从零到入门:实用指南
  • 多租户配额与预算:限额、配额周期与突发桶的结算模型(Final)
  • juicefs+ceph rgw 存储安装
  • React 状态管理演进之路:从 Dva 到现代架构
  • leetcode 面试题 01.01.判定字符是否唯一
  • 解决浏览器的**混合内容安全策略**(Mixed Content Security Policy)带来的无法访问页面
  • 深入探讨JavaScript性能瓶颈:我的优化实战与思考
  • PBR 、 IPv6 PBR(基于策略的路由)原理与配置
  • 《济公》电视剧总结学习
  • 家庭全光组网高温故障深度分析与散热重构全记录
  • linux系统之----共享内存
  • 开学季,音频格式古诗词,也可作为启蒙教育。
  • C#异步编程
  • OpenCL C++ 内核(Kernel)
  • 【动态规划】回文串问题
  • linux修改权限命令chmod
  • 借助 Kubernetes 与 vLLM 实现大规模大语言模型推理
  • 使用Cadence工具完成数模混合设计流程简介
  • uvm do on
  • 【深度学习】配分函数:近似最大似然与替代准则
  • Python毕业设计推荐:基于Django+MySQL的养老社区服务管理系统