网络层

  • 网络层数据包(IP数据包)由首部+数据两部分组成
  • 数据:很多时候使用上层传输层传递下来的数据段组成


    网络层首部.png

首部

  • 版本、占4位 、0b0100 :IPv4 、0b110:IPv6
  • 首部长度、占4位、 二进制乘以4才是最终长度 0b101(最短) 0b110(最长)
  • 区分服务、占8位、 可以用于提高网络的服务质量(知道就好)
  • 总长度、占16位、 首部 + 数据的长度之和,最大值是 65535字节


    网络层首部-总长度.png
  1. 由于帧的数据不能超过1500字节,所以过大的IP数据包,需要 分片(fragments) 传输给数据链路层。
  2. 每一片都有自己的网络层首部(IP首部)
  • 标识
  1. 占16位
  2. 数据包的ID,当数据包过大进行分片时,同一个数据包的所有片的标识都是一样的
  3. 有一个计数器专门管理数据包的ID,每发出一个数据包,ID就加1
  • 标志
  1. 占3位
  2. 第1位(保留位)
  3. 第2位(Don’t Fragment):1代表不允许分片,0代表允许分片
  4. 第3位(More Fragments):1代表不是最后一片,0代表是最后一片
  • 片偏移
  1. 占13位

  2. 片偏移乘以8:字节偏移(wireshark显示的是字节偏移)

  3. 每一片的长度一定是8的整数倍


    网络层首部-总长度.png
  4. 通过ping命令直接在网络层发送4000字节数据


    片偏移表格.png
  • 生存时间
  1. 占8位
  2. 每个路由器在转发之前会将TTL减1,一旦发现TTL减为0,路由器会返回错误报告
  • 协议
  1. 占8位
  2. 用于说明封装数据使用的那种协议
  • 首部检验和
  1. 用于检查首部是否有错误
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容