HCIA-网络层包结构
- 网络层
关心-->转发 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-网络层包结构的更多相关文章
- 文档:网络通讯包结构(crc校验,加解密)
一直想把这个流程整理一下. 包结构: 包 对(datacrc+protoID+dataSize)组成的byte[] 进行crc计算而得到 对(数据内容)进行crc计算而得到 协议号 数据内容的字节长度 ...
- jdk1.7.0_80源码包结构
解压源码src.zip,jdk源码结构如下所示: src |--com.sun sun公司对jdk的实现,Oracle官方不支持,不保证跨平台(可能一些类linux有而windows没有),甚至 ...
- Node.js入门:包结构
JavaScript缺少包结构.CommonJS致力于改变这种现状,于是定义了包的结构规范(http://wiki.commonjs.org/wiki/Packages/1.0 ).而NPM的 ...
- JDK源码包结构分类
最近查看JDK源码时,无意间发现几个类在陌生包里:com.sun.*.sun.*.org.*,google了一把总结了下以备他人搜索,如内容有误欢迎指正! Jre库包含的jar文件(jdk1.6) ...
- TCP/IP数据包结构具体解释
[关键词] TCP IP 数据包 结构 具体解释 网络 协议 一般来说,网络编程我们仅仅须要调用一些封装好的函数或者组件就能完毕大部分的工作,可是一些特殊的情况下,就须要深入的理解 网络数据包的结构, ...
- 【Java基础】Jar包结构结构分析和操作具体解释
作者:郭嘉 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 一 ...
- UDP包结构
UDP包结构 // 参考: http://www.2cto.com/net/201307/224715.html UDP数据包由首部和数据组成,每行4个字节(32位),首部固定长度为8个字节(2行) ...
- USB的包结构及包分类
USB的传输总是低位在前,高位在后. USB的传输方向:从设备到主机的数据为输入:从主机到设备的数据叫做输出. 1. 包结构 以同步域开始,紧跟着一个包标识符PID(Packet Identifier ...
- 谈谈spring-boot不同包结构下,同样的类名冲突导致服务启动失败解决方案
项目背景: 某日,有需求要在三天的时间内完成两个大项目的项目合并,因为之前两个项目的包结构和类名都很多相同,于是开始考虑使用加一级包进行隔离,类似于这种结构 但是在启动的过程中,抛出来这样的异常: C ...
- MQTT协议-MQTT协议解析(MQTT数据包结构)
协议就是通信双方的一个约定,即,表示第1位传输的什么.第2位传输的什么…….在MQTT协议中,一个MQTT数据包由:固定头(Fixed header). 可变头(Variable header). 消 ...
随机推荐
- Maven项目无法下载JAR包,输入mvn help:system出现No plugin found for prefix 'help' in the current project and in the plugin groups的解决方案
这个问题困扰了我很久,一直无法解决:我在虚拟机里面按照同样的步骤配置了三次maven项目,每次都能成功:可一旦到外面maven项目总是创建失败,输入mvn help:system总是出现No plug ...
- Redis的bitmap从基础到业务
1. 位与字节 1个字节(byte)等于8个位(bit).(计算机常识). 2. string与bitmap Redis里的bitmap是属于string这个数据类型里的.可以help进行查看bit相 ...
- 关于LCA的几点想法
倍增 这是最最最常见的写法了,一个fa[N][logN]的数组直接搞定 时间复杂度也不算太高 预处理 $ O(nlogn) $ 如果你想卡的话,可以卡到 $ O(nlogh) $ h为树的深度 查询 ...
- 13.9示例:有理数Rational类
要点提示:java提供了表示整数和浮点数的数据类型,但是没有提供表示有理数的数据类型. public Rational extends Number implements Comparable {}
- 不带Anchors和NMS的目标检测
前言: 目标检测是计算机视觉中的一项传统任务.自2015年以来,人们倾向于使用现代深度学习技术来提高目标检测的性能.虽然模型的准确性越来越高,但模型的复杂性也增加了,主要是由于在训练和NMS后处理过 ...
- 在Java中如何高效判断数组中是否包含某个元素
如何检查一个数组(无序)是否包含一个特定的值?这是一个在Java中经常用到的并且非常有用的操作.同时,这个问题在Stack Overflow中也是一个非常热门的问题.在投票比较高的几个答案中给出了几种 ...
- php混淆加密解密实战
在查看别人的php源码的时候,我们经常会看到加密后的php代码.那么php加密原理是什么呢?怎么解密呢? 混淆加密 我们从百度随便搜索一个加密网站,例如:http://dezend.qiling.or ...
- (转) PHP实现从1累加到100(1+2+….+100=)的几种思路,挺有意思的!!!
一个经典的小学问题也是一个简单的PHP小应用,1+2+3--100=多少?使用PHP应该怎么写? 这里总结了以下几种思路: 1.普通PHPer: $sum=0;for($i=1;$i<=100; ...
- buu SimpleRev
一.发现是elf文件,拖入ida,然后直接找到了关键函数 点击那个Decry()函数 二.逻辑还是很清晰的,而我是卡在这里v1的逆算法,感觉学到了很多,其实爆破就足够了 这里大小写可以一起写上 tex ...
- 使用VS远程调试其他电脑上安装的软件
今天在用户的一台机器上遇到了很奇怪的问题.一个按钮点击时概率性的第一次点击无反馈. 因为是概率性的,概率又很低,而当初在设计Log时又设计的是必须重启软件才会生效log开关: 所以这里使用当时rele ...