网络基础
- 应用层:人机交互 ------------编码
- 表示层:将“编码”----二进制
- 数据链路层:“当做拨动算盘子的人”
- 物理层:“算盘”
人类最早的网络-------对等网
- 节点增加
- 距离增加
RJ-45双绞线 100M
直线型拓扑:
环形拓扑:
树状拓扑:
波环型(全网状)拓扑:
星型拓扑:
节点增加----HUB集线器
HUB-----安全 延时 地址 冲突
唯一 格式 MAC地址-----48位二进制构成以16进制显示
查看自己IP
CSMA/CD 载波侦听多路访问/冲突检测机制
--------------------------------------------排队
- 首先使用监听功能,当发现有消息在传输时,停止自身消息发送,继续进行监听,随时准备进入下一阶段
- 当前消息发送完成时,立刻发送自身消息。
- 当消息再次相撞时,会给彼此发送一个阈值,阈值是随机的,故拥有大小之分,这样就避免了消息同时发出。
结论:虽然解决了一定的冲突问题,但是大大增加了延时
- 无限的传输距离
- 没有冲突
- 形成单播
- 提高了端口密度
网桥----交换机-----工作在介质访问控制层
速率公式:约等于(带宽/8)85.5%
交换机的工作原理:
- 当数据帧进入交换机后,交换机会查看数据帧中的源MAC地址,之后将该数据进入的接口与该MAC地址映射记录到本地的MAC地址表中,在查看目标MAC地址,之后查询本地MAC地址表,基于MAC地址表中的记录进行发送;若有记录,则按照记录进行单播
- 若没有记录,则进行泛洪
泛洪:向除了进入接口以外的所有接口进行发送
Mac地址表老化时间:300s
对等网----变大网络---无限的传输距离 无冲突 单播 -----网桥--交换机 ---工作在介质访问控制层--- 识别MAC地址 ---认识则单播 不认识--则泛洪 越大的网络 泛洪区域就会越大 延时就会越大 ,路由器---- 衍生出了一个新的车间-----网络层
网络层: IP IP地址---逻辑地址
路由器的每一个接口,都是一个泛洪范围的终点
IPV4地址:32位二进制构成 存在网络位和主机位的区分,网络位用于标识所在范围,主机位用于标识所在范围内的编号,选用点分十进制表示(八位二进制一分)。
00000000=0 172.20.20.2 10101100.00010100.00010100.00000010
00000001=1
00000010=2
00000100=4
00001000=8
00010000=16
00100000=32
01000000=64
10000000=128
子网掩码的特性:必须由连续的1和0构成,连续的1对应网络位,连续的0对应主机位
192.168.2.1 11000000.10101000.00000010.0000001
255.255.255.0 11111111.11111111.11111111.00000000
ARP协议:地址解析协议 :通过一个地址找到另一个对应的地址
过程:1.发送一个源MAC 源IP 为自己的数据包出去 目标IP为目标,目标MAC为 全F 广播地址 ,ARP请求包
广播域:泛洪范围
ARP协议:地址解析协议 :通过一个地址找到另一个对应的地址
过程:1.发送一个源MAC 源IP 为自己的数据包出去 目标IP为目标,目标MAC为 全F 广播地址 ,ARP请求包
广播:在同一个泛洪范围内,强迫交换机去泛洪
ARP的工作原理:ARP先通过广播发送请求包,所有收到该广播包的设备都会将其中的源IP和源MAC相互映射到本地的ARP表中,然后在查看目标IP/MAC是否为自己,若不是则丢弃该数据包,若是,则以单播的形式回复ARP回复包。在之后的传输中,将优先查看本地的ARP表,若有有记录则直接按照记录发送,若没有则执行ARP请求。
ARP表的老化时间:180s
免费ARP/无故ARP 其目的:验证 / 更换物理网卡
PC访问其他设备时,会先基于目标IP地址进行判断,若目标在同一广播域之内,则先通过ARP获取地址,随后单播发送即可。 若不在同一广播,则封装目标MAC为自己的网关,将数据发送至路由器出,由路由器代为转发。
IPV4地址详解
IPV6: 128位二进制构成 冒分16进制显示
IPV4地址的分类:ABCDE五类
ABC类地址为单播地址 D类地址为组播地址 E类保留地址
ABC类地址:既可以作为源IP使用也可以作为目标IP使用,每一个单播地址都标识着互联网中一个唯一的节点,并且只有单播地址可以被配置为源IP
D类地址:只能被配置为目标IP
E类地址:保留地址
基于IP地址的第一组8位进行分类:
A类:1-126 前8位为网络位
B类:128-191 前16位为网络位
C类:192-223 前24位为网络位
D类:224-239 不分网络位主机位
E类:240-255
特殊地址:
一:127 环回地址 127.0.0.1-----127.255.255.255
用来排错的历程分析
二:255.255.255.255 受限广播地址
三:主机位全0 192.168.1.0 255.255.255.0 不能被配置为单播地址 代表一个网段网段 192.168.1.0/24
192.168.1.0 255.255.255.192 192.168.1.0/26
四:主机位全1 192.168.1.255/24 不是一个单播地址,不能被配置为IP, 直接广播地址 ,
五:0.0.0.0 即代表没有地址,也代表所有地址
六:169.254.0.0/16 本地链路地址/自动私有地址
VLSM---可边长子网掩码----子网划分
192.168.1.0/24
主机数范围:主机位全0-主机位全1
11000000.10101000.00000001.11111111
192.168.1.0/24---192.168.1.255/24 256个
192.168.1.0/24划分为两个子网
11000000.10101000.00000001.00000000
11111111.11111111.11111111.10000000
192.168.1.0/25
192.168.1.0/25-----192.168.1.127/25 128个
11000000.10101000.00000001.10000000
11111111.11111111.11111111.10000000
192.168.1.128/25
192.168.1.128/25-----192.168.1.255/25 128个
可用:192.168.1.129/25----192.168.1.254/25 126个
192.168.1.0/24 划分为四个子网
11000000.10101000.00000001.00111111
11111111.11111111.11111111.11000000
192.168.1.0/26----------192.168.1.63/26 64个主机数
11000000.10101000.00000001.01000000
11111111.11111111.11111111.11000000
192.168.1.64/26-----192.168.1.127/26 64和主机数
11000000.10101000.00000001.10000000
11111111.11111111.11111111.11000000
192.168.1.128/26------192.168.1.191/26 64个主机数
11000000.10101000.00000001.11000000
11111111.11111111.11111111.11000000
192.168.1.192/26----192.168.1.255/26
172.16.0.0/15 划分为4个子网 并写出可用主机范围
10101100.00010000.00000000.00000000
11111111.11111111.10000000.00000000
172.16.0.1/17----172.16.127.254/17
10101100.00010000.10000000.00000000
11111111.11111111.10000000.00000000
172.16.128.1/17-----172.16.255.254/17
10101100.00010001.00000000.00000000
11111111.11111111.10000000.00000000
172.17.0.1/17----172.17.127.254/17
10101100.00010001.10000000.00000000
11111111.11111111.10000000.00000000
172.17.128.1/17-----172.17.255.254/17
无类域间路由-----CIDR------子网汇总
简而言之: 取相同位,去不同位
192.168.0.0/24 192.168.1.0/24
11000000.10101000.00000000.00000000
11000000.10101000.00000001.00000000
11000000.10101000.00000000.00000000
192.168.0.0/23----192.168.1.255/23
172.16.33.0/24 172.16.00100001.00000000
172.16.44.0/24 172.16.00101100.00000000
172.16.55.0/24 172.16.00110111.00000000
172.16.63.0/24 172.16.00111111.00000000
172.16.00100000.00000000
172.16.32.0/19
192.168.1.0/24
192.168.2.0/24 192.168.0.0/22
192.168.0.0/22
192.168.00000000.00000000 192.168.0.0/24
192.168.00000001.00000000 192.168.1.0/24
192.168.00000010.00000000 192.168.2.0/24
192.168.00000011.00000000 192.168.3.0/24
第一章:OSI七层模型与网络协议
路由器的工作过程:若PC1试图与PC3进行联系,会首先通过子网掩码进行网段的判断,若目标在同一广播域之内,则先通过ARP获取地址,随后单播发送即可。 若不在同一广播,则封装目标MAC为自己的网关,将数据发送至路由器出,由路由器代为转发。路由器收到后,因为路由器是三层设备,所以他会重新进行封装,继续保留源IP和目标IP,但是源MAC会被变成网关的MAC地址,随后根据路由表查询目标所在网段,若有记录则按照记录转发,若没有记录,则无条件丢弃。
数据链路层:介质访问控制层MAC+逻辑链路控制层LLC
应用层:
· 负责处理特定应用程序的细节。
· 用户直接与这一层交互,例如使用Web浏览器、电子邮件客户端等。
· 应用层协议包括HTTP、FTP、SMTP等。
表示层:
· 负责数据的编码、解码和格式化,以便在应用程序之间交换。
· 这一层处理数据的加密和解密(虽然加密可以在多个层实施)。
· 例如,图像和文本的压缩和解压缩都在这一层进行。
会话层:
· 负责建立、管理和终止应用程序之间的会话连接。
· 会话层负责同步通信,管理对话中的数据交换。
· 会话层协议如RPC(远程过程调用)和SQL(结构化查询语言)。
传输层:
· 负责提供端到端的可靠数据传输服务。
· 传输层管理数据流,确保数据完整性和按序到达。
· 传输层协议包括TCP(传输控制协议)和UDP(用户数据报协议)。
网络层:
· 负责将数据从源地址路由到目标地址。
· 网络层处理逻辑寻址(如IP地址)和逻辑网络拓扑。
· 网络层协议包括IP(互联网协议)、ICMP(互联网控制消息协议)和IGMP(互联网组管理协议)。
数据链路层:
· 负责物理地址(如MAC地址)寻址和错误检查。
· 数据链路层将上层数据分成帧,并添加控制信息以便物理层传输。
· 数据链路层协议包括PPP(点对点协议)和以太网。
物理层:
· 负责在物理介质上传输比特流。
· 这一层处理电气、机械和定时接口规范。
· 物理层涉及电缆、集线器、中继器等物理设备,以及信号编码。
会话层:提供会话号
传输层:TCP/UDP 1.分段(受MTU值的限制) 2.端口号
MTU:最大传输单元 默认1500字节
端口号:0-65535 其中,1-1023注明端口 1024-65535高端口/动态端口
TCP/IP 协议簇
PDU:协议数据单元
应用层:数据报文
传输层:数据段
网络层:数据包
数据链路层:数据帧
物理层:比特流
TTL值:生存周期
最大255 推荐64 常见128
以太网Ⅱ型帧
封装与解封装
HTTP tcp 80 超文本传输协议
HTTPS tcp 443 安全传输协议
FTP tcp 20/21 文件传输协议
TFTP udp 69 简单文件传输协议
Telnet tcp 23 远程登陆协议
SSH tcp 22 安全外壳协议
DNS udp/tcp 域名解析协议
DHCP udp 67/68 动态主机配置协议
TCP-----传输控制协议-----面向链接的可靠协议
在完成传输层的基本工作之外还要保证数据的完整性何可靠性
面向连接------3次握手及四次挥手
SYN:代表发起一次链接并告知自身状态
ACK:代表确认收到
特殊情况:RST 重连 TCP 严重错误且重新连接
FIN:断开 PSH紧急加收 URG紧急指针
三次握手
在TCP协议中,三次握手用于建立连接。这个过程包括:
SYN:客户端发送一个SYN报文给服务器,询问是否可以进行连接。
SYN-ACK:服务器收到SYN报文后,如果同意建立连接,会发送一个SYN-ACK报文给客户端,表示同意连接请求,并询问客户端是否准备好进行数据传输。
ACK:客户端收到SYN-ACK报文后,发送一个ACK报文给服务器,确认已准备好进行数据传输。至此,连接建立完成。
传输途中
可靠性:4种可靠传输机制
确认 排序 重传 流控(窗口滑动机制)
四次挥手
在TCP协议中,四次挥手用于断开连接。这个过程包括:
FIN(Finish):数据传输结束后,一方(假设为客户端)发送一个FIN报文给另一方(假设为服务器),表示数据已发送完毕,请求断开连接。
ACK:服务器收到FIN报文后,发送一个ACK报文给客户端,确认收到断开连接的请求。此时,客户端进入FIN-WAIT-2状态,而服务器进入CLOSE-WAIT状态,连接并未完全关闭。
FIN:服务器发送一个FIN报文给客户端,表示自己也已发送完数据,请求断开连接。
ACK:客户端收到FIN报文后,发送一个ACK报文给服务器,确认收到断开连接的请求。至此,连接完全关闭。
需要注意的是,四次挥手过程中,第二个ACK报文和FIN报文可能会合并成一个报文发送,这时就只有三次报文交互,但仍然称为四次挥手。这是因为连接的实际关闭需要双方的确认,而在这个过程中,需要四个报文交互(两个SYN和两个ACK或FIN和ACK)来完成连接的建立和断开。