Network · Chapter 02
第 2 章 · 分层模型
Layered Models · OSI & TCP/IP
你可能听过"OSI 七层"、"TCP/IP 四层"——但为什么网络要"分层"?因为复杂的问题,最好的解法是"拆"。就像盖楼要分地基、框架、水电、装修,网络也分成若干层,每层只管一件事,互不干扰。
生活场景
🏢 开一家餐厅,不需要一个人会所有事
你开一家餐厅——不需要一个人既会炒菜、又会收银、又会擦桌子、又会修空调。
你拆成:厨师(做菜)、服务员(点菜上菜)、收银员(结账)、保洁(打扫)、维修工(修设备)。
每个人只干一件事,干好就行。换厨师不影响服务员,换服务员不影响收银员。
网络分层就是这个思路——每层有专门的"工人"和专门的"规则",互不干扰,坏了单独修。
为什么需要分层
不分层会怎样?想象 1970 年代——每台电脑厂商自己搞一套"联网方案",IBM 的电脑只能连 IBM,DEC 的只能连 DEC。要连别的厂?重写整套软件。分层让"换一层不影响其他层"——这就是标准化的力量。
本章要回答什么
分层这个词听着抽象,说白了就是把一件复杂的事切成几段,每段交给专人负责,彼此约定好交接的格式。这一章要回答四个问题:
- OSI 那七层分别在干什么?——从最底下的电信号,到最上面你看到的网页,每一层各管一段。
- 为什么实际用的却是 TCP/IP 四层?——理论上最完美的方案,为什么打不过一个"够用就好"的方案。
- 数据从你的手机出发,到底经过了几道手?——每层都往数据上贴一张自己的"标签",拆开看是什么样。
- 知道分层对我有什么实际用处?——网断了能快速判断是哪一层的毛病,不用瞎试。
把分层想成"寄一个国际快递"
你要给国外的朋友寄一件毛衣。你把毛衣装进纸箱,贴上写着朋友地址的快递单——这是你负责的那一层,你只关心"东西和地址对不对"。
快递小哥上门收走,扫码录入系统,塞进一个更大的编织袋,袋子上贴的是"发往上海分拣中心"——他不关心里面是毛衣还是书,只关心这一袋该送去哪个中转站。
到了机场,几百个编织袋一起装进航空集装箱,箱子上写的是"CA1234 航班,目的地法兰克福"——装卸工连袋子都不看,只管这个箱子上哪架飞机。
到了对面,一层层反过来拆:卸集装箱、拆编织袋、送到门口、你朋友剪开纸箱拿出毛衣。每一层只看自己那张标签,只跟上下相邻的一层打交道,完全不需要知道其他层在忙什么。
这就是网络分层。你发一条微信,"微信"这一层只管消息内容;下面一层负责保证不丢;再下面一层负责找路;最底层负责把电信号推上网线。换一层不影响其他层——你家从宽带换成 5G,最底层全变了,微信却一行代码都不用改。
你要给国外的朋友寄一件毛衣。你把毛衣装进纸箱,贴上写着朋友地址的快递单——这是你负责的那一层,你只关心"东西和地址对不对"。
快递小哥上门收走,扫码录入系统,塞进一个更大的编织袋,袋子上贴的是"发往上海分拣中心"——他不关心里面是毛衣还是书,只关心这一袋该送去哪个中转站。
到了机场,几百个编织袋一起装进航空集装箱,箱子上写的是"CA1234 航班,目的地法兰克福"——装卸工连袋子都不看,只管这个箱子上哪架飞机。
到了对面,一层层反过来拆:卸集装箱、拆编织袋、送到门口、你朋友剪开纸箱拿出毛衣。每一层只看自己那张标签,只跟上下相邻的一层打交道,完全不需要知道其他层在忙什么。
这就是网络分层。你发一条微信,"微信"这一层只管消息内容;下面一层负责保证不丢;再下面一层负责找路;最底层负责把电信号推上网线。换一层不影响其他层——你家从宽带换成 5G,最底层全变了,微信却一行代码都不用改。
本章的三篇子篇
§ 2.1
OSI 七层模型
国际标准化组织提出的"理论完美"模型——从物理层到应用层,每层职责一目了然。
§ 2.2
TCP/IP 四层模型
互联网实际在用的模型——比 OSI 更简洁,TCP/IP 协议栈就是按这个分的。
§ 2.3
分层实战
把前面学的协议"对号入座"——HTTP 在哪层?TCP 在哪层?IP 在哪层?
OSI vs TCP/IP · 一句话对比
| OSI 七层 | TCP/IP 四层 | |
|---|---|---|
| 提出者 | ISO 国际标准化组织(1984) | 美国国防部 ARPANET(1970s) |
| 性质 | 理论模型——"应该这样分" | 实践模型——"实际就是这样分" |
| 层数 | 7 层 | 4 层 |
| 现状 | 教学用,面试常考 | 互联网实际运行标准 |
Recap · 收束
分层 = "把复杂问题拆成简单问题"。OSI 是"理论上的完美分层",TCP/IP 是"实际上的实用分层"。理解它们,你就理解了网络设计的核心思想:分而治之。
Xue Hai Wu Ya · Network · Chapter 02