Chinaunix首页 | 论坛 | 博客
  • 博客访问: 132801
  • 博文数量: 75
  • 博客积分: 3483
  • 博客等级: 中校
  • 技术积分: 820
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-07 08:31
文章分类

全部博文(75)

文章存档

2011年(53)

2010年(22)

我的朋友

分类: 系统运维

2010-12-09 17:04:05

由于物理网络层一般要限制每次发送数据帧的最大长度,任何时候IP层接收到一份要发送的IP数据报时,他要判断向本地那个接口发送数据,并查询该接口获得其MTU, 如果需要则进行分片;被分片的数据报在传送过程中即使丢失一个分片也需要重新传输所有分片!
分片可以发生在原始发送端主机上,也可以发生在中间路由器上;
一份IP数据报被分片以后,只有到达目的地才进行重新组装;每个片都成为一个分组,他们拥有各自的IP首部(也就是说在传送的时候他是独立的,到达目的端之后就有可能失序),然后如果是对UDP进行分片,那么只会在第一个分片中才会存在 原数据报的UDP首部!
IP首部中含有一个16位的标识字段,该字段在分片之后被分配到每个片中;
IP首部中的3位标志字段:1位置一(除了最后一片),DF字段(置一表示不分片);
tcpdump中的显示:frag aaa:bbb@cc+
aaa 表示IP首部中的标识字段的值
bbb表示表示分片中除了IP首部的片长(长度+20IP首部 就是该MTU了)
cc表示从数据报开始处计算的片偏移值
+表示该分片后面还有分片,最后一个自然是没了~
阅读(659) | 评论(0) | 转发(0) |
0

上一篇:TCP/IP 总结

下一篇:spring url-mapping

给主人留下些什么吧!~~