网络参考模型

OSI七层网络参考模型

在这里插入图片描述

OSI模型仅作为参考,现实中并不用,OSI模型的目的是为了解决主机之间的网络通讯。

1. 物理层:

物理层将由比特(0和1)组成的数据用不同的媒介(电、光或其他形式的电磁波)传输出去。数据从网络接口出去后,经过不同形式的网络拓扑(并不是一条线走到底)。
在这里插入图片描述

因此需要中继器和集线器这样的设备。信号去哪台设备是需要定向的,所以需要高级一点的网络模型。
在这里插入图片描述

在这里插入图片描述

2. 数据链路层:

在数据链路层,比特会被封装成帧(数据链路层表示数据的特殊名字而已),在封装时会加上mac地址(物理地址)。
在这里插入图片描述

网卡出厂时就有全球唯一的Mac地址(16进制)。
在这里插入图片描述

为了可以通过Mac地址对不同设备进行数据的传输,就出现了交换机,这里说的是二层交换机,比方说这里有一台交换机连接多台主机,发送端发送数据的时候,交换机就知道了发送端的Mac地址,如果此时交换机也知道接收端的Mac地址,就可以把数据直接发送过去了。物理地址就是这样一跳一跳的进行传递。另外,因为物理层在传输0和1的时候,可能会0变成1或者1变成0,会进行差错检测以及一定的差错纠正。另外,设备之间的传输能力以及接收能力也是个问题,很可能这边喷水式传输,另一边夹缝式接收。因此需要流动控制来避免这种不对称。

3. 网络层:

互联网是一张大网,如果用Mac物理地址来作为唯一的寻址方法是不科学的。比如我和你买了同一个厂出的网卡,我和你的网卡如果差别就只有一个字母,但是我和你的距离十万八千里,物理地址此时就很难做出快速定位,相当于我有你的名字,但我不知道你住哪里,找不到你,因此需要IP地址来进行寻址和路由选择。IP这样的逻辑地址就是实现端到端的基础了,而不是物理地址那样的跳到跳传输。说到路由选择,也就是说路由器也是网络层的核心。包就是网络层里数据的名字。在封装为二层帧之前,就是包。
在这里插入图片描述

路由器根据包里的IP地址进行路由转发,地址管理和路由选择就是这一层的核心。

4. 传输层:

虽然有Mac和IP地址,就是可以抵达对方主机。但是对方主机可能运行着无数多个软件进程,假设我用谷歌和火狐浏览器同时登录网站,如何让数据去到指定的软件服务上,就需要用到端口号作为地址来定位了。
比如客户端这里生成不同的端口号,即使同时访问HTTP端口80也是没问题的。根据不同的语言端口号来做出响应就可以了。
在这里插入图片描述

所以传输层在网络层的端到端基础上实现了服务进程到服务进程的传输。段就是传输层里数据的名字,在封装为三层包之前就是段。
在这里插入图片描述

传输层管理两个节点之间数据的传输,负责可靠传输(TCP协议)和不可靠传输(UDP协议),另外还有一个新的叫QUIC。其中TCP允许应用把字节流变成多份段,而不是整个字节数据完整的发送出去。
在这里插入图片描述

传输层还有流量控制来保证传输速度,再加上错误控制来进行数据完整的接收。

5. 会话层:

比方说你现在登录某个网站,网站服务可以保持你的登录状态,不用每次都输入账号和密码。当然,网站服务会管理和控制登录状态,另外会话层还负责同步服务,比方说你上次看到电影高潮的时刻突然停电了,再次登录账号的时候就可以自动同步到上次看到的时间段。

6. 表示层:

不同计算机内部的各自表示方式可能不太相同,表示层就来负责这样的转换,也就是编码和解码数据往往还需要进行加密。比方说HTTPS就会对我们的数据进行加密和解密。另外我们可能还需要给文件瘦身,压缩也是这一层负责的。

7. 应用层:

常见的应用层协议:HTTP、FTP
应用层使得应用之间可以实现沟通(逻辑上),是最接近用户的那一层。实际上的连通需要物理层。
应用层、表示层和会话层的数据统称为应用数据或者应用负载,也可以叫做上层数据,同时也是教科书上说的报文。

了解了各层的作用,现在就可以把全部关联起来。客户端要发送数据,也就是报文,报文来到传输层,加上端口号,封装成段。段来的网络层加上IP地址,封装成包。注意这里的包是含有目标IP地址的,但因为目标IP地址不是同一个网络下的,要发送到其他的网络就需要经过默认网关。
在这里插入图片描述

现在就出现了个问题,客户端主机最初并不知道默认网关的Mac地址,没有办法封装成帧,这个时候就可以用ARP协议进行广播,找到网关IP对应的Mac地址,把包封装成帧,原Mac地址写自己的,目标mac地址填广播地址。
在这里插入图片描述

假设当前网络有个2层交换机,这个交换机只需要记录下不同的接口对应的Mac地址就好了。交换机收到广播后就帮忙发送出去,人手一份,所以默认网关收到消息后查看了帧,发现了发送端的Mac地址,再解封发现包里面的IP地址,就会把客户端ma地址和IP地址关联为一台主机。同时默认网关会把自己的IP地址放入包里,再结合自己的Mac地址封装成帧,默认网关就这样做出响应,这样原路返回,发送端就知道默认网关的Mac地址了,现在就可以封装成帧,并且发送数据比特流到了默认网关的时候解封为帧,发现是发送给自己的,再解封为包,查看到目标地址是在另一个网络中的,就会进行路由转发,最终到达目的网络。如果目标的网关知道目标IP地址和Mac地址是哪台主机,封装成帧就可以直接发送过去了。如果不知道,也还是可以用ARP就好,目标主机收到包,确认是自己的IP地址以后,解封查看段可以发现源和目标端口号,用目标端口号给到指定的应用程序,应用程序处理好后就可以按照源的信息做出响应。回去的原理也是一样的。

TCP/IP 参考模型

另外一个著名的模型是 TCP/IP 模型。TCP/IP 是传输控制协议/网际协议(Transmission Control Protocol/Internet Protocol)的简称,是指能够在多个不同网络间实现信息传输的协议族。TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇,只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议。

  • TCP/IP 4层模型(思科)
  • TCP/IP 5层模型(华为)

OSI参考模型与TCP/IP模型都采用了分层体系结构,将庞大而复杂的问题转化为着干个较小且易于处理的子问
题。不同的是OSl参考模型划分7层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用
层,而TCP/IP参考模型最多划分了5个层次,分别是物理层,数据链路层、网络层、传输层和应用层,将OSI参考模型中的高三层合并为一层统称应用层。在层次结构上,两者都采用了分层体系结构,但是TCP/IP参考模型比OSI参考模型更简化。
在这里插入图片描述
OSI 参考模型没有考虑任何一组特定的协议,因此 OSI 更具有通用性。而 TCP/IP 参考模型与 TCP/IP 协议簇吻合得很好,虽然该模型不适用于其他任何协议栈,但如今的网络多以 TCP/IP 协议簇作为基础,这使得在分层设计上没有过多考虑协议的 OSI 分层理念,所以没有广泛地应用于实际工作中。相反,人们更多地应用 TCP/IP 分层模型在实际工作中分析问题、解决问题。

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

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

相关文章

黑马软件测试第一篇_测试理论

概念 使用技术手段验证软件功能是否符合需求 测试种类 功能测试 自动化测试 接口测试 性能测试 按测试阶段划分 单元测试:针对程序源码进行测试 集成测试:又称接口测试,针对模块之间访问地址进行测试 系统测试:对整个系统进行…

京东零售数据湖应用与实践

作者:陈洪健:京东零售大数据架构师,深耕大数据 10 年,2019 年加入京东,主要负责 OLAP 优化、大数据传输工具生态、流批一体、SRE 建设。 当前企业数据处理广泛采用 Lambda 架构。Lambda 架构的优点是保证了数据的完整性…

YOLO的相关改进机制

我的面包多平台有多种关于YOLO的改进,大家尽早关注,不迷路

【宽字节注入】

字符编码 url 编码 GBK编码 utf8 编码 宽字节注入 php中的转译函数 宽字节注入介绍 练习 正常输入没有回显: 没有回显 usernameadmin&passwordadmin 闭合单引号,依旧没有回显 usernameadmin and 11%23&passwordadmin利用宽字节尝试闭合,依旧…

查看SQL Server授权序列号通过SQL查询查看安装日志文件使用PowerShell查询

