TCP/IP协议详解卷1笔记 ip协议头部

  • 首先我们需要了解IP协议的特性,主要包括 不可靠性 和无连接
  1. 不可靠性:指IP协议不保证IP数据报可以成功到达目的地,中途可能丢失,丢失了可以通过ICMP协议来告诉发送端丢失的原因
  2. 无连接性: 简单理解各个数据报(datagram)的发送接收是独立的,没有记录各个数据报的状态,相对的TCP连接通过状态机来维持双方的 。既然是独立的,那么接收端接受到的数据报的顺序和发送端发送顺序也是可以不同的,因为每个数据报通过ip路由选择的传输路径很可能不同。

         ipv4的首部字段
  • TCP/IP协议详解卷1笔记 ip协议头部
    每个字段都代表了这个协议提供的功能:
 1.版本:代表了ip协议的版本 目前来说有ipv4,ipv6(ipv6首部有些区别),字段值就是4或者6(用二进制表示)
 2.首部长度:即首部的长度,最多为60字节
 3.服务类型(TOS):因为不同的应用对服务质量的要求可能不同,常见服务类型包括最小时延,最高的可靠性,最小费用,最大吞吐量。这个字段用于告诉ip协议上层希望IP协议提供怎样的服务,但不代表设置上了这个字段就能百分百保证服务质量。例如telnet,smtp这种就需要最小时延,icmp需要最高可靠性,ftp要求最大吞吐量。
4.总长度字段:包括首部字段长度和首部数据长度。IP数据报的长度受到到数据链路层的数据帧的长度限制,底层数据帧有最小帧长和最大帧长限制,对于最大帧长限制,IP数据报需要分包处理,最小无需处理,底层来填充数据,但需要提供总长度字段和5.首部字段,底层才能知道哪些数据是有效的。
6.标识字段:用于分包和重组。
7.首部检验和:根据IP首部计算校验和,IP数据内容不参与计算,原因是上层的TCP,UDP等已经在他们的首部对数据做了校验和。接收端通过检验和判断IP数据报是否有效,无效就丢弃。