网络架构层次
网络拓扑
作用说明: 了解网络设备连接结构(网络拓扑)
架构划分:
- 核心层: 和外网运营商连接层次 实现连接互联网 路由器
- 汇聚层: 将接入设备数据包进行汇聚 实现通讯管理(访问控制) 三层交换设备
- 接入层: 和终端设备了解 实现主机之间通讯 二层交换设备
网络层次模型
OSI7层模型:
模型组成: 物理层 数据链路层 网络层 传输层 会话层 表示层 应用层
应用层: 产生数据信息 服务
表示层: 加密/解密 压缩/解压缩 分段/整合
会话层: 控制会话是否建立/断开
传输层: 保证数据传输可靠性/数据传输高效性
网络层: 实现不同网络(网段)之间可以将数据进行转发 路由器三层设备
链路层: 实现局域网内主机之间通讯 交换机二层设备
物理层: 将数据包信息二进制信息-电信号/光信号
电信号/光信号-二进制信息数据信息
模型作用:
数据传输封装与解封装过程
数据封装过程: 客户端
第一步: 产生通讯数据信息 数据信息(物品) PDU(协议数据单元)
第二步: 传输层封装过程 传输头部信息-数据信息(物品)
第三步: 网络层封装过程 网络头部信息-传输头部信息-数据信息(物品)
第四步: 链路层封装过程 链路层头部信息-网络头部信息-传输头部信息-数据信息(物品)
第五步: 物理层封装过程 将数据转为二进制信息 – 电信号信息
数据解封装过程: 服务端
第一步: 物理层解封装过程 将电信号信息 – 二进制信息
第二步: 链路层解封装过程 链路层头部信息(目标mac地址 源mac地址)
第三步: 网络层解封装过程 网络层头部信息(目标IP地址 源IP地址)
第四步: 传输层解封装过程 传输层头部信息(目标端口号码 源端口号码)
第五步: 应用层 查看到最终数据信息
注:
MAC(链路层头部) : 在一个局域网中有作用 指定目标主机信息
IP地址(网络层头部): 识别目标网络信息 指定目标区域访问
端口信息(传输层头部): 识别哪个服务接收信息
数据互联通讯过程
第一个里程: 发送端(客户端) 产生数据信息
第二个里程: 对数据信息进行封装过程
第三个里程: 进过路由器会拆解数据包, 根据路由表进行路由
第四个里程: 接收端(服务端) 接收数据信息
第五个里程: 对数据信息进行解封装过程
进行数据包回复响应过程
TCP/IP模型: 4层模型
模型组成:
接入层 网络层(互联网层) 传输层(主机到主机层) 应用层
模型作用:
- 定义各种网络通讯协议信息
- 应用层: HTTP* FTP NFS* SMTP SNMP(监控) DHCP DNS 协议=服务
传输层: TCP UDP
TCP(Transmission Control Protocol): 传输控制协议
概述说明: 面向连接网络协议
特点说明: 可靠传输协议 传输过程有确认机制
应用场景: 邮件服务 FTP HTTP
UDP(User Datagram Protocol) : 用户报文协议
概述说明: 无连接网络协议
特点说明: 传输效率较高协议 传输过程验证机制
应用场景: DNS解析 语音 视频
TCP报文结构
端口: 1 ~ 65535 2*16次方
目标端口: 访问服务信息
序列号: 标识拆分后数据包序号信息
确认号: 标识下一次需要发送的数据包确认号信息
控制字段: 6个字段 实现不同控制功能 0功能未开启 1功能开启
SYN: 请求建立连接控制字段
ACK: 数据确认控制字段
FIN: 请求断开连接控制字段
TCP协议可以保证数据可靠传输
1) 拥有ACK确认控制字段: 保证数据包是否被对端接收
2) 拥有SEQ和ACK字段信息: 确认数据包可以进行拆分/有效重组
TCP三次握手:
第一次握手过程: 客户端发送信息 发送TCP报文信息(控制字段 syn=1 seq=X)
第二次握手过程: 服务端接收信息 发送TCP报文响应(控制字段 syn=1 ack=1 seq=y ack=x+1)
第三次握手过程: 客户端发送信息 发送TCP报文信息(控制字段 ack=1 seq=x+1 ack=y+1)
注:CLOSED 到 LISTEN 状态必须创建socket
服务端可以被访问进行通讯, 必须创建socket
五元组概念: 协议 源IP地址 源端口 目标IP 目标端口
多个socket条目信息不能出现一致
网络通讯限制并发连接数 设置连接超时时间
TCP四次挥手:
第一次挥手过程: 主动方发送信息 发送TCP报文信息(控制字段 fin=1 ack=1)
第二次挥手过程: 被动方发送信息 发送TCP报文信息(控制字段 ack=1)
第三次挥手过程: 被动方发送信息 发送TCP报文信息(控制字段 fin=1 ack=1)
第四次挥手过程: 主动方发送信息 发送TCP报文信息(控制字段 ack=1)
问题1: 为什么要有time_wait状态
确保服务端可以接收到第四次挥手ack信息, 使连接可以进行释放
问题2: 为什么是四次挥手
传输层–上面–会话层(负责建立或断开)
确认被动端数据是否传输完毕,才能发送fin
问题3: 可以三次挥手吗
可以三次挥手
TCP十一种状态集转换
DNS解析原理
客户端向服务端发起查询----递归查询
服务端向服务端发起查询----迭代查询
ARP协议原理
作用:
1 已知IP地址 — mac地址 (作用: 减少广播产生)
2 发送ARP请求数据包(广播方式)
2) 接收ARP响应数据包(获得目标mac地址)
3) 实现局域网通讯每台主机需要构建ARP
4) 交换机上需要构建mac表
PS: lvs服务涉及arp知识, arp资料文档