登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

BCB-DG's Blog

...

 
 
 

日志

 
 

IP头格式  

2010-10-20 14:24:58|  分类: Socket |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
IP头格式
===========

版本号 (4位)
IP头长度 (4位)
服务类型 (8位)
数据包长度 (16位)
标识段 (16位)
标志段 (16位)
生存时间 (8位)
传输协议 (8位)
头校验和 (16位)
发送地址 (16位)
目标地址 (16位)
选项
填充



简单说明
============

1. IP头长度计算所用单位为32位字, 常用来计算数据开始偏移量
2. 数据包长度用字节表示, 包括头的长度, 因此最大长度为65535
字节
3. 生存时间表示数据被丢失前保存在网络上的时间, 以秒计.
4. 头校验和的算法为取所有16位字的16位和的补码.
5. 选项长度是可变的, 填充区域随选项长度变化, 用于确保长度
为整字节的倍数.



C 描述
============

struct iphdr {
BYTE versionihl;
BYTE tos;
WORD tot_len;
WORD id;
WORD frag_off;
BYTE ttl;
BYTE protocol;
WORD check;
DWORD saddr;
DWORD daddr;
/* Put options here. */
}; 



1、4位版本号;2、4位首部长度;3、8位服务类型(TOS);4、16位总长度
: ~1 E4 ^! J7 a8 N) Q5、16位标识;6、3位分段标识;7、13位分段偏移;
: _0 c* \) N& d! \2 W8、8位生存时间(TTL);9、8位协议;10、16位首部长度校验和。
* Q6 l& r! M+ M, O0 W5 B; p" Z1 D3 s6 c4位版本:标识IP协议的版本,IPv4中是4。
( r" p% c6 s6 @: E& P4位首部长度:首部占用32bit字段的树木。由于其是4bit字段,因此首部最长位60字节。(每32bit占用4字节)(4bit表二进制最大为1111,等于十进制15。因此,首部最大长度为4字节×15=60字节)* M! u1 H! V) W  w8 N" @" x
8位服务类型:包括一个3bit的优先权字段(现已被忽略),4bit的TOS子字段和1bit未用。4bit的TOS子字段分别表示最小延时、最大吞吐量、最高可靠性和最小费用。4bit中只能设置一bit。如果4bit全部为0,则为一般服务。
2 d4 l# [; I8 x, G  D5 W' _' _) Y) P$ {16bit总长度字段:指整个IP数据报文之长度。利用首部长度字段和总长度字段,就可以知道IP数据报中数据总长度和起始位置。一些数据链路(如以太网)需要充填一些数据,以达到最小长度。因此总长度字段是必须的。# o0 O/ ~9 Y; ?% @: F" C
16bit标识字段:唯一地标识主机发送的每一份数据报,通常每发送一份报文它的值就会增加1。通过它使目标主机判断抵达的分段属于哪个分组,同一分组的分段包含同样的标识值。% A& |9 ~% j2 T2 w7 w/ b
13bit分段偏移:代表当前分段在数据报的什么位置。$ s' u9 m, q/ H# W4 {2 c
8bit生存时间(TTL):数据报可以经过的最多路由数。
7 B- n" U- k& n# m首部校验和字段:是根据IP首部计算的校验码,它并不对首部后面的数据进行计算。
, g$ W7 Q$ l" p- f0 I! X7 p# u; m2 m

0 V! b/ h) @# q1 这里的32bit是个量词,其实就是4个字节,首部长度表示了IP首部中一共有几个4字节。: j, J& Q( p% z4 {
2 4个bit二进制最大值1111=十进制15,所以最大有15个4字节,就是60字节。

TM截图未命名.jpg

  评论这张
 
阅读(3106)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018