• Linux系统编程-网络基础(四)-网络层-协议:IP(因特网互联协议)【IP报头大小:20字节】


    一、IP报头

     IP报头:

    1. 版本:IP协议的版本。通信双方使用过的IP协议的版本必须一致,目前最广泛使用的IP协议版本号为4(即IPv4 )
    2. 首部长度:单位是32位(4字节)
    3. 服务类型:一般不适用,取值为0
    4. 总长度:指首部加上数据的总长度,单位为字节
    5. 标识(identification):IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段
    6. 标志(flag):目前只有两位有意义。
      1. 标志字段中的最低位记为MF。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。
      2. 标志字段中间的一位记为DF,意思是“不能分片”,只有当DF=0时才允许分片
    7. 片偏移:指出较长的分组在分片后,某片在源分组中的相对位置,也就是说,相对于用户数据段的起点,该片从何处开始。片偏移以8字节为偏移单位。
    8. 生存时间:TTL,表明是数据报在网络中的寿命,即为“跳数限制”,由发出数据报的源点设置这个字段。路由器在转发数据之前就把TTL值减一,当TTL值减为零时,就丢弃这个数据报。
    9. 协议类型:指出此数据报携带的数据时使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程,常用的:
      1. ICMP:填1;
      2. IGMP:填2;
      3. TCP:填6;
      4. UDP:填17;
      5. IPv6:填41;
    10. 头部校验和:只校验数据报的首部,不包括数据部分。
    11. 源地址:发送方IP地址
    12. 目的地址:接收方IP地址
  • 相关阅读:
    动态代理看这个就够了
    OpenGLES:绘制一个混色旋转的3D圆柱
    vue学习之内容渲染
    【C++】C++入门
    Spring Cloud项目(四)——使用Ribbon作为负载均衡
    华为NFC设置教程(门禁卡/公交卡/校园卡等)
    BBR 数学模型直观展示
    C#/VB.NET 将PDF转为PDF/X-1a:2001
    [附源码]计算机毕业设计影评网站系统Springboot程序
    Django系列:Django开发环境配置与第一个Django项目
  • 原文地址:https://blog.csdn.net/u013250861/article/details/127130057