网络协议包含 网络协议有哪些

作为软件测试,大家都知道一些常用的网络协议是我们必须要了解和掌握的,比如 HTTP 协议,HTTPS 协议就是两个使用非常广泛的协议,所以也是面试官问的面试的时候问的比较多的两个协议;而且因为这两个协议有相似和关联的地址,面试官为了考察你对其掌握的深度,也经常会问的一个问题就是:你能说说 http 协议和 https 协议的区别么?不了解不妨看完这篇文章
HTTP 协议 其实对于 http 协议,大家可能都比较熟悉 。HTTP 协议,全称是 Hyper Text Transfer Protocol(超文本传输协议) 。它是在 TCP 三次握手建立了链接的基础上工作的,所以 http 协议是基于 TCP 协议的 80 端口的应用层协议,主要作用是用于从万维网 WWW 传输资源到本地浏览器的传送协议 。
HTTP 协议做的事情主要是用来规定客户端和服务端的数据传输格式,所以它是一个标准和规范 。那它是怎么定义这个规范的呢?这就需要我们来看一下这个协议的具体内容了 。我们接下来就用 fiddler 抓包来直观地看一下这个报文的内容:
每一个 http 连接包括请求消息和响应消息两个部分,就像你在浏览器里发送要访问百度页面的请求,那么百度服务器就会返回给我一个响应并展示百度页面,所以 HTTP 协议都是基于请求和响应模式的 。
请求消息 首先我们来看下 HTTP 协议请求消息,也就是 http request,指从客户端到服务端的请求消息,包括以下信息:
请求行:包括请求方法(GET、POST 等),请求地址 uri,HTTP 版本等信息
请求头:包括的内容非常多,比如 co百思特网ntent-type(客户端传递到服务器端的数据格式),User-Agent(标明客户端的基本信息)等
空一行:是格式要求,表示请求头的结束
请求体:就是请求正文,一般是参数等信息
具体抓包显示如下图:

网络协议包含 网络协议有哪些

文章插图
响应消息 服务器收到客户端的请求后就会给出响应,也就是 http response,同样包括以下四个部分信息:
响应行:包括 http 版本以及响应状态码信息
响应头:同样包括的内容比较多,比如 Content-Type(响应消息的格式),cookie\token 等信息
空一行:标识着响应头的结束
响应正文:从服务响应回来的具体数据,比如 XML、JSON 格式的数据,这个也是做接口测试要重点查看的内容 。

网络协议包含 网络协议有哪些

文章插图
通过以上抓包信息我们也可以看出来,http 协议有如下几个特点:
  1. 通信使用的明文进行数据传输的,任何一个中间截取者都可以截取数据进行篡改;
  2. 请求的客户端和响应的服务器端不会对通信双方进行身份的确认,这样就可能会导致任何人都可以假冒成为通讯方而不被发现;
  3. 也没有校验和保护数据的完整性的机制,被篡改的数据没有办法被通讯双方所发现 。
但是随着互联网的不断发展,我们越来越多的业务都在网上进行,对于安全性就越来越重视 。所以针对 HTTP 协议这些不安全的特点,一个新的协议就应运而生,它就是 HTTPS 协议 。
HTTPS 协议 HTTPS,全称是 Hyper Text Transfer Protocol Secure(超文本传输安全协议),是以安全为目标的 HTTP 通道,简单讲就是 HTTP 协议的安全版 。
那么它是怎么实现安全性的呢?看下图:

网络协议包含 网络协议有哪些

文章插图
从图我们可以清晰的看到,HTTPS 协议就是在 HTTP 协议和 TCP 协议之间加入了 SSL 层,所以它的安全性就是通过 ssl 协议来实现的 。所以 HTTPS 协议也经常被叫做:披着 SSL 外壳的 HTTP 协议 。


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: