003::每天五分钟入门TCP/IP协议栈::IP协议之TOS字段说明

从IP首部看ToS的位置:

ToS即为服务类型,只有当网络设备能够支持(能够识别IP首部中的ToS字段)识别ToS字段时,这给字段设置才有意义。否则都是空谈。

先说具体字段的意义:
Tos字段长度为8bit
前3bit字段:
为优选权子字段,现在已经废弃,这个字段默认值是000,从wireshark抓包结果看,表示的是:

大部分IP首部中的ToS字段的8bit字段中,前三个子字段默认值是000,默认填充为000。但是在一些特定的场景,例如OSPF协议中网络设备之间交互OSPF相关数据,该字段是有用的:

4bit字段:
这四个字段组合在一起,表示了该数据报对应的服务类别,这个应用层的服务类别是不同的。这里所说的服务类别,是指:
1000 -- minimize delay #最小延迟
0100 -- maximize throughput #最大吞吐量
0010 -- maximize reliability #最高可靠性
0001 -- minimize monetary cost #最小费用
0000 -- normal service #一般服务
IP首部中的ToS字段,只能表示一种服务类别,也就是:这4bit字段中,最多只能有一个bit字段为1。

看下不同应用下该4bit字段对应的值:

翻译过来就是:

最小延迟,对应于对延迟敏感的应用,如telnet和人login等。
最大吞吐量,对应于对吞吐量要求比较高的应用,如FTP文件应用,对文件传输吞吐量有比较高的要求。
最高可靠性,对网络传输可靠性要求高的应用,如使用SNMP的应用、路由协议等等。
最小费用,如NNTP这种用户网络新闻等。

1bit字段:
这个1bit末尾,没有被使用,必须强制设置为0

总结:
该字段中,正常的IP报文,前3bit的值是000,用不上该优先权子字段;
4bit字段中,表示的是服务类别,并且该4bit字段中,只能有一个bit字段为1;
1bit字段中,该字段未使用但是必须强制为0。

原文地址:http://blog.51cto.com/mangguostudy/2107799

时间: 2024-11-09 00:58:22

003::每天五分钟入门TCP/IP协议栈::IP协议之TOS字段说明的相关文章

004::每天五分钟入门TCP/IP协议栈::IP协议之16位总长度字段引出的MTU值问题

要理解MTU以及实际生产环境中的MTU问题,就得搞清楚三个问题:IP数据报包含什么内容:数据进入协议栈的封装过程:MTU具体代表含义: 首先要理解一个过程:数据进入协议栈的封装过程!数据从发送主机发送出去之前,在主机的协议栈中会经历上述图中的几个封装过程.本次以TCP数据的封装过程为例,用户数据往下封装.当数据封装了TCP首部后,数据在协议栈中就被称为TCP段:当TCP段数据封装了IP首部之后的数据,称为IP数据报.也就是说:IP数据报由几部分组成:IP首部+TCP首部+用户数据. 其次要理解一

Angular2的五分钟入门在Windows下的实现

Angular2的五分钟入门在Windows下的实现 官网提供的是在linux的步骤,而实际直接拿这些步骤在windows下也可以实现,但唯一就是无法 --watch TypeScript文件,那就是扯蛋,改一下代码就要重新编译,谁受得了. 那么我来尝试一下直接使用Gulp来搭建. 一.创建项目 虽然Angular2允许我们使用TypeScript.Dart.ES5.ES6来写代码,但是出于Angular2也拥抱TypeScript,那么变成我们唯一最好的选择也是TypeScript. 首先创建

angularjs2.0 五分钟入门教程之typescript版本

貌似没看到一个中文的讲解ng2入门五分钟教程,所以亲自整理了下整个入门教程的步骤,希望对后来者学习有所帮助.PS:我在win7中码的. 新建一个project目录,以下所有操作都在这个目录下进行. 1.安装tsd编译typescript代码命令工具 $ npm install -g [email protected]^0.6.0 2.安装angular2,es6-promiserx,rx,rx-lite $ tsd install angular2 es6-promise rx rx-lite

