IP报头

位,它表示32位字长的IP报头长度,设计报头长度的原因是数据包可选字段大小会发生变化。IP报头最小20个八位组,最大可以扩展到60个八位组。这个字段也可以描述32位字的组大长度。
位,它用来指定特殊的数据包处理方式。服务类型字段实际上被划分为2个子字段:优先权和Tos。优先权用来设置数据包的优先级。Tos允许按照吞吐量、时延、可靠性和费用方式选择传输服务。Tos通常不用所有位都被设置为0.在OSPF路由协议的早期规范中还称为Tos路由选择。优先级偶尔在服务质量(QoS)应用中使用。
下图简单的说明了8个Tos位。

但是随着网络的发展 ToS字段已经作为区分服务架构的一部分被重新定义了。(diffserv)
8位
开始的6个位(0-5)现在构成了区分代码点(DSCP),利用这6位我们可以使用任意数值或根据在区分服务体系结构中预先定义的服务类别,最多可以定义64个不同服务类别,并可以整理到PHB中。
PHB理解:在Diffser中,能够在一台路由器定义服务分类,将数据包归类到这些分类中去。路由器可以根据它们的分类使用不同的优先级对数据包进行排序和转发。每一个排序和处理被称为Per-Hop behavior(逐跳行为PHB)是由Diffse定义的这个机制本身称为区分服务类别(Cos).
显示拥塞通知(Explicit Congestion Notification ECN)在上图中显示拥塞通知是某些路由器支持显示拥塞通知的。当路由器支持该特性时,这些位可用于拥塞信号(ECN=11)
位,以8位为单位计数。其中包括IP报头。接收者用IP数据包总长度减去IP报头长度,就可以确定数据包有效载荷大小。16位长的二进制数用十进制表示最大可以为65535,所以IP数据包最大长度是65535。
位,通常与标记字段和分段偏移一起用于数据包的分段。也就是当数据包原始长度超过数据包所要经过的数据链路的最大传输单元(MTU)那么分段必须将数据包分段为更小的数据包。
位其中第1位没有使用。
第2位是不分段(DF),当DF位置被置为1时,路由器将不能对数据包进行分段处理。如果数据包因为不能被分段而不能转发,那么路由器将丢弃数据包并向数据发送方发送错误信息。
第3位表示更多分段(MF) 当路由器对数据包分段时除了最后一个分段的MF职位0 ,其它分段的MF位全设置为1,当接收者收到MF为0的分段停止分段。
位,以8个八位组为单位。用于指明分段起始点相对于根头起始点的偏移量。由于分段经过网络肯定会发生错序,所以分段偏移字段可以使接收者按正确的顺序重组数据包。
位,在最初创建数据包时TTL被设定某个特定的值,当数据包逐个经过路由器时,每台路由器都会降低TTL的数值,当TTL值为0时,路由器将会丢弃这个数据包并向数据发送源发送错误信息 这样就可以防止数据包无休止的传下去。TTL实际上是表示跳数。常见的是15和32 缺省值是64. tracert这样的命令就是利用TTL字段。
位,他给出了主机到主机的层或传输层协议的“地址”或协议号。协议字段指定了数据包中信息的类型。
常见协议号
Header checksum(报头校验和):它是针对IP报头的纠错字段。校验和不计算被封装的数据。

