Qos技术

前言

QoS(Quality of Service),服务质量指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力,是网络的一种安全机制, 是用来解决网络延迟和阻塞等问题的一种技术。QoS的保证对于容量有限的网络来说是十分重要的,特别是对于流多媒体应用,例如VoIP和IPTV等,因为这些应用常常需要固定的传输率,对延时也比较敏感。

衡量网络质量的四个指标

带宽 bandwidth

是连路上单位时间所能通过的最大数据流量 其单位为bps(bit per second) 在一条端到端的链路中,最大可用带宽等于路径上带宽最低的链路的带宽

延迟 delay

是标识数据包穿越网络所用时间的指标

  • 交换延迟 设备收到一个数据要进行处理 (查询路由表或者路由策略)
  • 排队延迟 平时不排队 当数据阻塞处理不过来需要排队
  • 设备发送电信号和光信号为串行化延迟
  • 数据在传输为传输延迟
  • 端到端延迟等于所有图中链路和设备造成的延时的总和

抖动 Jitter

抖动是指数据标穿越网络时延迟的变化,是衡量网络延迟稳定性的指标

抖动是由于延迟的随机性造成的,主要原因是数据包排队延迟的不确定性

丢包 packet loss

丢包是指数包在传输过程中的丢失,是衡量网络可靠性的重要指标

丢包的主要原因

  • 网络拥塞时,当队列满了后,后续的报文将由于无法入队而被丢弃
  • 流量超过限制时 设备对其进行丢包 (acl等)

丢包 以丢包率作为衡量指标

丢包率=被丢弃的报文数量/全部报文数量

Qos模型

Best-Effort 尽力而为服务 (默认)

网络尽最大的可能性来发送报文,但对时间、可靠性等性能不供任何保证是internet的缺省服务模型 。它适用于绝大多数网络应用,如FTP E-mail,他通过FIFO(first in first out)队列 来实现 所有数据进入同一队列,按先进先出的原则调度,队列满后,后续报文被丢弃

Integrated Service 集成服务

使用RSVP(资源预留协议)要求用户要事先申请声明想要什么样的服务。在资源满足的情况下,预留资源以满足该需求

Differentiated Service差分服务

先对流量进行分类,然后把类别标记在报文头中,网络各节点只需要简单地识别报文中的这些标记,进行相应的处理,即将网络中的流量分为多个类,不同的类采用不同的处理方式

Qos技术分类

分类与标记 进行流量区分 打标签

根据一定的匹配规则识别出对象 ,是对网络业务进行区分服务的前提和基础,通常作用在接口入方向

拥塞管理 设置流量转发优先级

当拥塞发生时,制定一个资源的调度策略,以决定报文转发的处理次序 ,通常作用在接口出方向

拥塞避免

监管网络资源的使用情况,当发现拥塞有加剧的趋势,采取主动丢弃报文 策略,通过调整队列长度 来解除网络的过载,通常作用在接口出方向

流量监管 进行流量限速 例如接口流量限速20M 超出丢包

对进入或流出设备的特定流量进行监管,当流量超出设定值 时,可以采取限制或惩罚措施 ,以保护网络资源不受损害,可以作用在接口入方向出方向

流量整形 进行流量限速 例如接口流量限速18M 超出延迟高

主动调整流的输出速率的流量控制措施,用来使流量适配下游设备可供给的网络资源,避免不必要的报文丢弃 ,通常作用在接口出方向

  1. 首先通过流分类对各种业务进行识别和区分,它是后续各种动作的基础
  2. 通过各种动作对特定的业务进行处理。这些动作需要和流分类关联起来才有意义。具体采取何种动作,与所处的阶段以及网络当前的负载状况有关。例如,当报文进入网络时进行流量监管;流出节点之前进行流量整形;拥塞时对队列进行拥塞管理;拥塞加剧时采取拥塞避免措施等.

技术

分类与标记

根据acl或者报文自身信息等对流量进行分类

基于DSCP/IP Precedence/ 802.1p/mpls exp等信息对报文进行标记

PHB

Per Hop Behavior ,每跳行为,即设备对报文的处理,根据那些可见的服务特征,如时延、抖动或丢包率,分为以下几类:

第三层标记ip优先级,DSCP

DSCP前三位为CE1-7 ip优先级 前六位为DSCP 后两位为预留位

第二层标记802.1p

数字越大 优先级越高

qos流量统计华三模拟器不支持qos

csharp 复制代码
# 创建流分类
[Switch]traffic classifier classifier_1 <Name of classifier>      
[Switch-classifier-classifier_1]if-match dscp default                // 创建匹配原则

# 创建流行为
[Switch]traffic behavior behavior_1 <Name of behavior>          
[Switch-behavior-behavior_1]accounting packet                        // 流量统计

# 创建流策略
[Switch]qos policy policy <Policy name>
[Switch-qospolicy-policy]classifier classifier_1 behavior behavior_1  // 流分类关联流行为

