- 1
- 2
- 3
- 4
- 5
Linux下对UDP包的重组和转发实现说明
资料介绍
1整体描述
本程序主要实现在数据链路层抓发往本机的数据包,再对其做分析和处理,最后进行转发。分析过程主要是对抓来的包进行判定是否是一个完整的包、是否有分片。如果完整就转发;有分片就重组,组完之后再转发。
为了便于测试,本程序只分析处理抓到某一源IP发来的UDP数据,并使用UDF协议进行转发。
实现的难点在于重组过程和处理的效率问题。
2IP分片的原因
链路层具有最大传输单元MTL这个特性,它限制了数据帧的最大长度,不同的网络类型都有一个上限值。以太网的MTU是1500,你可以用netstat-i命令查看这个值。如果IP层有数据包要传,而且数据包的长度超过了MTU那么IP层就要对数据包进行分片(fragmentation)操作,使每一片的长度都小于或等于MTU我们假设要传输一个UDP数据包,以太网的MTU为1500字节,一般IP首部为20字节,UDP首部为8字节,数据的净荷(payload)部分预留是1500-20-8=1472字节。如果数据部分大于1472字节,就会出现分片现象。
3UDP协议包在整个网络传输过程中分片与重组的原理
部分文件列表
文件名 | 大小 |
Linux下对UDP包的重组和转发实现说明.pdf | 130K |
部分页面预览
(完整内容请下载后查看)最新上传
-
21ic小能手 打赏10.00元 3天前
-
21ic小能手 打赏10.00元 3天前
-
cai0603 打赏3.00元 3天前
用户:CJQ_ENJOY
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏10.00元 3天前
-
cai0603 打赏3.00元 3天前
用户:dongshao
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏10.00元 3天前
-
21ic下载 打赏310.00元 3天前
用户:gsy幸运
-
21ic下载 打赏310.00元 3天前
用户:zhengdai
-
21ic下载 打赏310.00元 3天前
用户:小猫做电路
-
21ic下载 打赏310.00元 3天前
用户:liqiang9090
-
21ic下载 打赏270.00元 3天前
用户:kk1957135547
-
21ic下载 打赏160.00元 3天前
用户:w178191520
-
21ic下载 打赏160.00元 3天前
用户:w1966891335
-
21ic下载 打赏50.00元 3天前
用户:w993263495
-
21ic下载 打赏40.00元 3天前
用户:w993263495
-
21ic下载 打赏90.00元 3天前
用户:cooldog123pp
-
21ic下载 打赏30.00元 3天前
用户:sun2152
-
21ic下载 打赏40.00元 3天前
用户:xzxbybd
-
21ic下载 打赏40.00元 3天前
用户:铁蛋锅
-
21ic下载 打赏30.00元 3天前
用户:happypcb
-
21ic下载 打赏50.00元 3天前
用户:forgot
-
21ic下载 打赏10.00元 3天前
用户:xuzhen1
-
21ic下载 打赏20.00元 3天前
用户:wanglu6666
-
21ic下载 打赏5.00元 3天前
用户:人间留客
-
21ic下载 打赏5.00元 3天前
用户:jyxjiyixing
-
21ic下载 打赏5.00元 3天前
用户:akae_du
-
21ic下载 打赏5.00元 3天前
用户:ouyang_56
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
xlhtracy 打赏10.00元 3天前
-
xlhtracy 打赏10.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
xlhtracy 打赏5.00元 3天前
-
czmhcy 打赏1.00元 3天前
资料:bitboy
全部评论(0)