计算机网络 | OSI 参考模型

计算机网络 | OSI 参考模型

  • 计算机网络 | OSI 参考模型
    • 应用层
    • 表示层
    • 会话层
    • 传输层
    • 网络层
    • 数据链路层
    • 物理层

参考视频:王道计算机考研 计算机网络

参考书:《2022年计算机网络考研复习指导》

计算机网络 | OSI 参考模型

OSI 参考模型自下而上分为7层:

在这里插入图片描述

名称英文作用
应用层Application Layer直接为用户的应用进程(例如电子邮件、文件传输和终端仿真)提供服务。如HTTP、SMTP、FTP、DNS 等
表示层Presentation Layer把数据转换为能与接收者的系统格式兼容并适合传输的格式,即让两个系统可以交换信息
会话层Session Layer负责在数据传输中设置和维护计算机网络中两台计算机之间的通信连接
传输层Transport Layer负责端到端通讯,可靠传输,不可靠传输 ,流量控制,复用分用
网络层Network Layer负责选择路由最佳路径,规划 IP 地址(ipv4 和 ipv6 变化只会影响网络层),拥塞控制
数据链路层Data Link Layer帧的开始和结束,还有透明传输,差错校验(纠错由传输层解决)
物理层Physical Layer定义网络设备接口标准,电气标准(电压),如何在物理链路上传输的更快

通信过程:

在这里插入图片描述

在这里插入图片描述

应用层

在这里插入图片描述
简介:直接为用户的应用进程(例如电子邮件、文件传输和终端仿真)提供服务。

协议:HTTP、SMTP、FTP、DNS 等。

表示层

简介:把数据转换为能与接收者的系统格式兼容并适合传输的格式,即让两个系统可以交换信息。

协议:JPEG、ASCII 等。

在这里插入图片描述

会话层

简介:负责在数据传输中设置和维护计算机网络中两台计算机之间的通信连接。

协议:ADSP、ASP 等。

在这里插入图片描述

传输层

简介:负责主机中两个进程的通信,即端到端通信。传输单位是报文段或用户数据报。

协议:TCP、UDP 等。

在这里插入图片描述

功能1:可靠传输、不可靠传输

  • 可靠传输:例如,传输一个大文件或者重要文件,需要发送方和接收方先通过确认机制,确认连接后,再将该文件切分层多个报文段或者用户数据报,然后逐个传输(顺序传输),当接收方成功接收到一个报文段后,发送方再发送下一个报文段,如果某个报文段发送/接收失败,则发送方重新发送,直到切分的所有报文段都被接收方接收成功。
  • 不可靠传输:例如,发送简单文件或消息时,直接把数据报发送给接收方即可,不用确认机制确认连接等流程。

功能2:差错控制

例如,当在传输文件或数据时,某些报文段丢失,或传输失序(顺序错误),这时候就需要差错控制,矫正错误。

功能3:流量控制

例如,当大量数据发送给接收方,而接收方接收数据的速率跟不上时,这时候需要数据发送方控制数据发送的量(例如减缓数据发送速率),这就叫流量控制。

功能4:复用分用

  • 复用:多个应用层进程可同时使用下面运输层的服务
  • 分用:运输层把收到的信息分别交付给上面应用层中相应的进程

在这里插入图片描述

网络层

简介:把分组从源端发送到目的端,为分组交换网上的不同主机提供通信服务。

网络层的传输单位是数据报。

协议:IP、IPX、ICMP、IGMP、ARP、RARP、OSPF。

在这里插入图片描述

功能1:路由选择

选择最佳路径。

功能2:流量控制

对发送端发送数量(发送速率)的控制,如果接收端因为数据量大,接收不过来时,就会对发送端进行流量控制。

功能3:差错控制

通信两节点之间约定一些规则(比如,奇偶校验码),如果校验后,分组不满足约定的规则,则对其进行整改或者丢弃该分组(整改失败就丢弃)。

功能4:拥塞控制

其区别于流量控制(发送端),拥塞控制是在全局上进行数据发送的控制。例如:所有结点都来不及接收分组,而要丢掉大量分组的话,网络就处于拥塞状态,因此需要采取一定措施缓解这种拥塞。

数据链路层

简介:把网络层传下来的数据组装成帧。

数据链路层的传输单位是帧。

