Qos技术基础原理

2024-04-27 15:38
文章标签 基础 技术 原理 qos

本文主要是介绍Qos技术基础原理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Qos的诞生背景:

网络的普及和业务的多样化使得互联网流量激增,从而产生网络拥塞,增加转发时延,严重时还会产生丢包,导致业务质量下降甚至不可用。所以,要在网络上开展这些实时性业务,就必须解决网络拥塞问题。解决网络拥塞的最好的办法是增加网络的带宽,但从运营、维护的成本考虑,这是不现实的,最有效的解决方案就是应用一个“有保证”的策略对网络流量进行管理。

QoS技术就是在这种背景下发展起来的。QoS(Quality of Service)即服务质量,其目的是针对各种业务的不同需求,为其提供端到端的服务质量保证。QoS是有效利用网络资源的工具,它允许不同的流量不平等的竞争网络资源,语音、视频和重要的数据应用在网络设备中可以优先得到服务。QoS技术在当今的互联网中应用越来越多,其作用越来越重要。

各类业务对网络质量的要求:

在这里插入图片描述
带宽:
在这里插入图片描述
网络带宽是指在单位时间(一般指的是1秒钟)内能传输的数据量。如图所示,尽管传输途径上的最大的一段链路带宽是1Gbps,但是数据从一个用户传到另一个用户的最大传输速率只能是256kbps,因为传输的最大带宽是由传输路径上的最小链路带宽决定的。正是因为这样,带宽小的链路是影响传输速率的关键。

时延:
在这里插入图片描述

时延是指一个报文从一个网络的一端传送到另一端所需要的时间。单个网络设备的时延包括传输时延、串行化时延、处理时延、以及队列时延。

  1. 传输时延:一个数据位从发送方到达接收方所需要的时间。该时延取决于传输距离和传输介质,与带宽无关。
  2. 串行化时延:指发送节点在传输链路上开始发送报文的第一个比特至发完该报文的最后一个比特所需的时间。该时延取决于链路带宽以及报文大小。
  3. 处理时延:指路由器把报文从入接口放到出接口队列需要的时间。它的大小跟路由器的处理性能有关。
  4. 队列时延:指报文在队列中等待的时间。它的大小跟队列中报文的大小和数量、带宽以及队列机制有关。

抖动:
在这里插入图片描述
由于每个报文的端到端时延不一样,就会导致这些报文不能等间隔到达目的端,这种现象叫做抖动。一般来说,时延越小则时延抖动的范围越小。

某些业务类型(特别是语音和视频等实时业务)是极其不能容忍抖动的。报文到达时间的差异将在语音或视频中造成断续;另外,抖动也会影响一些网络协议的处理,有些协议是按固定的时间间隔发送交互性报文,抖动过大就会导致协议震荡,而实际上所有传输系统都有抖动,但只要抖动在规定容差之内就不会影响服务质量,另外,可利用缓存来克服过量的抖动,但这将会增加时延。

抖动的大小跟时延的大小直接相关,时延小则抖动的范围也小,时延大则可能抖动的范围也大。

丢包:
在这里插入图片描述

丢包率是指在网络传输过程中丢失报文占传输报文的百分比。丢包可用于衡量网络的可靠性。丢包(packet loss)可能在所有环节中发生,例如:

  1. 处理过程:路由器在收到报文的时候可能由于CPU繁忙,无法处理报文而导致丢包;
  2. 排队过程:在把报文调度到队列的时候可能由于队列被装满而导致丢包;
  3. 传输过程:报文在链路上传输的过程中,可能由于种种原因(如链路故障等)导致的丢包。

少量的丢包对业务的影响并不大,但大量的丢包就会严重影响到传输效率。

Qos服务模型:

Best-Effort服务模型
在这里插入图片描述
Best-Effort是最简单的QoS服务模型,用户可以在任何时候,发出任意数量的报文,而且不需要通知网络。提供Best-Effort服务时,网络尽最大的可能来发送报文,但对时延、丢包率等性能不提供任何保证。Best-Effort服务模型适用于对时延、丢包率等性能要求不高的业务,是现在Internet的缺省服务模型,它适用于绝大多数网络应用,如FTP、E-Mail等。(尽力而为)

IntServ服务模型
在这里插入图片描述
IntServ模型是指用户在发送报文前,需要通过信令(Signaling)向网络描述自己的流量参数,申请特定的QoS服务。网络根据流量参数,预留资源以承诺满足该请求。在收到确认信息,确定网络已经为这个应用程序的报文预留了资源后,用户才开始发送报文。用户发送的报文应该控制在流量参数描述的范围内。网络节点需要为每个流维护一个状态,并基于这个状态执行相应的QoS动作,来满足对用户的承诺。

