HTTP协议概述

举报
yd_221104950 发表于 2020/12/04 22:44:27 2020/12/04
【摘要】 根据TCP/IP网络模型,HTTP超文本传输协议属于应用层的协议,用于传输文件,如HTML文档。HTTP被设计用于Web浏览器与Web服务器之间的通信,当然亦可以用于其他用途 。HTTP最经典的应用模型无疑就是CS模型(客户端-服务器模型):当客户端打开一个连接发送一个请求给服务端,然后等待服务器的响应,直到收到服务器的响应为止。 HTTP是一个无状态协议,意思是说,...

根据TCP/IP网络模型,HTTP超文本传输协议属于应用层的协议,用于传输文件,如HTML文档。HTTP被设计用于Web浏览器与Web服务器之间的通信,当然亦可以用于其他用途 。HTTP最经典的应用模型无疑就是CS模型(客户端-服务器模型):当客户端打开一个连接发送一个请求给服务端,然后等待服务器的响应,直到收到服务器的响应为止。

HTTP是一个无状态协议,意思是说,服务器不会保留两次请求之间的任何数据。虽说HTTP协议不会在请求间保持着连接,但是它们的会话是有状态,HTTP可以通过 cookies的使用记录ssessions。利用HTTP报头的扩展性,Cookies可以加到工作流中。这样可以在每一个HTTP请求之间共享同样上下文、同样的状态。

在根据TCP/IP网络模型中,HTTP协议所在应用层的下一层是TCP/IP层,HTTP数据将会被封装到TCP协议的数据部分进行传输,由此一来,HTTP就可以借着的TCP提供可靠的传输,即不会像UDP协议那样在失败时没有任何反馈信息,你都不知道成功没有,HTTP通过TCP提供可靠的传输,无论成功与否,你都能收到反馈信息,这样你就知道下一步应该怎么做了。

因为HTTP是使用了传输层的TCP协议来提供可靠传输。那么在客户端与服务端交换HTTP请求/响应前,就要建立起TCP连接。TCP连接需要经历“三次握手”。HTTP/1.0为每一个HTTP请求/响应对打开一个TCP连接。当有很多请求发送时,这种做法比共享一个TCP连接要低效。因此,HTTP/1.1 引进流水线(据说非常难实现)和持久连接(即保持连接),下面的TCP连接可以通过连接头信息达到部分控制。而HTTP/2则更进一步,它通过单一连接完成多路信息的传递。

谢谢阅读。

文章来源: blog.csdn.net,作者:WongKyunban,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_40763897/article/details/94647960

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。