TCP和HTTP的区别是面试经常被的话题,下面详解4大TCP和HTTP的区别。
层次不同的区别
TCP
TCP是一种传输层协议,负责提供可靠的、面向连接的数据传输服务。
TCP是有三个特点,面向连接、可靠(超时和重传保证)、基于字节流。
HTTP
HTTP协议,又叫做超文本传输协议,HTTP是一种应用层协议,构建在TCP之上。
我们浏览一个网站,分享一个链接,都是走的这个协议。
我们客户端发送一个Request, 服务端就响应一个Response。
如下图所示:
用途不同的区别
TCP
TCP用于在不同计算机之间建立可靠的数据传输通道,它是网络通信的基础,被用于支持各种应用层协议,包括:HTTP。
HTTP
HTTP用于在客户端和服务器之间请求和传输超文本资源,通常用于浏览器访问网页、下载文件、与Web服务器进行交互等。
连接方式不同的区别
TCP
TCP是一种面向连接的协议,通信双方在通信前需要建立连接,然后在通信结束后断开连接。
HTTP
HTTP是基于请求-响应模式的协议,每个HTTP请求都是一个独立的事务,不需要在请求之间保持持久连接。
数据格式不同的区别
TCP
TCP传输的是原始的字节流,没有定义数据的结构或格式,它只负责可靠地传输数据。
HTTP
HTTP使用文本或二进制格式的数据,遵循特定的请求和响应格式,包括请求头、请求体、响应头和响应体等部分。
总的来说,TCP是底层协议,提供可靠的数据传输,而HTTP是应用层协议,用于构建在TCP之上的超文本传输。
HTTP依赖于TCP来进行数据传输,但HTTP的目标是在Web浏览和应用程序通信中定义一种规范。