HTTP协议定义了浏览器怎么样向万维网服务器请求万维网文档,以及服务器怎样把文档传输给浏览器。
从层次的角度来看,HTTP是面向事务的应用层协议,它是万维网上能够可靠地交换文件的重要基础。
HTTP是基于TCP的协议。
DNS是基于UDP的协议。
用户浏览页面有两种方式:
1. 直接输入页面的URL;
2. 点击一个页面的可选部分,浏览器会自动的在因特网上找到所要链接的页面。
如果用户点击了一个页面的可选部分,则浏览器会发生如下过程:
(1) 浏览器分析链接指向页面的URL;
(2) 浏览器向DNS请求解析www.xxxx.cn的ip地址;
(3) 域名解析系统DNS请求出服务器ip地址为xxx.xxx.x.xxx;
(4) 浏览器与服务器建立TCP连接;
(5) 浏览器发出取文件命令:GET /index.html;
(6) 服务器www.xxxx.cn给出响应,把文件index.html发送给浏览器;
(7) 释放TCP连接;
(8) 浏览器显示index.html的所有文本。
HTTP协议是无状态的。也就是说,同一客户端第二次访问同一个服务器上的页面时,服务器的响应和第一次被访问时相同,也就是说,服务器并不知道之前这个客户访问过,服务了多少次。
HTTP并不记录客户的任何信息,所以,他也快。
下面的图表示一个请求的过程: