OSI模型_TCP/IP模型_五层模型

news2025/4/22 2:23:25

文章目录

  • OSI模型_TCP/IP模型_五层模型
    • 模型对比
      • 模型层级对比
      • 关键区别对比
    • OSI模型
      • OSI模型概述
      • 举例说明
      • 流程图示
    • TCP/IP 四层模型
      • 模型结构
      • 举例说明
      • 流程图示
    • TCP/IP 五层模型
      • 模型的结构
      • 举例说明
      • 流程图示

OSI模型_TCP/IP模型_五层模型

  • 学OSI,用TCP/IP,分析选五层。

  • OSI是理论地图,TCP/IP是实践工具,五层是分析显微镜

图片源于网络

模型对比

模型层级对比

OSI七层模型TCP/IP四层模型五层折中模型核心功能典型协议/设备
应用层应用层应用层用户接口(HTTP/FTP)浏览器、HTTP/HTTPS
表示层(合并到应用层)(合并到应用层)数据加密/压缩(SSL/TLS)JPEG/ASCII/加密算法
会话层(合并到应用层)(合并到应用层)建立/维护会话(RPC/Socket)NetBIOS/PPTP
传输层传输层传输层端到端可靠传输(TCP/UDP)防火墙、TCP/UDP协议
网络层网络层网络层路由寻址(IP)路由器、IP/ICMP
数据链路层网络接口层数据链路层MAC寻址/帧传输(Ethernet)交换机、MAC地址
物理层(合并到网络接口层)物理层比特流传输(电信号)网卡/光纤/集线器

关键区别对比

对比维度OSI七层模型TCP/IP四层模型五层模型
设计目的理论参考(标准化)实际互联网实现教学与协议分析
分层逻辑严格七层,功能细分合并高层和底层保留物理+链路层,简化高层
会话/表示层独立存在(如加密/会话管理)合并到应用层(如HTTPS)合并到应用层
适用场景学术研究、协议设计网络配置(IP/TCP)抓包分析(Wireshark)
典型协议FTP在应用层,ASCII在表示层HTTP/TCP/IP直接关联类似TCP/IP但拆分底层

OSI模型

OSI模型概述

OSI(Open Systems Interconnection)模型是一个七层架构,用于描述网络通信中数据传输的过程。每一层都有特定的功能,并且为上一层提供服务。以下是OSI的七层:

  • 物理层(Physical Layer):负责比特流的传输(如电缆、光纤)。

  • 数据链路层(Data Link Layer):提供节点到节点的数据传输(如MAC地址、交换机)。

  • 网络层(Network Layer):负责路径选择和逻辑寻址(如IP地址、路由器)。

  • 传输层(Transport Layer):提供端到端的可靠传输(如TCP、UDP)。

  • 会话层(Session Layer):管理会话和连接(如建立、维护、终止会话)。

  • 表示层(Presentation Layer):处理数据格式和加密(如SSL、JPEG)。

  • 应用层(Application Layer):直接为用户应用程序提供服务(如HTTP、FTP)。

举例说明

假设用户通过浏览器访问 https://www.example.com,以下是OSI各层的具体作用:

  • 应用层:浏览器生成HTTP请求(GET / HTTP/1.1),并附加HTTPS加密(TLS协议)。

  • 表示层:将HTTP数据加密(SSL/TLS),并转换为二进制格式。

  • 会话层:建立与服务器的会话(如TCP三次握手后维持连接)。

  • 传输层:将数据分段(如TCP分段),添加源/目标端口号(如源端口:50000,目标端口:443)。

  • 网络层:添加源/目标IP地址(如源IP:192.168.1.2,目标IP:93.184.216.34),通过路由器选择路径。

  • 数据链路层:添加MAC地址(如源MAC:00:1A:2B:3C:4D:5E,目标MAC:路由器MAC),通过交换机传输。

  • 物理层:将数据转换为电信号/光信号,通过网线或Wi-Fi传输。

流程图示

+-----------------------+
|     应用层 (HTTP/HTTPS) | <-- 用户输入URL
+-----------------------+
|     表示层 (SSL/TLS)    | <-- 加密数据
+-----------------------+
|     会话层 (Session)    | <-- 建立TCP会话
+-----------------------+
|     传输层 (TCP/UDP)    | <-- 分段+端口号
+-----------------------+
|     网络层 (IP)        | <-- 路由+IP地址
+-----------------------+
|  数据链路层 (Ethernet)  | <-- MAC地址+帧
+-----------------------+
|     物理层 (Bits)      | <-- 电信号传输
+-----------------------+
          ↓
        [网络]
          ↓
