> 文章列表 > HTTP与TCP区别

HTTP与TCP区别

HTTP与TCP区别

1、TCP对应与传输层、而HTTP对应于应用层,所以HTTP协议是建立在TCP协议之上的;

2、HTTP底层是利用TCP协议传输的,所以支持http也就一定支持TCP;

3、TCP是网络传输协议, HTTP是超文本传输协议;

        TCP是底层协议,定义的是数据传输和连接方式的规范。
        HTTP是应用层协议,定义的是传输数据的内容的规范。

4、HTTP是无状态的短链接,而TCP是有状态的长连接;

长连接:客户端和服务端建立连接后不进行断开,之后客户端再次访问这个服务器上的内容时,继续使用这一条连接通道。

短连接:客户端和服务端建立连接,发送完数据后立马断开连接。下次要取数据,需要再次建立连接。

 

HTTP特点:

  • 无状态:协议对客户端没有状态存储,对事物处理没有“记忆”能力,比如访问一个网站需要反复进行登录操作
  • 无连接:HTTP/1.1之前,由于无状态特点,每次请求需要通过TCP三次握手四次挥手,和服务器重新建立连接。比如某个客户机在短时间多次请求同一个资源,服务器并不能区别是否已经响应过用户的请求,所以每次需要重新响应请求,需要耗费不必要的时间和流量。
  • 基于请求和响应:基本的特性,由客户端发起请求,服务端响应

 

TCP对应于传输层,HTTP对应于应用层,从本质上来说,二者没有可比性。