分层网络模型(OSI、TCP/IP)及对应的网络协议

OSI七层网络模型

        OSI(Open System Interconnect),即开放式系统互连参考模型, 一般都叫OSI参考模型,是ISO组织于1985年研究的网络互连模型。OSI是分层的体系结构,每一层是一个模块,用于完成某种功能,并具有自己的通信协议。ISO依据以下五个原则将整个OSI划分成了七个层次:

  1. 网络中各节点具有相同的层次;
  2. 网络中各节点同等层次功能相同;
  3. 同一节点内相邻层通过接口通信;
  4. 同一节点内底层向高层提供服务;
  5. 网络中各节点同层通过协议通信。

        OSI划分的七个层次由高到低依次为:Application(应用层)、Presentation(表示层)、Session(会话层)、Transport(传输层)、Network(网络层)、DataLink(数据链路层)和Physical(物理层)。其中高三层(应用层、表示层和会话层)可以视为应用层,而剩余层则可视为数据流动层,其中低三层(网络层、数据链路层、物理层)需要依赖硬件设备。

  1. 应用层(Application layer):【负责为计算机用户提供接口和服务。数据单位:报文】。应用层是OSI模型中的最高层,是直接面向用户的一层,为计算机用户提供接口和服务。用户的通信内容要由应用进程解决,这就要求应用层采用不同的应用协议来解决不同类型的应用要求,并且保证这些不同类型的应用所采用的低层通信协议是一致的。应用层中包含了若干独立的用户通用服务协议模块,为网络用户之间的通信提供专用的程序服务。需要注意的是应用层并不是应用程序,而是为应用程序提供服务。常见协议有:HTTP、HTTPS、FTP、TFTP、SMTP、POP3、SSH等。
  2. 表示层(Presentation Layer):【负责为应用层提供语法转换/翻译(加密、解密、编码、解码、压缩、解压缩)、语法选择和连接管理服务。数据单位:报文】。表示层为在应用过程之间传送的信息提供表示方法的服务。表示层以下各层主要完成的是从源端到目的端可靠地的数据传送,而表示层更关心的是所传送数据的语法和语义。表示层的主要功能是处理在两个通信系统中交换信息的表示方式,主要包括数据格式变化、数据加密与解密、数据压缩与解压等。在网络带宽一定的前提下数据压缩的越小其传输速率就越快,所以表示层的数据压缩与解压被视为掌握网络传输速率的关键因素。表示层提供的数据加密服务是重要的网络安全要素,其确保了数据的安全传输,也是各种安全服务最为重视的关键。表示层为应用层所提供的服务包括:语法转换、语法选择和联接管理。常见协议有:XDR、SMB、Telnet、Relogin等。
  3. 会话层(Presentation Layer):【负责建立、管理、终止应用进程中的通信会话。数据单位:报文】。会话层的主要功能是负责维护两个节点之间的传输联接,确保点到点传输不中断,以及管理数据交换等功能。会话层在应用进程中建立、管理和终止会话。会话层还可以通过对话控制来决定使用何种通信方式,全双工通信或半双工通信。会话层通过自身协议对请求与应答进行协调。会话层主要是管理不同主机上不同进程的通信内容,打造更加完整的协调机制,从而确保用户之间无论是建立对话还是释放会话连接,都能最大程度保证数据交换的及时性和规范性。常见协议有:RPC、SSH、SCP、SMTP、DNS等。
  4. 传输层(Transport Layer):【负责建立。管理端到端的数据传输和通信连接。数据单位:TCP-报文段segments,UDP-数据报datagrams】。传输层是网络体系结构中高低层之间衔接的一个接口层。传输层不仅仅是一个单独的结构层,而是整个分析体系协议的核心。传输层主要为用户提供End—to—End(端到端)服务,处理数据报错误、数据包次序等传输问题。传输层是计算机通信体系结构中关键一层,它向高层屏蔽了下层数据的通信细节,使用户完全不用考虑物理层、数据链路层和网络层工作的详细情况。传输层使用网络层提供的网络联接服务,依据系统需求可以选择数据传输时使用面向联接的服务或是面向无联接的服务。常见协议有:TCP,UDP、SCTP等。
  5. 网络层(Network Layer):【负责寻址、交换、数据路由(决定数据在网络的路径),数据单位:数据包packet】。网络层主要为数据在节点之间传输创建逻辑链路,通过路由选择算法为报文或分组选择最佳路径,从而实现拥塞控制、网络互联等功能。网络层是以路由器为最高节点俯瞰网络的关键层,它负责把分组从源网络传输到目标网络的路由选择工作。具体地说,数据链路层的数据在这一层被转换为数据包,然后通过路径选择、分段组合、顺序、进/出路由等控制,将信息从一个网络设备传送到另一个网络设备互联网是由多个网络组成在一起的一个集合,正是借助了网络层的路由路径选择功能,才能使得多个网络之间的联接得以畅通,信息得以共享。网络层提供的服务有面向联接和面向无联接的服务两种。面向联接的服务是可靠的联接服务,是数据在交换之前必须先建立联接,然后传输数据,结束后终止之前建立联接的服务。网络层以虚电路服务的方式实现面向联接的服务。面向无联接的服务是一种不可靠的服务,不能防止报文的丢失、重发或失序。面向无联接的服务优点在于其服务方式灵活方便,并且非常迅速。网络层以数据报服务的方式实现面向无联接的服务。常见协议有:IP,ICMP、IGMP、ARP、RARP等。
  6. 数据链路层(Data Link Layer):【负责建立、管理相邻节点之间的数据通信链路。数据单位:帧frame】。数据链路层是在通信实体间建立数据链路联接,传输的基本单位为“帧”,并为网络层提供差错控制和流量控制服务数据链路层由MAC(介质访问控制子层)和LLC(逻辑链路控制子层)组成。介质访问控制子层的主要任务是规定如何在物理线路上传输帧。逻辑链路控制子层对在同一条网络链路上的设备之间的通信进行管理。数据链路控制子层主要负责逻辑上识别不同协议类型,并对其进行封装。也就是说数据链路控制子层会接受网络协议数据、分组的数据报并且添加更多的控制信息,从而把这个分组传送到它的目标设备。常见协议有:FDDI、PPP等。
  7. 物理层(Physical Layer):【数据通信的光电物理特性,负责数据帧在实际物理网络中的传输(实际数据传输)。数据单位:比特流】。实际最终信号的传输是通过物理层实现的。通过物理介质传输比特流。物理层是参考模型中的最底层,主要定义了系统的电气、机械、过程和功能标准。如:电压、物理数据速率、最大传输距离、物理联接器和其他的类似特性。物理层的主要功能是利用传输介质为数据链路层提供物理联接,负责数据流的物理传输工作。物理层传输的基本单位是比特流,即0和1,也就是最基本的电信号或光信号,是最基本的物理传输特征。 物理层定义了通信网络之间物理链路的电气特性或机械特性,主要负责比特流和电压、光线等传输方式之间建立互换模式,并且依据比特流进行实时性传输,其中比特流记为0或1。常见协议有:IEEE 802.1A、IEEE 802.2等。
