Web:h↑tp协议 超文本传输协议(hp: hypertext transfer protocol ■万维网应用协议 PC running est Exple 客户端/服务器模式 口客户端:浏览器请求、接 收、展示Web对象 Jects) Server 口服务器:Web服务器发 running NCSA Web 送对象对请求进行响应 server http1.0:Rfc1945 ht1.1:RFc2068 Mac running Navigator 主讲人:西安交通大学程向前 第2讲:应用层1
主讲人:西安交通大学 程向前 第2讲:应用层 11 Web: http 协议 超文本传输协议(http: hypertext transfer protocol) ◼ 万维网应用协议 ◼ 客户端/服务器模式 客户端: 浏览器请求、接 收、展示 Web对象( objects) 服务器: Web 服务器发 送对象对请求进行响应 ◼ http1.0: RFC 1945 ◼ http1.1: RFC 2068 PC running Explorer Server running NCSA Web server Mac running Navigator
http举例 假设用户键入了一个URL www.someschool.edu/somedepartment/home.index 该网页包含文本 并引用了10 1a.htp客户端启动TcP连接到 jpeg图片) www.someschooledu上的 http服务器(进程)Por↑80 1b.在www.someschooledu上 是http服务器的默认端口 的hp服务器在por↑80等待 >TcP的连接请求.“接受”连 接并通知客户端 2.hp客户端发送htp请求报 文(包括URL)进入TcP连接插 口( socket) 3.h坤tp服务器接收到请求报文, 形成响应报文(包含了所请求 的对象, some Department/home. index),将报 文送入插口( socket) time 主讲人:西安交通大学程向前 第2讲:应用层12
主讲人:西安交通大学 程向前 第2讲:应用层 12 http 举例 假设用户键入了一个 URL www.someSchool.edu/someDepartment/home.index 1a. http 客户端启动 TCP 连接到 www.someSchool.edu上的 http 服务器 (进程). Port 80 是 http 服务器的默认端口. 2. http客户端发送 http 请求报 文 (包括URL) 进入 TCP 连接插 口(socket) 1b. 在www.someSchool.edu 上 的http 服务器在 port 80 等待 TCP 的连接请求. “接受” 连 接并通知客户端 3. http 服务器接收到请求报文, 形成 响应报文( 包含了所请求 的对象 , someDepartment/home.index), 将报 文送入插口( socket) time (该网页包含文本 并引用了10 jpeg 图片)
http举例(续) 4.h忡tp服务器关闭TcP连接. 5.hp客户端接收到了包含 hm文件的响应报文。分 析hm文件,发现10个 引用的jpeg对象 tine6.对10 jpeg objects逐个重复 1-5步 主讲人:西安交通大学程向前 第2讲:应用层13
主讲人:西安交通大学 程向前 第2讲:应用层 13 http 举例 (续.) 5. http 客户端接收到了包含 html文件的响应报文。 分 析 html 文件, 发现 10 个 引用的 jpeg 对象 6. 对10 jpeg objects 逐个重复 1-5 步 4. http 服务器关闭 TCP 连接. time
非持续和持续连接 (非持续连接)Non (持续连接) Persistent persistent ■htp/1.1的默认设置 http:/1.0服务器分析请■在同一TcP连接上:服 求、响应、关闭TcP连接务器分析请求、响应请 取对象需要2RTTs 求,分析新的请求、 口TCP连接 ■客户端一旦下载到了基 口对象请求/传送 本的htm文件(base 每次传送都要受到TCP连HTML)马上发送对所 接初始化时的慢启动影响 有引用对象的请求 许多浏览器同时打开多个■较少的RTTs,较少的 并行的连接来改善性能 慢启动 主讲人:西安交通大学程向前 第2讲:应用层14
主讲人:西安交通大学 程向前 第2讲:应用层 14 非持续和持续连接 (非持续连接)Nonpersistent ◼ http/1.0: 服务器分析请 求、响应、关闭 TCP 连接 ◼ 取对象需要2 RTTs TCP 连接 对象请求/传送 ◼ 每次传送都要受到TCP连 接初始化时的慢启动影响 ◼ 许多浏览器同时打开多个 并行的连接来改善性能 (持续连接)Persistent ◼ http/1.1的默认设置 ◼ 在同一TCP 连接上: 服 务器分析请求、响应请 求,分析新的请求、.. ◼ 客户端一旦下载到了基 本的html文件( base HTML )马上发送对所 有引用对象的请求. ◼ 较少的 RTTs, 较少的 慢启动
htp报文格式: request(请求) wotypesofhttp报文erequest,response http请求报文: 口ASCI(可读格式 请求行 GET POST Get/SomedIr/page.html Http/1.0 HEAD命令 User-agent: Mozilla/4.0 Accept: text/html, image/gif, image /jpeg 首部| Accept-2gag:e 诸行 (额外的 carriage return, ine feed) 回车、换行表示 报文结束 主讲人:西安交通大学程向前 第2讲:应用层15
主讲人:西安交通大学 程向前 第2讲:应用层 15 http 报文格式: request(请求) ◼ two types of http报文: request, response ◼ http 请求报文: ASCII (可读格式) GET /somedir/page.html HTTP/1.0 User-agent: Mozilla/4.0 Accept: text/html, image/gif,image/jpeg Accept-language:fr (额外的 carriage return, line feed) 请求行 (GET, POST, HEAD 命令) 首部 诸行 回车、换行表示 报文结束