深入浅出HTTP协议
超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。Ted Nelson组织协调万维网协会(World Wide Web Consortium)和互联网工程工作小组(Internet Engineering Task Force )共同合作研究,最终发布了一系列的RFC,其中著名的RFC 2616定义了HTTP 1.1。
HTTP协议的主要特点可概括如下:
1.支持客户/服务器模式。
2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。
3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
5.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
技术架构:
多个中间层,比如代理,网关,或者隧道(tunnels)。尽管TCP/IP协议是互联网上最流行的应用,HTTP协议并没有规定必须使用它和(基于)它支持的层。 事实上,HTTP可以在任何其他互联网协议上,或者在其他网络上实现。HTTP只假定(其下层协议提供)可靠的传输,任何能够提供这种保证的协议都可以被其使用。
HTTP使用TCP而不是UDP的原因在于(打开)一个网页必须传送很多数据,而TCP协议提供传输控制,按顺序组织数据,和错误纠正。
最新文章
- Javascript刷题 》 查找数组元素位置
- depot用例视图建模
- HTML5新增video标签及对应属性、API详解
- SQL2008无法启动,报错";17051
- 【读书笔记】读《JavaScript设计模式》之代理模式
- Java基础之读文件——使用缓冲读取器读取文件(ReaderInputFromFile)
- Javascript基础Function
- net use \\192.168.54.145 /user:administrator ";12345qwert";无法连接,错误码1326
- java中的object类
- 以&;运行在后台的程序,关闭terminal后,相应进进程自动关闭
- Java web中常见编码乱码问题(二)
- FastDFS安装全过程记录(V5.05)
- Struts2实现文件下载
- AT2369 Ants on a Circle (思路)
- spring的事件驱动模型
- Swift Realm 完整使用记录
- ubuntu下直接可视化访问服务器文件夹方法
- centos 6.5下安装nmap工具及简单用法
- SpringCloud请求响应数据转换(一)
- mongodb根据子项中的指标查找最小或最大值