0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

面试官:你背诵一下,OSI七层网络模型

小林coding 来源:小林coding 2023-10-09 15:45 次阅读

今天我们来聊聊网络协议。

1. OSI模型

网络协议是网络中两台计算机之间传输数据的标准语言。各种计算机系统使用 OSI(Open Systems Interconnection)模型规定的标准相互通信。OSI 模型有七个抽象层,每个层都有不同的职责和协议。

下图显示了 OSI 模型中每一层的功能。每一层都为其上层提供一类功能,并由其下层为其提供服务。

5ee1dc4c-6677-11ee-939d-92fbcf53809c.png

应用层

应用层最接近终端用户。大多数应用程序都位于这一层。我们从后端服务器请求数据,无需了解数据传输的具体细节。这一层的协议包括 HTTP、SMTP、FTP、DNS 等。

表现层

这一层处理数据编码、加密和压缩,为应用层准备数据。例如,HTTPS 利用 TLS(Transport Layer Security)实现客户端与服务器之间的安全通信。

会话层

该层用于打开和关闭两个设备之间的通信。如果数据量较大,会话层就会设置检查点,避免从头开始重新发送。

传输层

该层处理两个设备之间的端到端的通信。它在发送方将数据分解成段,然后在接收方重新组装。这一层有流量控制,以防止拥塞。这一层的主要协议是 TCP 和 UDP。

网络层

这一层实现不同网络之间的数据传输。它进一步将网段或数据报分解成更小的数据包,并使用 IP 地址找到通往最终目的地的最佳路由。

数据链路层

这一层允许在同一网络的设备之间传输数据。数据包被分解成帧,这些帧被限制在局域网内。

物理层

这一层通过电缆和交换机发送比特流,因此与设备之间的物理连接密切相关。

与 OSI 模型相比,TCP/IP 模型只有 4 层。在讨论网络协议的层次时,必须明确上下文。

2. OSI 封装

既然我们已经了解了每一层的职责,那就让我们用下图来总结一下数据传输过程。这就是所谓的封装(encapsulation)和去封装(decapsulation)。封装是指在数据向目的地传输的过程中为数据添加报头。解封装会移除这些报头,以获取原始数据。

5eece772-6677-11ee-939d-92fbcf53809c.png

步骤 1:

当设备 A 使用 HTTP 通过网络向设备 B 发送数据时,最初会在应用层添加一个 HTTP 报头。

步骤 2:

在数据中添加 TCP 或 UDP 报头。它在传输层被封装成 TCP 段。报头包含源端口、目的端口和序列号。

步骤 3:

然后在网络层用 IP 报头对这些段落进行封装。IP 报头包含源 IP 地址和目的 IP 地址。

步骤 4:

在数据链路层为 IP 数据报添加 MAC 报头,其中包含源 MAC 地址和目的 MAC 地址。

步骤 5:

封装帧被发送到物理层,并作为比特流在网络上发送。

步骤 6-10:

设备 B 从网络接收到比特流后,会启动去封装过程,这与封装过程相反。报头逐层去除,直到设备 B 可以访问原始数据。

请注意,每一层都使用报头来处理指令,而不需要解封上一层的数据。

3. 常用网络协议

下面的动图展示了常用的一些网络协议及其使用场景。

5efee274-6677-11ee-939d-92fbcf53809c.gif

HTTP

HTTP 是一种用于获取 HTML 文档等资源的协议。它是网络数据交换的基础,也是一种客户端-服务器协议。

HTTP/3

HTTP/3 是 HTTP 的下一个重要修订版本。它在 QUIC 上运行。QUIC 是一种新的传输协议,专为移动互联网而设计。它依赖于 UDP 而不是 TCP,这使得网页响应速度更快。VR 应用程序需要更多带宽来迅速呈现虚拟场景的复杂细节,因此迁移到由 QUIC 支持的 HTTP/3 会从中受益。

HTTPS

HTTPS 扩展了 HTTP,并使用加密技术实现安全通信。

WebSocket

WebSocket 是一种通过 TCP 提供全双工通信的协议。客户端通过建立 WebSocket 从后端服务接收实时更新。与总是 "拉取 "数据的 REST 不同,WebSocket 可以 "推送 "数据。在线游戏、股票交易和消息应用程序等都利用 WebSocket 进行实时通信。

TCP

TCP 设计用于在互联网上发送数据包,确保数据和信息在网络上成功传递。许多应用层协议都建立在 TCP 协议之上。

UDP