IntServ模型使用了RSVP(Resource Reservation Protocol)协议作为信令,在一条已知路径的网络拓扑上预留带宽、优先级等资源,路径沿途的各网元必须为每个要求服务质量保证的数据流预留想要的资源,通过RSVP信息的预留,各网元可以判断是否有足够的资源可以使用。只有所有的网元都给RSVP提供了足够的资源,“路径”方可建立。(保证每个能发送的流量都有资源,不会丢弃,但是效率低)

DiffServ服务模型
在这里插入图片描述
DiffServ模型的基本原理是将网络中的流量分成多个类,每个类享受不同的处理,尤其是网络出现拥塞时不同的类会享受不同级别的处理,从而得到不同的丢包率、时延以及时延抖动。同一类的业务在网络中会被聚合起来统一发送,保证相同的时延、抖动、丢包率等QoS指标。

Diffserv模型中,业务流的分类和汇聚工作在网络边缘由边界节点完成。边界节点可以通过多种条件(比如报文的源地址和目的地址、ToS域中的优先级、协议类型等)灵活地对报文进行分类,对不同的报文设置不同的标记字段,而其他节点只需要简单地识别报文中的这些标记,即可进行资源分配和流量控制。

与Intserv模型相比,DiffServ模型不需要信令。在DiffServ模型中,应用程序发出报文前,不需要预先向网络提出资源申请,而是通过设置报文的QoS参数信息,来告知网络节点它的QoS需求。网络不需要为每个流维护状态,而是根据每个报文流指定的QoS参数信息来提供差分服务,即对报文的服务等级划分,有差别地进行流量控制和转发,提供端到端的QoS保证。DiffServ模型充分考虑了IP网络本身灵活性、可扩展性强的特点,将复杂的服务质量保证通过报文自身携带的信息转换为单跳行为,从而大大减少了信令的工作,是当前网络中的主流服务模型。(区别于前两种模型,对于不同的流量按照配置区分处理,此模型也是运用最广的模型)

三种服务类型的对比
在这里插入图片描述

基于DiffServ模型的QoS组成:

我们学习QoS都是基于DiffServ服务模型的,基于Diffserv模型的QoS业务主要分为以下几大类:

• 报文分类和标记
要实现差分服务,需要首先将数据包分为不同的类别或者设置为不同的优先级。报文分类即把数据包分为不同的类别,可以通过MQC配置中的流分类实现;报文标记即为数据包设置不同的优先级,可以通过优先级映射和重标记优先级实现。

• 流量监管、流量整形和接口限速
流量监管和流量整形可以将业务流量限制在特定的带宽内,当业务流量超过额定带宽时,超过的流量将被丢弃或缓存。其中,将超过的流量丢弃的技术称为流量监管,将超过的流量缓存的技术称为流量整形。接口限速分为基于接口的流量监管和基于接口的流量整形。

• 拥塞管理和拥塞避免
拥塞管理在网络发生拥塞时,将报文放入队列中缓存,并采取某种调度算法安排报文的转发次序。而拥塞避免可以监督网络资源的使用情况,当发现拥塞有加剧的趋势时采取主动丢弃报文的策略,通过调整流量来解除网络的过载。
其中,报文分类和标记是实现差分服务的前提和基础;流量监管、流量整形、接口限速、拥塞管理和拥塞避免从不同方面对网络流量及其分配的资源实施控制,是提供差分服务的具体体现。

各种QoS技术在网络设备上的处理顺序如下图所示:
在这里插入图片描述
第一个为交换机,第二个为路由器。

当前华为的多种QoS工具中。都是基于接口特定方向配置的,有些工具只能应用在接口的出方向。有些只能应用在接口的入方向上。图中只有监管既可以应用到接口的入方向,又可以应用到接口的出方向上(限速则在华为交换机和路由器上有所不同,交换机上的限速既可以应用在入方向,又可以应用在出方向,具体内容请参考后面章节)。

传统的Qos部署工具:

传统的QoS配置命令包括如下几种,它们的特点是配置QoS不使用MQC,直接把相关命令应用在接口上。以下列举了信任、队列、限速、整形及监管。华为设备相关命令:

 [Huawei] interface ethernet 2/0/0[Huawei- Ethernet2/0/0] trust dscp#基于端口信任DSCP[Huawei] interface ethernet 2/0/0[Huawei- Ethernet2/0/0] qos que-profile hello-world#调用Queue-profle队列管理[Huawei] interface ethernet 2/0/0[Huawei-Ethernet2/0/0] qos Ir pct 50 cbs 37500#首对接口外出流量做限速[Huawei] interface ethernet 2/0/0[Huawei-Ethernet2/0/0] qos gts cir 2000 cbs 375000#对接口外出流量整形管理[Huawei] interface ethernet 2/0/0[Huawei- Ethernet2/0/0] qos car inbound cir 2000#基于接口做监管,也可使用outbound关键词,对出方向流量做监管

MQC:

概念:
除上述QoS实现外,随着网络中各种业务的不断丰富,在网络规划时,要实现对不同业务流量(如不同业务或不同用户)的更细化的多种服务需求,这样使用传统的配置命令将会是一件非常复杂烦琐的事情,选择MQC的方式能够简化整个过程。

