设为首页收藏本站language→→ 语言切换

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

查看: 3047|回复: 7
收起左侧

[其他] 关于ip数据报头理解---------------原创

[复制链接]
发表于 2013-4-16 21:04:44 | 显示全部楼层 |阅读模式
      学技术不懂原理,只会操作,那也只是施工队的一名
                                                                     --------------------引言
     看了这么久的书,本人很喜欢研究技术的时候弄懂原理,刨根问底。对于刚接触网络的人来说各种报头字段表示的含义非常头疼。
    个人认为头疼的原因无非几点:一、对一些技术不了解,一些报头字段作用是为了一些服务或技术而定义的;二、协议字段太复杂了(………………)……
    下面我来介绍IP报头字段的含义,方便大家理解,不足地方,大家指出来,一起学习,一起进步。
    IP数据报=首部+数据(两部分组成)。首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。在首部固定部分的后面是一些可选字段,其长度是可变的。

    版本,占(4b)作用是判断IP协议版本的,0100 正好=4 也就是IPV4。
    首部长度(4b)作用是表示首部的长度,这里的单位是4B(IP报头32),所以必须为4B的整数倍,不足填充。其最大的十进制数是15,所以最大长度就是60字节。
    区分服务(8b 一般做QOS用的,QOS就是服务质量的意思,举个例子,你们就懂了,现实生活中,很多东西、事情、人都是分等级的,打上标签或一些标识,表示这些事情可以优先处理。数据报也是这样的,打上特定的标识信息,可以让网络节点优先处理。在比如,有时候,我们打开一些应用软件,打开以后发现觉得这个软件不行又想快速关了,这个时候就时候一些服务字段表示这个是紧急数据报,优先处理,而不是排队等待。
   总长度(16b)+数据部分,不用解释,越解释可能越复杂。
   标识(16b),IP软件在寄存器中维持一个计算器,每产生一个数据报就赋值一个值,可能有人会纳闷,为什么要赋值呢?IP数据报不是面向无连接服务吗?不需要按序传输啊。赋值的作用是为了当一个IP数据报总长度大于MTU(最大传输单元),这个时候它就需要被分片,比如分成了 A1、A2、A3,这3片到达目的节点这些分片需要被重组,那怎么判断这些分片是属于原来的那个数据报呢?就是通过这个赋值实现的,当数据报被分片,IP首部复制给每个分片(当然这个IP首部一些字段会被改变),拥有同标识的分片属于同一个原来的数据报。
   标志(3b)总共有3个位,一位是MF(more fragment)=1时,说明还有分片,这个不是最后的分片。=0说明是最后的分片。一位是DF(don‘t fragment)不能分片=0才属于分片。还有一位没有使用到,保留以后用的吧。
  片偏移(13b),也是IP数据报重组用的,标识是判断是不是属于同原来数据报,而片偏移判断重组原来数据报各个分片原来的位置,好正确的重组数据报。
  生存时间(8b),很久以前使用原理正如名字,使用的是时间,现在不是了,使用的是跳数,每经历一跳减一,防止打环。
协议(8b),这个字段的作用是,当目的节点收到这个数据报时候可以从这个字段判断,交给上层那个协议。
首部检验和(16b)只检验首部部分,不检查数据部分(减少计算),不使用CRC(复杂),而是使用特殊算法,大家可以百度(…………)。为什么要检验首部呢?因为首部字段在传输的过程中会不断的变化,检验防止出错。
  源地址,目的地址不讲了,大家都清楚。
可选字段太复杂了,填充字段是配合可选字段,跟首部加起来必须为4b的整数倍,不足就是这个填充字段起作用。
打这些字太累了,来点掌声吧…………………………

发表于 2013-4-16 21:44:39 | 显示全部楼层
谢谢分享
沙发 2013-4-16 21:44:39 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-4-16 22:18:55 | 显示全部楼层
啥也不说了,楼主就是给力!
板凳 2013-4-16 22:18:55 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-4-16 22:37:27 | 显示全部楼层
不错,很好,谢谢
地板 2013-4-16 22:37:27 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-4-16 23:09:49 | 显示全部楼层
看你写了那么多,先再看
5# 2013-4-16 23:09:49 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-4-17 16:05:42 | 显示全部楼层
6# 2013-4-17 16:05:42 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2013-5-23 11:19:54 | 显示全部楼层
谢谢分享
7# 2013-5-23 11:19:54 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2024-12-26 14:47 , Processed in 0.060446 second(s), 14 queries , Redis On.  

  Powered by Discuz!

  © 2001-2024 HH010.COM

快速回复 返回顶部 返回列表