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

4.1--入门知识扫盲,ISO知识体系介绍(看一遍,协议啥的全部记住)

OSI七层模型:网络世界的"七重天"生存指南(附快递小哥版图解)

“如果你觉得网络分层很抽象,那就想象自己在寄快递” —— 来自一个被三次握手逼疯的程序员

开场白:网络通信就像送外卖

假设你要给隔壁妹子送奶茶:

物理层:你的电动车  
数据链路层:外卖箱里的保温袋  
网络层:手机导航规划路线  
传输层:确认妹子是否在家  
会话层:打电话说"奶茶到啦"  
表示层:把奶茶包装成爱心形状  
应用层:妹子喝到奶茶的表情包

一、OSI七层结构总览:网络世界的通天塔

1.1 七层模型 vs 现实世界快递流程

应用层
把情书折成纸飞机
表示层
用摩斯密码加密
会话层
确认收件人是否在家
传输层
把情书切成小纸条
网络层
规划送信路线
数据链路层
骑共享单车配送
物理层
纸条材质是防水牛皮纸

1.2 七层功能对照表(肥宅快乐版)

层级官方名称江湖绰号核心任务常用协议
7应用层戏精层装逼界面和表情包HTTP, FTP, SMTP
6表示层美图秀秀层加密/压缩/格式转换SSL, TLS, JPEG
5会话层居委会大妈层维持聊天关系RPC, NetBIOS
4传输层快递分拣中心确保包裹完整送达TCP, UDP
3网络层高德地图层找最佳送餐路线IP, ICMP, BGP
2数据链路层快递小哥层保证隔壁小区的配送MAC, PPP, ARP
1物理层秋名山车神层用啥交通工具送快递以太网, 光纤, 5G

二、逐层拆解:从顶楼到底层的奇幻漂流

2.1 应用层(第七层):戏精的诞生

  • 核心任务:给程序加特效
  • 常用协议
    • HTTP:网购时的"亲在吗"
    • FTP:文件传输界的搬运工
    • SMTP:电子邮件的鸽子快递
  • 经典语录:“这个需求很简单,怎么实现我不管”

2.2 表示层(第六层):网络界的翻译官

  • 三大绝活
    1. 数据加密 → 把情书写成火星文
    2. 数据压缩 → 把10页情书折成纸鹤
    3. 格式转换 → 把Word转PDF防止乱码
  • 常用协议:SSL/TLS(网银的防偷窥玻璃)

2.3 会话层(第五层):社交牛逼症患者

  • 日常工作
    • 建立会话 → “在吗?聊聊?”
    • 维持连接 → “对方正在输入…”
    • 断线重连 → “刚刚掉线了,你接着说”
  • 常用协议:RPC(远程撩妹助手)

2.4 传输层(第四层):快递公司的质检员

协议性格工作方式适用场景
TCP强迫症患者必须收到签收回执网银转账、文件传输
UDP佛系青年只管扔不管到直播、游戏语音

(段子:TCP送快递要客户签字,UDP直接往门口一扔就跑)

2.5 网络层(第三层):人肉GPS导航

  • 核心装备
    • IP地址 → 门牌号
    • 路由器 → 十字路口的交警
    • ICMP → 快递丢了的投诉电话
  • 经典骚操作:VPN(假装自己在国外领快递)

2.6 数据链路层(第二层):快递站分拣员

找到
没找到
数据帧
查MAC地址表
精准投递
广播喊人
更新地址表
  • 重要协议
    • ARP:小区门口的"XX栋怎么走"
    • MAC地址:每个设备的身份证号

2.7 物理层(第一层):秋名山老司机

  • 交通工具清单
    • 网线 → 自行车道
    • 光纤 → 高速公路
    • 无线 → 无人机配送
  • 经典语录:“甭管里面装的啥,先送到再说”
    在这里插入图片描述

三、终极灵魂拷问:为什么是七层不是八层?

