Appearance
模型
为什么要分层
在面对复杂问题时,分层思想是一种强大的解决方案 - 它能够将庞大的难题分解成更易于管理的小部分。
通过一个生动的例子来理解分层的魅力:
假设你要给一位许久未见的老友送一瓶珍贵的 82 年可乐,这个看似简单的任务实际上包含了多个层面的考虑:
层级 主要功能 具体方案 🍶 包装层 容器选择 • 高档玻璃瓶 • 特制塑料瓶 • 定制保温瓶 ❄️ 保存层 温度控制 • 专业保温设备 • 恒温储存系统 • 冷链物流方案 🔒 安全层 防护措施 • 防伪封条 • 密封包装 • 运输保险 📍 信息层 地址获取 • 社交网络查询 • 朋友圈联系 • 专业寻人服务 🚚 运输层 配送方式 • 专车直送 • 高铁快递 • 航空物流
通过这种层层递进的结构,我们可以清晰地看到每个环节的重点,从而更有效地完成整个任务。这正是分层思想的精髓所在。
从这个生动的例子中,我们可以总结出分层模型的几个关键特点:
- ✨ 每一层相对独立,只需解决自己的问题
- 🔄 每层无需考虑上层的交付,仅把结果交给下层
- 🔀 每层有多种方案可选择,选择不同的方案不会对上下层造成影响
- 📈 每一层会在上一层的基础上增加一些额外的信息
🌐 网络的五层模型
层级 | 主要功能 | 关键协议/设备 |
---|---|---|
📱 应用层 | 根具体应用相关的消息格式 | HTTP、FTP、DNS |
🔄 传输层 | 保证消息的可靠传递 | TCP、UDP |
🌍 网络层 | 如何在互联网中找出对方 | IP、路由器 |
🔗 数据链路层 | 如何在一个子网中找到对方 | MAC、交换机 |
💡 物理层 | 上面给我的东西如何用信号表示 | 光纤、集线器 |
🔄 数据传输流程
网络模型从上到下依次是:
📱 应用层 → 🔄 传输层 → 🌍 网络层 → 🔗 数据链路层 → 💡 物理层
在数据传输过程中:
- 发送方: 数据自上而下层层打包,每一层都会在上层数据的基础上添加该层的专属信息
- 接收方: 数据自下而上层层解包,最终还原出原始信息
📱 应用层
- 面向具体的应用场景:网页浏览、邮件收发、文件传输等
- 核心协议:
HTTP
、SMTP
、FTP
、DNS
等
🔄 传输层
- 确保数据传输的可靠性和完整性
- 代表协议:TCP (可靠传输的保障者)
🌍 网络层
- 负责目标定位和最优路径选择
- 核心协议:IP (互联网寻址基石)
🔗 数据链路层
- 实现局域网内的数据高效传输
- 关键技术:MAC 地址寻址、交换机数据转发
💡 物理层
- 处理数字信号与物理信号的转换
- 确保底层通信的基础实现