+-----------------------+
|     物理层 (Bits)      | --> 接收电信号
+-----------------------+
|  数据链路层 (Ethernet)  | --> 解析MAC地址
+-----------------------+
|     网络层 (IP)        | --> 检查IP地址
+-----------------------+
|     传输层 (TCP/UDP)    | --> 重组数据段
+-----------------------+
|     会话层 (Session)    | --> 维持会话
+-----------------------+
|     表示层 (SSL/TLS)    | --> 解密数据
+-----------------------+
|     应用层 (HTTP/HTTPS) | --> 返回网页内容
+-----------------------+

关键点

  • 封装与解封装:发送方从应用层到物理层逐层封装数据,接收方反向解封装。
    在这里插入图片描述

  • 设备对应层:

    • 路由器:网络层(处理IP)。

    • 交换机:数据链路层(处理MAC)。

    • 防火墙:传输层/应用层(过滤端口/内容)。

TCP/IP 四层模型

实际互联网标准,合并数据链路层和物理层

模型结构

TCP/IP模型对应OSI层核心协议典型设备功能举例
应用层应用层+表示层+会话层HTTP, FTP, DNS, SMTP网关、防火墙用户直接交互(如浏览器访问网页)
传输层传输层TCP, UDP防火墙端到端可靠传输(如TCP三次握手)
网络层网络层IP, ICMP, ARP路由器逻辑寻址和路由(如IP分组转发)
网络接口层数据链路层+物理层Ethernet, Wi-Fi, PPP交换机、网卡物理传输(如MAC地址寻址)

举例说明

完整流程示例

  • 应用层:用户输入URL → 浏览器生成HTTP请求。

  • 传输层:TCP分段 → 添加端口号、序列号。

  • 网络层:IP封装 → 添加源/目标IP。

  • 网络接口层:

    • 数据链路层:MAC封装 → 添加源/目标MAC。
    • 物理层:比特流传输 → 通过网线发送。

流程图示

+-----------------------+
|      应用层 (HTTP)     | → 生成HTTP请求(如GET /index.html)
+-----------------------+
|      传输层 (TCP)      | → 添加TCP头部(源端口、目标端口、序列号)
+-----------------------+
|      网络层 (IP)       | → 添加IP头部(源IP、目标IP、TTL)
+-----------------------+
|  网络接口层 (Ethernet) | → 添加MAC头部(源MAC、目标MAC)+ 物理层比特流
+-----------------------+
          	↓
        [网络传输]
       		↓
+-----------------------+
|  网络接口层 (Ethernet) | ← 接收比特流,解析MAC地址
+-----------------------+
|      网络层 (IP)       | ← 检查IP地址,去掉IP头部
+-----------------------+
|      传输层 (TCP)      | ← 重组TCP段,去掉TCP头部
+-----------------------+
|      应用层 (HTTP)     | ← 获取HTTP数据,渲染网页
+-----------------------+

TCP/IP 五层模型

五层模型 = OSI的物理层+数据链路层 + TCP/IP的网络层+传输层+应用层。
适用场景:

  • 学习计算机网络原理(比OSI简洁,比TCP/IP详细)。

  • 网络抓包分析(如Wireshark)。

  • 网络设备调试(区分物理层和数据链路层问题)。

模型的结构

层级功能核心协议/技术对应设备数据单位
应用层提供用户接口,处理应用程序数据HTTP, FTP, DNS, SMTP网关、代理服务器消息(Message)
传输层端到端通信,可靠/不可靠传输TCP, UDP防火墙段(Segment)
网络层逻辑寻址和路由选择IP, ICMP, ARP, BGP路由器分组(Packet)
数据链路层物理寻址(MAC)、帧传输Ethernet, Wi-Fi, PPP交换机、网桥帧(Frame)
物理层比特流传输(电信号、光信号)RJ45, 光纤, 无线电波集线器、中继器比特(Bit)

举例说明

五层模型的应用示例:访问网站

  • 应用层:浏览器发送 HTTP GET 请求(封装为HTTP报文)。

  • 传输层:TCP协议将HTTP报文分段,添加源/目标端口(如443)。

  • 网络层:IP协议添加源/目标IP地址(如 192.168.1.2 → 93.184.216.34)。

  • 数据链路层:以太网协议封装为帧,添加源/目标MAC地址(如 00:1A:2B:3C:4D:5E)。

  • 物理层:转换为电信号通过网线/Wi-Fi传输。

流程图示