# 应用流策略
[Switch-GigabitEthernet1/0/1]qos apply policy policy inbound

# 查看配置后流量统计的情况
[Switch] display qos policy interface gigabitethernet 1/0/1
Interface: GigabitEthernet1/0/1
  Direction: Inbound
  Policy: policy
   Classifier: classifier_1
     Operator: AND
     Rule(s) :
      If-match dscp default
     Behavior: behavior_1
      Accounting enable:
        28529 (Packets)

流量监管car与流量整形gts/lr

  • 对于ISP来说,对用户送入网络的流量控制是十分必要的
  • 对于企业网,对某些应用的流量进行控制也是一个有力的控制网络状况的工具
  • 监督进入网络的某一个流量的规格,把他限制在一个合理的范围之内,或者对超出的部分流量惩罚,以保护网络资源和运营商的利益
流量监管 丢包,没有延迟
流量整形 缓存,增加延迟
  1. 单桶单速

cir (committed infotmation rate) 承诺信息速率 令牌进令牌桶的速度 cbs (committed burst size) 承诺突发尺寸 存放令牌的令牌桶的容量
单桶单速 c桶
一个令牌桶,容量是CBS一个填充令牌的速率CIR。当有B字节的报文传过来的时候,根据桶的当前容量来对这个报文进行处理 超出丢弃 未超出转发

  1. 双桶单速

双桶单速 e桶 e桶>c桶 取令牌 优先c桶 c桶不够再e桶 ebs (extended burst size) 超额突发尺寸
设备执行car的时候 流量是逐包转发的

  • 经验公式
  • CIR<=100Mbps时,CBS(Bytes)=CIR(kbps)x1.5(s)/8
  • CIR>100Mbps时,CBS(Bytes)=100,000(kbps)x1.5(s)/8

两个令牌桶,一个的容量是CBS一个的容量是EBS ,一个填充令牌的速率CIR,两个令牌桶使用同一个填充速率。当有B字节的报文传过来的时候,根据两个桶的当前容量来对这个报文进行处理。

  1. 双桶双速

双速双桶 c桶 p桶 PIR (peak information rate) 峰值信息速率 最高速率是多少 先p桶后c桶 pbs (peak burst size) 峰值突发尺寸
两个令牌桶,一个的容量是CBS,一个的容量是PBS。这两个令牌桶分别使用两个填充令牌的速率,一个填充速率是CIR,一个填充速率是PIR。当有B字节的报文传过来得时候,根据两个桶的当前容量来对这个报文进行处理。

--- 双速双桶 单速双桶
--- 先p桶后c桶 先c桶后e桶
绿灯 两桶都拿 只拿c桶
黄灯 只拿p桶 只拿e桶
红灯 都没拿 都没拿
  1. 应用场景
  • 只限速,用单桶单速
  • 限速+区分突发量,用单速双桶
  • 限速+区分突发量+区分带宽是否超出峰值,用双速双桶

配置命令

csharp 复制代码
# 创建流行为
[Switch]traffic behavior behavior_1 <Name of behavior>          
[Switch-behavior-behavior_1]car cir 8 cbs 512 ebs 65536                    // 限速8kbps 最高通行65536kbps大小的数据

拥塞与管理

  • 需要发送的数据流量大于设备发送接口的发送能力时,会产生拥塞。
  • 拥塞管理是指在网络发生拥塞时,进行管理和控制合理分配资源。通常采用队列技术实现。
  • 报文按一定的策略缓存到队列中,然后再按一定的调度策略把报文从队列中取出,在接口上发送出去。
相关推荐
卖萌的斜阳3 小时前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
单片机·网络协议·tcp/ip
用户8334423966144 小时前
Qt6 实现 TCP/UDP/组播 透明中继抓包工具 | 流量录制回放 | 工业设备调试
网络协议
CryptoPP6 小时前
BSE股票K线数据接入实战:从接口调用到前端图表展示
大数据·前端·网络·人工智能·websocket·网络协议
ITxiaobing20236 小时前
程序化广告RTB场景下IP地理定位服务的精度与工程架构选型
网络协议·tcp/ip·架构
阿米亚波9 小时前
【EVE-NG 实战】防火墙基础(VLAN · VRRP · NAT · ACL · 静态路由)
运维·网络·笔记·网络协议·计算机网络·网络安全·运维开发
tiantianuser10 小时前
NVME-oF IP 设计2 :设计之前的调研!
网络·网络协议·rdma·roce v2·nvme of
2401_8734794011 小时前
如何识别代理IP和伪装流量?用IP情报工具三步穿透住宅代理伪装
网络·数据库·网络协议·tcp/ip·ip
STDD11 小时前
Traefik 中间件深度配置:限流、认证、IP 白名单与错误页面定制
网络协议·tcp/ip·中间件
曾令胜12 小时前
HTTP协议基础总结
网络·网络协议·http
sdghterhd1 天前
WebSocket 快速入门教程(附示例源码)
网络·websocket·网络协议