第二天
补充遗漏的点:
传输数据的计算(100M宽带为例)
100/8*0.85=10.625
除8是因为一个字节(Byte)是8位二进制(bit),乘0.85是理想状态下的效率以及数据中的其他协助数据传输的内容以及进率的不同(1KB-1024Byte)。
对IP的拓展内容
IP地址的分类
A,B,C为单播地址,既可以当源IP地址也可以当目标IP地址
D,组播地址,只能作为目标IP地址
E,保留地址
单播实现一对一通信,组播实现一对多(一个组播组)通信,广播实现一对所有广播域对象通信
网络位区别
A:0XXX XXXX,(0-127)1-126
B:10XX XXXX,128-191
C:110X XXXX,192-223
D:1110 XXXX,224-239
E:1111 XXXX,240-255
默认子网掩码(并不一定固定)
A:255.0.0.0
B:255.255.0.0
C:255.255.255.0
根据网络位的长度可将子网掩码简写
例:192.168.1.0 255.255.255.0-192.168.1.0/24(即子网掩码长度为24位)
一些特殊的IP地址
1,127.0.0.1-127.255.255.254 环回地址,用途很多主要用于计算机内部
2,255.255.255.255 受限广播地址,受路由器的限制只在本广播域传播,只能作为目标IP使用。
3,主机位全1的地址 192.168.1.255/24 直接广播地址,可以跨网段传播,同样只能作为目标IP使用
4,主机位全0的地址 192.168.1.x/24=192.168.1.0/24 ,将相同网络位的集合称为网段又叫网络号
5,0.0.0.0 可以在没有地址时作为源IP地址使用,也可以代表任意地址
6,169.254.0.0/16 本地链路地址,也叫自动私有地址,是当计算机没有获取到IP时自己给自己配置的IP地址,网络位固定,主机位随机
通过改变子网掩码的长度可以实现一个网段的拆分和多个网段的整合
VLSM(可变长子网掩码)又叫子网划分
例子 192.168.1.0/24,拆分成4个子网掩码
需要从主机位借位,拆2个子网掩码需要借2^1位,拆4个则需要借2^2位,后续同理
IP:192.168.1.00 000000(借位)
子网掩码:255.255.255.00 000000——255.255.255.11 000000 借的两位变成网络位则应置为1
所以拆分后的子网掩码为255.255.255.128-也可简写为/26(26个1)
192.168.1.00 000000 可简写为192.168.1.0/26,该网段范围为0-63 (实际可配置IP范围为1-62)
192.168.1.01 000000 可简写为192.168.1.64/26,该网段范围为64-127(实际可配置IP范围为65-126)
192.168.1.10 000000 可简写为192.168.1.128/26,该网段范围为128-191(实际可配置IP范围为129-190)
192.168.1.11 000000 可简写为192.168.1.192/26,该网段范围为192-255(实际可配置IP范围为193-254)
注意:子网划分并不能增加可容纳主机数量,只是在有限的主机位容量中划分出不同网络位区域,供网络设备使用,划分的子网越多,单个网段可容纳的IP数目越少。
CIDR(无类域间路由)取相同位,去不同位
例子 192.168.1.0 0000000/25
192.168.1.1 0000000/25
取前面相同的位,子网掩码也相应缩短
192.168.1.0/24
超网:将原本默认划分缩短子网掩码的(A类8位掩码,B类16位掩码,C类24位掩码)
汇总:将原本默认划分延长子网掩码的(A类8位掩码,B类16位掩码,C类24位掩码)
网络的参考模型
1,OSI/RM,开放式系统互联参考模型,由ISO国际标准化组织提出。
OSI参考模型的核心思想:分层,属于同一层面的功能或者目的相同或相似;属于不同层面的功能或目的具有明显的差别;每一层都在下层提供服务的基础上提供增值服务。
分层的作用:1,更利于标准化 2,降低各层之间的关联性 3,便于学习理解
OSI七层参考模型
应用层 人机交互——抽象语言--->编码
表示层 双向转换——编码--->二进制
会话层 提供会话地址,应用程序内部地址,建立和维持网络应用和网络服务器之间的会话联系。
传输层 实现端到端的传输,计算机上每一个运行的应用程序都会有随机的端口号,不同的端口号用来区分和定位不同的应用,本质是16位二进制端口号取值范围为 0-65535,但0作为保留端口,故端口范围为1-65535.。其中1-1023为知名端口号(预留给TCP和UDP使用的端口号)。
网络层 IP,逻辑寻址
数据链路层 逻辑链路层(LLC)+ 介质访问控制层(MAC) ,使用FCS(帧校验序列),通过CRC循环冗余算法,控制物理层硬件
物理层 硬件
2,TCP/IP协议簇(协议栈道)4层/5层模型
PDU:协议数据单元(对各层数据的单位称呼)
应用层:数据报文
传输层:段
网络层:包
数据链路层:帧
物理层:比特流
数据封装
数据从高层向低层加工的过程,过程中数据包不断变大
应用层
HTTP ,超文本传输协议,使用的端口为TCP 80
HTTPS,HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性 TCP 443
FTP,文件传输协议 TCP 20/21
TFTP,简单文件传输协议 UDP 69
TELNET,远程控制协议 TCP 23
SSH,远程网络安全协议 TCP 22
DNS,域名解析协议 UDP/TCP 53
DHCP,动态主机配置协议 UDP 67/68
传输层
端口号,TCP,UDP两者都为传输层协议
网络层
IP地址
数据链路层
MAC地址,通过以太网协议,(早期局域网的解决方案,现在也应用在广域网当中,可以理解为由交换机组件的二层网络)
物理层
数据封装概览
由高到低封装
应用层
打包数据
传输层
TCP和UDP的区别
1, TCP协议是面向连接的协议,UDP协议是无连接的协议
(TCP需要设备在传输数据之前,先使用预备的协议建立客户端与服务端二者之间点到点的连接,之后再传输数据,UDP则不需要)
2, TCP协议传输是可靠的,UDP协议传输“尽力而为”
3, TCP可以实现流控,UDP不行
4, TCP可以进行数据分段,UDP不行
5, TCP消耗资源较大,传输速度较慢; UDP消耗资源较小,传输速度快
TCP和UDP的使用场景,TCP更适合应用在对效率要求不高,但对准确性要求较高的场景; UDP更使用于对效率要求较高但是对准确性要求较低的场景
TCP头部
可变长头部,指选项可变,计入首部长度中(头部最短20个字节)
校验和,使用伪头部校验,除了将传输层头部及数据部分的内容进行校验外,还会将网络层中的12个字节的数据进行校验,包括32位源IP,32位目标IP,8位保留,8位的协议共12个字节,校验和是16位的总长度,使用反码相加法
6个标记位
URG-紧急标记位,置1则激活紧急指针,需要紧急处理的数据
ACK-确认标记位,置1则确认序号激活,
PSH-缓存标记位,缓存区
RST-复位,置1将直接断开连接,不再经过四次挥手
SYN-请求标记位,置1请求建立连接
FIN-断开标记位,置1表示断开连接
UDP头部
固定长度8个字节
网络层
IP的封装
数据链路层
以太网二型帧(存在不同版本)
字段解析如下(报头为20字节,报尾为4字节)
前导符,用于确定信号的开始
目标MAC,目标MAC地址
源MAC,源MAC地址
上层使用的数据类型(例如IPv4或IPv6)
来自上层的数据
帧校验序列
TCP的三次握手和四次挥手
三次握手
1,客户端首先要向服务端发送TCP包,其中SYN置1表示需要建立连接。(建立A-->B的连接)
2,服务端在接收到这个信号之后会向客户端回复TCP包,其中SYN置1和ACK置1确认建立连接。(确认A-->B的连接,建立B-->A的连接)
3,当服务端的ACK和SYN到达客户端后,客户端发送ACK置1确认连接,则客户端与服务端之间的连接就建立起来。(确认B-->A的连接)
四次挥手
1,在数据传输完毕之后,客户端会向服务端发出一个FIN包,FIN置1终止连接。(终止A-->B的连接)
2,服务端在收到这个FIN包之后会向客户端发出一个ACK置1确认终止连接。(确认终止A-->B的连接)
3,如果服务端此后也没有数据发给客户端时服务端会向客户端发送一个FIN置1终止连接。(终止B-->A的连接)
4,客户端在收到这个信号之后会回复一个ACK置1确认终止,在服务端接收到这个信号之后,服务端与客户端的连接也就关闭了。(确认终止B-->A的连接)
(本文为初学者学习笔记,若有错误之处,感谢大佬指正!)