计算机网络---IP数据报组成计及IP模块工作流程

IP数据报组成

IP数据报是由首部与数据部两部分组成。
在这里插入图片描述
首部的前一部分是固定的20个字节,后一部分是可选的,是每个数据报必不缺少的一部分。后面的数据部分是来自于传输层。
在这里插入图片描述
这是IP数据报首部的结构图,上图中每行为4个字节,其中固定部分为5行,则固定部分为20个字节。
在这里插入图片描述
IP数据报首部的分为固定部分与可变部分。(一般情况下可变部分为0)

IP数据报首部的各个信息
在这里插入图片描述

  • 版本:标识TCP/IP是IPV4还是IPV6
  • 首部长度:如果IP数据报首部只包含固定部分,则该值为20,如果首部包含可选部分,则该值不固定。
    在这里插入图片描述
  • 区分服务:类似于IP数据报的优先级。
    例如:当我们在使用微信进行视频通话时,恰巧这是路由上有人发送邮件信息,路由器会判断哪个数据报的优先级高,优先级高的先进行转发。
  • 总长度:用来表示数据报整体的总长度。总长度占2个字节,所以数据报的总大小为2^16-1,也就是65535个字节。但是数据链路层最大支持的传输单元MTU为1500个字节,导致网络层产生的数据报过大,数据链路层传不了,这时在网络层还会将数据报进行分片处理,处理成为支持数据链路层传输的数据大小。
    在这里插入图片描述
  • 标识:上述所产生的数据片,接收端收到后,会通过标识将数据片进行整和,整和成一个完整的数据报。
  • 标志:有的数据报需要进行分片处理,有的数据报不需要进行分片处理,该标志就是用于区分数据报是否分片。标志位有3bit,当最低位值为1时,表示后面还有分片,当最低位值为0时,表示该为最后一个分片。
  • 偏移量:为了将数据片进行整和,偏移量的作用就是,标记该数据片的位置在数据报中的那一部分。
    在这里插入图片描述
  • 生存时间:TTL,每过一个路由器,值减一。
  • 协议:用来标识数据部分交给那个协议处理。
  • 首部检验和:用于判断该数据在传输的过程中是否发生改变。
  • 源地址:指传输段的IP地址。
  • 目标地址:指接收端的IP地址。
  • 最后变长地址长度为对多包含40个字节,因为IP地址头部最长60个字节。
IP模块的工作流程

在这里插入图片描述
从右往左分析:

  1. 先从网络驱动程序(网卡)中获取IP地址信息,将其放入到IP输入队列中。
  2. 对数据报的头部做CRC校验,判断数据报是否发生错误,确认无误,进行下一步操作。
  3. 检验是否接收端是本主机,如果目标IP地址是本网段中的某个IP地址,则将数据发送给具体主机,主机通过端口号确保发送给哪一个应用。如果不是则将该网段中的地址,进行数据报转发。
  4. 判断数据报是否允许转发,允许转发则转发,不允许则丢弃。
  5. IP输出队列存放的是等待发送的IP数据报,除过要发送的IP地址外,还包括ICMP报文、TCP报文、UDP报文。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值