OSI七层TCP/IP五层TCP/IP四层主要协议应用对应设备

应用层应用层应用层

HTTP、HTTPS、FTP、TFTPSMTP、POP3、IMAP、DNS、HTML、TELNET、TLS/SSL、SSH、SNMP、SLP、NNTP

应用程序计算机
表示层
会话层
传输层传输层传输层TCP、UDP、SCTP、UDP-Lite、DCCP操作系统防火墙

网络层网络层网络层IP、ICMP、IGMP、ARP、RARP、IGRP、OSPF、IDRP、ESP、EGP路由器
数据链路层数据链路层网络接口层SLIP、FDDI、PDN、PPP设备驱动程序与网络接口交换机
物理层物理层IEEE 802.1A、IEEE 802.2 ~ IEEE 802.11网卡

TCP/IP 四层网络模型

        OSI参考模型与TCP/IP模型都采用了分层体系结构,将庞大而复杂的问题转化为若干个较小且易于处理的子问题。不同的是OSl参考模型划分七层,而TCP/IP参考模型最多划分了5个层次,分别是物理层,数据链路层、网络层、传输层和应用层,将OSI参考模型中的高三层合并为一层统称应用层。TCP/IP四层网络模型是在五层模型的基础上将物理层和数据链路层合二为一,称之网络接口层(Link Layer),此时该网络模型包括网络接口层、网络层、传输层和应用层。

五层网络模型数据封装与解封装过程

相关网络协议