3.1 七层模型 vs TCP/IP四层模型

OSI七层TCP/IP四层现实比喻
应用层应用层外卖平台APP
表示层订单备注栏
会话层客服聊天窗口
传输层传输层快递公司
网络层网络层物流中转中心
数据链路层网络接口层快递小哥
物理层配送用的电动车

3.2 学七层模型能防脱发吗?

虽然不能防脱发,但可以:

  1. 面试时假装很懂网络
  2. 甩锅给其他层(“这个bug肯定是物理层的问题”)
  3. 看懂路由器说明书
  4. 在妹子面前装X

结语:网络分层就像千层蛋糕

记住这三点保你不挂科:

  1. 上层为下层提供VIP服务
  2. 下层为上层搬砖
  3. 最底层真的在搬砖(物理层:你礼貌吗?)

“学网络分层就像剥洋葱,边学边哭…” —— 来自某网络工程专业学生的朋友圈

相关文章:

4.1--入门知识扫盲,ISO知识体系介绍(看一遍,协议啥的全部记住)

OSI七层模型:网络世界的"七重天"生存指南(附快递小哥版图解) “如果你觉得网络分层很抽象,那就想象自己在寄快递” —— 来自一个被三次握手逼疯的程序员 开场白:网络通信就像送外卖 假设你要给隔壁妹子送奶…...

AI训练如何获取海量数据,论平台的重要性

引言:数据——AI时代的“新石油” 在人工智能和大模型技术飞速发展的今天,数据已成为驱动技术进步的 “ 燃料 ”。无论是训练聊天机器人、优化推荐算法,还是开发自动驾驶系统,都需要海量、多样化的数据支持。 然而,获…...

Axure高级功能深度解析一一高效原型设计的利器

Axure作为一款专业的原型设计工具,凭借其强大的功能和灵活的交互设计,成为了众多设计师和开发者的首选。本文将深入探讨Axure的高级功能,帮助大家更好地利用这款工具,提升原型设计的效率和质量。 一、Axure高级功能概览 • 变量管…...

QT国产化系统软件开发

一、国产操作系统 1、鸿蒙HarmonyOS NEXT ‌核心架构‌ 采用自研鸿蒙内核,完全脱离Linux与AOSP代码,基于分布式架构实现跨设备资源虚拟化整合,支持动态调度多终端硬件能力‌。通过分布式软总线技术(D-Bus)实现低时延…...

Git 使用SSH登陆

一、SSH介绍 SSH连接相比于HTTP连接会简单一点,因为SSH连接通过了私钥与公钥进行身份认证,这样就不需要像HTTP一样,每次clone或者操作仓库都需要输入密码 其中私钥和密钥是需要在自己电脑上生成的,通过命令即可生成一个私钥和一个…...

织梦DedeCMS修改文章【标题、短标题、关键词】长度限制

在后台虽然可以设置标题的长度,但是数据库的字段固定是60个字符,短标题是36字符,关键词30字符,所以这里教大家修改一下织梦DedeCMS修改【标题】【短标题】【关键词】长度限制 一、后台配置 1、进入dede后台管理 -> 系统 ->…...

Powershell WSL部署ubuntu22.04.5子系统

前提条件WSL 安装 wsl 安装参考1wsl 安装csdn参考2wsl 百度网盘离线下载 本地目录安装ubuntu22.04.5 子系统 powershell 管理员打开执行(实现,下载安装ubuntu子系统,用户创建,远程ssh登录设置,防火墙端口开放)子系统IP 查看方法wsl...

umi自带的tailwindcss修改为手动安装

1》为什么改为手动? 主要是为了解决这个报错问题,虽然重新运行也可解决,但是总是要运行2-3次,比较麻烦 2》如何手动 1,先在devDependencies下安装这两个包 pnpm install postcss8.5.1 -D "autoprefixer"…...

Android 13 Launcher3最近任务列表“全部清除“按钮位置优化实战

