严格的说,Cos与Tos只是QoS的一种标记机制。
QoS范围太大,涉及到入口数据流的标记和分类及速率限制,网络骨干的拥塞避免和拥塞管理,网络出口的队列调度机制等等。
Cos是二层ISL或者802.1Q数据帧的优先级标记,3个bit,范围0-7;
Tos是三层数据包的服务类型标记,也是3个bit,范围0-7,同样可当作优先级标记,另外5个实际指示Delay,Throughput,Reliability等特性的bit位一般没有使用;现在为了更好的控制数据流分类,使用DSCP(Differential Services Code Point),扩展了Tos的后三个bit,因此,范围从0-63。
在实施QoS策略时,Cos与ToSDSCP之间通常要做映射机制。
TOS:
0     1     2     3     4     5     6     7
             +-----+-----+-----+-----+-----+-----+-----+-----+
             |                 |                       |     |
             |   PRECEDENCE    |         TOS          | MBZ |
             |                 |                       |     |
             +-----+-----+-----+-----+-----+-----+-----+-----+
服务类型(TOS)字段包括一个3bit的优先权子字段(现在已被忽略),4bit的TOS子字段和1bit未用位但必须置0。4bit的TOS分别代表:最小时延、最大吞吐量、最高可靠性和最小费用。4bit中只能置其中1bit。如果所有4bit均为0,那么就意味着是一般服务。RFC1340 [ReynoldsandPostel1992]描述了所有的标准应用如何设置这些服务类型。RFC1349[Almquist1992]对该RFC进行了修正,更为详细地描述了TOS的特性。
DSCP
DSCP由RFC2474定义,它重新命名了IPv4报头中TOS使用的那1字节和IPv6报头中数据类(Traffic Class)那1字节,新的名字称为DS字段(Differentiated Services Field)。该字段的作用没有变,仍然被QoS工具用来标记数据。不同的是IPv4使用3比特,而DSCP使用6比特,最低2比特不用。
RFC2474 定义最高3比特为级别/类别选择代码(Class Selector 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

Low drop         AF11     AF21    AF31      AF41
                      001010   010010   011010   100010
Medium drop    AF12     AF22    AF32      AF42
                      001100   010100   011100   100100
High drop        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 三个写法意义相同。

转载于:https://blog.51cto.com/tangfangxiao/754056

Qos、Tos、Cos、DSCP相关推荐

  1. IP Precedence、DSCP、TOS

    刚开始接触QoS时,经常会被IP Precedence.DSCP.TOS这些名词搞迷糊,那么接下来就梳理一下. 首先 IP Precedence IPv4中有8bit作为TOS字段,一开始RFC791 ...

  2. IP Precedence DSCP、TOS

    IP Precedence DSCP.TOS RFC 791中 OS位的IP Precedence划分成了8个优先级,可以应用于流分类,数值越大表示优先级越高. 0     1     2     3 ...

  3. TSN报文优先级(802.1P优先级、IP优先级、TOS优先级)

    TSN 报文优先级 为了配合TSN网关的流量调度,终端设备上的IPv4网络通信有3种QoS优先级标签方式,基于二层的COS字段(配合VLAN ID),基于三层的IP TOS 和 IP DSCP,需要实 ...

  4. pod的requests、limits解读、LimitRange资源配额、Qos服务质量等级、资源配额管理 Resource Quotas

    前言 环境:k8s-v1.22.17 docker-20.10.9 centos-7.9 目录 前言 什么是可计算资源 CPU.Memory计量单位 pod资源请求.限额方式 pod定义request ...

  5. 学习MATLAB的第一天,梳理一些见到的函数。1.matlab中sin、cos、tan三角函数问题。2.abs函数。3.vpa函数。4.disp函数。5.class函数。6.logical函数。

    1.matlab中sin.cos.tan三角函数问题. 在MATLAB中三角函数sin.cos.tan都是以弧度为单位的.例如sin()在括号中输入的数系统默认为输入的是弧度值.若想要输入角度值,可以 ...

  6. matlab中三角函数sin、cos、tan以弧度为单位

    matlab中三角函数sin.cos.tan等都是以弧度为单位的. 如果想用角度有两种方法. 一种是用sind.cosd.tand等,他们是角度为单位的 另一种就是用deg2rad将角度转换为弧度. ...

  7. 【精英会会长、TOS顾问黄智中:区块链将改变价值传递方式】GBCAX

    gbcax链交所 [精英会会长.TOS顾问黄智中:区块链将改变价值传递方式] 精英会会长.TOS顾问黄智中表示,区块链技术被认为是继蒸汽机.电力.互联网之后的颠覆性创新.如果说蒸汽机和电力解放了生产力 ...

  8. C++ : sin、cos、tan、arctan的使用

    原文参考 最重要的几条: C++中sin.cos.tan.asin.acos.atan等三角函数的输入是弧度,而不是角度 注意tan.atan等函数不能接受整数,tan(45)会报错"err ...

  9. 相机校正、张氏标定法、极大似然估计/极大似然参数估计、牛顿法、高斯牛顿法、LM算法、sin/cos/tan/cot

    日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) CNN:RCNN.SPPNet.Fast RCNN.Faste ...

最新文章

  1. c++ map 析构函数_C++|类继承关系中的虚函数、虚析构函数、虚基类
  2. C++多态的基本语法与原理剖析
  3. 华为成立德国实验室属实 但并非为5G牌照
  4. ASP.NET MVC one view bind many model
  5. Linux系统中使用netcat命令的奇技淫巧
  6. python中的JSON(1)
  7. linux i386,i486,i586,i686和AMD_64,X86,x86_64后缀的区别
  8. 丁可以组什么词_“一”可以组什么词?落语读书会学期总结
  9. 麻省理工18年春软件构造课程阅读04“代码评审”
  10. sdk环境变量配置不成功
  11. 【财富空间】一个人为什么要努力?(见过最好的回答)
  12. 软件测试中报表测试用例设计方法总结
  13. C3P0 连接池错误【已解决】-An exception occurred while acquiring a poolable resource. Will retry.
  14. android studio出现,Android studio 出现缺少sdk的情况,如何解决?
  15. 给力!低代码开发平台广州流辰信息科技助您增辉创价值!
  16. 解析器生成器 ANTLR的详细介绍
  17. 《木偶奇遇记》读后感
  18. vue ie报错:SCRIPT5022: [vuex] vuex requires a Promise polyfill in this browser.
  19. deepin/UOS Navicat15
  20. 征信报告内容组成和解读--报告头(2)

热门文章

  1. 关于Java中的随机数产生
  2. python时间减法_干!一张图整理了 Python 所有内置异常
  3. java中事物的注解_编程式事务、XML配置事务、注解实现事务
  4. 机票预订系统活动图_软件工程(第五版)--习题及答案技术总结.docx
  5. Collection和Collections区别
  6. 数据库:分享四个实用的SQLServer脚本函数,欢迎收藏
  7. 后端技术:SpringBoot 中实现跨域的5种方式
  8. Java:Lombok插件用法笔记
  9. Shell重定向的概念笔记
  10. 收集一些优秀的DoNet开源项目