超文本传送协议HTTP

最近在工作中用到了Http相关的知识,于是找出课本详细复习一下。

1 . HTTP的操作过程

 

    每个万维网网点(即网站)都有一个服务器进程,它不断地监听TCP的80端口,以便发现是否有浏览器向他发送建立连接请求。一旦监听到连接建立请求并建立了TCP连接后,浏览器就向万维网服务器发出浏览某个页面的请求,服务器接着就返回所请求的页面作为响应。最后释放TCP连接。

 以HTTP1.0为例说明用户点击鼠标后所发生的几个事件。

(1)浏览器分析链接指向页面的URL。

(2)浏览器向DNS请求解析该IP地址。

(3)域名系统解析出清华大学服务器的IP地址为166.111.4.100.

(4)浏览器与服务器建立TCP连接(在服务器端的IP如上,端口80)。

(5)浏览器发出取文件命令:GET /xxx/xxx/index.html

(6)服务器给出响应,把index.html发送给浏览器。

(7)释放TCP连接。

 

HTTP 1.0的时间分析:

由于TCP建立连接的三次握手的第三个报文段中捎带了客户对服务器文档的请求,

所以对1.0 来说,每请求一次就要有2*RTT的时间开销。

改进:

HTTP 1.1它使用持续连接,服务器在发送响应后仍会保持这条TCP连接一段时间。

 

2 . 代理服务器

    代理服务器能对目标服务器的资源下载至本地缓存,如果客户端所要获取的资源在代理服务器的缓存之中,

则代理服务器并不会向目标服务器发送请求,而是直接返回缓存了的资源。

校园网一般使用代理服务器防止服务器过载。

 

3 . HTTP的报文结构

请求报文:客户端向服务器发送的请求。

 

响应报文:从服务器到客户端的回答。

 

 

4 . 在服务器上存放用户的信息

    当用户张三浏览某个使用Cookie的网站时,该网站的服务器会为张三生成一个唯一的识别码,接着给张三的HTTP响应报文

中添加一个叫做Set-cookie的首部行,后面的值就是赋予该用户的识别码。

当张三收到这个响应时,其浏览器就在它管理的特定Cookie文件中添加一行,其中包括这个服务器的主机名以及Set-cookie后面的识别码。当张三继续浏览该网站,发送请求报文,其浏览器会从Cookie文件中取出这个文件的识别码,并放到HTTP请求报文的Cookie首部行中。

 

 

参考资料:计算机网络(第六版谢希仁)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值