协议:SDLC、HDLC、PPP、STP。

在这里插入图片描述

功能1:成帧

定义帧的开始和结束。

功能2:差错控制

差错包括帧错和位错。发现差错后,可以丢弃错误的帧,也可以根据协议纠正错误。

数据链路层既可以查错,也可以纠错。

功能3:流量控制

例如,两个相邻节点之间传送数据时,而节点B接收数据的速率跟不上时,这时候需要节点A控制数据发送的量(例如减缓数据发送速率),这就叫流量控制。

流量控制可以协调两个节点的速率,使节点A发送数据的速率刚好是节点B可以接收的速率。

功能4:访问(接入)控制

控制对(共享)信道的访问。

物理层

简介:在物理媒体上实现比特流的透明传输。

物理层的传输单位是比特。

协议:Rj45、802.3 等。

在这里插入图片描述

功能1:定义接口特性

例如,引脚类型、引脚的连接方式。

功能2:定义传输模式

例如,单工、半双工、双工。

功能3:定义传输速率

例如,发送端的发送速率。

功能4:比特同步

利用时钟保证发送端和接收端的每一个比特的同步。

功能5:比特编码

用什么电压表示0/1。例如,曼彻斯特编码。

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

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

相关文章

Text-to-SQL小白入门(八)RLAIF论文:AI代替人类反馈的强化学习

学习RLAIF论文前,可以先学习一下基于人类反馈的强化学习RLHF,相关的微调方法(比如强化学习系列RLHF、RRHF、RLTF、RRTF)的论文、数据集、代码等汇总都可以参考GitHub项目:GitHub - eosphoros-ai/Awesome-Text2SQL: Cur…

mysql5.7获取json数组中的某个对象

前言 表中的一个字段类型是字符串,存的是一个对象数据。 现在要根据对象中的某个属性,获取到整个对象信息。 如果是mysql8,则可以使用JSON_TABLE。 示例:https://blog.csdn.net/weixin_44071721/article/details/123347229 sele…

MIT 6.S081 Operating System/Fall 2020 macOS搭建risc-v与xv6开发调试环境

文章目录 本机配置安装环境Homebrew执行安装脚本查看安装是否成功 RISC-V tools执行brew的安装脚本 QEMUXV6 测试有用的参考链接(感谢前辈)写在结尾 本机配置 电脑型号:Apple M2 Pro 2023 操作系统:macOS Ventura 13.4 所以我的电…

C# 处理TCP数据的类(服务端)

