应用层HTTP协议.ppt

上传人:灯火****19 文档编号:135179649 上传时间:2020-06-13 格式:PPT 页数:52 大小:953.01KB
返回 下载 相关 举报
应用层HTTP协议.ppt_第1页
第1页 / 共52页
应用层HTTP协议.ppt_第2页
第2页 / 共52页
应用层HTTP协议.ppt_第3页
第3页 / 共52页
应用层HTTP协议.ppt_第4页
第4页 / 共52页
应用层HTTP协议.ppt_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《应用层HTTP协议.ppt》由会员分享,可在线阅读,更多相关《应用层HTTP协议.ppt(52页珍藏版)》请在金锄头文库上搜索。

1、第2讲 应用层 1 第2讲 应用层 本讲目标 网络应用层的概念和实现客户端 服务器范式服务模型通过对常用应用层协议的探讨和分析来学习网络协议教科书参考第9章 深层次目标特定协议 httpftpsmtppopdns 第2讲 应用层 2 应用程序和应用层协议 应用程序 沟通 分布式的进程运行在网络主机中的 用户空间 在应用程序间交换报文e g email ftp Web应用层协议 应用层的一个 组成部分 定义应用程序需交换的报文和所需采取的动作使用较低层次所提供的通信服务 TCP UDP 第2讲 应用层 3 网络应用程序 一些术语 进程 Process 主机中运行中的程序 在某些主机中 两个进程使

2、用进程间通信 由OS管理 而运行在不同主机上的进程则使用应用层协议进行通信 用户代理 Useragent 软件进程 是介于用户 above 和网络 below 之间的接口实现应用级协议Web 浏览器E mail OE Foxmail流媒体 mediaplayer 第2讲 应用层 4 客户端 服务器范式 典型的网络应用都是由两个部分组成 客户端和服务器 客户端 发起同服务器的联系 speaksfirst 一般都从服务器请求服务 Web 客户端由浏览器实现 e mail 通过OE Foxmial实现 服务器 向客户端提供所请求的服务e g Web服务器发送被请求的Web页面 邮件服务器传递e ma

3、il 第2讲 应用层 5 应用层协议 续 应用程序接口 API applicationprogramminginterface 定义应用层和传输层间的接口插口 socket InternetAPI 两个进程间的通信 将数据送入socket 或从socket读出数据 Q 某个进程如何 认定 另一个需要与之通信的进程 IP地址 运行另一个进程的主机所拥有的 端口号 PORT 允许接收主机来确定的一个标识 本地进程将报文发送给它教科书p232 234 第2讲 应用层 6 应用进程需要怎样的传输服务 数据丢失 Dataloss 某些应用 e g audio 可以容忍某种程度上的数据丢失其他应用 e g

4、 文件传输 telnet 要求100 可靠的数据传输 实时性 Timing 某些应用 e g IP电话 交互式游戏 要求较低的时延 带宽 Bandwidth 某些应用 e g 多媒体 对最低带宽有要求其他应用 弹性应用 则可灵活应用所能得到的带宽 第2讲 应用层 7 常用应用程序对传输功能的要求 应用程序文件传输e mailWeb网页实时音频 视频存储音频 视频交互式游戏金融应用 数据丢失不丢失不丢失不丢失允许丢失允许丢失允许丢失允许丢失不丢失 带宽弹性弹性弹性音频 5Kb 1Mb视频 10Kb 5Mb同上几Kb s以上弹性 实时性无无无100 smsecfewsecs100 smsecyes

5、andno 第2讲 应用层 8 Internet的传输协议服务 TCP服务 面向连接 在客户端和服务器进程之间需要建立连接 setup 可靠传输 在发送和接受进程之间流量控制 发送数据的速度决不超过接收的速度拥塞控制 当网络超负荷时 束紧发送端口 减缓发送速度不提供 实时性 最小带宽承诺 UDP服务 在客户端和服务器进程之间实现 不可靠的 数据传输不提供 连接建立 可靠性保证 流量控制 拥塞控制 实时性 最小带宽承诺Q 既生喻 何生亮 WhyisthereaUDP 第2讲 应用层 9 Internet应用 应用 传输协议 应用e mail远程终端访问Web文件传输流媒体远程文件服务器IP电话

6、应用协议smtp RFC821 telnet RFC854 http RFC2068 ftp RFC959 专有协议 e g RealNetworks NSF专有协议 e g Vocaltec 所依赖的传输协议TCPTCPTCPTCPTCPorUDPTCPorUDPtypicallyUDP 第2讲 应用层 10 http协议 http TCP传输服务 客户端启动TCP连接 创建插口 到服务器 端口80服务器接受来自客户端的TCP连接http报文 应用层协议报文 在浏览器 httpclient 和Web服务器 httpserver 之间进行交换关闭TCP连接 http是 无状态 stateles

7、s 的服务器不保留任何访问过的请求信息 保留状态的协议很复杂哟 过去的历史 状态 需要保留一旦浏览器 服务器崩溃 它们各自的状态视图就会发生分歧 还需要重新核对 小评论 第2讲 应用层 11 Web http协议 超文本传输协议 http hypertexttransferprotocol 万维网应用协议客户端 服务器模式客户端 浏览器请求 接收 展示Web对象 objects 服务器 Web服务器发送对象对请求进行响应http1 0 RFC1945http1 1 RFC2068 PCrunningExplorer ServerrunningNCSAWebserver MacrunningNa