MQC结构图:
在这里插入图片描述

  1. 流分类:
    采用一定的规则识别符合某类特征的报文,从而把具有某类共同特征的报文划分为一类,它是有区别地进行服务的前提和基础。用户可以通过定义一系列的规则来对报文进行分类,同时也可以指定规则之间的关系:
    • and:报文只有匹配了类中的所有的规则,设备才认为报文属于此类。当流分类中有ACL规则时,报文必须匹配其中一条ACL规则以及所有非ACL规则才属于该类。当流分类中没有ACL规则时,则报文必须匹配所有非ACL规则才属于该类。
    • or:报文只要匹配了类中的一个规则,设备就认为报文属于此类。

  2. 流行为:
    用来定义针对某类报文所做的QoS动作。进行流分类是为了有区别地提供服务,它必须与某种流量控制或资源分配的流行为关联起来才有意义。

  3. 流策略:
    是将流分类和流行为绑定后形成的完整的策略。通过将流策略应用到接口、全局、单板或者VLAN,实现了针对不同业务的差分服务。

流策略配置命令(华为):

  1. 配置流分类
    • 执行命令traffic classifier classifier-name [ operator { and | or } ],创建一个流分类,进入流分类视图。
  2. 配置流行为
    • 执行命令traffic behavior behavior-name,创建一个流行为,进入流行为视图。
  3. 配置流策略
    • 执行命令traffic policy policy-name,创建流策略并进入流策略视图。
    • classifier behavior命令用来在流策略中为指定的流分类配置所需流行为,即绑定流分类和流行为。
    • 执行命令traffic-policy policy-name { inbound | outbound },在接口或子接口的入方向或出方向应用流策略。
    在这里插入图片描述

参考资料:华为HCIE培训文档、华为hedex文档、HCIE路由交换学习指南

这篇关于Qos技术基础原理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

MySQL中的MVCC底层原理解读

《MySQL中的MVCC底层原理解读》本文详细介绍了MySQL中的多版本并发控制(MVCC)机制,包括版本链、ReadView以及在不同事务隔离级别下MVCC的工作原理,通过一个具体的示例演示了在可重... 目录简介ReadView版本链演示过程总结简介MVCC(Multi-Version Concurr

Redis主从/哨兵机制原理分析

《Redis主从/哨兵机制原理分析》本文介绍了Redis的主从复制和哨兵机制,主从复制实现了数据的热备份和负载均衡,而哨兵机制可以监控Redis集群,实现自动故障转移,哨兵机制通过监控、下线、选举和故... 目录一、主从复制1.1 什么是主从复制1.2 主从复制的作用1.3 主从复制原理1.3.1 全量复制

Redis主从复制的原理分析

《Redis主从复制的原理分析》Redis主从复制通过将数据镜像到多个从节点,实现高可用性和扩展性,主从复制包括初次全量同步和增量同步两个阶段,为优化复制性能,可以采用AOF持久化、调整复制超时时间、... 目录Redis主从复制的原理主从复制概述配置主从复制数据同步过程复制一致性与延迟故障转移机制监控与维

SpringCloud配置动态更新原理解析

《SpringCloud配置动态更新原理解析》在微服务架构的浩瀚星海中,服务配置的动态更新如同魔法一般,能够让应用在不重启的情况下,实时响应配置的变更,SpringCloud作为微服务架构中的佼佼者,... 目录一、SpringBoot、Cloud配置的读取二、SpringCloud配置动态刷新三、更新@R

MySQL中my.ini文件的基础配置和优化配置方式

《MySQL中my.ini文件的基础配置和优化配置方式》文章讨论了数据库异步同步的优化思路,包括三个主要方面:幂等性、时序和延迟,作者还分享了MySQL配置文件的优化经验,并鼓励读者提供支持... 目录mysql my.ini文件的配置和优化配置优化思路MySQL配置文件优化总结MySQL my.ini文件

Redis主从复制实现原理分析

《Redis主从复制实现原理分析》Redis主从复制通过Sync和CommandPropagate阶段实现数据同步,2.8版本后引入Psync指令,根据复制偏移量进行全量或部分同步,优化了数据传输效率... 目录Redis主DodMIK从复制实现原理实现原理Psync: 2.8版本后总结Redis主从复制实

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

hdu4407(容斥原理)

题意:给一串数字1,2,......n,两个操作:1、修改第k个数字,2、查询区间[l,r]中与n互质的数之和。 解题思路:咱一看,像线段树,但是如果用线段树做,那么每个区间一定要记录所有的素因子,这样会超内存。然后我就做不来了。后来看了题解,原来是用容斥原理来做的。还记得这道题目吗?求区间[1,r]中与p互质的数的个数,如果不会的话就先去做那题吧。现在这题是求区间[l,r]中与n互质的数的和