using System; using System.Collections.Generic; using System.Net; using System.Net.Sockets; using System.Threading;namespace TestDemo {/// <summary>/// 处理TCP数据的类&#xff08;服务端&#xff09;/// </summary>public class TcpService{/// <s…

Java中ArrayList 和 LinkedList 的区别是什么?

Java中ArrayList 和 LinkedList 的区别是什么&#xff1f; ArrayList 和 LinkedList 都是Java中常用的集合类&#xff0c;它们用于存储和操作元素的容器&#xff0c;但在内部实现和使用方式上有很大的区别。以下是它们的区别、作用、优缺点以及示例说明&#xff1a; 区别&…

Linux 安全 - LSM hook点

文章目录 一、LSM file system hooks1.1 LSM super_block hooks1.2 LSM file hooks1.3 LSM inode hooks 二、LSM Task hooks三、LSM IPC hooks四、LSM Network hooks五、LSM Module & System hooks 一、LSM file system hooks 在VFS&#xff08;虚拟文件系统&#xff09;层…

JVM第六讲:JVM 基础 - Java 内存模型引入

JVM 基础 - Java 内存模型引入 很多人都无法区分Java内存模型和JVM内存结构&#xff0c;以及Java内存模型与物理内存之间的关系。本文是JVM第六讲&#xff0c;从堆栈角度引入JMM&#xff0c;然后介绍JMM和物理内存之间的关系, 为后面JMM详解, JVM 内存结构详解, Java 对象模型详…

蓝桥杯基础---切面条

切面条 一根高筋拉面&#xff0c;中间切一刀&#xff0c;可以得到2根面条。 如果先对折1次&#xff0c;中间切一刀&#xff0c;可以得到3根面条。 如果连续对折2次&#xff0c;中间切一刀&#xff0c;可以得到5根面条。 那么&#xff0c;连续对折10次&#xff0c;中间切一刀…

react数据管理之setState与Props

react数据管理之setState与Props setState调用原理 setState 是 React 中用于更新组件状态&#xff08;state&#xff09;的方法。它的调用原理可以分为以下几个步骤&#xff1a; 状态的改变&#xff1a;当调用 setState 时&#xff0c;React 会将新的状态对象与当前状态对象…

QT 网络编程 服务端 客户端 QTcpServer

服务端的创建 //创建服务端QTcpServer对象 server new QTcpServer(this);//设置服务端&#xff0c;端口&#xff0c;这里绑定的是主机的所有网卡&#xff0c; server->listen(QHostAddress::Any, 8080);//绑定连接信号与槽 connect(this->server, &QTcpServer::new…

[C++随想录] 继承

继承 继承的引言基类和子类的赋值转换继承中的作用域派生类中的默认成员函数继承与友元继承与静态成员多继承的结构棱形继承的结构棱形虚拟继承的结构继承与组合 继承的引言 概念 继承(inheritance)机制是面向对象程序设计使代码可以 复用的最重要的手段&#xff0c;它允许程序…

Design patterns--观察者模式

设计模式之观察者模式 代码示例 #ifndef OBSERVER_H #define OBSERVER_H#include <map>class Observer { public:Observer();virtual void update(std::map<int, double>) 0; }; #endif // OBSERVER_H#include "observer.h"Observer::Observer() {}#if…

玩转Linux Shell Terminal Tmux

一、Shell编程☘️ 1. Shell指令快捷操作 1. echo # 系统指令 $ echo $(pwd) # 对于系统自带的pwd&#xff0c;此处不能写echo $pwd# 自定义变量 $ foo$(pwd) $ echo $foo # 不同于pwd&#xff0c;对于自定义的foo&#xff0c;不能用$(foo)2. !! # 假设你先执行了以下原本…

python基于django的留学生服务管理平台

留学服务管理平台的用户是系统最根本使用者&#xff0c;按需要分析系统包括三类用户&#xff1a;学生、教师、管理员。这三类用户对系统的需求简要如下。技术栈 后端&#xff1a;pythondjango 前端&#xff1a;vueCSSJavaScriptjQueryelementui 开发语言&#xff1a;Python 框架…

深度学习基础知识 给模型的不同层 设置不同学习率

深度学习基础知识 给模型的不同层 设置不同学习率 1、使用预训练模型时&#xff0c;可能需要将2、学习率设置方式&#xff1a; 1、使用预训练模型时&#xff0c;可能需要将 &#xff08;1&#xff09;预训练好的 backbone 的 参数学习率设置为较小值&#xff0c; &#xff08;2…

自己搭建的若依DEMO地址

自己搭建的若依demo地址 链接: link

深入了解Spring Boot Actuator

文章目录 引言什么是ActuatorActuator的底层技术和原理端点自动配置端点请求处理端点数据提供端点数据暴露 如何使用Actuator添加依赖访问端点自定义端点 实例演示结论 引言 Spring Boot Actuator是一个非常强大且广泛使用的模块&#xff0c;它为Spring Boot应用程序提供了一套…

需永远在线的游戏公司,如何在线替换开源存储?

小帅是一个酷爱游戏的玩家&#xff0c;他玩一款游戏已经很久了&#xff0c;始终乐在其中。 这款游戏风靡全球&#xff0c;在中国手游出海榜单中&#xff0c;长期位居榜首。 他不知道的是&#xff0c;就在他玩游戏的过程中&#xff0c;这款游戏的出品公司&#xff0c;其实已经…

​人机交互中的反馈与前馈

人机交互中的反馈和前馈&#xff0c;是指在用户与机器进行交互的过程中&#xff0c;人机二者对输入的信息做出回应的方式。 反馈&#xff1a;反馈是从机器到人的信息传递过程&#xff0c;主要用于告知用户他们的操作或请求的结果。当用户执行某个操作时&#xff0c;机器通过适当…

云原生之使用Docker部署ServerBee服务器监控工具

云原生之使用Docker部署ServerBee服务器监控工具 一、ServerBee介绍1.1 ServerBee简介1.2 ServerBee特点 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、下载serverbee镜像五、…