您当前的位置:首页 > 电脑百科 > 网络技术 > 网络知识

网络七层协议的通俗理解

时间:2019-08-29 14:08:40  来源:  作者:

前面我们曾经提到关于网络七层协议的通信原理,有朋友反映不是很理解,那么今天我们用通俗的方式来了解。

网络七层协议的通俗理解

 

通过两台机器通信过程简单介绍OSI七层:

需求1:

科学家要解决的第一个问题是,两个硬件之间怎么通信。具体就是一台发些比特流,然后另一台能收到。于是,科学家发明了物理层:

主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后在转化为1、0,也就是我们常说的数模转换与模数转换)。这一层的数据叫做比特。

需求2:

现在通过电线能发数据流了,但是,还希望通过无线电波,通过其它介质来传输。然后还要保证传输过去的比特流是正确的,要有纠错功能。于是,发明了数据链路层:

定义了如何让格式化数据以进行传输,以及如何让控制对物理介质的访问。这一层通常还提供错误检测和纠正,以确保数据的可靠传输。

需求3:

现在能发正确的发比特流数据到另一台计算机了,但是当发大量数据时候,可能需要好长时间,例如一个视频格式的,网络会中断好多次(事实上,即使有了物理层和数据链路层,网络还是经常中断,只是中断的时间是毫秒级别的)。那么,还须要保证传输大量文件时的准确性。于是,要对发出去的数据进行封装。就像发快递一样,一个个地发。于是,先发明了传输层(传输层在OSI模型中网络层上面):

例如TCP,是用于发大量数据的,发了1万个包出去,另一台电脑就要告诉是否接受到了1万个包,如果缺了3个包,就告诉是第1001,234,8888个包丢了,那再发一次。这样,就能保证对方把这个视频完整接收了。

例如UDP,是用于发送少量数据的。发20个包出去,一般不会丢包,所以不管你收到多少个。在多人互动游戏,也经常用UDP协议,因为一般都是简单的信息,而且有广播的需求。如果用TCP,效率就很低,因为它会不停地告诉主机收到了20个包,或者收到了18个包,再发两个!如果同时有1万台计算机都这样做,那么用TCP反而会降低效率,还不如用UDP,主机发出去就算了,丢几个包你就卡一下,算了,下次再发包你再更新。

TCP协议是会绑定IP和端口的协议,下面会介绍IP协议。

需求4:

传输层只是解决了打包的问题。但是如果有多台计算机,怎么找到要发的那台?或者,A要给F发信息,中间要经过B,C,D,E,但是中间还有好多节点如K.J.Z.Y。怎么选择最佳路径?这就是路由要做的事。于是,发明了网络层,即路由器:交换价那些具有寻址功能的设备所实现的功能,这一层定义的是IP地址,通过IP地址寻址。所以产生了IP协议。

需求5:

现在已经保证给正确的计算机,发送正确的封装过后的信息了。但是用户级别的体验好不好?难道我每次都要调用TCP去打包,然后调用IP协议去找路由,自己去发?当然不行,所以我们要建立一个自动收发包,自动寻址的功能。于是,发明了会话层:会话层的作用就是建立和管理应用程序之间的通信。

需求6:

现在能保证应用程序自动收发包和寻址了。但是要用linux给window发包,两个系统语法不一致,就像安装包一样,exe是不能在linux下用的,shell在window下也是不能直接运行的。于是发明了表示层(presentation):解决不同系统之间的通信语法问题。

需求7:

OK,现在所有必要条件都准备好了,可以写个Android程序、web程序去实现需求吧。



Tags:网络协议   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
简介简单就是美。在网络协议的世界中,TCP和UDP是建立在IP协议基础上的两个非常通用的协议。我们现在经常使用的HTTP协议就是建立在TCP协议的基础上的。相当于TCP的稳定性来说...【详细内容】
2021-12-06  Tags: 网络协议  点击:(22)  评论:(0)  加入收藏
Wireshark 中文版是一款mac网络协议分析软件,任何负责的网络分析人员都对这个软件情有独钟。如今,几乎没有哪种产品像它这样拥有如此持久的魅力,很容易看出其中的原因。网管员...【详细内容】
2021-08-20  Tags: 网络协议  点击:(72)  评论:(0)  加入收藏
想象一下今天是个无聊的周末,而你正躺在床上无聊的刷着头条或者抖音。同样的视频不停推荐,你百无聊赖,好奇这些视频是如何发送的。1、你得有一个手机,手机中有一个模块叫无线网...【详细内容】
2021-07-20  Tags: 网络协议  点击:(99)  评论:(0)  加入收藏
Wireshark 中文版是一款mac网络协议分析软件,任何负责的网络分析人员都对这个软件情有独钟。如今,几乎没有哪种产品像它这样拥有如此持久的魅力,很容易看出其中的原因。网管员...【详细内容】
2021-06-11  Tags: 网络协议  点击:(102)  评论:(0)  加入收藏
全球统一的 DNS 是很权威,但是我们都知道“适合自己的,才是最好的”。很多时候,标准统一化的 DNS 并不能满足我们定制的需求,这个时候就需要 HTTPDNS 了。然而,我们信任的地址簿...【详细内容】
2021-04-09  Tags: 网络协议  点击:(213)  评论:(0)  加入收藏
之前写过一篇《通俗易懂TCP/IP(概述)》,广受欢迎和好评,有网友催更,便抽空续写IP章节,回应粉丝期待。TCP/IP网络模型TCP/IP网络模型分为4层,自下而上分布为链路层(又叫网络接口层)、...【详细内容】
2020-08-24  Tags: 网络协议  点击:(99)  评论:(0)  加入收藏
 我们知道计算机之间的通过其实都是通过IP+端口的形式,但是我们平时访问的时候根本就没涉及到这两个东西,还是能访问到资源,为啥呢?这得问问我们神奇的DNS。...【详细内容】