ARP(Address Resolution Protocol):地址解析协议,将IP解析成MAC地址

DNS:域名解析协议

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

DHCP(Dynamic Host Configuration Protocol):动态主机配置协议,它是在TCP/IP网络上使客户机获得配置信息的协议

FTP(File Transfer Protocol)文件传输协议,它是一个标准协议,是在计算机和网络之间交换文件的最简单的方法。

HTTP(Hypertext Transfer Protocol):超文本传输协议

HTTPS(Secure Hypertext Transfer Protocol):安全超文本传输协议,它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作.

ICMP(Internet Control Message Protocol):Internet控制信息协议,互联网控制报文协议

ping ip定义消息类型有:TTL超时、地址的请求与应答、信息的请求与应答、目的地不可到达

SMTP(Simple Mail Transfer Protocol):简单邮件传送协议

TELNETProtocol:虚拟终端协议

TFTP(Trivial File Transfer Protocol):小文件传输协议

UDP(User Datagram Protocol):用户数据报协议,它是定义用来在互连网络环境中提供包交换的计算机通信的协议

TCP(Transmission Control Protocol):传输控制协议,是一种面向连接的、可靠的、基于字节流的传输层通信协议log转发:开启一个协议:tcp(三次握手和四次挥手)

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

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

相关文章

服务器GPU占用,kill -9 PID 用不了,解决办法

PID(progress ID 进程ID) 上图为占用情况,使用下面的指令都不管用 kill -9 PID kill -15 PID # 加入sudo 还是不行 # 等等网上的 chatgpt 提供的其他办法,一圈试了下来还是不管用最后解决办法 首先用下面的指令查看进程的树结构…

【Hexo】自动在中英文之间添加空格

本文首发于 ❄️慕雪的寒舍 如题,中英文添加空格是比较规范的写法, 但是我个人实在是懒,每次都要这么弄太累了。想找找hexo有没有对应的插件,还是有的 npm install hexo-filter-auto-spacing --save安装了之后,在hexo的…

〖大前端 - 基础入门三大核心之JS篇㊿〗- 面向对象之对象的方法、遍历、深浅克隆

说明:该文属于 大前端全栈架构白宝书专栏,目前阶段免费,如需要项目实战或者是体系化资源,文末名片加V!作者:哈哥撩编程,十余年工作经验, 从事过全栈研发、产品经理等工作,目前在公司…

iOS使用CoreText完成txt阅读器

CoreText是一个高效处理字符和字形转换和进行文字排版的框架,API基于C语言。 常见的CoreText类介绍 (1)、CFAttributedStringRef 属性字符串,用于存储需要绘制的文字字符和字符属性 (2)、CTFramesetterR…

JVM 内存分析工具 Memory Analyzer Tool(MAT)的深度讲解

目录 一. 前言 二. MAT 使用场景及主要解决问题 三. MAT 基础概念 3.1. Heap Dump 3.2. Shallow Heap 3.3. Retained Set 3.4. Retained Heap 3.5. Dominator Tree 3.6. OQL 3.7. references 四. MAT 功能概述 4.1. 内存分布 4.2. 对象间依赖 4.3. 对象状态 4.4…

鸿蒙前端开发-构建第一个ArkTS应用(Stage模型)

