如何认识TOS----DSCP 对照表

时间:2022-01-04 20:41:45

如何认识TOS----DSCP 对照表

最近有遇到项目中对FortiGate设置TOS的策略路由的问题,其实这问题较为简单,但是由于大家对TOS-DSCP概念不熟悉造成的,所以感觉比较难,现在不同厂商在设置QOS的时候有的是使用TOS,有的使用DSCP,因此工程师感觉都很头疼,因此从网上copy来的TOS和DSCP定义供大家参考。

总之DSCP是拿出了TOS的前六位,分成两组,3位一组,并且DSCP六位中的最后一位也没有使用(保持为0)
因此可以简单的认为如下:
AF11 二进制位(**001** ****01 0)00 
对应的TOS 值为(0010 1000) 0x28

IP Type of Service
This classification type is based on an exact match of the one-byte ToS/DSCP field contained in the IP header of a frame. The ToS (Type of Service) or DSCP (Diffserve Codepoint) value is defined by an 8-bit hexadecimal number between 0 and FF. Enter a value or click Select to open a window where you can generate a hex value. For information on how to generate a ToS or DSCP value, see ToS/DSCP Configuration window.
Type of Service can be used by applications to indicate priority and Quality of Service for each frame. The level of service is determined by a set of service parameters which provide a three way trade-off between low-delay, high-reliability, and high-throughput. The use of service parameters may increase the cost of service. In many networks, better performance for one of these parameters is coupled with worse performance on another. Except for very unusual cases, at most, two of the parameters should be set.
"IP precedence 使用前3bit; ToS 使用4-7 bit, 最后一位备用;"
"DSCP 使用0-5bit, 最后两位备用;"

For a ToS value, the 8-bit hexadecimal number breaks down as follows:
Bits 0-2: Precedence
Bit 3: 0=Normal Delay, 1=Low Delay
Bit 4: 0=Normal Throughput, 1=High Throughput
Bit 5: 0=Normal Reliability, 1=High Reliability
Bits 6-7: Explicit Congestion Notification
########################
0 1 2 3 4 5 6 7
+-----+-----+-----+-----+-----+-----+-----+-----+
| | | | | | |
| PRECEDENCE | D | T | R | 0 | 0 |
| | | | | | |
+-----+-----+-----+-----+-----+-----+-----+-----+
#########################
The precedence bits (bits 0-2) break down as follows:
111 - Network Control
110 - Internetwork Control
101 - CRITIC/ECP
100 - Flash Override
011 - Flash
010 - Immediate
001 - Priority
000 - Routine
The Network Control precedence designation is intended to be used within a network only. The actual use and control of that designation is up to each network. The Internetwork Control designation is intended for use by gateway originators only.

For a DSCP value, the value represents codepoints for two Differentiated Services (DS) Per-Hop-Behavior (PHB) groups called Expedited Forwarding (EF) and Assured Forwarding (AF). For more information on these PHB groups, refer to RFC 2597 and RFC 2598.
########################################################

在IP网络中,IPv4报文中有三种承载QoS优先级标签的方式,分别为基于二层的CoS字段(IEEE802.1p)的优先级、基于IP层的IP优先级字段ToS优先级和基于IP层的DSCP(Differentiated Services Codepoint)字段优先级。每种优先级的定义如下:

  (1) IEEE802.1p优先级======> 2层Qos(ISL & Dot1Q)
  它是位于二层带标签的以太网帧的CoS字段,和VLAN ID在一起使用,在字节中的位置如下:
点击图片可在新窗口打开
  其中:IEEE802.1p优先级:3bit(P2-P0)
  未用(CU):1bit
  VLAN ID:12bit(V11-V0)
  IEEE802.1p优先级值有8个(0-7),0优先级最低,7优先级最高。报文分为三种情况:带优先级和VLAN ID的标签报文,其优先级值是自身带的值;只带优先级的标签报文,此时VLAN ID为0,其优先级值是自身带的值;未带标签的报文,一般默认的优先级值为0,也可以进行更改指定新的优先级。

  (2) IP优先级==============》3层IP包头的服务类型 之一
  它由IP分组报头中的服务类型(ToS)字节中的3位组成,其在字节中的位置如下:
  P2 P1 P0 T3 T2 T1 T0 CU
  其中:IP优先级:3bit(P2-P0)
  服务类型(ToS):4bit(T3-T0)
  未用(CU):1bit
  IP优先级值有8个(0-7),0优先级最低,7优先级最高。在默认情况下,IP优先级6和7用于网络控制通讯使用,不推荐用户使用。ToS字段的服务类型未能在现有的IP网络中普及使用。

  (3) DSCP优先级==============》3层IP包头的服务类型 之二
  它由IP分组报头中的6位组成,使用的是ToS字节,因此在使用DSCP后,该字节也被称为DSCP字节。其在字节中的位置如下:
  DS5 DS4 DS3 DS2 DS1 DS0 CU CU
  其中:DSCP优先级:6bit(DS5-DS0)
  未用(CU):2bit
  DSCP优先级值有64个(0-63),0优先级最低,63优先级最高。事实上DSCP字段是IP优先级字段的超集,DSCP字段的定义向后与IP优先级字段兼容。目前定义的DSCP有默认的DSCP,值为0;类选择器DSCP,定义为向后与IP优先级兼容,值为(8,16,24,32,40,48,56);加速转发(EF),一般用于低延迟的服务,推荐值为46(101110);确定转发(AF),定义了4个服务等级,每个服务等级有3个下降过程,因此使用了12个DSCP值((10,12,14),(18,20,22),(26,28,30),(34,36,38))。

