网络分层和数据

219 阅读2分钟

为什么网络要分层?

为了描述超级复杂的系统,计算机网络采用了分层的方法,来描述这种复杂性。

每一层都有一定的功能,每一层都使用它以下所有层次提供的服务,也就是下一层是基于上一层服务之上的。

计算机就是分层方式来描述,我们只需要关注层次本身的功能和向上提供的服务,就可以理解复杂的系统。

以下是两种网络分层方法:

image.png 这里,大家可以从左边的5层因特网协议栈开始学习。右边的7层标准OSI参考模型是国际标准化阻止试图对网络协议栈进行标准化的时候搞出来的一套东西。我们大概知道他每一层对应原来的5层协议栈中的哪一层就好。

分层与接口测试的关系:

在分层模型描述下的复杂系统,它的每一个层次都会具备自己的功能,以及向更上方的层次提供服务。服务就是service,而接口测试有的时候又叫服务测试。比如web service测试——网络服务测试。换言之,我们做接口测试,其实测试的就是待测软件提供的服务。而现在大多数待测软件是网络程序,它使用了互联网各个层次的服务,又在其上附加了自己的功能,并提供给用户用。

因此,我们可以这样来理解接口测试: image.png 这里,一个待测软件,提供给用户的很多很多接口就是我们接口测试要测试的服务。同样的,一个复杂的待测软件内部也可以有很多接口,也可以分层次,比如是这样: image.png 像这样,一个待测软件里也分了很多层次,这个图上是一个超级简单的3层结构。那么这里数据库层提供了数据存储的服务,service层和它以下的层次一起提供了各种业务逻辑处理功能,而UI层和它以下的层次一起提供了基于界面的业务逻辑处理功能。

到这里为止,我们知道了更广义的接口测试,在系统的各个层次上提供服务,都可以做接口测试。