UDP 直接向目标计算机发送数据包,无需先建立连接。UDP 通常用于对时间敏感的通信,因为这种情况下偶尔丢弃数据包比等待更好。语音和视频应用通常使用此协议发送数据。

SMTP

SMTP 是一种标准协议,用于将电子邮件从一个用户传输到另一个用户。

FTP

FTP 用于在客户端和服务器之间传输计算机文件。它有独立的控制通道和数据通道连接。

我们来把这些网络协议放到分布式系统中看看它们的典型应用。

5f09b816-6677-11ee-939d-92fbcf53809c.png

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 网络协议
    +关注

    关注

    3

    文章

    240

    浏览量

    21371
  • OSI
    OSI
    +关注

    关注

    0

    文章

    73

    浏览量

    15333
  • 网络模型
    +关注

    关注

    0

    文章

    39

    浏览量

    8347

原文标题:面试官:你背诵一下,OSI七层网络模型

文章出处:【微信号:小林coding,微信公众号:小林coding】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    WiMi-net无线网络OSI七层模型

    WiMi-net无线网络OSI(Open System Interconnect)模型 (1)PHY----物理(Physical Layer):驱动射频芯片,实现硬件的初始化,报
    发表于 12-07 17:16

    善用“微表情”打动面试官

    ,与以往不同,今年现场招聘会引进了针对改善“面试微表情”的特训服务。学生在正式面试之前,可以先来“微表情特训中心”体验一下,主办方希望借此帮助学生舒缓紧张情绪,给面试加分。  观点PK
    发表于 01-02 15:42

    千万别这么回答面试官问题!

    `又到面试季,小伙伴们都忙着找工作面试,是不是快被面试官的问题问成面瘫了。今天小编来教教大家如何复仇,句话噎死
    发表于 03-08 14:28

    OSI模型的简单理解

    体系结构标准定义了网络互联的七层框架(物理、数据链路层、网络、传输、会话
    发表于 07-30 06:08

    网络协议osi的分层

    笔试题const用法 int const *p表示限制指针P不可变 int * const p 表示 限制p值不可变 int const * const p 表示限制指针P和 p值不可变 osi七层
    发表于 08-06 08:20

    TCP/IP四网络模型的相关资料推荐

    我将网络模型放在了《网络编程系列》的第篇,是因为它是整个网络知识体系的根基。作为
    发表于 12-23 08:02

    OSI/RM七层模型的数据在各层之间是如何传递的

    OSI/RM七层网络模型分别是哪些?OSI/RM七层模型
    发表于 12-23 07:13

    网络OSI七层模型视频教程2

    网络OSI七层模型视频2 网络通信的工作分为7层,它们由低到高分别是物理层(Physical Layer),数据链路层(Data Link
    发表于 09-14 10:54 89次下载

    网络OSI七层模型视频教程1

    网络OSI七层模型视频教程1 网络通信的工作分为7层,它们由低到高分别是物理层(Physical Layer),数据链路层(Data Li
    发表于 09-14 10:55 91次下载

    网络OSI七层模型视频教程3

    网络OSI七层模型视频教程3 网络通信的工作分为7层,它们由低到高分别是物理层(Physical Layer),数据链路层(Data Li
    发表于 09-14 10:55 110次下载

    OSI七层模型及其功能

    OSI七层模型及其功能 在七十年代末,国际标准化组织 ISO 提出了开放系统互
    发表于 06-09 19:26 3517次阅读
    <b class='flag-5'>OSI</b><b class='flag-5'>七层</b><b class='flag-5'>模型</b>及其功能

    OSI七层模型的应用介绍

    OSI七层模型从下到上分别为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
    的头像 发表于 07-21 14:37 2097次阅读

    网络七层协议OSI

    OSI模型,是由国际标准化组织(ISO,国际Organization for Standardization)在1977年研究的开放式联网参考模型,提出了一个通信系统通信的一些特殊方面,把通信系统中所需的功能划分为
    发表于 05-04 15:10 1469次阅读

    OSI七层模型如何帮助网络通信?

    OSI(开放系统互联)七层模型是计算机网络体系结构的一种描述方式,它为不同系统之间的通信提供了统一的标准。这个模型从低到高分别是:物理层、数
    的头像 发表于 12-21 16:27 194次阅读

    osi七层模型各层功能及协议 osi七层模型有哪些

    OSI七层模型,是开放式系统互联(Open System Interconnection,简称OSI)参考模型,是国际标准化组织(ISO)在
    的头像 发表于 01-25 11:03 5770次阅读