OSI七层网络参考模型

一、物理层

我们要发送出去的数据在计算机里只不过是无数的0和1,0或1就叫做比特,物理层就是把这些比特用不同的媒介传输出去,可以用电、光或者其他形式的电磁波来表示和传输信号,数据从网络接口出去以后,会经过不同的网络拓扑,并不是一条线走到底,因此需要中继器和集线器这样的设备,但还是不够,信号要去到哪台设备是需要定向的,因此需要高级点的数据网络模型。

二、数据链路层

在数据链路层这里,比特会被封装成帧,帧就是这一层表示数据的特殊名字而已,在封装的时候会加上MAC地址,也就是物理地址,网卡出厂的时候就有着全球唯一的MAC地址,为了可以通过MAC地址对不同设备进行数据的传输,就出现了交换机,比方说这里有一台交换机,连接多台主机,发送端发送数据的时候,交换机就知道了发送端的MAC地址,如果此时交换机也知道接收端的MAC地址,就可以把数据直接发送过去了,物理地址就是这样一跳一跳的进行传递,另外因为物理层在传输0和1的时候,可能会0变成1或者1变成0,会进行差错检测,以及一定的差错纠正,另外设备之间的传输能力以及接受能力也是个问题,很可能这边喷水式发送,另一边”夹缝“式接受,因此需要流控制来避免这种不对称,我们知道互联网是一张大网,如果用MAC物理地址作为唯一的寻址方式是不科学的,比如我和你买了同一个厂出的网卡,我和你的网卡如果差别就只有一个字母,但是物理地址相距十万八千里,物理地址此时就很难做出快速定位,就相当于我知道你的名字,但不知道你住哪里,找不到你,因此需要ip地址来进行寻址和路由选择,IP这样的逻辑地址就是实现端到端的基础了,而不是物理地址那样跳到跳传输。

三、网络层

说到路由选择,也就是说路由器也是网络层的核心,包就是网络层里数据的名字,在封装为二层的帧之前就是包,路由器根据包里的IP地址进行路由转发,地址管理和路由选择就是这一层的核心,虽然有MAC和IP地址可以抵达对方主机,但是对方主机可能运行这无数多个软件进程,假设我用 谷歌和火狐浏览器同时登陆网站,如何让数据去到指定的软件服务上,就需要用到端口号作为地址来定位了,比如客户端这里生成不同的端口号,即使同时访问HTTP端口号80也是没问题的,根据不同的源端口号来做出响应就可以了。

四、传输层

所以传输层在网络层端到端的基础上,实现了服务进程到服务进程的传输,段就是传输层里数据的名字,在封装为3层包之前的就是段,传输层管理两个节点之间的数据的传输,负责可靠传输和不可靠传输,也就是大家熟知的协议TCP和UDP,其中TCP允许应用把字节流变成多份段,而不是整个字节数据完整的发送出去,传输层还有流量控制来确保传输速度,再加上错误控制来进行数据完整的接收。

五、会话层

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

六、表示层

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

七、应用层

应用层表示层和会话层的数据统称为应用数据,或者应用负载,也可以叫上层数据,同时也是教科书上说的报文,数据在各层的名字分别是,报文、段、包、帧和比特,就地址来说,有端口号,IP逻辑地址和MAC物理地址,就传输功能来讲,有服务进程到服务进程,端到端,还有跳到跳。

总结

了解了各层的作用,就可以把各层之间联系起来,客户端要发送数据,也就是报文,报文来到传输层就,加上端口号,封装成段,段来到网络层封装成包,注意这里的包是包含有目标IP地址的,毕竟你要知道数据要发送到什么地方,但因为目标IP地址不是同一个网络下的,要发送到其他的网络,就需要经过默认网关,现在就出现了一个问题,客户端主机最初并不知道默认网关的MAC地址,没有办法封装成帧,这个时候就可以用ARP协议进行广播,找到网关IP对应的MAC地址,把包封装成帧,源MAC地址填自己的,目标MAC地址填广播地址,假设当前网络有个二层交换机,这个交换机只需要记录下不同的接口对应的MAC地址就好了,交换机收到广播后就帮忙发送出去”人手一份“,所以默认网关收到消息后,查看了帧,发现了发送端的MAC地址,再解封发现包里面的IP地址,就会把客户端MAC地址和IP地址关联为一台主机,同时默认网关会把自己的IP地址放入包里,再结合自己的MAC地址封装成帧,默认网关就这样做出响应,这样原路返回,发送端就知道默认网关的MAC地址了,现在就可以封装成帧,并且传输数据,比特流到了默认网关的时候,解封为帧发现是发送给自己的,再解封为包查看到目标IP地址是在另一个网络中的,就会进行路由转发,最终到达目的网络,如果目标网关知道目标IP地址和MAC地址是哪台主机封装成帧就可以直接发送过去了,如果不知道也还是可以用ARP广播下就好了,目标主机收到包确认是自己的IP地址以后,解封查看段可以发现源和目标端口号,用目标端口号给到指定的应用程序,应用程序处理好以后,就可以按照源的信息做出响应,回去的原理也是一样的。

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

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

