网络协议分析-IP
本文最后更新于:几秒前
IP数据报协议
IP特点:
○ 提供了一种无连接的投递机制,从同一源到同一目的的不通数据包可能经过不同的路径。
○ 不保证数据传输的可靠性,数据传输过程中可能会出现乱序,丢失等情况,IP不会将这种情况反馈给发送和接收方,也不会试图去纠正。
○ 提供了最大努力的投递机制。不会随意丢弃数据包,除非底层网络出现故障,或者资源耗尽。
IP 数据报包结构:
• 版本占4位,目前主要是IPv4 IPv6
• 首部长度4位 给出了以4字节为单位的IP数据包首部的长度, 如果首部长度为20字节,那么这个字段值为5
• 服务类型占1字节 优先级字段占3bit 用于指示路由器对数据包处理的优先次序,优先级的值从0(普通优先级)到7(网络控制)。
注:优先级1-4 主要用于受控负载应用、流式多媒体、关键性业务流量,优先级5-6 主要用于对延迟敏感的应用,分别对用交互式的视频和语音。优先级最高的是7,应用于网络管理和关键性网路流量,例如路由表的更新。
○ D(delay) 字段置1 表示低延迟需求,路由器需要尽快处理
○ T(ThoughtPut) 字段置1 表示 高吞吐量需求
○ R(Reliability) 字段置1 表示高可靠性需求
○ C(也有写作M)(Monetary Cost)字段置1 表示低费用需求
• 标识:16bit 2字节 表示为某一种IP数据包分配一个唯一的数字标识,作用是保证数据被分段后,区别于网络中其他IP数据分段,然后可以被正确的组合。
• 标志:3bit 第一位一般不用,第二位称为DF(Don’t Fragment)位,如果该位置1,则不对该IP数据包进行分片处理。第三位是MF(More Fragment)位,该位置1 表示该数据报分片后边还有分片。
• 片偏移:13bit 表示分段数据起始点相对于包头起始点的偏移位置。IP没有规定每个分片的大小,但是规定了分片的尺寸应为8字节的倍数。
注:标识、标志、片偏移共同控制数据报的分片和重组。
• 生存时间:TTL,8bit TTL最大255,表示当前报文能够在网络上存活的最大时间(指路由器跳数),每经过一个网关或路由器,TTL自动-1,当TTL为0时,路由器会将该报文丢弃。
• 协议:8 bit 用来标识上层使用的具体协议,通常是传输层或者网络层协议,例如UDP,TCP,ICMP等等。
• 首部校验和:16 bit 该字段只计算首部的校验和,路由器转发时,首先验证校验和是否一致,让后再计算新的校验和放到该字段中,转发出去。
• 可选字段:该字段可选,主要用于网络测试和调试。其长度取决于选项类型。但都包含1字节的代码字段。
○ 代码字段包含1bit的拷贝标志,2bit的选项类,5bit的选项号。
○ 拷贝标志用于表示路由器在分片过程中对选项的处理方法。该字段置1 表示选项应该被拷贝到所有分片中,否则只拷贝到第一个分片中。
文章不正确之处,欢迎指出,谢谢