DSCP 与IP 优先级IP优先级

article/2025/10/20 17:20:56

首先看IPv4包头如下

其中,Qos用到的是Tos定义有下面两种:

老的IPv4 TOS Byte定义和值

 

新的DSCP定义和值

 

DSCP值

DSCP Value

Meaning

Drop Probability

Equivalent IP Precedence Value

101 110 (46)

High Priority

Expedited Forwarding (EF)

N/A

101 – Critical

000 000 (0)

Best Effort

N/A

000 – Routine

001 010 (10)

AF11

Low

001 – Priority

001 100 (12)

AF12

Medium

001 – Priority

001 110 (14)

AF13

High

001 – Priority

010 010 (18)

AF21

Low

001 – Immediate

010 100 (20)

AF22

Medium

001 – Immediate

010 110 (22)

AF23

High

001 – Immediate

011 010 (26)

AF31

Low

011 – Flash

011 100 (28)

AF32

Medium

011 – Flash

011 110 (30)

AF33

High

011 – Flash

100 010 (34)

AF41

Low

100 – Flash Override

100 100 (36)

AF42

Medium

100 – Flash Override

100 110 (38)

AF43

High

100 – Flash Override



DSCP 与IP 优先级IP优先级
 
在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三个写法意义相同。


http://chatgpt.dhexx.cn/article/BiqG9EuH.shtml

相关文章

IP Precedence、DSCP、TOS

刚开始接触QoS时,经常会被IP Precedence、DSCP、TOS这些名词搞迷糊,那么接下来就梳理一下。 首先 IP Precedence IPv4中有8bit作为TOS字段,一开始RFC791定义了TOS前三位为IP Precedence,划分了8个优先级,可用于流分类…

【网络】Cos和ToS和DSCP|Qos|PHB的含义和区别以及映射

目录 视频教程: 介绍和区别 Qos/Cos IP-TOS(IPP/CS)和DSCP PHB(Per-Hop-Behaviors) 区别 各个等级的DSCP值和含义(PHB) 映射 COS到DSCP的映射 IP-Precedence到DSCP的映射(Tos-->DSCP&#xff09…

TOS 和DSCP

IPv4报文中有三种承载QoS优先级标签的方式,分别为基于二层的CoS字段(IEEE802.1p)的优先级、基于IP层的IP优先级(IP Precedence)字段ToS优先级和基于IP层的DSCP(Differentiated Services Codepoint&#xff…

什么是DSCP,如何使用DSCP标记搭配ROS策略

什么是DSCP,如何使用DSCP标记搭配ROS策略 一、什么是DSCP DSCP:差分服务代码点(Differentiated Services Code Point),IETF于1998年12月发布了Diff-Serv(Differentiated Service)的QoS分类标准…

TOS 和 DSCP理解

背景 IPv4报文中有三种承载QoS优先级标签的方式,分别为基于二层的CoS字段(IEEE802.1p)的优先级、基于IP层的IP优先级(IP Precedence)字段ToS优先级和基于IP层的DSCP(Differentiated Services Codepoint&am…

谈谈ES5和ES6的区别

我们都知道JavaScript是由三部分组成: 1. ECMAScript(核心):规定了语言的组成部分>语法、类型、语句、关键字、保留字、操作符、对象 2. BOM(浏览器对象模型): 支持访问和操作浏览器窗口,可以控制浏览器显示页面以外的部分。 3. DOM(文…

ES5基础语法

一.类与对象 class father {that this;constructor(uname, age) {this.uname uname;this.age age;}sing(song) {console.log(this.uname song);}}class son extends father {constructor(uname,age) {super(uname,age);this.unameuname;this.age age;}sing(song){console.…

ES5语法

从今天起,我们开始接触JS部分,先从ES5一些简单的语法入手。下面先看下思维导图,确定我们的学习思路: 今天我们先学习代码规范,数据类型以及数据类型转换三个模块 代码规范 JS中的一切都区分大小写 标识符&#xff1…

es5 es6 互相转换

- 工具:Visual Studio Code - 具体过程 1.新建项目,dist存放ES6格式的,src存放ES5格式的,如下 index.html内容,此处引用dist中的js 2.打开终端(ctrl ) npm需要安装,安装node即可…

套接字

套接字(socket)最早是由BSD在1982年引入的通信机制,目前已被广泛移植到主流的操作系统中。对于应用开发人员来说,套接字(socket)是一种特殊的I/O接口,也是一种文件描述符。socket是一种常用的进…

原始套接字简介

一 原始套接字概述 原始套接字,指在传输层下面使用的套接字。流式套接字和数据报套接字这两种套接字工作在传输层,主要为应用层的应用程序提供服务,并且在接收和发送时只能操作数据部分,而不能对IP首部或TCP和UDP首部进行操作&am…

网络套接字编程(socket 详解)

socket 编程 套接字概念 Socket本身有“插座”的意思,在Linux环境下,用于表示进程间网络通信的特殊文件类型。本质为内核借助缓冲区形成的伪文件。既然是文件,那么理所当然的,我们可以使用文件描述符引用套接字。与管道类似的&a…

Socket 套接字原理详解

Socket 套接字原理详解 socket 编程介绍 Socket编程封装了常见的TCP、UDP操作,可以实现非常方便的网络编程。 socket() 函数介绍 # socket.socket(family,type) tcpSocketsocket.socket(AF_INET, SOCK_STREAM) # family 地址系列应为 AF_INET(IPv4), AF_INET6(IP…

TCP的套接字

摘自:《深入理解计算机网络》 王达著 机械工业出版社 相关知识链接 1. IPV4数据报头部格式 2. IPv6数据报头部格式 3. IPv4数据报的封装与解封装 4. IPv4数据报的分段与重组 5. ARP协议报文格式及ARP表 6. ARP地址解析原理 7. ICMP协议及报文格式 8. IPv6协…

Socket(套接字)详解 画图+实例

Socket概念 Socket本意为“插座”,在Linux下,用于表示进程间网络通信的特殊文件类型,本质为内核借助缓冲区形成的伪文件。 既然是文件,那肯定就可以使用文件描述符引用套接字。与管道类似的,Linux系统将其封装成文件的…

Python中的套接字编程

文章目录 **连接到服务器:****一个简单的服务器客户端程序:****服务器****客户端** 套接字编程是一种连接网络上的两个节点以相互通信的方法。一个套接字(节点)侦听 IP 处的特定端口,而另一个套接字则伸向另一个套接字…

流式套接字基本概念

目录 流式套接字基本概念创建套接字绑定本地地址连接请求监听函数接收请求套接字IO操作关闭套接字 编程实现 所谓套接字(Socket),就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利…

Windows下套接字

一、套接字 windows套接字Socket是进程通信的一种方式,可以实现在不同主机的相关进程之间交换数据。在TCP/IP网络应用中,通信的两个进程的主要模式是客户/服务器(C/S)模式,即客户向服务器发出请求,服务器接受到请求后&#xf…

深入理解Socket套接字原理

Socket套接字原理 1、什么是Socket 在计算机领域,套接字Socket作为计算机之间进行通信的固定的约定方式之一存在。这种太抽象了,我举个例子,我们要是用笔记本电脑前需要先对电脑供电,那供电就有两种方式电线插座供电和电池供电&…

原始套接字

一、原始套接字概述 协议栈的原始套接字从实现上可以分为“链路层原始套接字”和“网络层原始套接字”两大类。 链路层原始套接字可以直接用于接收和发送链路层的MAC帧,在发送时需要由调用者自行构造和封装MAC首部。而网络层原始套接字可以直接用于接收和发送IP层…