8、vigator httprequest httprequest httpresponse httpresponse 第2讲 应用层 12 http举例 假设用户键入了一个URLwww someSchool edu someDepartment home index 1a http客户端启动TCP连接到www someSchool edu上的http服务器 进程 Port80是http服务器的默认端口 2 http客户端发送http请求报文 包括URL 进入TCP连接插口 socket 1b 在www someSchool edu上的http服务器在port80等待TCP的连接请求 接受 连接并

9、通知客户端 3 http服务器接收到请求报文 形成响应报文 包含了所请求的对象 someDepartment home index 将报文送入插口 socket time 该网页包含文本并引用了10jpeg图片 第2讲 应用层 13 http举例 续 5 http客户端接收到了包含html文件的响应报文 分析html文件 发现10个引用的jpeg对象 6 对10jpegobjects逐个重复1 5步 4 http服务器关闭TCP连接 time 第2讲 应用层 14 非持续和持续连接 非持续连接 Non persistenthttp 1 0 服务器分析请求 响应 关闭TCP连接取对象需要2RTT

10、sTCP连接对象请求 传送每次传送都要受到TCP连接初始化时的慢启动影响许多浏览器同时打开多个并行的连接来改善性能 持续连接 Persistenthttp 1 1的默认设置在同一TCP连接上 服务器分析请求 响应请求 分析新的请求 客户端一旦下载到了基本的html文件 baseHTML 马上发送对所有引用对象的请求 较少的RTTs 较少的慢启动 第2讲 应用层 15 http报文格式 request 请求 twotypesofhttp报文 request responsehttp请求报文 ASCII 可读格式 第2讲 应用层 16 http请求报文 一般格式 第2讲 应用层 17 http报文

11、格式 response 响应 HTTP 1 0200OKDate Thu 06Aug199812 00 15GMTServer Apache 1 3 0 Unix Last Modified Mon 22Jun1998 Content Length 6821Content Type text htmldatadatadatadatadata 状态行 协议状态码状态短语 首部诸行 数据 e g 被请求的html文件 第2讲 应用层 18 http响应状态码和短语 200OK请求成功 被请求的对象在报文中301MovedPermanently被请求的对象被移动过 新的位置在报文中有说明 Locat

12、ion 400BadRequest服务器不懂请求报文404NotFound服务器上找不到请求的对象505HTTPVersionNotSupported 位于 服务器 客户端 响应报文的第一行 样例 第2讲 应用层 19 自行测试http 客户端操作 1 用Telnet连接测试用的服务器 需要预先登录UNIX 打开TCP连接到port80 默认的http服务器端口 位于202 117 35 70后续键入的内容将发送到202 117 35 70的80号端口 telnet202 117 35 7080 2 键入一条http请求报文 GET j1010 hello htmHTTP 1 0 将该指令键入

13、后 按两次回车键 就将此最短之 但是完整的 GET请求发到了http服务器 3 请注意观察http服务器发回的响应报文 第2讲 应用层 20 用户 服务器的交互 认证 authentication 认证 控制对服务器内容的访问信用认证 一般通过用户名 口令进行无状态 客户端必须在每次请求前进行认证authorization 就是要求在每个请求报文中提交认证的首部行如果客户端没有提交authorization 首部行 服务器将拒绝访问 只是在响应报文首部中发送WWWauthenticate client server 普通http请求报文 401 认证要求WWWauthenticate 第2讲

14、应用层 21 Cookies 保存 状态 服务器产生一个 服务器认识这个 以备不时之需 认证记忆用户的前序访问 先前的选择服务器在响应报文中发送 cookie 给客户端Set cookie 1678453客户端可以在后继的请求中发送 cookie cookie 1678453 client server 普通http请求报文 普通http响应报文 Set cookie cookie 特定的 cookie 特定的 第2讲 应用层 22 ConditionalGET 客户端缓存机制 目的 如果客户端缓存了最新的请求对象 则服务器不必重复发送客户端 在http请求报文中声明所缓存拷贝的生成日期If

15、modified since 服务器 如果客户端缓存的拷贝是最新的 则在响应报文中不发请求的对象 HTTP 1 0304NotModified client server http请求报文If modified since 对象未经修改 http请求报文If modified since http响应报文HTTP 1 1200OK 对象已经修改 第2讲 应用层 23 Web缓存 代理服务器 proxyserver 用户设置浏览器 Web访问经由代理服务器客户端发送所有的http请求到代理服务器代理服务器保存了请求的对象 代理服务器返回请求的对象否则代理服务器从原始服务器请求对象 再将其返回给客

16、户端 目的 满足客户端的请求而无需烦扰原始服务器 client Proxyserver client httprequest httprequest httpresponse httpresponse httprequest httpresponse originserver originserver 第2讲 应用层 24 为何Web缓存 前提 缓存与客户端比较 接近 e g 在同一网络中 响应时间较短 缓存与客户端比较 接近 减少了往来与远程服务器间的数据流量因为从学校或本地ISP通往外部的链路往往是网络瓶颈 originservers publicInternet institutionalnetwork 10MbpsLAN 1 5Mbpsaccesslink institutionalcache 第2讲 应用层 25 ftp 文件传输协议 传输文件往来与远程主机客户端 服务器模式客户端 启动传输 无论与往来远程主机 服务器 远程主机ftp RFC959ftp服务器 端口21 第2讲 应用层 26 ftp 分离的控制 数据连接 ftp客户端在ftp服务器的端口21进行联系 使用TC

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号