一、问题背景与实现难点 在Android 13横屏设备开发中,系统默认将最近任务列表的"全部清除"按钮布局在屏幕左侧,这与用户习惯的底部布局存在明显差异。相较于Android 8.1时代SystemUI模块的实现,Android 13将相关逻辑迁移至Launche…...

基于k3s部署Nginx、MySQL、SpringBoot和Redis的详细教程

1. 安装k3s集群 1.1 单节点快速部署 # 使用root或sudo权限执行 curl -sfL https://get.k3s.io | sh -# 验证安装 sudo kubectl get nodes # 输出应为Ready状态 sudo systemctl status k3s1.2 配置kubectl权限(可选) mkdir -p ~/.kube sudo cp /etc/r…...

SQL Server数据库简介及应用

SQL Server以高性能、高可用性著称,支持Windows/Linux跨平台部署,满足混合云需求。其内存优化表、列存储索引加速数据处理,AlwaysOn可用性组保障业务连续性。安全体系集成身份验证与加密,符合企业合规要求。与Azure无缝集成&#…...

麒麟V10 arm cpu aarch64 下编译 RocketMQ-Client-CPP 2.2.0

国产自主可控服务器需要访问RocketMQ消息队列,最新的CSDK是2020年发布的 rocketmq-client-cpp-2.2.0 这个版本支持TLS模式。 用默认的版本安装遇到一些问题,记录一下。 下载Releases apache/rocketmq-client-cpp GitHubhttps://github.com/apache/roc…...

【商城实战(49)】解锁小程序端适配与优化,让商城飞起来

【商城实战】专栏重磅来袭!这是一份专为开发者与电商从业者打造的超详细指南。从项目基础搭建,运用 uniapp、Element Plus、SpringBoot 搭建商城框架,到用户、商品、订单等核心模块开发,再到性能优化、安全加固、多端适配&#xf…...

使用码云搭建CocoaPods远程私有库

