Web(World Wide Web):
构成:网页 ,网页之间互相连接
网页包含多个对象+一个基本的HTML文件
对象的寻址:
web依靠url定位
协议://主机地址(IP/域名):端口号/路径
遵循的协议:HTTP超文本传输协议
HTTP协议是应用层 的协议
HTTP协议传输层
why 无状态:
HTTP连接的两种类型:
过程:客户端:发送TCP请求并返回,发送请求文件并获得响应,接受文件
响应事件分析和建模
RTT(round trip time)
从客户端发送一个很小的数据包到服务器并返回所经历的时间
响应时间:
总用时=2RTT+文件发送的时间
非持久性连接的问题:
功能:发送请求后,服务器保持TCP连接的打开
后续的HTTP消息可以通过这个连接发送
1.无流水(pipelining)的持续性连接
客户端只有收到前一个响应后才发送新的请求
每个被引用的对象耗时1个RTT
2.带有流水机制的持久性连接:
HTTP协议有两类消息:请求消息request 响应消息response
HTTP请求消息:
使用ASCLL码写的
第一部分:请求行(GET POST HEAD)用于说明请求类型,要访问的资源以及所使用的HTP版本
HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 x CONNECT 方法。
第二部分:请求头,紧接着请求行之后的部分,用来说明服务器要使用的附加信息。
第三部分:空行,请求头后的空行是必须的
第四部分:请求数据,也叫主题,可以添加任意的其他数据。
通用格式:
上传输入的方法:
POST方法:
在请求消息的消息体中上传客户端的输入
适合上传数据较多的情况(form表格什么的)
URL方法:
使用GET方法
输入信息通过request行的URL字段上传(用户登录)
方法的类型
put指定文件上传指定位置
delete删除指定文件
HTTP响应消息:
第一部分:状态行(HTTP协议版本号,状态码,状态消息)
第二部分:消息报头,用来说明客户端要使用的一些附加信息
第三部分:空行
第四部分:响应正文,服务器返回给客户端的文本信息