网络基础学习:osi七层模型

news2024/12/28 19:05:33

osi七层模型

  • 什么是OSI,什么是ISO?
  • 为什么ISO要提出OSI网络七层模型?
  • OSI七层的划分以及具体内容
    • 第七层 应用层
    • 第六层 表示层
    • 第五层 会话层
    • 第四层 传输层
    • 第三层 网络层
    • 第二层 数据链路层
    • 第一层 物理层
  • 每一层与设备的对应关系

什么是OSI,什么是ISO?

OSI通常被叫做开放式系统互联参考模型,英语全称:Open System Interconnection Model,缩写:OSI;简称为OSI模型
这个OSI模型是由ISO提出来的,英语全称:International Organization for Standardization,缩写:ISO;简称国际标准化组织
OSI是一个非政府非营利的国际标准制定组织,由全球各个国家的标准机构组成。在这里插入图片描述
你还别说,OSI与ISO居然如此对称,这是有意为之吗?

为什么ISO要提出OSI网络七层模型?

ISO提出OSI网络七层模型,是为了标准化计算机网络的通信协议体系结构,以便不同厂家、不同计算机之间的通信能够更加可靠和高效
OSI相当于普通话。不管你什么牌子计算机,华为,小米,联想还是外星人。OSI是对于大家都公共适用的,所有计算机都能听懂的的话和共同遵守的规则,相当于联合国制定的规矩,每个国家都得遵守一样。

它解决了计算机网络中的以下几个问题:

  1. 标准:在互联互通的网络环境中,计算机和网络设备使用了不同的协议和技术,标准化网络协议体系结构可以使得不同厂家、不同计算机之间的通信变得更加容易和可靠。

  2. 交互:OSI七层模型将网络协议分为七层,每层都有自己的功能,这样就使得不同计算机和设备可以更好地互相交流和理解,实现了不同计算机之间的交互。

  3. 独立:OSI七层模型将网络协议按照不同的层次划分开来,每个层次的协议都只负责某一方面的功能,因此不同层次之间的协议具有独立性,可以根据需要进行升级和修改。

  4. 扩展:OSI七层模型可以支持不同类型的网络,包括局域网、广域网等,并且可以很容易地支持新的协议和技术,具有很强的可扩展性。

OSI七层的划分以及具体内容

应用

第七层 应用层

应用层(Application Layer)是OSI模型中的最高层,也是和用户最近的一层。它直接面向用户和应用程序,为用户提供各种网络服务和应用程序支持。应用层协议通常由应用程序自己定义,并负责完成数据交换的格式、语法和语义等方面的设计。

应用层协议的功能非常广泛,它可以实现多种不同的应用服务,如LOL,CF等在线联机游戏游戏、Web网页浏览、文件传输、电子邮件、即时消息、网上银行、远程登录、域名系统等等。


HTTP(HyperText Transfer Protocol,超文本传输协议)

HTTP用于在Web浏览器和Web服务器之间传输数据,是Web应用程序最重要的应用层协议。默认端口为80。

HTTPS(Hyper Text Transfer Protocol Secure ,超文本传输加密协议)

HTTPS的主要作用是加密数据传输,确保网络通信的安全性和数据完整性,以防止被黑客窃取数据或篡改数据。它使用SSL/TLS机制对HTTP数据进行加密和认证,使数据在传输过程中变得加密且无法被轻易截获和篡改,为互联网上的敏感信息传输提供了一种安全的方式。默认端口是443。

FTP(File Transfer Protocol,文件传输协议)

FTP用于在客户端和服务器之间传输文件,支持用户认证和访问控制等功能。默认端口为21。

SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)

SMTP主要是用于发送电子邮件的标准协议,支持多种编码方式和附件格式。默认端口为25。

POP3(Post Office Protocol version 3,邮局协议版本3)

用于从邮件服务器上下载邮件的标准协议,支持用户认证和访问控制等功能。默认端口为110。

IMAP4(Internet Message Access Protocol version 4,互联网消息访问协议版本4)

用于从邮件服务器上下载邮件的标准协议,支持在线操作和多种访问方式。默认端口为143。

DNS(Domain Name System,域名系统)

用于将域名转换为IP地址的协议,是Internet中最重要的服务之一。默认端口为53。

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)

用于自动分配IP地址、子网掩码、网关等网络参数的协议,可以简化网络管理和维护。默认端口为67和68。

SSH(Secure Shell,安全外壳协议)

用于加密和保护远程登录会话及其他网络服务,支持用户认证和加密传输数据。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。默认端口为22。

Telnet(Teletype Network,远程登录协议)

用于在客户端和服务器之间进行远程登录和命令行操作,不支持加密传输数据。默认端口为23。

SNMP(Simple Network Management Protocol,简单网络管理协议)