+-----------------------+
|      应用层 (HTTP)     | → 生成HTTP报文(如GET请求)
+-----------------------+
|      传输层 (TCP)      | → 添加TCP头部(端口号、校验和)
+-----------------------+
|      网络层 (IP)       | → 添加IP头部(源IP、目标IP)
+-----------------------+
|   数据链路层 (Ethernet)| → 封装成帧(源MAC、目标MAC、FCS校验)
+-----------------------+
|      物理层 (Bits)     | → 转换为电信号/光信号传输
+-----------------------+
	         ↓
	   	[网络传输]
	         ↓
+-----------------------+
|      物理层 (Bits)     | ← 接收电信号,转换为比特流
+-----------------------+
|   数据链路层 (Ethernet)| ← 校验帧,解析MAC地址
+-----------------------+
|      网络层 (IP)       | ← 检查IP地址,路由决策
+-----------------------+
|      传输层 (TCP)      | ← 重组数据段,确保可靠性
+-----------------------+
|      应用层 (HTTP)     | ← 解析HTTP内容,显示网页
+-----------------------+

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2323118.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringCould微服务架构之Docker(2)

Docker和虚拟机的差别&#xff1a; 虚拟机是在操作系统中模拟硬件设备&#xff0c;然后运行另外一个操作系统。

LINUX基础IO [六] - 文件理解与操作

目录 前言 C语言文件操作回顾 文件的打开与关闭 文件的增删改查 文件系统调用 比特位方式的标志位传递原理 访问文件的本质 文件描述符fd 理解文件描述符fd 三个流的理解 文件描述符的分配规则 重定向再理解 输出重定向 输入重定向 如何理解一切皆文件 理解…

拥抱人工智能大模型时代:大模型会改变我们的生活吗?

在这个科技日新月异的时代&#xff0c;人工智能&#xff08;AI&#xff09;正以前所未有的速度改变着我们的生活和工作方式。尤其是随着人工智能大模型&#xff08;如ChatGPT、DeepSeek等&#xff09;的崛起&#xff0c;人们对于AI技术的期待和关注达到了前所未有的高度。那么&…

常见框架漏洞攻略-ThinkPHP篇

漏洞名称&#xff1a;Thinkphp5x远程命令执行及getshell 第一步&#xff1a;开启靶场 第二步&#xff1a;准备工具 第三步&#xff1a;启动工具&#xff0c;进行漏洞检测 #存在漏洞 1.目标存在tp5_invoke_func_code_exec_1漏洞2.目标存在tp5_dbinfo_leak漏洞payload:http://47…

LlamaFactory部署及模型微调【win10环境】

1.Llama-Factory简介 LLaMA-Factory&#xff0c;全称 Large Language Model Factory&#xff0c;旨在简化大模型的微调过程&#xff0c;帮助开发者快速适应特定任务需求&#xff0c;提升模型表现。它支持多种预训练模型和微调算法&#xff0c;适用于智能客服、语音识别、机器翻…

vue3配置代理实现axios请求本地接口返回PG库数据【前后端实操】

前端编写 安装 axios 如果当前未安装axios&#xff0c;可以执行如下指令安装 npm install axios配置代理 当前为基于Vite构建的项目&#xff0c;在 vite.config.ts 中配置代理&#xff0c;在defineConfig中新增server配置&#xff0c;主要关注两个点&#xff1a; 一、需要代…

trae 配置 gradle springboot项目

一 本机安装gradle 1.下载gradle &#xff1a; https://github.com/gradle/gradle-distributions/releases/download/v8.13.0/gradle-8.13-all.zip 2.配置相关环境变量&#xff1a; GRADLE_HOME&#xff1a;本地的gradle路径。 GRADLE_USER_HOME&#xff1a;gradle 本地仓…

uv:Rust 驱动的 Python 包管理新时代

在 Python 包管理工具层出不穷的今天&#xff0c;pip、pip-tools、poetry、conda 等各有千秋。而今天要介绍的 uv&#xff0c;则是一款由 Astral 团队推出、采用 Rust 编写的全新工具&#xff0c;目标直指成为 “Python 的 Cargo”。它不仅在性能上表现优异&#xff0c;而且在功…

sqlserver 阻止保存要求重新创建表的更改

1 选择 “工具” 菜单&#xff0c;然后点击 “选项” 2 进入选项界面后&#xff0c;选择 “设计器”&#xff0c;取消勾选 “阻止保存要求重新创建表的更改” 选项&#xff0c;点击 “确定”

5.Excel:从网上获取数据