TCP/IP协议栈--IP首部选项字段的分析

IP输入函数(ipintr)将在验证分组格式(检验和,长度等)之后.确定分组是否到达目的地之前,对选项进行处理. 这表明分组所 遇到的每一个路由器以及终于的目的主机都对要分组的选项进行处理. IP分组内能够包括某些在分组被转发或被接收之前处理的可选字段.IP实现能够用随意顺序处理选项.标准IP首部之后最多可跟 40字节的选项. 1.选项格式 IP选项字段可能包括0个或多个单独选项.选项有两种类型,单字节和多字节.如图所看到的: 全部选项都以1字节类型type字段開始. 在多字节选项中,类型字段后

TCP/IP协议栈--IP选项处理

IP输入函数(ipintr)将在验证分组格式(检验和,长度等)之后,确定分组是否到达目的地之前,对选项进行处理.这表明分组所 遇到的每个路由器以及最终的目的主机都对要分组的选项进行处理. IP分组内可以包含某些在分组被转发或被接收之前处理的可选字段.IP实现可以用任意顺序处理选项.标准IP首部之后最多可跟 40字节的选项. 1.选项格式 IP选项字段可能包含0个或多个单独选项.选项有两种类型,单字节和多字节.如图所示: 所有选项都以1字节类型type字段开始.在多字节选项中,类型字段后面紧接着一

浅谈TCP IP协议栈(一)入门知识【转】

说来惭愧,打算写关于网络方面的知识很久了,结果到今天才正式动笔,好了,废话不多说,写一些自己能看懂的入门知识,对自己来说是一种知识的总结,也希望能帮到一些想了解网络知识的童鞋. 万事开头难,然后中间难,最后结尾难...哈哈,不扯这种心灵砒霜了,讲讲我这个小菜鸟是如何从对网络一窍不通到现在可以完整的说出一个报文是如何转发的初级水平,先看一下TCP/IP的介绍: Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议

5.CCNA第五天-TCP/IP协议栈的互联网层

TCP/IP协议栈的互联网层 IP  internet prootocol 互联网协议 工作在网络层 为网络层提供逻辑地址服务 MAC地址,仅仅能够在同一广播域内,为主机提供数据转发服务 IP地址: 实现跨越广播域的数据转发 无连接协议 能够独立的处理报文 具有结构化的编址方案 (分为私有地址.共有地址.单播地址.组播地址.广播地址.特殊地址) 尽力而为的转发(平信)  VS  可靠的转发(EMS) 通常来讲,可靠的转发,由上层协议实现 没有数据恢复能力,当然,有些上层协议是有数据恢复功能的 与

TCP/IP协议栈

TCP/IP协议栈全称是传输控制协议/因特网互联协议,其实是OSI模型的进化版,所以就先解释一下什么是OSI模型,OSI的全称是开放系统互连参考模型,就是为了实现开放系统互连所建立的通信功能分层模型,其目的就是为异种计算机互连提供一个共同的基础和标准框架,并为保持相关标准的一致性和兼容性提供共同的参考.这里的开放系统指的是遵循OSI模型和相关协议能够实现互连的具有各种应用目的的计算机系统.OSI模型一共有七层,TCP模型一共只有四层,分别为应用层,传输层,Internet层,网络访问层.它定义了

TCP/IP协议栈模型

OSI七层模型介绍: 下面4层(物理层.数据链路层.网络层和传输层)主要提供数据传输和交换功能,即以节点到节点之间的通信为主:第4层作为上下两部分的桥梁,是整个网络体系结构中最关键的部分:而上3层(会话层.表示层和应用层)则以提供用户与应用程序之间的信息和数据处理功能为主. 物理层的主要功能是:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输,尽可能屏蔽掉具体传输介质和物理设备的差异. 数据链路层主要功能:建立和管理节点间的链路.通过各种控制协议,通过差错控制.流量控制方法,将有差错的