第一层:物理层

核心任务: 把数据变成可以在线缆、无线电波等介质上传输的物理信号(如光信号、电脉冲)。

  • 通俗例子: 快递公司的运输工具(卡车、飞机)和道路(高速公路、航线)。它不关心包裹里是什么,只负责把“货物”从A点物理移动到B点。

  • 关键设备: 网线、光纤、网卡、集线器、中继器。

  • 数据单位: 比特

第二层:数据链路层

核心任务: 在相邻的两个节点之间,提供可靠的数据传输,并进行差错控制。它通过 MAC地址(物理地址,如同身份证号)来标识设备。

  • 通俗例子: 快递公司在一个城市内的配送站。当卡车到达某个城市后,配送站负责检查货物有没有在运输中破损(差错控制),并根据“门牌号”(MAC地址)将货物派送给同一局域网内的具体用户。

  • 关键设备: 交换机、网桥。

  • 数据单位: 帧

第三层:网络层

核心任务: 负责路由选择逻辑寻址。它通过 IP地址(如同你的家庭住址)来找到数据包从源到目的地的最佳路径,跨越不同的网络。

  • 通俗例子: 快递总部的路由调度中心。它负责规划“包裹”怎么从北京发往纽约:是走海运还是空运?途中经过哪个中转站?它不关心具体的“运输工具”(物理层),只关心“下一站该去哪”。

  • 关键设备: 路由器、三层交换机。

  • 数据单位: 包

第四层:传输层

核心任务: 建立端到端的连接,负责流量控制可靠性。它区分不同的应用(通过端口号),并决定是使用可靠的TCP协议(三次握手)还是高效的UDP协议。

  • 通俗例子: 快递公司的客服与品控部门

    • TCP(可靠):寄送一批名贵手表。客服会打电话确认“你收到了吗?”,如果没收到,会重新派送,确保不丢件、顺序不乱。

    • UDP(高效):看视频直播。偶尔丢一两个画面没关系,只要流畅就行,不会为了补一帧画面去暂停直播。

  • 关键概念: TCP、UDP、端口号。

  • 数据单位: 段

第五层:会话层

核心任务: 管理会话的建立、维持和终止。它就像应用之间的“握手”和“挂断”,决定谁先说话、说多久,并设置断点。

  • 通俗例子: 快递员与收件人之间的通话过程

    • 建立会话:“喂,是王先生吗?您的快递到了。”

    • 维持会话:“我现在不在家,放快递柜吧。”

    • 终止会话:“好的,已放入,再见。”

    • 断点续传:如果下载一个100G的大文件,中途断网了,会话层可以记住下载到了99%,重连后接着传,而不是从头开始。

  • 协议示例: NetBIOS、RPC。

第六层:表示层

核心任务: 负责数据翻译、加密解密、压缩解压。它把“机器语言”翻译成“人类或应用能看懂的语言”,并确保不同系统(Windows和Linux)能互通。

  • 通俗例子: 快递公司的打包与翻译组

    • 翻译:如果你寄给国外朋友一封信,它负责把中文翻译成英文。

    • 加密:如果是贵重物品,它负责给包裹加上密码锁。

    • 压缩:如果东西太大,它负责抽真空压缩,让体积变小。

  • 常见应用: SSL/TLS证书(HTTPS的锁)、JPEG/MPEG(图片视频压缩)。

第七层:应用层

核心任务: 最接近用户的一层,为应用软件(如浏览器、微信)提供网络服务接口。

  • 通俗例子: 你拿到包裹拆开使用的瞬间。你打开手机上的App(微信、Chrome),看到别人发来的消息或网页内容。这一层决定了“用户最终体验的是什么”。

  • 关键协议: HTTP(网页)、SMTP(邮件)、FTP(文件传输)、DNS(域名解析)。


层与层之间的关系:逐级封装

在OSI模型中,每一层都只为相邻的层服务,数据从发送端自上而下传输时,会发生封装;在接收端自下而上传输时,发生解封装

举个例子:你用微信发“你好”给对方

发送端(自上而下):

  1. 应用层 (L7):你输入“你好”。微信把这几个字作为数据。

  2. 表示层 (L6):将“你好”压缩或加密(通常这一步在微信内部做了),确保数据能被识别。

  3. 会话层 (L5):建立你与对方服务器的会话通道。

  4. 传输层 (L4):在这段数据前加上TCP头,注明“这个数据包的端口号是443(微信服务)”,交给下层。此时数据叫

  5. 网络层 (L3):加上IP头,注明“源IP是你的手机IP,目标IP是微信服务器IP”。此时数据叫

  6. 数据链路层 (L2):加上MAC头,注明“这个包要从你手机的网卡发给路由器(下一跳的物理地址)”。此时数据叫

  7. 物理层 (L1):把这一长串二进制的帧,变成电信号或光信号,通过网线或WiFi发出去。

接收端(自下而上):

对方的服务器收到信号后,从下往上逐层拆解
物理层收到电信号 → 链路层检查MAC地址是否匹配 → 网络层检查IP是否匹配 → 传输层检查端口号,把数据重组 → 会话层确认会话有效 → 表示层解密 → 应用层最终把“你好”显示在对方的微信界面上。

什么要有这么多层?

这种分层设计就像流水线作业,带来了巨大的好处:

  1. 分工协作:如果你要换网络设备(比如从网线换到WiFi),只需要改动物理层和数据链路层,上面的微信(应用层)完全不需要修改。

  2. 标准化:任何厂商只要遵循这个标准,他们生产的硬件和软件就能互相通信。

总结:

物理层决定用什么路,数据链路层决定怎么在一条路上跑,网络层决定从哪条路到另一个城市,传输层保证东西没丢,会话层管通话礼仪,表示层负责语言翻译,应用层就是你正在干的事

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