UDP、TCP和ICMP都各有自己的校验和。报头校验和字段包含一个16位二进制补码和。如果数据包在传输中没有发生错误,那么结果应该16位全为1. 数据包每经过1台路由器,每台路由器都将重新计算校验和。
Sourceaddress(源地址):指数据包发送源ip地址。
Destination address(目标地址):数据包将要到达的目的地地址。
Options(可选项):是一个长度可变的字段。它是可选的。
可选项如下:
个地址之间可跳过多台路由器。
ⅱ严格源路由选择(strict source routing)也给出了一连串路由器接口的IP地址序列,不同于松散源路由选择的是,数据包必须按照路由转发。如果下一条不在路由表,就将会发生错误。
ⅲ记录路由(Record Router)当数据包离开时为每台路由器提供空间记录数据包的出站接口地址。
ⅳ时间戳(timestamp):时间戳相当于路由记录选项,这样数据包不仅可以知道自己到过那里。而且还可以记录到达的时间。
填充(padding)在可选项后面添加0来补足32位,主要是保证报头是32位的倍数。
IP报头的更多相关文章
- TCP及IP报头及协议
看到有道题目要问:tcp头多少字节?哪些字段?(必问) 这个... 看了这篇文章做参考:http://blog.163.com/tianshuai11@126/blog/static/61894543 ...
- 【转】TCP/IP协议栈及OSI参考模型详解
OSI参考模型 OSI RM:开放系统互连参考模型(open systeminterconnection reference model) OSI参考模型具有以下优点: 简化了相关的网络操作: 提供设 ...
- TCP/IP基础知识
TCP/IP基础知识 网络 TCP/IP 引言 本篇属于TCP/IP协议的基础知识,重点介绍了TCP/IP协议簇的内容.作用以及TCP.UDP.IP三种常见网络协议相关的基础知识. 内容 TCP/IP ...
- TCP/IP协议学习笔记
计算机网络基础知识复习汇总:计算机网络基础知识复习 HTTP协议的解析:剖析 HTTP 协议 一个系列的解析文章: TCP/IP详解学习笔记(1)-- 概述 TCP/IP详解学习笔记(2)-- 数据链 ...
- TCP/IP协议基础(转)
转自 http://www.chinaunix.net 作者:Bernardus160 发表于:2003-12-03 17:33:15 TCP/IP协议基础 -------------------- ...
- IP协议
因特网协议(Internet Protocol, IP)是Internet的核心协议之一, 工作在网络层.IP协议提供节点间的寻址,路由以及顺序控制, 流量控制等服务. IP协议分为IPv4和IPv6 ...
- TCP/IP协议(一)
TCP/IP是Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协 ...
- ETHERNET数据包格式( IP & UDP & ICMP & ARP )
ETHERNET数据包格式( IP & UDP & ICMP & ARP ) ETHERNET数据包格式 一.ETHERNET 数据包的协议类型 TYPE 的值为 0x0800 ...
- TCP/IP协议原理【转载】
前述 各种L2数据网具有不同的通信协议与帧结构,其网络节点设备可以是各种类型的数据交换机(X.25.FR.Ethernet和ATM等分组交换机):而L3数据网(IP网或internet) ...
随机推荐
- Taurus.MVC 2.0 开源发布:WebAPI开发教程
背景: 有用户反映,Tausus.MVC 能写WebAPI么? 能! 教程呢? 嗯,木有! 好吧,刚好2.0出来,就带上WEBAPI教程了! 开源地址: https://github.com/cyq1 ...
- solr_架构案例【京东站内搜索】(附程序源代码)
注意事项:首先要保证部署solr服务的Tomcat容器和检索solr服务中数据的Tomcat容器,它们的端口号不能发生冲突,否则web程序是不可能运行起来的. 一:solr服务的端口号.我这里的sol ...
- Hawk 5. 数据库系统
Hawk在设计之初,就是以弱schema风格定义的.没有严格的列名和列属性.用C#这样的静态强类型语言编写Hawk,其实并不方便.但弱schema让Hawk变得更灵活更强大. 因此,Hawk虽然之前支 ...
- [自翻]fasthttp中文文档(持续更新)
fasthttp是由valyala编写的声称快于Go官方标准库net/http包十倍的快速HTTP实现.从各方的性能测试结果来看(评测一.评测二),fasthttp作为当下最快的http Go语言包当 ...
- 云计算下PAAS的解析一
云计算下PAAS的解析一 PaaS是Platform-as-a-Service的缩写,意思是平台即服务. 把服务器平台作为一种服务提供的商业模式.通过网络进行程序提供的服务称之为SaaS( ...
- atitit.细节决定成败的适合情形与缺点
atitit.细节决定成败的适合情形与缺点 1. 在理论界有两种观点:一种是"细节决定成败",另一种是"战略决定成败".1 1.1. 格局决定成败,方向决定成败 ...
- Forward+ Rendering Framework
近几天啃各种新技术时又一个蛋疼的副产品...额,算是把AMD的Forward+ Sample抄了一遍吧. 其实个人感觉这个AMD大肆宣传的Forward+跟Intel很早之前提的Tiled-Based ...
- 快速web开发中的前后端框架选型最佳实践
这个最佳实践是我目前人在做的一个站点,主要功能: oauth登录 发布文章(我称为"片段"),片段可以自定义一些和内容有关的指标,如“文中人物:12”.支持自定义排版.插图.建立相 ...
- 自动添加Linux登录账户,并授予sudo权限
#!/bin/bash USER=test PASS=$USER GROUP=root HOME=/data/home/$USER # if user not exist if [[ $(cat /e ...
- CSharpGL(13)用GLSL实现点光源(point light)和平行光源(directional light)的漫反射(diffuse reflection)
CSharpGL(13)用GLSL实现点光源(point light)和平行光源(directional light)的漫反射(diffuse reflection) 2016-08-13 由于CSh ...