相关文章

dat.gui图形用户页面

一、导入 1.npm安装 npm install --save dat.gui 引入&#xff1a; // CommonJS: const dat require(dat.gui); // ES6: import * as dat from dat.gui; const gui new dat.GUI(); 二、控制器 <!DOCTYPE html> <html lang"en"> <head><…

【重磅开源】MapleBoot权限控制使用介绍(菜单权限、按钮权限、数据权限)

基于SpringBootVue3开发的轻量级快速开发脚手架 ## &#x1f341;项目简介 一个通用的前、后端项目模板 一个快速开发管理系统的项目 一个可以生成SpringBootVue代码的项目 一个持续迭代的开源项目 一个程序员的心血合集 度过严寒&#xff0c;终有春日&#…

【深度学习】Loss为Nan的可能原因

文章目录 1. 问题情境2. 原因分析3. 导致Loss为Nan的其他可能原因 1. 问题情境 在某个网络架构下&#xff0c;我为某个数据项引入了一个损失函数。 这个数据项是nn.Embedding类型的&#xff0c;我加入的损失函数是对nn.Embedding空间做约束。 因为我在没加入优化loss前&#x…

C# WPF入门学习主线篇(八)—— ListBox常见属性和事件

C# WPF入门学习主线篇&#xff08;八&#xff09;—— ListBox常见属性和事件 欢迎来到C# WPF入门学习系列的第八篇。在前面的文章中&#xff0c;我们已经探讨了WPF中的Button、TextBox和Label控件的使用。今天&#xff0c;我们将深入了解WPF中的另一个常用控件——ListBox。本…

Pulsar 社区周报 | No.2024-06-07 | Apache Pulsar 新分支 3.3 版本发布

“ 各位热爱 Pulsar 的小伙伴们&#xff0c;Pulsar 社区周报更新啦&#xff01;这里将记录 Pulsar 社区每周的重要更新&#xff0c;每周发布。 ” 本期主题&#xff1a;Apache Pulsar 新分支 3.3 版本发布 Apache Pulsar 新分支 3.3 版本发布&#xff1a;Apache Pulsar 3.3.0[1…

必备:产品经理工作文档大全

产品经理&#xff08;英文&#xff1a;Product manager&#xff0c;缩写&#xff1a;PM&#xff09;也称产品企划&#xff0c;是指在公司中针对某项或某类的产品进行规划和管理的人员&#xff0c;主要负责产品的研发、制造、营销、渠道等工作。 产品经理是很难定义的一个角色&a…

DeepSORT(目标跟踪算法)中的数值表格与调参的关系

DeepSORT&#xff08;目标跟踪算法&#xff09;中的数值表格与调参的关系 flyfish DeepSORT&#xff08;目标跟踪算法&#xff09;中的马氏距离详解&#xff08;很详细&#xff09; DeepSORT&#xff08;目标跟踪算法&#xff09;中 可以设置阈值进行异常检测或目标跟踪的原…

问题:在信息点统计表中,对于没有信息点的工作区或者房间填写,表明已经分析过该区域 #微信#职场发展#职场发展

问题&#xff1a;在信息点统计表中,对于没有信息点的工作区或者房间填写,表明已经分析过该区域 参考答案如图所示

学历还算能力的一部分吗(机器人方向)

前篇 在人工智能时代&#xff0c;学历还算是能力的一部分吗&#xff1f; 之前写过一篇&#xff0c;现在感觉应该是不严谨&#xff0c;不准确的。 AI如何看待能力&#xff0c;学历&#xff0c;文凭-CSDN博客 那一篇讨论了&#xff1a;{文凭}⊂{学历}⊂{能力} 本篇 不合格且…

【Echarts系列】带图片的饼图