一、创建远程私有索引库 用来存放私有框架的详细描述信息.podspec文件 1. 创建私有库 假设码云上创建的私有库为repo-spec 2. 查看本地已存在的索引库 pod repo list 3. 将远程私有索引库添加到本地 pod repo add [https://gitee.com/jingluoguo/repo-spec.git](https://gi…...

深度学习有哪些算法?

深度学习包含多种算法和模型,广泛应用于图像处理、自然语言处理、语音识别等领域。以下是主要分类及代表性算法: 一、基础神经网络 多层感知机(MLP) 最简单的深度学习模型,由多个全连接层组成,用于分类和回…...

专访LayaAir引擎最有价值专家-施杨

在 LayaAir 引擎的资源商店中,许多开发者都会注意到一个熟悉的名字——“射手座”。他不仅贡献了大量高质量的 Shader 资源,让一些开发者通过他的作品了解到 LayaAir 引擎在 3D 视觉效果上的更多可能,也让大家能够以低成本直接学习并应用这些…...

AJAX的理解和原理还有概念

你想问的可能是 AJAX(Asynchronous JavaScript and XML) ,它并不是一门新的编程语言,而是一种在无需重新加载整个网页的情况下,能够与服务器进行异步通信并更新部分网页的技术。以下从基本概念、原理、优点、使用场景等…...

自然语言处理:文本聚类

介绍 大家好,博主又来和大家分享自然语言处理领域的知识了。今天给大家分享的内容是自然语言处理中的文本聚类。 文本聚类在自然语言处理领域占据着重要地位,它能将大量无序的文本按照内容的相似性自动划分成不同的类别,极大地提高了文本处…...

RabbitMQ 集群降配

这里写自定义目录标题 摘要检查状态1. 检查 RabbitMQ 服务状态2. 检查 RabbitMQ 端口监听3. 检查 RabbitMQ 管理插件是否启用4. 检查开机自启状态5. 确认集群高可用性6. 检查使用该集群的服务是否做了断开重连 实操1. 负载均衡配置2. 逐个节点降配(滚动操作&#xf…...

uniapp工程中解析markdown文件

在uniapp中如何导入markdown文件,同时在页面中解析成html,请参考以下配置: 1. 安装以下3个依赖包 npm install marked highlight.js vite-plugin-markdown 2. 创建vite.config.js配置文件 // vite.config.js import { defineConfig } fro…...

数据结构:二叉树(一)·(重点)

前言 什么树?what? 树的概念与结构 概念: 树是⼀种⾮线性的数据结构,它是由 n ( n>0 ) 个有限结点组成⼀个具有层次关系的集合。 结构: 有⼀个特殊的结点,称为根结点&#…...

DevEco Studio的使用

目录 1.创建ArkTS工程 2.ArkTS工程目录结构(Stage模型) 构建第一个页面 构建第二个页面 实现页面间的跳转 1.创建ArkTS工程 若首次打开DevEco Studio,请点击Create Project创建工程。如果已经打开了一个工程,请在菜单栏选择…...

十七、实战开发 uni-app x 项目(仿京东)- 后端指南

前面我们已经用uniappx进行了前端实战学习 一、实战 开发uni-app x项目(仿京东)-规划-CSDN博客 二、实战 开发uni-app x项目(仿京东)-项目搭建-CSDN博客 三、实战开发 uni-app x 项目(仿京东)- 技术选型-CSDN博客 四、实战开发 uni-app x 项目(仿京东)- 页面设计-C…...

数据开发岗笔试题>>sql(hive) ,excel [2025]

sql SELECT user_id, AVG(loan_amount) AS avg_loan_amount FROM loan GROUP BY user_id HAVING AVG(loan_amount) > 20000; 授信表:credit 字段包含user_id(用户id),credit_id(授信id),credit_time(授信时间yyyy-MM-dd HH:mm:ss)&#x…...

内存模型以及分区,需要详细到每个区放什么。

1. 内存模型以及分区,需要详细到每个区放什么。 JVM 分为堆区和栈区,还有方法区,初始化的对象放在堆里面,引用放在栈里面, class 类信息常量池(static 常量和 static 变量)等放在方法区new: …...

python strip/rstrip/lstrip详细讲解(涵盖许多例子、作用以及复杂行为处理)

python strip/rstrip/lstrip详细讲解: 在Python中,strip、lstrip、rstrip 是用于字符串处理的常用方法,主要功能是去除字符串首尾的指定字符。它们的区别如下: 1. strip([chars]) 作用 :删除字符串开头和结尾 处所有属于 chars 的字符,直到遇到不属于 chars 的字符为止…...

Spring Boot集成PageHelper:轻松实现数据库分页功能

Spring Boot集成PageHelper:轻松实现数据库分页功能 1. 为什么需要分页? 分页是处理大数据量查询的核心技术,其重要性体现在: 性能优化:避免单次查询返回过多数据导致内存溢出或响应延迟。用户体验:前端展…...

OpenGL ES 入门指南:从基础到实战

引言:为什么需要 OpenGL ES? 在当今的嵌入式设备(如智能手机、汽车仪表盘、智能家居中控屏)中,流畅的图形渲染能力是用户体验的核心。OpenGL ES(OpenGL for Embedded Systems) 作为行业标准&am…...

docker安装milvus向量数据库Attu可视化界面

Docker 部署 Milvus 及 Attu 可视化工具完整指南 一、环境准备 安装 Docker 及 Docker Compose Docker 版本需 ≥20.10.12Docker Compose 版本需 ≥2.20.0(推荐 V2) 验证 Docker 环境 docker --version && docker-compose --version若出现&…...

Elasticsearch 索引

一、简介 在 Elasticsearch 中,索引(Index)是存储相关文档的地方,类似于关系数据库中的数据库。索引是 Elasticsearch 中最重要的概念之一,用于组织和存储数据。 二、索引的基本概念 索引(Index&#xf…...