核心结论 tcpip 协议主流划分方式是四层模型,从上到下依次是应用层,传输层,网际层,网络接口层,这个是互联网实际使用的协议体系,和 osi 七层模型不是同一个概念,很多初学者容易把两套模型混淆,tcpip 四层模型是按照互联网真实实现来划分,每一层都有对应的协议和功能,上层负责用户业务数据处理,下层负责数据转发传输,数据发送的时候从上往下逐层封装,接收的时候从下往上逐层解封装,每一层只关心本层职责,不需要理解其他层内部细节,这种分层设计可以降低开发难度,某一层协议升级替换,不会影响其他层级正常运行,日常上网浏览网页,文件传输,聊天通信,全部都是依靠这套 tcpip 协议栈完成数据收发。
tcpip 四层模型对照表
| 层级名称 | 核心功能 | 典型协议 |
|---|---|---|
| 应用层 | 面向用户业务,处理应用数据 | http https ftp dns smtp |
| 传输层 | 端到端通信,可靠传输或者不可靠传输 | tcp udp |
| 网际层 | 逻辑寻址,路由转发,跨网络数据包传输 | ip icmp arp |
| 网络接口层 | 物理介质收发,帧封装,网卡驱动相关 | 以太网协议 ppp |
各层级详细说明
应用层
应用层是最靠近用户的一层,直接和各类应用软件交互,把用户需要传输的内容生成协议数据,浏览器访问网页使用 http 或者 https,域名解析使用 dns,邮件收发使用 smtp pop3,文件下载使用 ftp,这一层处理的是业务语义,也就是用户真正想要传递的信息,不负责底层传输可靠性。
传输层
传输层实现主机上进程之间的端到端通信,核心两个协议是 tcp 和 udp,tcp 是面向连接,具备三次握手,四次挥手,确认重传,流量控制,拥塞控制,保证数据有序可靠送达,适合网页,文件传输这类不能丢数据的业务,udp 是无连接,不需要建立连接,传输速度快,没有重传机制,适合视频直播,游戏实时通信,允许少量丢包换取低延迟。
网际层
也叫网络层,核心协议是 ip 协议,主要任务是给数据包添加 ip 地址,选择路由,把数据包从源主机跨多个网络转发到目标主机,配套还有 icmp 协议,也就是 ping 命令使用的协议,用来检测网络连通性,arp 协议负责把 ip 地址转换成 mac 物理地址,这一层只负责尽力转发,本身不保证数据包一定到达。
网络接口层
是 tcpip 最底层,对应 osi 模型的数据链路层和物理层合并,负责把网际层交下来的 ip 数据包封装成数据帧,通过网卡在局域网介质上发送,处理 mac 地址,差错检测,网卡驱动,以太网,wifi 都属于这一层范畴,这一层只负责相邻节点之间的数据传递。
数据封装传输流程
发送端数据从应用层生成业务数据,交给传输层加上 tcp 或者 udp 头部,再交给网际层添加 ip 头部,最后交给网络接口层封装成帧,转换成电信号或者无线信号发送出去,接收端反向处理,网络接口层拆掉帧头,网际层拆掉 ip 头,传输层拆掉 tcp 或者 udp 头部,最后把原始业务数据交给应用层程序。
补充拓展说明
部分教材会把 tcpip 划分为五层,也就是把网络接口层拆成数据链路层和物理层,这个属于教学扩展版本,原始标准 tcpip 参考模型依然是四层,学习的时候要区分教材版本,分层模型是抽象概念,不是硬件实体,操作系统里面的 tcpip 协议栈就是按照这套逻辑实现。
【常见问题】
问题 1 tcpip 协议分为哪几层 和 osi 七层模型有什么区别
回答 1 tcpip 协议分为哪几层,tcpip 是四层模型,是互联网实际落地的协议体系,osi 七层是理论参考模型,划分更细,把物理层数据链路层单独拆分,两者层级对应关系不完全等同。
问题 2 tcpip 协议分为哪几层 tcp 和 udp 属于哪一层
回答 2 tcpip 协议分为哪几层,tcp 和 udp 都属于传输层,tcp 提供可靠面向连接传输,udp 提供无连接快速传输。
问题 3 tcpip 协议分为哪几层 ip 协议属于哪一层
回答 3 tcpip 协议分为哪几层,ip 协议属于网际层,核心作用是 ip 寻址和跨网络路由转发,实现数据包跨网段传输。
问题 4 tcpip 协议分为哪几层 为什么有的教材写五层
回答 4 tcpip 协议分为哪几层,五层属于教学改良版本,把网络接口层拆成物理层和数据链路层,原始标准 tcpip 参考模型依旧是四层结构。
【免责申明】
本文内容仅作为计算机网络知识科普参考,不同教材表述会存在版本差异,专业考试请以指定教材大纲为准,相关内容仅供学习参考。