用于管理和监控网络设备的性能、状态和配置等信息,支持远程查询和控制。默认端口为161和162。

IRC(Internet Relay Chat,互联网中继聊天协议)

用于在线聊天和多人会议等功能,可以通过各种客户端软件或Web界面访问。默认端口为6667。


第六层 表示层

负责数据格式与编码方式的转换、加密解密和数据压缩等任务。在实际的通信协议中,表示层往往与应用层或会话层结合使用,对数据进行处理和转换。


MIME(Multipurpose Internet Mail Extensions,多用途互联网邮件扩展)

MIME用于电子邮件及其附件在互联网上传输时的编码和解码,支持多种数据类型的转换和传输。MIME(Multipurpose Internet Mail Extensions)协议并没有自己的端口。它是在电子邮件和Web服务器等应用程序中使用的一种协议,通常使用SMTP(Simple Mail Transfer Protocol)端口25来发送电子邮件,并使用HTTP(Hypertext Transfer Protocol)端口80或443来传输Web页面上的多媒体内容。

SSL/TLS(Secure Socket Layer/Transport Layer Security,安全套接层/传输层安全)

SSL/TLS用于基于TCP/IP协议的网络通信中的加密和认证服务,提供数据加密、完整性验证和身份认证等功能。默认端口号为443(HTTPS)。

ASCII(American Standard Code for Information Interchange,美国信息互换标准代码)

ASCII用于将字符编码转换成二进制数据流进行传输,是网络通信中的一种最基本的编码方式。端口号没有固定值,不同协议可以选择不同的端口。

JPEG(Joint Photographic Experts Group,联合图像专家组)

JPEG用于对图像进行压缩和编码,通过去除图像中的冗余信息实现数据压缩和传输优化。端口号没有固定值,根据不同的应用需要而定。


第五层 会话层

在OSI七层模型中,会话层没有单独的协议,而是利用下层协议提供的会话机制来实现数据交换。会话层的作用是管理和协调应用程序之间的对话和会话,并与表示层一起支持数据转换、加密和解密等功能。


ADSP (AppleTalk Data Stream Protocol,AppleTalk的数据流协议)

ADSP是一种用于在AppleTalk网络上传输数据的协议。ADSP在Macintosh计算机之间进行通信时经常使用,可以支持可靠的、面向连接的通信,以及基于消息的一些特性。端口号为230。

SQL(Structured Query Language,关系型数据库通信的协议)

SQL它定义了一组操作、查询和管理数据库的语法规则。该协议通常使用TCP/IP协议进行通信,其默认端口是1433。

第四层 传输层

传输层的作用是在不可靠的网络上提供可靠的数据传输服务。它负责将应用程序发送的数据分割成较小的数据段,并使用可靠的数据传输协议(如TCP)或不可靠的数据传输协议(如UDP)将这些数据段传输到目标设备。传输层还负责控制数据流量、错误恢复和拥塞控制等任务。
如果你想要稳,就选tcp,想要稳,就选UDP


TCP(Transmission Control Protocol)稳

TCP协议是一种面向连接的、可靠的传输层协议。它通过三次握手建立连接,保证数据传输的可靠性,并使用流量控制和拥塞控制来优化网络性能。TCP协议通常用于传输重要的数据和应用程序,如网页、电子邮件、文件传输等。其默认端口号是80(HTTP协议)、443(HTTPS协议)、25(SMTP协议)等。

UDP(User Datagram Protocol)快

UDP协议是一种无连接的、不可靠的传输层协议。它没有TCP协议那样的错误检测和纠正机制,但具有较低的延迟和更高的吞吐量。UDP协议通常用于需要快速数据传输的应用程序,如实时视频、音频、在线游戏等。其默认端口号包括53(DNS协议)、67/68(DHCP协议)、123(NTP协议)等。

SPX(Sequenced Packet Exchange)

SPX协议是Novell NetWare操作系统中使用的一种传输层协议。它与TCP协议类似,可以保证数据传输的可靠性,并提供流量控制和拥塞控制功能。SPX协议通常用于传输NetWare操作系统内部的数据和应用程序。

第三层 网络层

负责将数据包从源主机传输到目标主机。网络层通过使用IP协议来实现这一过程,提供了路由、寻址和分组传输等功能,以确保数据能够经过多个网络进行传输,并最终到达目标主机。


IP(Internet Protocol,互联网协议)

作用是在互联网上提供分组交换服务,它负责将数据包从源地址传输到目标地址,是TCP/IP网络体系结构中的核心协议。

IPX(Internetwork Packet Exchange,网络数据包交换协议)

是Novell NetWare操作系统所使用的网络层协议,它提供一种可靠的、有序的数据报传递服务。IPX的端口号是16位,取值范围从0x0000到0xFFFF。

DDP(AppleTalk Data Delivery Protocol,AppleTalk数据传输协议)