【Echarts系列】带图片的饼图 序前提说明示例数据格式代码动态旋转图片 序 为了节省后续开发学习成本&#xff0c;这个系列将记录我工作所用到的一些echarts图表。 前提说明 因为饼图中间需要添加图片&#xff0c;所以比较特殊&#xff0c;对于饼图中间数据的对齐很容易出现…

正大国际期货:原油投资出现亏损的五种心理弱点

在原油投资当中&#xff0c;有五种心理弱点最容易导致投资者失败&#xff0c;必须注意加以克服! 盲目胆大心理。 有些投资者从未认真系统地学习过投资理论技巧&#xff0c;也没有经过任何模拟训练&#xff0c;甚至连最起码的投资基础知识都不明白&#xff0c;就贸然的进入原油…

企业管理/市场经营/自我管理,500+个经典职场工具 . rar

​500N个实用管理工具包&#xff0c;精选人力资源从业者必备之132项工具、40个管理者实效管理工具、成功自我管理的29个工具、常见的9种营销分析工具等&#xff0c;成功自我管理必备工具。 与班主任联系&#xff0c;即可获得完整资料包&#xff01; 1.PEST分析 2.五力分析 3.…

哈尔滨等保如何做?

哈尔滨等保测评是确保信息系统安全稳定运行的重要一环&#xff0c;它涉及到对业务、资产、安全技术和安全管理的全面调研和评估。本文将详细阐述哈尔滨等保测评的实施步骤和注意事项&#xff0c;帮助读者更好地理解和执行等保测评工作。 首先&#xff0c;我们需要明确等保测评的…

Hexo+Github搭建个人博客教程

hexo官网&#xff1a;https://hexo.io/zh-cn/ butterfly 主题设置&#xff1a;https://butterfly.js.org/ GitHub地址&#xff1a;https://github.com/jerryc127/hexo-theme-butterfly 基础命令 初始化博客命令&#xff1a;hexo init “文件名” 开启本地服务&#xff08;本…

Docker:Docker容器使用

文章目录 容器与宿主机复制容器环境变量设置镜像的导出和导入 由于篇幅原因&#xff0c;把后续的使用搬到这篇来 容器与宿主机复制 启动一个nginx服务 rootVM-24-7-ubuntu:~# docker run --name nginx -p 80:80 -d nginx 7a1578bedd97ffc48e9516d03a148c69e216a30f2d18f2624…

【MySQL】复合查询+表的内外连接

复合查询表的内外连接 1.基本查询回顾2.多表查询3.自连接4.子查询4.1单列子查询4.2多列子查询 5.在from子句中使用子查询6.合并查询7.表的内连和外连7.1内连接7.2外连接7.2.1左外连接 7.2.2右外连接 点赞&#x1f44d;&#x1f44d;收藏&#x1f31f;&#x1f31f;关注&#x1…

Java程序设计————从控制台输入

向控制台输入信息可以借助Scanner扫描器类来实现 语法&#xff1a; Scanner input new Scanner(System.in); 提示 &#xff08;1&#xff09;在使用Scanner类型之前&#xff0c;需要首先指明Scanner类所在的位置&#xff0c;既通过代码 import java.util.Scanner; &…

超强的文本转语音模型ChatTTS,一键打包,免费使用

超强的文本转语音模型ChatTTS&#xff0c;一键打包&#xff0c;免费使用 项目简介项目亮点安装使用python 代码直接引入一键启动包安装部署 ChatTTS webUI 小结一下 文本转语音&#xff08;TTS&#xff09;在生活中的应用非常的广泛&#xff0c;比如有声小说、语音导航&#xf…

电脑安全模式怎么进?详细步骤一学就会!

电脑安全模式是一种特殊的启动模式&#xff0c;加载最少的驱动程序和服务&#xff0c;帮助用户解决系统问题&#xff0c;如驱动程序冲突、病毒感染或系统文件损坏。进入安全模式可以帮助您诊断和修复问题&#xff0c;恢复系统的正常运行。本文将介绍电脑安全模式怎么进的三种方…

长期套餐是不是永久套餐?注意:并不是!

当我们在网上选择流量卡时&#xff0c;除了有短期套餐外&#xff0c;还有不少标注着长期套餐的流量卡&#xff0c;那么&#xff0c;长期套餐是不是永久套餐呢&#xff1f;能一直使用吗&#xff1f; ​ 在这里小编要说一下&#xff0c;长期套餐≠永久套餐 长期套餐就是字面意思…