#############################################
IP precedence和DSCP代码对照表

<0-63> Differentiated services codepoint value 
af11 Match packets with AF11 dscp (001010) 
af12 Match packets with AF12 dscp (001100) 
af13 Match packets with AF13 dscp (001110) 
af21 Match packets with AF21 dscp (010010) 
af22 Match packets with AF22 dscp (010100) 
af23 Match packets with AF23 dscp (010110) 
af31 Match packets with AF31 dscp (011010) 
af32 Match packets with AF32 dscp (011100) 
af33 Match packets with AF33 dscp (011110) 
af41 Match packets with AF41 dscp (100010) 
af42 Match packets with AF42 dscp (100100) 
af43 Match packets with AF43 dscp (100110) 
cs1 Match packets with CS1(precedence 1) dscp (001000) 
cs2 Match packets with CS2(precedence 2) dscp (010000) 
cs3 Match packets with CS3(precedence 3) dscp (011000) 
cs4 Match packets with CS4(precedence 4) dscp (100000) 
cs5 Match packets with CS5(precedence 5) dscp (101000) 
cs6 Match packets with CS6(precedence 6) dscp (110000) 
cs7 Match packets with CS7(precedence 7) dscp (111000) 
default Match packets with default dscp (000000) 
ef Match packets with EF dscp (101110)

Cisco推荐的几个DSCP值:
路由协议 CS6
交互式语音 EF
交互式视频 AF41
流式视频 CS4
电话信令 AF31或CS3
网络管理 CS2
大块数据 AF11
尽力服务 0

================= End

随机推荐

  1. Ado&period;Net Destination 用法

    Ado Net Destination Component 使用Ado net Connection manager,其Data Access Mode 只有一种, table or view,组件的 ...

  2. php判断访问的当前设备是手机还是电脑

    <?php function isMobile(){ $useragent=isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AG ...

  3. ubuntu 13&period;04 tftp服务器建立

    本文参考博文:http://blog.chinaunix.net/uid-20718037-id-3194493.html 用tftp下载就需要要我们的主机上先安装tftp服务器.    1.安装软件 ...

  4. &period;NET托管代码和非托管代码

    .net托管代码是运行在.NET FRAMEWORK上的,类似于JAVA虚拟机托管代码:属安全代码,因为不涉及指针,但相对性能上较低,C#写出来的东西就可以认为是托管代码非托管代码:非安全的,可以使用 ...

  5. IPFS家族&lpar;二&rpar;

    go-ipfs IPFS协议的go语言实现,ipfs的核心协议,最新版是v0.4.13 下载地址:https://dist.ipfs.io/#go-ipfs 源代码地址:https://github. ...

  6. iOS 技术篇:&lowbar;&lowbar;VA&lowbar;ARGS&lowbar;&lowbar;实现自定义NSLog

    系统的NSLog 我个人觉得有bug时,没准确的说明哪一行出现的问题,所以为了方便自己开发查找问题,附上自己的NSLog 创建定义方式: 1:在创建好的pch文件里 配置: 2:在pch文件里添加上这 ...

  7. json 脚本入库的几种方法

    json 脚本入库的几种方法,见代码: #-*- encoding: utf-8 -*- #第一种mongodb入库 # from pymongo import * # import json # c ...

  8. Codeforces Beta Round &num;65 &lpar;Div&period; 2&rpar; C&period; Round Table Knights

    http://codeforces.com/problemset/problem/71/C 题意: 在一个圆桌上有n个人,每个人要么是1,要么就是0,现在要判断是否能由一些1相连构成正多边形. 思路: ...

  9. Django--路由控制 ——URL反向解析

    Django--路由控制 本文目录 一 Django中路由的作用 二 简单的路由配置 三 有名分组 四 路由分发 五 反向解析 六 名称空间 七 django2.0版的path 回到目录 一 Djan ...

  10. 轻量级验证码生成插件webutil-licenseImage源码与实例应用

    webutil-licenseImage 插件内置4种验证码样式,支持用户扩展.自定义样式实现简单验证码. 源码脱管地址: http://code.google.com/p/licenseimage/ ...