Qos

Stella981
• 阅读 791

QOS

通常QoS提供以下三种服务模型:

1、Best-Effort service(尽力而为服务模型):Best-Effort服务模型是一个单一的服务模型,也是最简单的服务模型。对Best-Effort服务模型,网络尽最大的可能性来发送报文。但对延时、可靠性等性能不提供任何保证。Best-Effort服务模型是网络的缺省服务模型,通过 FIFO(first in first out 先入先出) 队列来实现。它适用于绝大多数网络应用,如FTP、 E-Mail等。

2、Integrated service(综合服务模型,简称Int-Serv):Int-Serv服务模型Int-Serv是一个综合服务模型,它可以满足多种QoS需求。该模型使用 资源预留协议(RSVP),RSVP运行在从源端到目的端的每个 设备上,可以监视每个流,以防止其消耗资源过多。这种体系能够明确区分并保证每一个 业务流的服务质量,为网络提供最细粒度化的服务质量区分。但是,Inter-Serv模型对设备的要求很高,当网络中的数据流数量很大时,设备的存储和处理能力会遇到很大的压力。Inter-Serv模型可扩展性很差,难以在Internet核心网络实施。

3、Differentiated service(区分服务模型,简称Diff-Serv):Diff-Serv服务模型Diff-Serv是一个多服务模型,它可以满足不同的QoS需求。与Int-Serv不同,它不需要通知网络为每个业务预留资源。区分服务实现简单,扩展性较好。

重点介绍 Differentiated service Qos
1. 分类

QOS主要进行分类的依据就是DSCP(different services code point :区别服务编码点)。其实,这里说的这个8位的DSCP值更准确说应该是内部DSCP值。后面就会知道了。对于2层的数据帧来说,我们使用COS来区分不同的数据流,并且这个3位的字段只出现的ISL或者802.1Q的封装帧中。存在VLAN标记中的,只占3位。对于3层的数据包来说,我们使用的是IP数据包头中的TOS字段来表示的。TOS在IP数据报头中有一个字节的长度,但是并不是所有的位都来担任进行区分不同IP数据流的服务的。而只是高6位。其中高3位表示的是IP优先级。所以我们一般看的就是IP优先级,平时的映射关系说的也是IP优先级和内部DSCP的映射。中间的3位都是0。 使用的是COS或者TOS的高6位。

Qos

COS和TOS都是要和内部DSCP进行映射的,无论是人工映射,还是默认的映射关系。3位COS和3位的IP优先级是一样的。只是COS作用在2层,而IP优先级是对于3层。当然了,他们映射到一个内部的DSCP得到的数值也是一样的的。

2. 标记

3. 流量调节

4. 拥塞管理

5. 拥塞避免

 Qos

PRI

长度为4字节的802.1Q帧头字段插在源MAC地址之后,其中有一个用于中继功能的VLAN ID字段,还有一个被称为Cos(802.1p)的3比特用户优先级字段(PRI),Cos用于Qos机制,可以提供8种可选值。如下表

Qos

EXP

MPLS包就是增加了一个或多个长度为4字节的MPLS头的IP包,增加了MPLS头后的IP包在传送之前需要被封装在二层PDU中,因而常常将MPLS头称为SHIM(”垫片”)或2.又2分之一层头。

       MPLS头中的EXP字段用于Qos,其3比特长度也是为了与IP头中的3比特IP优先级字段以及802.1Q头中的3比特PRI字段相兼容。

DA

SA

类型x8847

Label

Exp

S

TTL

IP包

48比特

48比特

16比特

20比特

3比特

1比特

8比特

默认情况下,当IP包进入MPLS网络时,边缘路由器会将IP包头ToS(Type of Service,服务类型)字节中最高3位复制到MPLS头中的EXP字段中,其中,IP包头ToS字节中的最高3位称为IP优先级比特。

除了自动复制IP优先级的数值之外,MPLS边缘路由器的网络管理员还可以再边缘路由器上手工将EXP设定为期望值。

IP优先级和DSCP

在IPv4的报文头中,TOS字段是1字节,如下图所示。根据RFC1122的定义,IP优先级(IPPrecedence)使用最高3比特(第0~2比特)。
+++++++++++++++++++++++++++++++++
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
+++++++++++++++++++++++++++++++++

