HTTP和TCP的关系(六)

HTTP和TCP的关系

  • TCP是传输层协议,而HTTP是应用层协议
  • HTTP是要基于TCP连接基础上的

简单的说

  • TCP就是单纯建立连接,不涉及任何我们需要请求的实际数据,简单的传输。
  • HTTP是用来收发数据,即实际应用上来的。

从传输层,先说下TCP连接,我们要和服务端连接TCP连接,需要通过三次连接,包括:请求,确认,建立连接。即传说中的“三次握手协议”。

简单就是:请求,确认,连接。

从实际上的数据应用来说HTTP

在前面客户端和应用服务器建立TCP连接之后,就需要用HTTP协议来传送数据了,HTTP协议简单来说,还是请求,确认,连接。

  • 总体就是主机A发送一个HTTP请求给主机B,主机B收到了这个HTTP请求,然后返回给主机A以HTTP响应,然后主机A的中间件或者说浏览器把这些数据渲染成为了网页,展示在用户面前。

主机A与主机B之间具体过程:

1、发送一个HTTP请求给主机A,这个请求包括请求头和请求内容:

request header:

  • 请求的方法是POST/GET,请求的URL,http协议版本;
  • 请求的数据,和编码方式;3.是否有cookie和cooies,是否缓存等。
post和get请求方式的区别是:
get把请求内容放在URL后面,但是URL长度有限制。
而post是以表单的形势,适合要输入密码之类的,因为不在URL中显示,所以比较安全。

request body:

get请求的请求体为空,post请求的请求体中携带着客户端发送给服务器的数据


2、主机B收到了HTTP请求,然后根据请求头,返回HTTP响应。
response header:

  • cookies或者sessions;
  • 状态码;
  • 内容大小等;

response body:

  • 即响应的内容,包括,JS什么的文本内容。

3、主机A收到了以后,就由浏览器完成一系列的渲染,包括执行JS脚本等。

总结

TCP是底层通讯协议,定义的是数据传输和连接方式的规范;

HTTP是应用层协议,定义的是传输数据的内容的规范;

HTTP协议中的数据是利用TCP协议传输的,所以支持HTTP也就一定支持TCP ;

HTTP支持的是www服务,而TCP/IP是协议, 是Internet国际互联网络的基础,是网络中使用的基本的通信协议。

TCP/IP实际上是一组协议,它包括上百个各种功能的协议,如:远程登录、文件传输和电子邮件等,而TCP协议和IP协议是保证数据完整传输的两个基本的重要协议。通常说TCP/IP是Internet协议族,而不单单是TCP和IP。
————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/qq_50775835/article/details/116902075

参看链接:https://blog.csdn.net/lipviolet/article/details/104525539/

posted @ 2024-03-17 20:05  慎终若始  阅读(1)  评论(0编辑  收藏  举报