TCP/IP协议族详细介绍
1.TCP/IP协议族常用的各层协议有哪些
(1) 应用层
提供特定应用服务,定义应用与网络的交互规则。
- HTTP/HTTPS(网页)
- FTP(文件传输)
- SMTP(邮件发送)
- DNS(域名解析)
- SSH(远程登录)
(2) 传输层
提供端到端通信,TCP 保障可靠传输,UDP 提供轻量无连接传输
- TCP(可靠连接)
- UDP(轻量无连接)
(3) 网络层
通过 IP 寻址,实现跨网段路由转发,处理差错与地址解析
- IP(寻址路由核心)
- ICMP(差错 / 控制)
- ARP(IP 转 MAC)
(4) 网络接口层
处理物理介质访问,封装 / 解封装数据帧,实现链路层传输
- PPP(点对点数据传输)
- Ethernet(以太网介质访问与帧传输)
- Token Ring(令牌环介质访问控制)
- FDDI(光纤分布式数据接口,高速局域网传输)
2.应用层通信协议
(1)HTTP协议
- 客户端与服务器建立 TCP 三次握手
- 客户端发送 HTTP 请求
- 服务器处理请求(查资源 / 执逻辑)
- 服务器返回 HTTP 响应
- TCP 四次挥手(或复用连接)
(2)FTP协议
- 客户端与服务器建立 TCP 三次握手
- 身份验证:客户端通过控制连接发送用户名(USER 指令)和密码(PASS 指令),服务器验证通过后返回成功状态码(230),进入就绪状态
- 建立数据连接:数据连接仅用于传输文件数据或目录列表,需在具体操作(如 GET、PUT、LIST)前建立
- 执行文件传输 / 目录操作:下载(GET)、上传(PUT)、获取服务端目录数据(LIST)
- 断开连接:客户端发 QUIT 指令,服务器确认后,先断开数据连接(若存在),再通过控制连接完成 TCP 四次挥手,关闭控制连接
3.传输层协议
(1)TCP
将每一个小包都封装成TCP报文(添加源端口和目的端口等信息),然经由网络层发送数据
- 三次握手(建立可靠连接):① 客户端发 SYN 包请求连接;② 服务器回 SYN+ACK 包确认;③ 客户端发 ACK 包,连接建立
- 数据传输:按序列号顺序发送数据,接收方发 ACK 确认,丢包则重传,确保数据可靠、有序交付
- 四次挥手(断开连接):① 客户端发 FIN 包请求关闭;② 服务器回 ACK 确认;③ 服务器发 FIN 包表示自身就绪关闭;④ 客户端回
ACK,连接断开
(2)UDP
UDP 是无连接、不可靠协议,通信流程无需建立 / 断开连接
- 发送方封装数据:添加源端口、目标端口、数据长度、校验和的 UDP 头,打包成 UDP 数据报,交给网络层
- 网络层转发:IP 协议按目标 IP 寻址路由,将 UDP 数据报转发至接收方(无重传、确认机制)
- 接收方处理:解封装 UDP 数据报,校验数据完整性,按目标端口交给对应应用(不保证数据到达、顺序)
4.网络层协议
(1)IP协议
P 协议是网络层核心(无连接、不可靠),通信流程围绕 “封装 - 路由 - 转发 - 解封装” 展开
- 封装:接收传输层(TCP/UDP)数据段,添加含源 IP、目标 IP、TTL(生存时间)、协议类型的 IP 头,打包成 IP 数据包
- 路由决策:发送端 / 路由器依据目标 IP,查询路由表确定下一跳设备(如另一路由器)
- 转发传输:数据包经多跳路由器逐段转发,每跳路由器递减 TTL(TTL 为 0 则丢弃),避免环路。 分片重组(如需):若数据包超过链路MTU(最大传输单元),会被分片传输,目标主机接收后重组完整数据包
- 解封装:目标主机核对目标 IP 与自身匹配后,剥离 IP头,将数据交给对应传输层协议
(2)ICMP协议
ICMP 是网络层辅助协议(无独立连接,依托 IP 传输),核心用于传递网络差错 / 控制信息
-
触发生成:主机或路由器遇到网络异常(如丢包、TTL 超时、目标不可达),触发 ICMP 消息构造
-
封装传输:ICMP 消息添加类型 / 代码字段(说明异常类型),封装进 IP 数据包,按目标 IP(问题数据包的源端 IP)转发
-
接收处理:目标端接收 IP 数据包后解封装,提取 ICMP 消息,反馈给上层应用或网络栈以处理异常
说明-控制信息
- 路由重定向:告知发送方更优的转发路径,提升传输效率
- 源抑制:告知发送方降低数据发送速率,缓解网络拥塞
- 目标不可达提示:明确不可达原因(如端口未开放、网络不可达),辅助排查问题
(3)ARP协议
将网络层的 IP 地址,解析为数据链路层所需的 MAC 地址,实现同一局域网内设备的直接通信
- 触发解析:主机需向同一网段目标 IP 发送数据,但本地 ARP 缓存无对应 MAC 地址时,触发 ARP 解析
- 广播请求:发送方发送 ARP 请求广播包(含自身 IP+MAC、目标 IP),同一网段所有设备接收
- 单播响应:仅目标 IP 与自身匹配的设备,返回 ARP 响应单播包(含自身 MAC 地址)
- 缓存映射:发送方接收响应后,将 “目标 IP - 目标 MAC” 映射存入 ARP 缓存,后续通信直接使用
通过上述分析我们发现,ARP协议和网络接口层密不可分,之所以它归类于网络层协议,其核心原因是:它的核心目标是保证IP地址的可达性;解决了跨网段将数据传给“邻居”设备的问题
说明:ARP协议为网络接口层的MAC地址获取提供重要依据,而网络接口层是ARP协议的载体,两者相互依赖,相互配合,缺一不可
5. 网络接口层协议
(1)Ethernet协议(以太网帧协议)
规范局域网内数据的物理传输与链路层交互,让同一网段设备能高效、有序通信;是设备在局域网内传输数据的“通用语言”
- 封装帧:上层 IP 数据包传入后,Ethernet 会添加帧头(源 MAC = 小明设备 MAC、目标 MAC = 网关 MAC,由ARP 获取)和帧尾(FCS 校验字段),打包成标准以太网帧
- 监听信道:发送方(小明设备)通过 CSMA/CD 规则,检测网线等物理介质是否空闲,避免冲突
- 发送数据:信道空闲则立即发送帧,若遇多设备同时发送导致冲突,会停止发送并发送冲突信号,等待随机时间后重发
- 交换机转发:局域网内的交换机接收帧后,读取帧头目标 MAC 地址,查询自身 MAC
地址表,将帧精准转发到连接网关的端口(而非广播给所有设备);如果没有交换机就会以广播的形式发送,目的设备会校验并解析收到的以太网帧 - 接收校验:网关接收帧后,先通过 FCS 字段校验数据完整性,确认无损坏后,剥离以太网帧头 / 帧尾,将内部的 IP 数据包交给上层协议处理
