文件名称:IP分片与重组的分析与整理.doc
文件大小:99KB
文件格式:DOC
更新时间:2015-07-02 17:50:35
IP分片与重组的分析与整理.doc
原理 1.1 为一个数据包片再次分片 为数据包分片和位数据包片再次分片之间的细微差别就在于网关处理MF比特的不同。但一个网关为原来为分片的数据包分片时,除了末尾的数据包片,它 将其余所有分片上的MF比特都置为一,最后一片为0。然而,当网关为一个非末尾的数据包片再次分片时,它会把生成的所有子分片中的MF比特全部设置为1, 因为所有这些子分片都不可能是整个数据包的末尾的数据包片。 对于分片,需要拷贝IP首部和选项,以及数据。而选项的拷贝要注意:根据协议标准,某些选项只应当出现在的一个数据包片中,而其他一些则必须出现在所有的数据包中。 1.2 数据包重组 1.2.1 数据结构 为了使数据包的重组效率更高,用于保存数据包的数据结构必须能够做到: l 为构成某一个特定数据包的一组数据包片快速定位; l 在一组数据包片中快速插入新的数据包片; l 有效地判断一个完整的数据包是否已经全部抵达; l 具有数据包片超时机制,并且,如果在重组完成之前定时器溢出,则删除数据包片。 1.2.2 互斥操作 重组程序代码使用了一个互斥信号量。 1.2.3 在链表中加入一个数据包片 线性查找???