3比特可以定义8个等级。
8个优先级的定义如下:
111 -Network Control  网络控制
110 -Internetwork Control  网间控制
101 -Critic  关键
100 - FlashOverride  疾速
011 -Flash  闪速
010 -Immediate 快速
001 -Priority  优先
000 -Routine  普通

优先级6和7一般保留给网络控制数据使用,比如路由。
优先级5推荐给语音数据使用。
优先级4由视频会议和视频流使用。
优先级3给语音控制数据使用。
优先级1和2给数据业务使用。
优先级0为缺省标记值。
在标记数据时,既可以使用数值,也可以使用名称(英文名称)。

DSCP

DSCP由RFC2474定义,它重新命名了IPv4报头中TOS使用的那1字节和IPv6报头中数据类(TrafficClass)那1字节,新的名字称为DS字段(Differentiated ServicesField)。该字段的作用没有变,仍然被QoS工具用来标记数据。不同的是IPv4使用3比特,而DSCP使用6比特,最低2比特不用。
RFC2474 定义最高3比特为级别/类别选择代码(ClassSelector Codepoints,CS),其意义和IPv4报头中IP优先级的定义是相同的,CS0 ~CS7的级别相等于IP优先级0 ~7。但它并没有定义第3到第5比特的具体含义以及使用规则。DSCP使用6比特,可以定义64个优先级(0-63)。

AF

保证转发(Assured Forwarding,AF)由RFC2597对CS1~CS4进行进一步定义。它使用第3和第4比特做丢弃优先级标志。01-低丢弃优先级;10-中丢弃优先级;11-高丢弃优先级。这样,在同一类数据中,又根据被丢弃的可能性划分出3档。下表列出了AF服务等级及其对应的DSCP值:
               CS1     CS2     CS3     CS4 
Lowdrop        AF11    AF21    AF31    AF41
               001010  010010  011010  100010

Mediumdrop     AF12    AF22    AF32    AF42
               001100  010100  011100  100100

Highdrop       AF13    AF23    AF33     AF43
               001110  010110  011110   100110

AF的定义为数据分类提供了方便,比如,运营商可以向用户提供4中服务协约(SLA):白金,金,银,铜,并为每一种服务的数据分配一定的带宽。当然,不同服务的收费标准也是不同的。

EF

无阻碍转发(Expedited Forwarding,EF)由RFC2598定义,DSCP值为46(101110)。EF服务适用于低丢包率,低延迟,低抖动及保证带宽的业务,如VOIP。
其他
DSCP = 000000 尽力转发服务等级 (EF);
CS = 6 网间控制(Internetwork Control),DSCP= 48 (110000)
CS = 7 网内控制 (Intranetwork Control),DSCP= 56 (111000)
在配置命令中,既可以使用十进制数值,也可以使用二进制数值,还可以使用名称。例如,28, 011100, AF32三个写法意义相同

Qos

http://blog.chinaunix.net/uid-24517549-id-4114307.html

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Stella981 Stella981
3年前
Nginx + lua +[memcached,redis]
精品案例1、Nginxluamemcached,redis实现网站灰度发布2、分库分表/基于Leaf组件实现的全球唯一ID(非UUID)3、Redis独立数据监控,实现订单超时操作/MQ死信操作SelectPollEpollReactor模型4、分布式任务调试Quartz应用
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
ThinkPHP 根据关联数据查询 hasWhere 的使用实例
很多时候,模型关联后需要根据关联的模型做查询。场景:广告表(ad),广告类型表(ad\_type),现在需要筛选出广告类型表中id字段为1且广告表中status为1的列表先看关联的设置部分 publicfunctionadType(){return$thisbelongsTo('A
Stella981 Stella981
3年前
Nginx
!(https://imagestatic.segmentfault.com/255/117/25511790966008dc5b00fd8)Nginx进程模型分析在介绍Nginx的进程模型之前我们先来给大家解释下一些常见的名词,这能辅助我们更好的了解Nginx的进程模型。作为Web服务器,设计的初衷就是为了能够处理更多的客户端的请
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这