• 网络层
    关心-->转发 IPV4协议 IPV6协议
  • 寻址
    转发
    标识位置
    IPV6: 86DD
  • MAC定位局部
  • 网络定位全局
  • 对于上层数据如果过大,网络层可以分组,实现分组转发
  • 环路:发送了一个数据
    我又接收到了这个数据

  • 前4个:IP的标识参数
  • 中4个:IP的分片参数
  • 后4个:IP的辅助参数
  • 0-31=32bit 4Byte 基本长度4*5=20B 可选长度:0-40B IP报头 20+40=60B
  • 逻辑电路组成 0-->断电 1-->通电 ---> 0 不取值 1取值
  • IPV4报头
    最小是20B
    最大是60B 20B-60B
  • 8 4 2 1

1.版本:

  • 代表该报文是V4的封装还是V6的封装 0100-v4 0110-v6 |4b|

2.首部长度:

  • 具体IP报头多长 0101 =5|首部长度代表| 4B单位 5*4=20 B |1010-->10 10*4=40B|1111->15 15*4=60 B| |4b|

IP报头的长度=数据换算的十进制*4B|固定单位|

3.DSF区分服务|TOS|-->服务类型:

  • IE-->QOS TOS字段进行不同优先级的设置
    和QOS联动 |8b|

4.总长度:

  • 代表的上层数据的长度[加上我的IP报头本身] 总长度减去IP报头长度=上层的数据长度 |8b|

5.ID<标识>:

  • 分片的标识
    如果上层数据进行了分片
    此时每一个分片中都会携带该ID号,相同的分组ID号都是一样的。|16b|
  • DF=0才有意义
    允许分片的时候 ID才会有意义

6.flags<标志位>:

  • x x x |3b|
  • 1bit : resv=0 |永远都是0|
  • 2bit:DontF-->不分片位 :某个数据不允许分片 则置为1 允许分片,则为0-
  • 3bit:MoreF-->更多分片--> 代表接下来是否还有分片的报文 置1=还有 置0=没有 |结束|

7.片偏移:

  • 分片数据在整个数据中的相对位置
    片偏移单位固定是8B 最大:1500 |分组| |13b|

8.生存时间:

  • TTL 代表数据能够在网络中传递多远
    最大为255 一旦为0则数据就会丢弃|8b||天然防环| 厂商可以定义的|

9.协议:

  • protocol:协议 代表的也是上层的协议 传输层 --> TCP|6| UDP|17| |8b|

10.首部校验和:

  • IP报头某些字段他的完整性 --> |二进制补码求和| E2-->计算 -->FCS TTL-->不参与|16b|

HCIA-网络层包结构的更多相关文章

  1. 文档:网络通讯包结构(crc校验,加解密)

    一直想把这个流程整理一下. 包结构: 包 对(datacrc+protoID+dataSize)组成的byte[] 进行crc计算而得到 对(数据内容)进行crc计算而得到 协议号 数据内容的字节长度 ...

  2. jdk1.7.0_80源码包结构

    解压源码src.zip,jdk源码结构如下所示: src |--com.sun    sun公司对jdk的实现,Oracle官方不支持,不保证跨平台(可能一些类linux有而windows没有),甚至 ...

  3. Node.js入门:包结构

        JavaScript缺少包结构.CommonJS致力于改变这种现状,于是定义了包的结构规范(http://wiki.commonjs.org/wiki/Packages/1.0 ).而NPM的 ...

  4. JDK源码包结构分类

    最近查看JDK源码时,无意间发现几个类在陌生包里:com.sun.*.sun.*.org.*,google了一把总结了下以备他人搜索,如内容有误欢迎指正!   Jre库包含的jar文件(jdk1.6) ...

  5. TCP/IP数据包结构具体解释

    [关键词] TCP IP 数据包 结构 具体解释 网络 协议 一般来说,网络编程我们仅仅须要调用一些封装好的函数或者组件就能完毕大部分的工作,可是一些特殊的情况下,就须要深入的理解 网络数据包的结构, ...

  6. 【Java基础】Jar包结构结构分析和操作具体解释

    作者:郭嘉 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 一 ...

  7. UDP包结构

    UDP包结构  // 参考: http://www.2cto.com/net/201307/224715.html UDP数据包由首部和数据组成,每行4个字节(32位),首部固定长度为8个字节(2行) ...

  8. USB的包结构及包分类

    USB的传输总是低位在前,高位在后. USB的传输方向:从设备到主机的数据为输入:从主机到设备的数据叫做输出. 1. 包结构 以同步域开始,紧跟着一个包标识符PID(Packet Identifier ...

  9. 谈谈spring-boot不同包结构下,同样的类名冲突导致服务启动失败解决方案

    项目背景: 某日,有需求要在三天的时间内完成两个大项目的项目合并,因为之前两个项目的包结构和类名都很多相同,于是开始考虑使用加一级包进行隔离,类似于这种结构 但是在启动的过程中,抛出来这样的异常: C ...

  10. MQTT协议-MQTT协议解析(MQTT数据包结构)

    协议就是通信双方的一个约定,即,表示第1位传输的什么.第2位传输的什么…….在MQTT协议中,一个MQTT数据包由:固定头(Fixed header). 可变头(Variable header). 消 ...

随机推荐

  1. Unity项目代码书写规范

    以Google的代码规范为主,稍加改动 https://google.github.io/styleguide/csharp-style.html 书写规范 基础写法 Pascal和驼峰混用,参数用驼 ...

  2. C# datagridview 这是滚动条位置

    1.datagridview 设置 表格内容铺满,内容自动换行 dataGridView1.DefaultCellStyle.WrapMode = DataGridViewTriState.True; ...

  3. CentOS-关闭防火墙和禁用安全策略

    关闭防火墙 默认使用的是firewall作为防火墙 查看防火墙状态 $ firewall-cmd --state 停止firewall $ systemctl stop firewalld.servi ...

  4. 2、nacos

    1.Nacos官方文档的说明已经很清晰了. https://nacos.io/zh-cn/docs/quick-start-spring-cloud.html 2.前提条件 https://nacos ...

  5. 第二章 python基本语法元素

    python有两种编程方式,交互式和文件式. 交互式:对每个输入语句即时运行结果------适合语法练习 文件式:批量执行一组语句并运行结果------编程的主要方式 实例1:圆面积的计算(根据半径r ...

  6. take for granted

    解释含义1 Take for granted是一句地道的英语口语,意思是to expect someone to always be there and do things for you even ...

  7. 一文读懂 .NET 中的高性能队列 Channel

    介绍 System.Threading.Channels 是.NET Core 3.0 后推出的新的集合类型, 具有异步API,高性能,线程安全等特点,它可以用来做消息队列,进行数据的生产和消费, 公 ...

  8. 动态路由协议、RIP

    动态路由协议.RIP      一.动态路由协议        1)动态路由协议概述        2)度量值        3)收敛        4)静态路由与动态路由的比较        5)动 ...

  9. sql2008编辑前200行怎么修改

    打开Microsoft SQL Server Management Studio--工具菜单--选项---SQL Server对象资源管理器---命令--右侧"编辑前n行命令的值:1000

  10. navicate for mysql命令中输入中文报错

    insert into xsxx(name,xb) values('李四','男') 错误提示: [SQL]insert into xsxx3(name,xb) values('李四','男') [E ...