2020-07-28  Tags: 网络协议  点击:(86)  评论:(0)  加入收藏
网络协议——TCP/IP协议简介:TCP(传输控制协议)和 IP(网际协议)是两个独立且紧密结合的协议,负责管理和引导数据报文在 Internet上的传输。二者使用专门的报文头定义...【详细内容】
2020-01-02  Tags: 网络协议  点击:(119)  评论:(0)  加入收藏
Flink 的网络协议栈是组成 flink-runtime 模块的核心组件之一,是每个 Flink 作业的核心。它连接所有 TaskManager 的各个子任务(subtask),因此,对于 Flink 作业的性能包括吞吐与延迟都至关重要。与 TaskManager 和 JobMa...【详细内容】
2019-12-12  Tags: 网络协议  点击:(78)  评论:(0)  加入收藏
这个专栏的计算机网络协议,我是在极客时间上学习 已经有三万多人购买的刘超老师的趣谈网络协议专栏,讲的特别好,像看小说一样学习到了平时很枯燥的知识点,计算机网络的书籍太枯...【详细内容】
2019-12-12  Tags: 网络协议  点击:(80)  评论:(0)  加入收藏
▌简易百科推荐
以京训钉开发平台接口文档为例,使用HttpClient类请求调用其接口,对数据进行增删改查等操作。 文档地址: https://www.yuque.com/bjjnts/jxd/bo1oszusing System;using System.C...【详细内容】
2021-12-28  Wednes    Tags:HttpClient   点击:(1)  评论:(0)  加入收藏
阿里云与爱快路由安装组网教程一、开通好阿里云轻量服务器之后在服务器运维-远程连接处进行远程 二、进入控制台后在root权限下根据需要安装的固件位数复制下面命令。32位:wg...【详细内容】
2021-12-28  ikuai    Tags:组网   点击:(1)  评论:(0)  加入收藏
HTTP 报文是在应用程序之间发送的数据块,这些数据块将通过以文本形式的元信息开头,用于 HTTP 协议交互。请求端(客户端)的 HTTP 报文叫做请求报文,响应端(服务器端)的叫做响应...【详细内容】
2021-12-27  程序员蛋蛋    Tags:HTTP 报文   点击:(5)  评论:(0)  加入收藏
一 网络概念:1.带宽: 标识网卡的最大传输速率,单位为 b/s,比如 1Gbps,10Gbps,相当于马路多宽2.吞吐量: 单位时间内传输数据量大小单位为 b/s 或 B/s ,吞吐量/带宽,就是网络的使用率...【详细内容】
2021-12-27  码农世界    Tags:网络   点击:(3)  评论:(0)  加入收藏
1.TCP/IP 网络模型有几层?分别有什么用? TCP/IP网络模型总共有五层 1.应用层:我们能接触到的就是应用层了,手机,电脑这些这些设备都属于应用层。 2.传输层:就是为应用层提供网络...【详细内容】
2021-12-22  憨猪哥08    Tags:TCP/IP   点击:(35)  评论:(0)  加入收藏
TCP握手的时候维护的队列 半连接队列(SYN队列) 全连接队列(accepted队列)半连接队列是什么?服务器收到客户端SYN数据包后,Linux内核会把该连接存储到半连接队列中,并响应SYN+ACK报...【详细内容】
2021-12-21  DifferentJava    Tags:TCP   点击:(10)  评论:(0)  加入收藏
你好,这里是科技前哨。 随着“元宇宙”概念的爆火,下一代互联网即将到来,也成了互联网前沿热议的话题,12月9日美国众议院的听证会上,共和党议员Patrick McHenry甚至宣称,要调整现...【详细内容】
2021-12-17  王煜全    Tags:Web3   点击:(14)  评论:(0)  加入收藏
一、demopublic static void main(String[] args) throws Exception { RetryPolicy retryPolicy = new ExponentialBackoffRetry( 1000, 3);...【详细内容】
2021-12-15  程序员阿龙    Tags:Curator   点击:(22)  评论:(0)  加入收藏
一、计算机网络概述 1.1 计算机网络的分类按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN);按照网络使用者:公用网络、专用网络。1.2 计算机网络的层次结构 TCP/IP四层模...【详细内容】
2021-12-14  一口Linux    Tags:网络知识   点击:(31)  评论:(0)  加入收藏
无论是在外面还是在家里,许多人都习惯了用手机连接 WiFi 进行上网。不知道大家有没有遇到过这样一种情况, 明明已经显示成功连接 WiFi,却仍然提示“网络不可用”或“不可上网”...【详细内容】
2021-12-14  UGREEN绿联    Tags:WiFi   点击:(25)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条