HTTP概述(续) 使用TCP: HTTP是”无状态的“ 口客户机向服务器发起TCP 口服务器不保留有关客户 机过去请求的任何信息 连接(产生套接字),端口 80 口服务器从客户机接受TCP 维护“状态”的协议是复杂的! 连接 口过去历史(状态)必须维护 口在浏览器(HTTP客户机)和 口如果服务器/客户机崩溃, Web服务器(HTPP服务器) “状态”的视图可能不一 之间交换HTTP报文(应用 致,必须要重新建立 层协议报文) 口关闭TCP连接 应用层21
应用层 21 HTTP概述 (续) 使用TCP: 客户机向服务器发起TCP 连接(产生套接字) ,端口 80 服务器从客户机接受TCP 连接 在浏览器(HTTP客户机)和 Web服务器(HTPP服务器) 之间交换HTTP报文 (应用 层协议报文) 关闭TCP 连接 HTTP是”无状态的“ 服务器不保留有关客户 机过去请求的任何信息 维护“状态”的协议是复杂的! 过去历史(状态)必须维护 如果服务器/客户机崩溃, “状态”的视图可能不一 致,必须要重新建立
HTTP连接 非持久HTTP 持久HTTP 口至多一个对象经过一个 口多个对象能够经过客户 TCP连接发送 机和服务器之间的单个 ▣HTTP/1.0使用非持久 TCP连接发送 HTTP 口HTTP/1.1以默认模式使 用持久连接 应用层22
应用层 22 HTTP连接 非持久 HTTP 至多一个对象经过一个 TCP连接发送. HTTP/1.0使用非持久 HTTP 持久HTTP 多个对象能够经过客户 机和服务器之间的单个 TCP连接发送. HTTP/1.1以默认模式使 用持久连接
非持久HTTP (包括文本和对10个jpeg图片的 假定使用输入URL 引用images) www.someSchool.edu/someDepartment/home.index 1a.HTTP客户机向HTTP服务器(进程) 的80端口的w.someSchool.edu 发起TCP连接 1b.在主机w.someSchool.edu 的HTTP服务器在80端口等待 TCP连接“接受”连接,通知 客户机 2.HTTP客户机发送HTTP请求报 文(包含URL)进TCP连接套接字 报文指示客户机要对象 3.HTTP服务器接收请求报文,形成 someDepartment/home.index 响应报文包含请求对象,并向套 接字其发送报文 time 应用层 23
应用层 23 非持久HTTP 假定使用输入URL www.someSchool.edu/someDepartment/home.index 1a. HTTP客户机向HTTP服务器(进程) 的80端口的www.someSchool.edu 发起TCP连接 2. HTTP客户机发送 HTTP 请求报 文 (包含URL)进TCP 连接套接字. 报文指示客户机要对象 someDepartment/home.index 1b. 在主机www.someSchool.edu 的HTTP服务器在80端口等待 TCP连接“接受”连接,通知 客户机 3. HTTP服务器接收请求报文,形成 响应报文包含请求对象,并向套 接字其发送报文 time (包括文本和对10个jpeg图片的 引用 images)
非持久HTTP(续) 4.HTTP服务器关闭TCP连接 5.HTTP客户机接收包含html文 件的响应报文,显示html.解 析html文件,发现10个引用的 Jpeg对象 time 6.对10个hpeg对象重复步骤1-5 应用层24
应用层 24 非持久HTTP(续) 5. HTTP客户机接收包含html文 件的响应报文,显示html. 解 析html文件,发现10个引用的 jpeg对象 6. 对10个hpeg对象重复步骤1-5 4. HTTP服务器关闭TCP 连接 time
响应时间建模 往返时延RRT的定义:从客户 机到服务器发送一个小分 组并返回所历经的时间. 响应时间: 发起TCP 连接 ▣一个RTT发起TCP连接 RTT 口对HTTP请求和返回的 请求文件 HTTP响应前几个字节的一 RTT 传输文件 个RTT 的时间 口文件传输时间 接收的 文件 总计=2RTT+传输时间 时间 时间 应用层 25
应用层 25 响应时间建模 往返时延RRT的定义: 从客户 机到服务器发送一个小分 组并返回所历经的时间. 响应时间: 一个RTT发起TCP连接 对HTTP请求和返回的 HTTP响应前几个字节的一 个RTT 文件传输时间 总计 = 2RTT+传输时间 传输文件 的时间 发起TCP 连接 RTT 请求文件 RTT 接收的 文件 时间 时间