【Linux面经】OSI七层模型和TCP/IP四层体系结构

OSI七层模型

  1. 模型结构

    • 七层名称及顺序:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。面试官可能会直接让你写出这七层的名称和顺序,或者问到"OSI模型中,传输层上面一层是什么"等问题。

    • 各层功能:

      • 物理层:负责在物理媒体上传输原始的比特流。例如,面试官可能会问"物理层的主要职责是什么",答案是传输原始比特流,包括定义物理接口的电气特性、机械特性等。

      • 数据链路层:将物理层传来的比特流组装成数据帧,提供可靠的数据传输服务。可能会问到"数据链路层如何实现可靠传输",答案是通过差错控制(如循环冗余校验CRC)和流量控制(如滑动窗口机制)等技术。

      • 网络层:负责将数据包从源主机传输到目的主机。常见的问题有"网络层的主要功能是什么",答案是路由选择和转发数据包,以及提供逻辑地址(如IP地址)。

      • 传输层:提供端到端的可靠或不可靠通信服务。例如,面试官可能会问"TCP和UDP分别属于哪一层",答案是传输层。还会问到"TCP和UDP的区别",TCP是面向连接、可靠传输的,UDP是无连接、不可靠传输的。

      • 会话层:负责建立、管理和终止会话。可能会问到"会话层的作用是什么",答案是控制通信会话的建立和结束,例如通过三次握手建立TCP连接。

      • 表示层:负责数据格式的转换和加密解密等。例如,面试官可能会问"表示层的主要功能有哪些",答案是数据格式转换(如ASCII码和EBCDIC码之间的转换)、数据加密和解密等。

      • 应用层:为用户提供各种网络服务,如HTTP、FTP、SMTP等。可能会问到"常见的应用层协议有哪些",答案是HTTP、HTTPS、FTP、SMTP、POP3等。

  2. 协议与模型对应关系

    • "TCP/IP协议族中的IP协议对应OSI模型的哪一层",答案是网络层。
  3. 数据封装与解封装过程

    • 封装过程:从应用层到物理层,数据依次被封装成应用层数据单元、表示层数据单元、会话层数据单元、传输层数据单元(TCP或UDP报文)、网络层数据单元(IP数据报)、数据链路层数据单元(帧)、物理层的比特流。面试官可能会让你描述这个封装过程,或者问"在封装过程中,传输层添加了什么信息",答案是端口号,用于标识应用层的不同进程。

    • 解封装过程:从物理层到应用层,逐层去掉封装信息,最终将数据交给应用层。

TCP/IP四层体系结构

  1. 模型结构

    • 四层名称及顺序:链路层(也叫网络接口层)、网络层、传输层、应用层。面试官可能会让你写出这四层的名称和顺序。

    • 各层功能:

      • 链路层:负责将网络层传来的IP数据报封装成帧,在链路上传输。可能会问到"链路层的主要功能是什么",答案是帧的封装和解封装、差错控制等。

      • 网络层:核心是IP协议,负责将IP数据报从源主机传输到目的主机。常见的问题有"IP协议的主要功能是什么",答案是提供无连接的、不可靠的传输服务,以及路由选择。

      • 传输层:主要协议是TCP和UDP。面试官可能会问"TCP和UDP的区别",TCP是面向连接、可靠传输的,提供流量控制、拥塞控制等机制;UDP是无连接、不可靠传输的,但传输速度快。

      • 应用层:提供各种网络应用服务,如HTTP、FTP、SMTP等。可能会问到"常见的应用层协议有哪些",答案是HTTP、HTTPS、FTP、SMTP、POP3等。

相关推荐
xyzzklk36 分钟前
在Open-WebUI中提升向量化速度
网络·人工智能·爬虫·ai·语言模型·自然语言处理·安卓
Oiiouui1 小时前
linux服务器部署Logto后端与对应前端的实现
linux·服务器·前端·后端
Yuzhiyuxia2 小时前
【AI Agent面试系列】上下文管理1
人工智能·面试·职场和发展
ITKEY_2 小时前
用 Emacs Dired 实现 em:退出文件管理器后,让终端自动切换目录
linux·服务器·emacs
wt95272 小时前
VMware 虚拟机磁盘扩容实战文档(Ubuntu 22.04 + LVM)
linux·后端
就像楞次定律2 小时前
【Linux 学习记之二】C++ 构建体系与底层链接机制的深度透视(2)
linux·后端
无足鸟ICT2 小时前
【RHCA+】slabtop命令(查看slab缓存)
linux
且从容.2 小时前
Ubuntu 安装 Docker
linux·ubuntu·docker
青梅味猪大肠3 小时前
【操作系统-60】临近适应算法
java·linux·开发语言·嵌入式硬件·算法·操作系统
CoderYanger3 小时前
Java EE 进阶:8.MyBatis 操作数据库(入门)(第一弹)
java·数据库·spring·面试·职场和发展·java-ee·mybatis