一 用 Excel 数据选项卡获取数据的方法 连接。 二 要求获取实时数据 每1分钟自动更新数据。 A股市场_同花顺行情中心_同花顺财经网 用上面方法将数据加载进工作表中。 在表格内任意区域右键&#xff0c;刷新。 自动刷新&#xff1a; 三 缺点 Excel 只能爬取网页上表格类型的…

在word中使用zotero添加参考文献并附带超链接

一、引言 在写大论文时&#xff0c;为了避免文中引用与文末参考文献频繁对照、修改文中引用顺序/引用文献时手动维护参考文献耗易出错&#xff0c;拟在 word 中使用 zotero 插入参考文献&#xff0c;并为每个参考文献附加超链接&#xff0c;实现交互式阅读。 版本&#xff1a…

性能测试、负载测试、压力测试的全面解析

在软件测试领域&#xff0c;性能测试、负载测试和压力测试是评估系统稳定性和可靠性的关键手段。​它们各自关注不同的测试目标和应用场景&#xff0c;理解这些差异对于制定有效的测试策略至关重要。 本文对性能测试、负载测试和压力测试进行深入分析&#xff0c;探讨其定义、…

Redis中的数据类型与适用场景

目录 前言1. 字符串 (String)1.1 特点1.2 适用场景 2. 哈希 (Hash)2.1 特点2.2 适用场景 3. 列表 (List)3.1 特点3.2 适用场景 4. 集合 (Set)4.1 特点4.2 适用场景 5. 有序集合 (Sorted Set)5.1 特点5.2 适用场景 6. Redis 数据类型的选型建议结语 前言 Redis 作为一款高性能的…

gz sim机器人SDF模型 [持续更新]

机器人SDF模型 linklink的一级pose材质 plugin话题信息通信键盘操作plugin Sensor传感器imu 不算教学&#xff0c;个人的记录 sdf的格式跟urdf有所不同&#xff0c;必须是完整的一个包括&#xff0c;比如< pose></ pose>这样前一个后一个&#xff0c;urdf中是有<…

【MySQL | 六、索引特性(进一步理解)】

目录 索引的理解索引的作用MySQL与磁盘的IOPage单个Page的分类多个Page的组织B树的特点 B树和B树的区别聚簇索引 VS 非聚簇索引聚簇索引的优缺点非聚簇索引的优缺点 创建索引常见索引分为&#xff1a;主键索引InnoDB主键索引的生成过程&#xff08;1&#xff09;初始化&#xf…

计算机网络高频(三)UDP基础

计算机网络高频(三)UDP基础 1.UDP的头部格式是什么样的?⭐ UDP 头部具有以下字段: 源端口(Source Port):16 位字段,表示发送方的端口号。目标端口(Destination Port):16 位字段,表示接收方的端口号。长度(Length):16 位字段,表示 UDP 数据报(包括头部和数据部…

【测试开发】OKR 小程序端黑盒测试报告

【测试报告】OKR 小程序端 项目名称版本号测试负责人测试完成日期联系方式OKR 小程序端4.0马铭胜2025-03-2515362558972 1、项目背景 1.1 OKR 用户端 在如今这个快节奏的时代中&#xff0c;个人和组织的成长往往依赖于清晰、明确且意义深远的目标。然而&#xff0c;如何设定…

部署高可用PostgreSQL14集群

目录 基础依赖包安装 consul配置 patroni配置 vip-manager配置 pgbouncer配置 haproxy配置 验证 本文将介绍如何使用Patroni、Consul、vip-manager、Pgbouncer、HaProxy组件来部署一个3节点的高可用、高吞吐、负载均衡的PostgresSQL集群&#xff08;14版本&#xff09;&…

Vue3中keep-alive缓存组件应用场景。

文章目录 一、KeepAlive是什么&#xff1f;二、基本使用1.例子2.keep-alive使用 三、其他属性3.1 包含/排除3.2 最大缓存实例数3.3 缓存实例的生命周期 总结 一、KeepAlive是什么&#xff1f; 是一个内置组件&#xff0c;它的功能是在多个组件间动态切换时缓存被移除的组件实例…

CosyVoice2在Windows系统上本地部署的详细步骤

CosyVoice2在Windows系统上本地部署的详细步骤&#xff1a; 下载源码并初始化&#xff1a; 确保你的设备上安装了Git。打开命令提示符&#xff08;cmd&#xff09;&#xff0c;执行以下命令来克隆仓库&#xff1a;git clone --recursive https://github.com/FunAudioLLM/CosyVo…