1 接口定义
1.接口是前后端沟通的桥梁,是数据传输通道,包括外部接口、内部接口,内部接口又包括:上层服务与下层服务接口、同级接口;
2.接口泛指实体把自己提供给外界的一种抽象化物(可以为另一实体),用以由内部操作分离出外部沟通方法,使其能被内部修改而不影响外界其他实体与其交互的方式;
输入数据————》接口(待测软件)————》返回结果
2 接口的分类

目前在企业的测试当中,基本上所说的接口都是网络接口。
3 常见的接口类型
基于tcp私有协议接口
不采用常见的公用的应用层协议,而是采用自己公司内部的私有协议来组织和解析应用层数据。
优点:
- 安全性更高
- 效率更高
主要的应用场景:
- IM
- 游戏服务器端
- 物联网
webservice
简单的说WebService是一个SOA(面向服务的编程)的架构,它是不依赖于语言,不依赖于平台,可以实现不同的语言(通过 xml 描述)间的相互调用,通过Internet进行基于Http协议的网络应用间的交互。
dubbo
Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。
restful
RESTFull接口,简称REST,描述了一个架构式的网络系统;
RESTful架构是对MVC架构改进后所形成的一种架构,通过使用事先定义好的接口与不同的服务联系起来。在RESTful架构中,浏览器使用POST,DELETE,PUT和GET四种请求方式分别对指定的URL资源进行增删改查操作。因此,RESTful是通过URI实现对资源的管理及访问,具有扩展性强、结构清晰的特点。
RPC
- RPC(Remote Procedure Call)远程过程调用,简单的理解是一个节点请求另一个节点提供的服务
- 本地过程调用:如果需要将本地student对象的age+1,可以实现一个addAge()方法,将student对象传入,对年龄进行更新之后返回即可,本地方法调用的函数体通过函数指针来指定。
- 远程过程调用:上述操作的过程中,如果addAge()这个方法在服务端,我们还能像调用本地方法一样去调用这个addAge()方法,就是RPC
上面说的webservice和dubbo都是RPC的实现,RPC和协议无关,例如:webservice走的是http协议,dubbo可以走tcp协议.
4 网络协议
4.1 OSI的来源
OSI(Open System Interconnect),即开放式系统互联。一般叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互连模型。其含义就是推荐所有公司使用这个规范来控制网络。这样所有公司都有相同的规范,就能互联了。

4.2 OSI七层和TCP/IP四层的对应关系
TCP/IP协议族是对OSI七层标准模型的一个实现。

4.3 TCP/IP的四层的作用分别是什么

数据链路层(网络接口层)
负责在相邻的设备间通过物理线路(网线,光纤等)进行数据传输。
网络层
负责数据的包装、寻址和路由。网路层负责在原机器和目标机器之间建立它们所使用的路由。也就是负责数据传输的路线。就是通常说的IP层。这一层就是我们经常说的IP协议层。IP协议是Internet的基础。
传输层
传输层建立了主机端到端的链接,传输层的作用是为上层协议提供端到端的可靠和透明的数据传输服务,包括处理差错控制和流量控制等问题。该层向高层屏蔽了下层数据通信的细节,使高层用户看到的只是在两个传输实体间的一条主机到主机的、可由用户控制和设定的、可靠的数据通路。其中TCP协议(Transmission Control Protocol)提供可靠的数据流运输服务。UDP协议(Use Datagram Protocol)提供不可靠的用户数据报服务。
应用层
OSI参考模型中最靠近用户的一层,是为计算机用户提供应用接口,也为用户直接提供各种网络服务。我们常见应用层的网络服务协议有:HTTP,HTTPS,FTP,POP3、SMTP等。

本文来自博客园,作者:术科术,转载请注明原文链接:https://www.cnblogs.com/shukeshu/p/15501852.html
更多文章请关注《万象专栏》
转载请注明出处:https://www.wanxiangsucai.com/read/cv10662