是苹果公司开发的用于局域网的网络层协议。DDP提供无连接的、不可靠的数据传输服务,是苹果机在早期的主要网络协议之一。DDP的端口号是8位,取值范围从0x00到0xFF。


第二层 数据链路层

负责将网络层传输过来的数据包进行分帧,并在物理介质上进行传输。数据链路层还提供了错误检测和纠正功能,以确保数据的可靠性。此外,数据链路层还实现了访问控制和流量控制等功能,以协调多个设备之间的数据传输。


Frame Relay(Frame Relay Protocol)

用于在广域网上传输数据。它使用虚拟连接方式,将数据分割成较小的帧进行传输。

HDLC(High-Level Data Link Control)

用于在点对点通信中传输数据。它主要用于串行通信中,具有可靠性高、传输效率高等特点。

PPP(Point-to-Point Protocol)

用于在计算机之间建立点对点通信。PPP可以支持多种网络层协议,如TCP/IP、IPX/SPX等。

IEEE 802.3/802.2: IEEE 802(IEEE(Institute of Electrical and Electronics Engineers)发布的一组标准)

IEEE 802.3是以太网的标准,全称为“Ethernet”,用于局域网上的数据传输;IEEE
802.2则是逻辑链路控制的标准,全称为“Logical Link Control”,用于在数据链路层管理数据传输。由于这两个标准经常一起使用,所以也被称为“802.3/802.2”组合。以太网的端口是RJ45接口,而逻辑链路控制没有端口的概念。

第一层 物理层

这一层就是osi最底层了,负责将数字数据转换成物理信号并在网络中传输。其意义在于实现不同设备之间的数据传输和通信,使得计算机网络得以正常工作。物理层还定义了传输媒介、传输速率、编码方式等参数,为上层协议提供了可靠的数据传输基础。常见的协议有rs-232、rs-449、x.21、v.35、isdn、以及fddi、ieee802.3、ieee802.4、和ieee802.5

RS-232是一种串行通信标准,用于在计算机及其外部设备之间传输数据。 RS-449是一种高速串行接口标准,适用于点对点通信连接。
X.21是一种数字传输接口标准,用于连接数字电路交换网(DCE)和数字终端设备(DTE)。
V.35是一种高速串行接口标准,用于连接数据通信设备,支持双向全双工的数据传输。
ISDN是一种综合数字化服务网络,提供语音、数据和视频等多种通信服务。
FDDI是一种局域网标准,支持高速光纤数据传输。
IEEE 802.3是以太网标准,采用CSMA/CD协议控制访问媒体。
IEEE 802.4是令牌总线局域网标准,使用令牌传递机制控制网络访问。
IEEE 802.5是令牌环局域网标准,使用令牌传递机制控制网络访问。

每一层与设备的对应关系

在这里插入图片描述

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

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

相关文章

大模型混战,最先实现“智慧涌现”的会是谁?

作者 | 曾响铃 文 | 响铃说 几秒钟写出了一篇欢迎词; 小说人物乱入现实,快速创作不重样的故事; 鼠标一点,一封英文工作沟通邮件撰写完成; 准确解出数学应用题,还给出解题步骤; 甚至还能理…

【微控制器】16KB R5F102AAASP、R7FA2L1A93CFL 128KB和R7FA2E1A73CFJ 64KB 嵌入式技术资料

R5F102AAASP RL78 16位微控制器具有超低功耗、增强性能、高集成度和各种强大的外设功能。得益于以上特性,RL78 MCU非常适合用于各种应用,包括电池供电设备和家用应用。 RL78微控制器MCU系列包括通用和专用器件。这些MCU可为系统设计人员提供高级省电特性…

实验五 Java多线程程序设计

实验目的 掌握Runnable接口实现多线程的方法掌握Thread类实现多线程的用法掌握Java语言中多线程编程的基本方法 实验内容 线程接力(45分) 编写一个应用程序,除了主线程外,还有三个线程:first、second和third。firs…

MySQL基础(二十四)索引的数据结构

1 为什么使用索引 顺序查询和数据使用二叉树结构再进行查询,如图: 2 索引及其优缺点 2.1 索引概述 MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。 **索引的本质:**索引是数据结构。你…

第九章 使用Vsftpd服务传输文件

文章目录 第九章 使用Vsftpd服务传输文件一、文件传输协议1、FTP介绍2、FTP工作模式 二、Vsftpd服务程序1、安装Vsftpd服务程序2、防火墙配置3、过滤注释信息并通过重定向符写回原始的主配置文件4、Vsftpd服务程序常用的参数以及作用5、匿名访问模式(1)、…

【自己更换模型】如何用 Serverless 一键部署 Stable Diffusion?

