小结:应用层:直接为用户的应用进程服务传输层:为两台主机中进程之间

简介: 小结:应用层:直接为用户的应用进程服务传输层:为两台主机中进程之间的通信服务网络层:为网络上的不同主机之间分组的传输服务数据链路层:将数据组分装成帧物理层:把组

我们前一章学习了网络协议和网络结构的概念,知道了网络结构是计算机网络的分层,每层的功能以及每层所使用到的协议的集合。

另外还给大家介绍了协议层次模型,从这个模型里面,我们已经知道了下层为上层服务,上层是通过和相邻的下层之间的接口来接受下层为他的服务,对于对等层的通信实体之间进行各种通信的时候必须要遵守各种各样的协议。

所以说协议是一个水平的概念,而对于服务是一个垂直的概念。

文章目录1.开放系统互联参考模型OSI/RM结构五层的结构a.OSI/RM结构那在1974年的时候,IBM公司率先公布了自己的网络结构标准,被称为SNA系统网络结构。

后来也有其他公司制定了自己网络结构,如果说某一个客户他想扩大自己的网络规模,还需要购买同一个公司生产的设备,这样做的好处也是显而易见,同一个公司生产的各种设备是很容易互联成网的。

那这样处在不同网络结构中的用户,想要互联起来就不太容易,所以就有了著名的开放系统互连参考模型OSI/RM。

市场垄断所谓的开放是指非独家垄断,也就是说要打破垄断,只要每个生产厂商都遵循这个标准,就可以实现彼此之间的互联互通。

我们从图中也可以看出这个结构标准,它定义了网络互联的七层框架,这七层框架里面自顶向下分别是应用层表示层会话层传输层网络层数据链路层物理层该模型在制定的时候,它试图要达到一种理想的境界--就是要求全世界的计算机网络都遵循统一的标准,实现全世界计算机的互联互通。

这看似是一件非常容易的事情,更何况在当时20世纪80年代的时候,许多大公司也纷纷表态去支持这个标准,但是事情的发展却出现了变故,原因是什么呢?

在20世纪90年代初期,由于因特网已经抢先在全世界覆盖了相当大的范围,恰恰相反的是几乎找不到有什么厂家能够生产出符合OSI标准的商用产品,从这里面我们就可以看出来,对于OSI和TCP/IP在占有市场方面相比的话,真可谓是冰火两重天。

所以人们就得出这样一个结论说:OSI开放系统互连,它只是获得了一些理论研究成果,但在市场化方面它是非常失败的,那失败的原因是什么呢?

第二个原因是OSI的协议实现起来过分的复杂,运行的效率相对比较低。

第三个原因是OSI制定的周期太长,使得如果按照这个标准生产设备,无法及时进入市场。

b.五层的结构那既然这样为了能够将这个概念表述得更加清楚,我们就结合着因特网的情况,然后把上面的三层也就是表示层和会话层的功能是放在了应用层里面。

那么正如大家现在所看到形成了五层的结构,那接下来我们就来简单介绍一下这五层的功能分别是什么:后面我们再通过一个实际通信的例子给大家说明一下数据在各个层次之间传送的过程。

那对于应用层来说是结构的最高层,它的功能是直接为用户的应用进程服务。

就是指正在运行的程序,你比如说我们大家都喜欢用微信来聊天,那对于手机上运行的微信序就是我们所说的应用进程。

两台手机微信程序之间要想进行通信,必须要遵守相应的规则,也就是协议。

在应用层里,由于目前我们因特网可以为用户各种各样的服务,所以说在应用层里面用到的协议也很多。

由于一个主机可以同时运行多个进程,比如说我们一边在微信聊天,同时还在接收电子邮件,浏览各种网页,还可以顺便玩玩网络游戏等等,所以说在你的手机上微信、浏览器、网络游戏等程序都在运行着。

那对于传输层而言它主要使用到了两个协议,一个就是传说中大名鼎鼎的传输控制协议TCP,另外一个就是名气稍微差那么一点点的用户数据报协议UDP。

既然这两个协议同时要为这么多的应用进程服务,所以说我们从图中可以看到传输层在发送方有复用的功能,也就是说多个应用进程同时使用下面的传输层服务,比如说有些应用进程,它会选择TCP为它们服务,而有的应用进程会选择UDP服务。

而我们刚刚介绍的传输层实现的是从源主机上的某一个应用程序,比如微信和目的主机上的微信之间的通信,所以对于传输层的通信比网络层来得更加的具体。

也请大家一定要注意,传输层和网络层这两者实现的通信是不一样的。

在因特网中网络层使用的协议,主要是名气更大的网际协议就是IP来完成网络层的功能。

从这个图中我们可以看出,网络层传输的基本单位是分组。

对于发送端,数据链路层的作用:首先是从上层传送来的分组封装成帧,也就是在分组的前面增加一个首部。

在分组的右边,它的后面增加了一个尾部。

然后形成了数据帧,对于数据链路层,再把帧发送给它的下一层,也就是物理层。

从我们现在看到图中,大家可以看到对于物理层传输的基本单位是比特。

比如说对于发送端它是从网卡接口出来的,假如是一个0100101100比特组合,如果在传输线路上没有出错的情况下,接收端收到的也应该是同样顺序的比特组合。

细心的朋友也许会发现,在物理层发送的比特流比在数据链路层产生的帧里面多了几个字节,那它的作用是什么?

是为了能够使得收发双方之间的帧保持同步,因为对于发送端是一帧一帧地发,那接收端也要一帧一帧地收。

小结:应用层:直接为用户的应用进程服务传输层:为两台主机中进程之间的通信服务网络层:为网络上的不同主机之间分组的传输服务数据链路层:将数据组分装成帧物理层:把组成帧的比特流进行透明的传输这样我们就把五层网络结构的功能给大家简单介绍完了,那相信这个时候肯定还有一些同学还是似懂非懂,没关系,在下一章我再通过一个实际通信的例子给大家进一步的说明。


以上是文章"

小结:应用层:直接为用户的应用进程服务传输层:为两台主机中进程之间

"的内容,欢迎阅读甘青宁科技网的其它文章