当前位置: 首页 > ai >正文

面经-计算机网络——OSI七层模型与TCP/IP四层模型的对比详解

OSI七层模型与TCP/IP四层模型的对比详解


一、图示解析:分层封装结构

你提供的图清晰展示了网络通信中从应用层到物理层的封装过程,每一层都会对上层的数据加上自己的头部信息(Header):

应用层:      应用数据
传输层:   TCP头 + 应用数据
网络层:   IP头 + TCP头 + 应用数据
链路层: 帧头 + IP头 + TCP头 + 应用数据 + 帧尾

这一过程也叫做封装(Encapsulation),反过来在接收端进行解封装(Decapsulation)


二、OSI与TCP/IP模型结构

1. OSI七层模型

层级名称功能简述示例协议
7应用层提供用户接口和网络服务HTTP、FTP、DNS
6表示层数据编码、加密、解密、压缩JPEG、ASCII
5会话层建立、管理、终止会话RPC、NFS
4传输层提供端到端可靠或不可靠的传输TCP、UDP
3网络层路由、逻辑寻址IP、ARP、ICMP
2数据链路层在物理层提供可靠传输,组帧、差错检测PPP、MAC、VLAN
1物理层比特传输、电压、接头类型等物理特性RJ45、光纤、CLOCK

2. TCP/IP四层模型

层级名称功能简述示例协议
4应用层综合会话层、表示层、应用层,提供各种网络服务HTTP、FTP、DNS、SMTP
3传输层提供端到端连接TCP、UDP
2网络层选择路由、逻辑寻址IP、ICMP、ARP
1网络接口层物理设备驱动、帧传输以太网、帧中继、PPP协议

3. 对应关系图表

OSI模型TCP/IP模型
应用层 + 表示层 + 会话层应用层
传输层传输层
网络层网络层
数据链路层 + 物理层网络接口层

三、典型网络模型总结

  • OSI七层模型:理论清晰,教学中常用。
  • TCP/IP四层模型:实现主流,更贴近实际互联网通信协议栈。

四、每层代表协议汇总

OSI七层模型协议示例:

  1. 物理层:CLOCK、RJ45、IEEE 802.3
  2. 数据链路层:MAC、VLAN、PPP
  3. 网络层:IP、ARP、ICMP
  4. 传输层:TCP、UDP
  5. 会话层:RPC、NFS
  6. 表示层:JPEG、ASCII
  7. 应用层:FTP、HTTP、DNS

TCP/IP四层模型协议示例:

  1. 应用层:HTTP、FTP、SMTP、DNS
  2. 传输层:TCP、UDP
  3. 网络层:IP、ICMP、ARP
  4. 网络接口层:以太网协议、PPP、帧中继

五、从百度搜索看网络各层的作用

使用百度搜索,涉及的网络层级如下:

网络层级涉及协议功能
应用层HTTP、HTTPS、DNS提供服务(如网页浏览、域名解析)
传输层TCP、UDP提供可靠或快速传输
网络层IP、ARP、ICMP路由与地址解析
数据链路层MAC、以太网协议物理地址传输,组帧
物理层RJ45、光纤等比特级传输,电信号

示例流程:输入baidu.com并访问网页

  1. DNS域名解析(应用层) → 浏览器要将URL解析为IP地址,DNS服务器使用UDP解析域名,DNS服 务器是基于UDP的,因此会用到UDP协议
  2. HTTP发起连接(应用层) → 使用TCP建立连接并发送请求,http协议报文格式上面已经提到。http生成一个get请求报文,将该报文传给TCP层处理,所以还会用到TCP协议。如果采用https还会使用https协议先对http数据进行加密。
  3. IP寻址(网络层) → 查找目标服务器的IP地址
  4. ARP解析MAC地址(网络层 & 数据链路层) → 获取本地网关MAC地址
  5. 以太网封装(数据链路层) → 封装帧数据,发送到物理层
  6. 比特传输(物理层) → 比特流通过电缆/光纤传输

六,TCP/IP数据链路层的交互过程是怎么样的?

网络层等在数据链路层用MAC地址作为通信目标,数据包到达网络层等往数据链路层发送的时候,首先回去ARP缓存表去查找ip对应的MAC地址,如果查到了,就将此ip对应的MAC地址封装到链路层数据包的包头。如果缓存中没有找到,则会发起一个广播,who is ip xxx tell ip xxxx,所有收到广播的机器看到这个ip是不是自己的,如果是自己的,则以单播的形式将自己的mac地址回复给请求机器。

http://www.xdnf.cn/news/3317.html

相关文章:

  • IDEA在项目中添加模块出现Error adding module to project: null(向项目添加模块时出错: null)的解决方法
  • 位运算切换大小写
  • 数字智慧方案6158丨智慧医疗解决方案精华版(58页PPT)(文末有下载方式)
  • Spark,集群搭建之Yarn模式
  • go实现双向链表
  • Unity SpriteRenderer(精灵渲染器)
  • Linux常用命令27——userdel删除用户
  • 如何阅读GitHub上的深度学习项目
  • 论文报错3
  • js文件加密。安装 Terser
  • C++负载均衡远程调用学习之TCP连接封装与TCPCLIENT封装
  • 审计专员简历模板
  • 【Hot 100】23. 合并 K 个升序链表
  • 【深度学习新浪潮】小米MiMo-7B报告内容浅析
  • MATLAB中removedelay函数用法
  • 区间贪心 (区间端点处理)
  • llamafactory-cli webui启动报错TypeError: argument of type ‘bool‘ is not iterable
  • 《AI大模型应知应会100篇》第41篇:多轮对话设计:构建高效的交互式应用
  • CentOS 7 下安装 supervisor-3.4.0-1.el7.noarch.rpm 详细步骤
  • QMK固件开发指南:构建您的第一个固件
  • 22.2Linux的I2C驱动实验(编程)_csdn
  • 2024年12月 C/C++(二级)真题解析#中国电子学会#全国青少年软件编程等级考试
  • Qt指南针
  • 9. 深入Spring AI:刨析 ChatMemory
  • 从MCP基础到FastMCP实战应用
  • 攻防世界 - Web - Level 4 | Confusion1
  • qemu学习笔记:QOM
  • AWS CloudFront全球加速利器:解析出海业务的核心优势与最佳实践
  • 2025五一数学建模ABC题选题建议,思路模型分析
  • Hive数据倾斜 常见解决办法