CSMA/CD协议

简介: CSMA/CD协议

1.4.3 IP数据报
IP数据报格式:

名称 注释 大小
版本 Version ipv4或者ipv6 4位
首部长度 IHL 此处数值再乘以4才是真正大小,同时因为IP数据报固定长度为20字节,所以此处最小值为5,即二进制的0101 4位
区分服务 DSCP + ECN 希望获得哪种服务,用的比较少 8位
总长度 Total Length 首部+数据的长度,最大为2^16-1=65535 16位
标识 Identification 用来表示是哪一个数据报的分片,不同的分片标识各不相同 8位
标志 Flags 用来表示是否分片和分片是否结束 3位,但实际有用的只有后两位
片偏移 Fragment Offset 用来标记分片之后,该分片在原来的数据报的位置,以8字节为单位 13位
生存时间 Time To Live 即TTL,没经过一个路由器TTL-1,0时自动放弃,根据系统不同默认的TTL不同 8位
协议 Protocol 用来标记协议名的字段值,如TCP,UDP,ICMP等等 8位
首部检验和 Header Checksum 检验首部的字段是否出错,出错就丢弃此数据报
源地址 Source IP Address 发送方ip地址 32位
目的地址 Destination IP Address 接收方ip地址 32位
可选字段 Options 用来排错等安全检测 未知,可在0-40位之间
填充 将数据报对齐成4字节的整数倍,数值全部为0 未知,根据可选字段来定
计算偏移量时记住是以0开始的就行,以每一篇最开始的除以8得到的数值就是偏移量
解释一下
为什么A类最大是126.xxx.xxx.xxx?
因为网络号最开始第一位是0,一共八位,所以二进制表示位0xxxxxxx,最大就是2^7-1=127,但是因为127.xxx.xxx.xxx是特殊ip地址,所以将其去掉
为什么B类最大是191.255.xxx.xxx?
因为网络号最开始第一位是10,一共八位,所以二进制表示位10xxxxxx,最大就是10111111=191,最小就是10000000=128,无特殊ip地址
为什么C类最大是223.255.xxx.xxx?
因为网络号最开始第一位是110,一共八位,所以二进制表示位110xxxxx,最大就是11011111=223,最小就是10000000=192,无特殊ip地址
1.4.4.2 子网划分和子网掩码
1.4.4.2.1 子网划分和子网掩码
总结一下,就是ip利用率太低造成对ip资源的浪费,所以需要子网划分提高ip利用率
1.4.4.2.2 子网掩码
子网掩码就是用来和ip地址一起计算子网的地址的
方法就是讲子网掩码逐位写成二进制然后而原来ip地址进行与运算,就可以得到子网ip地址
因为255是11111111,所以如果写着255的话,ip地址和子网ip地址对应的地方的数值就相同
这道题可以看出来,即使子网掩码不同,相同ip地址对应的子网ip地址也可能相同
但是子网掩码不同,划分的子网数目不同
为什么划分的子网数目不同?或者说怎么算划分的子网位数目?
以255.255.192.0为例,255是11111111即八个1,192是11000000即2个1,一共是82+2=18个1,一共有32位地址,所以剩余有32-18=14位
以255.255.224.0为例,255是11111111即八个1,224是11100000即3个1,一共是82+3=19个1,一共有32位地址,所以剩余有32-19=13位
注释:
1.这里特定主机路由就是指找特定的处理这里这个ip地址的路由
2.默认路由会将这个数据报发给另一个路由,直至找到对应的路由,或者TTL耗尽被丢弃
使用CIDR可以聚合网络
如图,通过缩短前缀,R1和R2就可以合并在206.1.0.0/16的子网下
但是这样转发表之中就会有多个匹配结果,所以我们使用最长前缀匹配

相关文章
|
存储 Java 数据库连接
activiti工作流数据库表介绍
activiti工作流数据库表介绍
957 0
|
Ubuntu Python
Ubuntu16.04 安装多个python版本
Ubuntu16.04 安装多个python版本
1618 0
Ubuntu16.04 安装多个python版本
|
11月前
|
机器学习/深度学习 Java 编译器
解锁硬件潜能:Java向量化计算,性能飙升W倍!
编译优化中的机器相关优化主要包括指令选择、寄存器分配、窥孔优化等,发生在编译后端,需考虑目标平台的指令集、寄存器、SIMD支持等硬件特性。向量化计算利用SIMD技术,实现数据级并行,大幅提升性能,尤其适用于图像处理、机器学习等领域。Java通过自动向量化和显式向量API(JDK 22标准)支持该技术。
425 4
|
12月前
|
安全 API 数据安全/隐私保护
qq群提取群成员软件, 批量提取群成员qq号, 批量导出qq群的成员列表
使用libcurl进行HTTP请求4JSON解析处理API响应数据多线程加速群
|
开发工具
Debain10上出现的问题,右上角网络图标显示问号
Debain10上出现的问题,右上角网络图标显示问号
|
存储 SQL 数据挖掘
虚拟化数据恢复—EXSI虚拟机误还原快照的数据恢复案例
虚拟化技术原理是将硬件虚拟化供不同的虚拟机使用,一台物理机上可以有多台虚拟机。人为误操作或者物理机故障会导致上层虚拟机不可用,甚至虚拟机里的重要数据丢失。下面给大家分享一个vmware虚拟化误操作还原快照的数据恢复案例。 虚拟化数据恢复环境: 一台由物理机迁移到EXSI上面的虚拟机,迁移完成后做了一个快照。该虚拟机上运行SQL Server数据库,记录了几年的数据。 EXSI虚拟化平台上一共有数十台虚拟机,EXSI连接了一台EVA存储,所有的虚拟机(包括故障虚拟机)都放在EVA存储上。
|
Java Linux Windows
windows版java版本管理器
本文介绍了如何在Windows上使用JDK版本管理器jvms来管理多个Java版本,包括下载、初始化、列出本地安装的JDK版本、在线查看可用版本、切换和安装特定版本的Java。
4509 0
windows版java版本管理器
|
安全 Linux 数据安全/隐私保护
在Linux中,什么是最小权限原则?
在Linux中,什么是最小权限原则?
Intellij IDEA运行报Command line is too long的解决办法
Intellij IDEA运行报Command line is too long的解决办法
2491 1
|
算法 机器人 计算机视觉
boss:整个卡尔曼滤波器的简单案例——估计机器人位置
boss:整个卡尔曼滤波器的简单案例——估计机器人位置
521 0