Web与HTTP

1.Web最基本的构成要素是网页,同时网页间的互相链接形成庞大的信息网络和内容网络。

网页包含多个对象

对象:HTML文件、JPEG图片、视频文件、动态脚本等(HTML文件一般会包含对其他对象的链接)

2.对象的寻址

互联网有很多的网页,要对其进行区分,网页通过URL(统一资源定位符)来标识。

URL的基本格式:

            

协议://主机:端口号/路径

举例:

主机名:www.someschool.edu

路径:someDept/pic.gif

协议和端口号已经省略了

3.HTTP协议

    3.1采用C/S结构,其中

    客户是Browser,作用:请求、接收、展示Web对象

    服务器:响应客户的请求,发送对象

    3.2 有两个版本 HTTP/1.0   HTTP/1.1

    3.3 HTTP是一个无状态的协议,即服务器不维护任何有关客户端过去所发请求的信息。

      采用无状态的机制原因:1.需要维护状态(历史信息) 2.一旦客户或服务器重启了,会产生工作状态不一致,解决这种不一致代价很高。

4 HTTP连接的两种类型:非持久性连接、持久性连接

非持久性连接(HTTP1.0版本):建立每个TCP连接后最多允许传输一个对象。

持久性连接(HTTP1.1版本):建立每个TCP连接后允许多个对象。

举例:

请求www.someSchool.edu主机下的someDepartment目录下的home.index文件,假定这个文件包含文本和指向10个图片的链接。

说明:因为是非持久性连接,每次建立连接后最多只会发送一个对象,所以在4步骤会关闭TCP连接。HTTP客户端解析HTML文件时

发现有10个指向图片对象的超连接,所以会为每个图片对象重复还是那个面的6个操作。在网速比较慢时,网页先出来,图片没有,然后图片再

逐个出来。

4.1相应时间分析与建模:

响应时间分为三个部分:

(1)发起、建立TCP连接:1个RTT

(2)发送HTTP请求消息到HTTP响应消息的前几个字节到达:1个RTT

(3)响应消息中所含文件/对象传输时间

非持久性连接的缺点:

(1)慢,每个对象需要2个RTT以上的时间才能获得

(2)操作系统需要为每个TCP连接开销资源

4.2改进(持久性连接)

发送响应后,服务器保持TCP连接的打开,后续的HTTP消息可以通过这个连接发送

持久性连接细分为:没有流水线机制的持久性连接和带有流水线机制的持久性连接

无流水的持久性连接:客户端只有收到前一个响应后才发送新的请求,每个被引用的对象耗时1个RTT

带有流水机制的持久性连接:客户端只要遇到一个引用对象就尽快发出请求,理想情况下,收到所有的引用对象只需要耗时约1个RTT

5.HTTP消息的格式

HTTP协议的两类消息:请求消息和响应消息

请求消息的格式:

说明:请求消息要携带数据?例如登录邮箱,要输入登录名,密码

请求消息使用ASCII,人直接可读,如下是一个请求消息的例子:


说明:TCP已经建立连接了,这边的Host主机名还有意义吗?在缓存和代理服务器的时候用到。Mozilla/4.0这边写浏览器为了服务

器根据使用的浏览器发送不同的版本,因为不同的浏览器可能有不同的解释。

响应消息:

说明:Date:Thu,06 Aug 1998 12:00:15 GMT Web服务器生成响应消息的时间

Last_modified:网页的上次修改时间

    请求的HTML文件是图中的data

状态行:

   200 OK

   301 Moved Permanently

   400 Bad Request

   404 Not Found

   505 HTTP Version Not Supported

6.上传的方法

    POST方法:网页经常需要填写表格,将表格里的数据放到消息体(Entity Body)里面,然后传给服务器,服务器从中提取数据。

    Get方法:(输入的信息比较少时)将信息通过request行的URL字段上传,举例如下:


7.HTTP方法的类型     HTTP/1.0 的方法:GET、POST、HEAD(告诉服务器不要将请求的对象放到响应里面,做测试用的

     HTTP/1.1 的方法:GET、POST、HEAD、PUT(将消息体中的文件上传到URL字段所指定的路径,可以往Web服务器上传文件)、DELETE

(删除URL字段所指的文件)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值