本人详解 作者:王文峰,参加过 CSDN 2020年度博客之星,《Java王大师王天师》 公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的关注和支持!本人外号:神秘小峯 山峯 转载说明:务必注明来源(注明:作者:王文峰…

在Stable Diffusion WebUI中安装SadTalker插件时几种错误提示的处理方法

SD中的插件一般安装比较简单,但也有一些插件安装会比较难。比如我在安装SadTalker时,就遇到很多问题,一度放弃了,后来查了一些网上攻略,自己也反复查看日志,终于解决,不吐不快。 一、在Stable …

闪迪U盘误删的数据该怎么恢复呢?3个方法轻松解决

闪迪是一家全球知名的美国公司,也是全球最大的闪存数据存储卡产品供应商,其中,闪迪U盘作为其主要产品之一,因其便携性、大容量和高速传输能力而深受用户喜爱。然而,在平时存储重要数据的时候,会因为我们一系…

ElasticSearch备考 -- Update by query Reindex

一、题目 有个索引task,里面的文档长这样 现在需要添加一个字段all,这个字段的值是以下 a、b、c、d字段的值连在一起 二、思考 需要把四个字段拼接到一起,组成一个新的字段,这个就需要脚本, 这里有两种方案&#xff…

CSRF | GET 型 CSRF 漏洞攻击

关注这个漏洞的其他相关笔记:CSRF 漏洞 - 学习手册-CSDN博客 0x01:GET 型 CSRF 漏洞攻击 —— 理论篇 GET 型 CSRF 漏洞是指攻击者通过构造恶意的 HTTP GET 请求,利用用户的登录状态,在用户不知情的情况下,诱使浏览器…

Elasticsearch(二)集成Spring Boot 基本的API操作

目录 一、集成Spring Boot 1、创建项目 2、pom文件 查看springboot集成的依赖 3、增加es的config类 二、索引相关API 1、创建索引 2、获取索引,判断其是否存在 3、删除索引 三、文档相关API 1、添加文档 2、获取文档,判断是否存在 3、获取文档…

【D3.js in Action 3 精译_029】3.5 给 D3 条形图加注图表标签(上)

当前内容所在位置(可进入专栏查看其他译好的章节内容) 第一部分 D3.js 基础知识 第一章 D3.js 简介(已完结) 1.1 何为 D3.js?1.2 D3 生态系统——入门须知1.3 数据可视化最佳实践(上)1.3 数据可…

深度学习:基于MindSpore实现ResNet50中药分拣

ResNet基本介绍 ResNet(Residual Network)是一种深度神经网络架构,由微软研究院的Kaiming He等人在2015年提出,并且在ILSVRC 2015竞赛中取得了很好的成绩。ResNet主要解决了随着网络深度增加而出现的退化问题,即当网络…

vulnhub-digitalworld.local DEVELOPMENT靶机

vulnhub:digitalworld.local: DEVELOPMENT ~ VulnHub 导入靶机,放在kali同网段,扫描 靶机在192.168.114.129,扫描端口 开了几个端口,8080端口有网页,访问 说是让访问html_pages 似乎把页面都写出来了&…

Unity网络开发基础 —— 实践小项目

概述 接Unity网络开发基础 导入基础知识中的代码 需求分析 手动写Handler类 手动书写消息池 using GamePlayer; using System; using System.Collections; using System.Collections.Generic; using UnityEngine;/// <summary> /// 消息池中 主要是用于 注册 ID和消息类…

JavaEE之多线程进阶-面试问题

一.常见的锁策略 锁策略不是指某一个具体的锁&#xff0c;所有的锁都可以往这些锁策略中套 1.悲观锁与乐观锁 预测所冲突的概率是否高&#xff0c;悲观锁为预测锁冲突的概率较高&#xff0c;乐观锁为预测锁冲突的概率更低。 2.重量级锁和轻量级锁 从加锁的开销角度判断&am…

ssm教师办公管理系统的设计与实现+jsp

系统包含&#xff1a;源码论文 所用技术&#xff1a;SpringBootVueSSMMybatisMysql 免费提供给大家参考或者学习&#xff0c;获取源码请私聊我 需要定制请私聊 目 录 目 录 III 1 绪论 1 1.1 研究背景 1 1.2 目的和意义 1 1.3 论文结构安排 2 2 相关技术 3 2.1 JSP技…

大模型存储选型 JuiceFS 在关键环节性能详解

从去年开始&#xff0c;LLM大语言模型领域发展迅速、如 LLaMA、ChatGLM、Baichuan、Qwen 和 yi-model 等基础模型&#xff08;Foundation Models&#xff09;的数量显著增加。众多企业也开始基于这些基础模型做 post-training 的相关工作&#xff0c;以开发特定垂直领域的模型实…

一键生成二维码的源码系统 电脑+手机版自适应代码 带完整的安装代码包以及搭建部署教程

系统概述 一键生成二维码的源码系统是一款集二维码生成、管理和应用于一体的综合性平台。它采用先进的技术和算法&#xff0c;能够快速、准确地生成各种类型的二维码&#xff0c;包括文本、链接、图片等。同时&#xff0c;该系统还具备高度的灵活性和可扩展性&#xff0c;能够…

基于matlab变频器控制交流电机调速系统的设计与仿真(毕业论文)

目录 摘要 I ABSTRACT II 绪论 1 1交流调速技术发展概况 2 1.1电力电子器件 3 1.2变流技术 3 1.3变频调速的控制方式 4 1.4MATLAB/Simulink仿真介绍 4 2逆变电路的建模与仿真 5 2.1绝缘栅双极型晶体管 6 2.2三相桥式逆变电路的基本原理 6 2.3正弦脉冲宽度调制&#xff08;SPWM&…

六西格玛设计DFSS方法论在消费级无人机设计中的应用——张驰咨询

本文基于六西格玛设计方法论&#xff0c;对消费级无人机的设计流程进行系统化研究&#xff0c;探讨如何通过六西格玛设计的理念、工具和方法提升无人机产品的设计质量和市场竞争力。文章从市场定位、客户需求分析出发&#xff0c;深入到关键KPI指标的制定&#xff0c;并逐步阐述…