创建ArkTS工程 若首次打开DevEco Studio,请点击Create Project创建工程。如果已经打开了一个工程,请在菜单栏选择File > New > Create Project来创建一个新工程。 选择Application应用开发(本文以应用开发为例,Atomic Serv…

docker-compose安装教程

1.确认docker-compose是否安装 docker-compose -v如上图所示表示未安装,需要安装。 如上图所示表示已经安装,不需要再安装,如果觉得版本低想升级,也可以继续安装。 2.离线安装 下载docker-compose安装包,上传到服务…

人工智能原理复习--机器学习

文章目录 上一篇机器学习概述归纳(示例)学习ID3决策树算法K近邻算法下一篇 上一篇 人工智能原理复习–搜索策略(二) 机器学习概述 学习系统的基本结构: #mermaid-svg-JMjIZHjVOirLolvu {font-family:"trebuchet ms",verdana,ari…

辨析旅行商问题(TSP)与车辆路径问题(VRP)

目录 前言旅行商问题 (TSP)问题介绍数学模型符号定义问题输入约束条件目标函数问题输出 解的空间解空间大小计算解释 车辆路径问题 (VRP)问题介绍TSP到VRP的过渡数学模型符号定义问题输入约束条件优化目标问题输出 解空间特殊情况一般情况 TSP 与 VRP 对比 前言 计划是通过本文…

基于JavaWeb+SSM+Vue助农扶贫微信小程序系统的设计和实现

基于JavaWebSSMVue助农扶贫微信小程序系统的设计和实现 源码获取入口Lun文目录前言主要技术系统设计功能截图 源码获取入口 Lun文目录 目 录 第一章 绪论 1 1.1 研究背景 1 1.2 研究意义 1 1.3 研究内容 2 第二章 开发环境与技术 3 2.1 JSP技术 3 2.2 MySQL数据库 3 2.3 Java…

基于Solr的全文检索系统的实现与应用

文章目录 一、概念1、什么是Solr2、与Lucene的比较区别1)Lucene2)Solr 二、Solr的安装与配置1、Solr的下载2、Solr的文件夹结构3、运行环境4、Solr整合tomcat1)Solr Home与SolrCore2)整合步骤 5、Solr管理后台1)Dashbo…

微服务学习:Nacos配置中心

先打开Nacos(详见微服务学习:Nacos微服务架构中的服务注册、服务发现和动态配置&Nacos下载) 1.环境隔离: 新建命名空间: 记住命名空间ID: c82496fb-237f-47f7-91ed-288a53a63324 再配置 就可达成环…

docker-centos中基于keepalived+niginx模拟主从热备完整过程

文章目录 一、环境准备二、主机1、环境搭建1.1 镜像拉取1.2 创建网桥1.3 启动容器1.4 配置镜像源1.5 下载工具包1.6 下载keepalived1.7 下载nginx 2、配置2.1 配置keepalived2.2 配置nginx2.2.1 查看nginx.conf2.2.2 修改index.html 3、启动3.1 启动nginx3.2 启动keepalived 4、…

【HarmonyOS开发】控件开发过程中,知识点记录

1、问题记录及解决方案 1.1 资源(Icon&i18n)问题 控件:只有一个JS文件,不会将任何资源型文件(图片、字体、默认文字等)打包到SO中。因此,当我们开发控件时,需要将需要使用到的资…

【机器学习】042_迁移学习

一、概述、定义 目的: 迁移学习的目的是将某个领域或任务上学习到的模式、知识应用到不同但相关的领域里,获取更多数据,而不必投入许多时间人力来进行数据的标注。 举例: 已经会下中国象棋,就可以类比着来学习国际…

Navicat连接Oracle数据库

Navicat连接Oracle数据库 打开服务里面找到Oracle服务 OracleServerXE或者OracleServerTTL 创建数据库连接 连接名默认自己起 主机选择本地 端口默认 服务名在服务中可以找到输入后缀 用户名默认都是system 密码是创建oracle时候填写的口令 点击测试连接即可

Spring Boot中的事务是如何实现的?懂吗?

SpringBoot中的事务管理,用得好,能确保数据的一致性和完整性;用得不好,可能会给性能带来不小的影响哦。 基本使用 在SpringBoot中,事务的使用非常简洁。首先,得感谢Spring框架提供的Transactional注解&am…

【金融数据分析】计算沪深300指数行业权重分布并用饼图展示

前言 前面的文章我们已经介绍了如何获取沪深300成分股所述行业以及权重的数据,想要了解这部分内容的小伙伴可以阅读上一篇文章 springbootjdbcTemplatesqlite编程示例——以沪深300成分股数据处理为例-CSDN博客 那么有了上文获取的数据,我们实际上可以…

【rabbitMQ】rabbitMQ控制台模拟收发消息

目录 1.新建队列 2.交换机绑定队列 3.查看消息是否到达队列 总结: 1.新建队列 2.交换机绑定队列 点击amq.fonout 3.查看消息是否到达队列 总结: 生产者(publisher)发送消息,先到达交换机,再到队列&…

期末速成数据库极简版【存储过程】(5)

目录 【7】系统存储过程 【8】用户存储过程——带输出参数的存储过程 创建存储过程 存储过程调用 【9】用户存储过程——不带输出参数的存储过程 【7】系统存储过程 系统存储我们就不做过程讲解用户存储过程会考察一道大题,所以我们把重点放在用户存储过程。…