作者:寒斜 上一篇讲了如何使用 Serverless Devs 和函数计算快速体验部署 Stable Diffusion,本篇继续聊聊如何解决动态模型加载的问题,从玩起来到用起来。 思路 其实很简单, 我们只需要将镜像里面的动态路径映射到 NAS [ 1] 文件…

为什么调度也需要“血缘分析”和“影响分析”?

摘要:数据治理中经常要遇表或者字段级“血缘分析”和“影响分析”,但是真正在数据ETL调度操作过程中使用影响和血缘分析频繁,看白鲸开源的WhaleStudio如何解决这个难题。 提到“血缘分析”和“影响分析”,普通开发者第一印象就是数…

【Java EE 初阶】线程池简介及实现过程

目录 1.线程池是什么? 2.为什么要使用线程池? 3.如何使用线程池 1.JDK给我们提供了一些方法来创造线程池 4.设计模式之工厂模式 1.工厂模式用途 5.自定义一个线程池 1.可以提交任务到线程池,那么就会有一种数据结构来保存我们提交的任…

java lambda表达式详解

一、Lambda初识 我们知道,在Java中,接口是不能实例化的,但是接口对象可以指向它的实现类对象。如果接口连实现对象都没有呢?那还可以使用匿名类的方式,如下: public class JavaTest { public static void main(Strin…

jenkins,gitlab,实时构建推送

首先jdk,jenkins安装好,新版jenkins不支持jdk8 然后安装环境maven,git 环境配置 插件安装 gitlab插件 Build Authorization Token Root插件 插件环境整好之后新建个任务 源码管理,填入仓库https地址,添加git…

大势智慧软硬件技术答疑第一期

1.重建大师生成的实景三维模型,模型周边的道路植物被压平了,怎么保留植物道路原有形状? 答:这个是单体化生成的地理实体场景,会把地物压平,可以用模方将单体化的模型加入到osgb中。 2.直接导入空三的话这个…

采用docker部署时kafka共享zookeeper的网络配置

采用docker部署kafka、zookeeper,一般的做法是创建一个docker网络,然后kafka、zookeeper都使用这个网络。问题是,我部署到生产环境的时候,这种做法被禁止了。原因是添加了这个docker网络以后,服务器就无法访问了。该服…

Es读写调优、深度分页

写入 ES支持四种对文档的数据写操作 create:如果在PUT数据的时候当前数据已经存在,则数据会被覆盖,如果在PUT的时候加上操作类型create,此时如果数据已存在则会返回失败,因为已经强制指定了操作类型为create&#xf…

Spring核心 AOP

1.什么是AOP? AOP(Aspect Orient Programming),直译过来就是面向切面编程。AOP是一种编程思想,是面向对象编程(OOP)的一种补充。面向对象编程将程序抽象成各个层次的对象,而面向切面…

【笔试强训选择题】Day9.习题(错题)解析

作者简介:大家好,我是未央; 博客首页:未央.303 系列专栏:笔试强训选择题 每日一句:人的一生,可以有所作为的时机只有一次,那就是现在!!! 文章目录…

open3d Image和numpy互转,PointCloud和numpy互转

目录 1. open3d.geometry.Image转numpy 2. numpy 转 open3d.geometry.Image 3. numpy转PointCloud 4. PointCloud转numpy 1. open3d.geometry.Image转numpy np_x np.asarray(x) # (h,w,3) import numpy as np import matplotlib.pyplot as plt import matplotlib.image…

鸿蒙Hi3861学习十-Huawei LiteOS-M(消息队列)

一、简介 消息队列,是一种常用于任务间通信的数据结构,实现了接收来自任务或中断的不固定长度的消息,并根据不同的接口选择传递消息是否存放在自己空间。任务能够从队列里面读取消息,当队列中的消息是空时,挂起读取任务…

EC6108V9/V9C-Hi3798MV100-当贝纯净桌面-卡刷固件包

EC6108V9/V9C-Hi3798MV100-当贝纯净桌面-卡刷固件包-内有教程 特点: 1、适用于对应型号的电视盒子刷机; 2、开放原厂固件屏蔽的市场安装和u盘安装apk; 3、修改dns,三网通用; 4、大量精简内置的没用的软…

C#学习笔记--实现一个可以重复权重并且能够自动排序的容器--MultiplySortedSet

目录 前言SortedSetC#自带类型自定义类SortedSet权值重复 需求自定义容器 -- MultiplySortedSet核心实现思路 MultiplySortedSet 使用C#自带类型自定义类 前言 最近需要在C#中实现一个功能 有一个容器,该容器能自动对里面的元素进行排序,类似C的优先队列…

fast中user_id如何显示user表中的名称_关联模型

问题:编辑框内的user_id显示的是nickname 列表里如何显示nickname或是username 解决方案如下: 需要更改3个地方,控制器,模型,js文件 1.控制器index list($where, $sort, $order, $offset, $limit) $this->build…