已阅读5页,还剩61页未读, 继续免费阅读
(计算机系统结构专业论文)基于squid的web服务缓存技术研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华 中 科 技 大 学 硕 士 学 位 论 文 摘要 i n t e r n e t 上的商务活动具有越来越复杂的快速集成异类系统的需求,因为不存在 统一的标准, 所以大量不同平台、 软件和硬件的组合阻碍了这种需求的实现。 w e b 服 务正是一种满足于这种需求的技术,它可以 构建一个完整的商业企业运用。 网络缓存尤其是w e b 缓存技术是一种提高网络性能,降低网络拥塞的有效方法。 如何将we b 缓存技术运用到we b 服务技术当中成了人们关心的一个问题。 we b服务并没有针对缓存有特殊设计,相反其几乎不支持缓存。w e b服务是用 s o a p ( s i m p l e o b j e c t a c c e s s p r o t o c o l )消息的格式以p o s t方式加载在 h t t p ( h y p e r t e x t t r a n s p o r t p r o t o c o l ) 上 在in t e r n e t 进 行 发 送, 而一 般的 缓 存软 件只 对h t t p 的g e t方式起作用; w e b服务消息的h t t p头部中的c a c h e - c o n t r o l 域会被指定为 n o - c a c h e 。因此,目 前的缓存软件均不支持对w e b 服务的缓存。 通过对目 前常用的几种代理缓存软件的比 较分析, 发现s q u i d 是一种良 好的 代理 缓存服务器软件, 对于w e b 用户来说它是一 个高 性能的 代理缓存服务器。 s q u i d 用一 个单独的、非模块化的、i / o驱动的进程来处理所有客户的请求,有良 好的缓存管理 功能和访问控制功能,能满足绝大多数缓存需求,以 现有 s q u i d软件作为基础设计 w e b 服务缓存软件可以 利用s q u i d 这些良 好功能。 通过分析s o a p消息格式规范,找到w e b 服务的s o a p 请求消息的特定格式, 通过这种 特定的 格式使得s q u i d 可以 识 别s o a p 请求, 在 此 基础上将s q u i d 的 客户端 的工作流程和服务器端的工作流程针对w e b 服务消息的特点重新做了设计, 使得经改 进后的s q u i d 软件可以 支持w e b 服务的缓存。 缓存软件需要一种可以灵活指定的缓存策略来达到we b 服务追求的高效、 安全的 目 标,通过w e b 页面指定缓存策略可以 让缓存软件更加高效、实用。 关键词:超文本传输协议, 万维网缓存,万维网服务,简单对象访问协议 万维网服务缓存 . . . . 目. . . . . -. . . . .门 目. . . -一一洲 一-.一 . . ,. 叫,月 ,. 口. . . .目 ., ,. 目 一,-一 . ,., 门. . .,目 .目. .曰. .目户 . . , 叫 一. 叫. .叫. . ., . . - , . . . . , 口 . . . . r 华 中 科 技 大 学 硕 士 学 位 论 文 ab s t r a c t n o w a d a y s b u s i n e s s t h r o u g h t h e i n t e rn e t i n c r e a s i n g l y r e q u i r e s t h e r a p i d i n t e g r a t i o n o f d i ff e r e n t p l a t f o r m s , b u t d u e t o t h e l a c k o f a u n i f i e d s t a n d a r d , t h e i n t e g r a t i o n o f v a r io u s p l a t f o r m s , s o f t w a r e a n d h a r d w a r e r e m a i n s t o b e i m p o s s i b l e . n e v e rt h e l e s s , we b s e r v i c e c a n b e a g o o d a p p r o a c h t o s o l v e t h i s p r o b l e m . n e t w o r k c a c h e , e s p e c i a l l y we b c a c h e , i s a n e ff i c i e n t t e c h n o l o g y t o i m p r o v e t h e n e t w o r k p e r f o r m a n c e a n d t o r e d u c e t h e n e t w o r k c o n g e s t i o n . t h u s h o w t o u s e c a c h e i n w e b s e r v i c e s a r o u s e s mu c h i n t e r e s t . u n f o rt u n a t e ly , we b s e r v i c e s w e r e d e s i g n e d w i t h n o r e g a r d t o c a c h i n g a n d t h u s p r o v i d e l itt l e s u p p o rt . i t t r a n s m i t s i n f o r m a t i o n b y p o s t m e t h o d i n h t t p ( h y p e r t e x t t r a n s p o rt p r o t o c o l ) i n t h e f o r m o f s o a p ( s i m p l e o b j e c t a c c e s s p r o t o c o l ) m e s s a g e s v ia th e i n t e rne t . h o w e v e r , o r d in a r y c a c h i n g s o f t w a r e i s o n l y e ff e c t i v e t o g e t m e t h o d o f h t t p , a n d t h e d e f a u l t h t t p c a c h e d i r e c t i v e f o r w e b s e r v i c e s r e s p o n s e s i s n o - c a c h e . t h e r e f o r e , t h e e x i s t i n g c a c h e s o f t w a r e c a n n o t g i v e s u p p o rt t o t h e we b s e r v i c e s . b y c o m p a r i n g a n d a n a l y z i n g s e v e r a l k i n d s o f w i d e l y - u s e d s o ft w a r e , s q u i d w as f i n d a s a n e ff e c t i v e p r o x y c a c h e w h i c h c a n b e u s e d as a p r o x y c a c h e s e r v e r o f h i g h p e r f o r m a n c e f o r w e b u s e r s , b e c a u s e i t p r o c e s s e s t h e u s e r s r e q u e s t s b y a s in g l e , n o n - m o d u l e , i / o d r i v e n p r o c e s s . i n t h i s c a s e , s q u i d c a n f u n c t i o n p e r f e c t l y i n t h e c a c h e m a n a g e m e n t a n d t h e a c c e s s c o n t r o l , a n d t h u s c a n b e v e r y u s e f u l i n a we b s e r v i c e s c a c h e a f t e r t h e a n a l y s i s o f t h e s o a p c r i t e r i o n , t h e r u l e s o f s o a p m e s s a g e f o r m a t , w h i c h c a n h e l p t h e c a c h e s o ft w a r e d i s t i n g u i s h s o a p m e s s a g e s fr o m h t t p m e s s a g e s , h a s b e e n f o u n d . t h e n , a c c o r d i n g t o t h o s e ru l e s , r e d e s i g n o f t h e o p e r a t i n g p r o c e s s o f t h e c li e n t s id e m o d u l e a n d t h e s e r v e r s i d e o n e i s m a d e . i n t h i s w a y , t h e s q u i d i s n o w a b l e t o s u p p o rt w e b s e r v i c e s c a c h e . a fl e x i b l e c a c h e s t r a t e g y t o e n s u r e t h e e f f i c i e n c y a n d s e c u r i t y o f t h e we b s e r v i c e s i s n e e d e d i n c a c h e s o f t w a r e . wi t h a we b i n t e r f a c e , t h e n e e d c a n b e f u l l y s a t i s f i e d . k e y w o r d s : h y p e r t e x t t r a n s p o rt p r o t o c o l , we b c a c h e , w e b s e r v ic e s s i m p l e o b j e c t a c c e s s p r o t o c o l , w e b s e r v i c e s c a c h e 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除文中己 经标明引用的内容外, 本论文不包含任何其他 个人或集体已 经发表或撰写过的 研究成果。 对本文的研究做出贡献的 个人和集体, 均已 在文中以明确方式标明。 本人完全意识到本声明的 法律结果由 本人承担。 学位论文作者签名 日 期 : 2 0 4 年 (月, 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校 有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅 和借阅。本人授权华中科技大学可以将本学位论文的全部或部分内 容编入有关数 据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密口 ,在年解密后适用本授权书。 本论文属于 不保密叮. ( 请在以上方框内打 “ d ) 学位论文作者签名 日期: 士 月 ,。 日 指 导 教 师 签 名 :享独生 日 期 : 2- - - , 年户 月/t o 日 华 中 科 技 大 学 硕 士 学 位 论 文 1 绪论 1 . 1 课题背景 1 ) 课题来源: 2 0 0 2年 7月,华中科技大学外存储国家重点实验室开发支持 w e b服务 ( w e b s e r v i c e s )的缓存软件,提供对we b 服务的缓存功能。课题的目 标是设计一个在w e b 服务体系结构 框架中的中间节点角 色位置上的缓存软件系统, 要求该系统满足下面的 要求: ( 1 ) 提高特定场景下的w e b 服务服务性能; ( 2 ) 可透明 地部署,己 经被发布使用的w e b 服务不受其影响; ( 3 ) 安全性,保证缓存数据的安全性、可靠性,提供必要的访问控制。 2 )技术背景: i n t e rn e t 在 过去 几 年里 在 全 球 范围内 取 得了 巨 大的 成 功,以 h t t p 1 ( h y p e r t e x t t r a n s p o rt p r o t o c o l , 超文本传输协议) 协议为基础的www ( wo r l d wi d e we b ,万维 网) 起着关键的作用。 w w w 可以 视为一个遍布全球的 分布式信息系统2 ,3 1 , 人们利 用www访问共享数据对象, 从事信息发布、 信息交流和各种商业活动。 然而h t t p 业务是基于客户/ 服务 器的 14 1 , 本质上是不可扩展的, 对同 一个w e b 服务器大量访问 的结 果是使服务器所在的网 络变得拥挤15 1 , 用户等待时间过长, 甚至导致服务器不 可访问。而网络拥塞和服务器过载是不可预测的,在某一时间服务器的访问量可能 很少,另一时间服务器的 访问 量却会突 然增加6 ,7 ,8 1 ,缓存可以 有效 地解决这两个问 题9 1 随着i n t e rn e t 技术的发展及企业对互联网依赖性的增强, 软件越来越需要能够集成 到 i n t e rn e t 上来, 需要和i n t e rn e t 上的 其它软件 ( 而不仅仅是人) 进行交互。 而传统的商 务活动缺少一套标准的 底层通信体系, 这是企业之间进行数据交换的最大障碍之一。 企业之间的交互通常以 某种固定形式进行, 而且很难实现更复杂的电子化交互。 这是 因为存在着众多不同的硬件和软件平台, 缺少通用的协议, 并且存在许多专用的数据 存储形式。 通过i n t e rn e t 及其相关技术, 商务活动正在寻找一种新的方式, 以 实现彼此之间的 电子化协作,而无需考虑硬件和软件平台的差异。we b 服务是基于网络的软件开发模 -一一-一甲-一-一-一-一一- i 华 中 科 技 大 学 硕 士 学 位 论 文 式, 通过规范性的设计、发布和发现以 及调用,可以由多个w e b 服务构建一个完整的 商 业 企 业 应 用。 应 运 而 生 的 是 x m l 10 1 ( e x t e n s ib l e m a r k u p l a n g u a g e , 可 扩 展 标 识 性 语 言) 及相关技术。 这种语言可以分离数据和数据表现形式,使得数据有了描叙自 身的 能 力。 w e b 服 务 正 是 用 于 描 述 使 用 s o a p 1 1 1 ( s im p l e o b j e c t a c c e s s p r o t o c o l , 简 单 对 象 访问 协议) 或其他类型可调用方法的一种应用程序, 它在商务活动中具有得天独厚的 优越性。 基于s o a p 的w e b 服务通过i n t e rn e t , 使用行业标准技术 比如h t t p 和x ml ) , 允 许 应用 程序 和贸 易 伙 伴 进行 信息 交 换 12 1 基于i n t e rn e t 的易于实现的信息交换一直是电子商务和其他互联网应用所面临的 主要挑战, 在以 前许多年里出 现了 很多 服务于 这种目 的的 技术1 13 14 1 , m i c r o s o ft 的 d c o m ( d i s t r i b u t e d c o m p o n e n t o b j e c t m o d e l , 分布式组件对象模型) 和s u n 的 r mi ( r e m o t e me t h o d i n v o c a t io n , 远程方法调用) 是其中著名的两种,但这两种技术都很 复杂不易于实现且他们都只能使用在各自的平台中, 都满足不了独立于操作系统, 软 件基础架构及程序设计语言这样的需求。 x ml w e b 服务就是为满足这种需求而设计 的。随着其技术、规范和标准的不断成熟, w e b 服务逐渐成为i n t e rn e t 环境中一种主要 的软件架构 1 5 1 。 现在许多的商业应用, ve b 月 民 务己 经被部署在i n t e rn e t 上口 3 )w e b 服务体系结构 图1 . 1 w e b 服务体系结构图 w e b 服务体系结构 1 6 , 1 7 1 如图1 . 1 所示,图中 的角色含义为: ( 1 ) 服务提供者。从企业的角度看, 这是服务的所有者。从体系结构的角度看, 这是托管访问 服务的平台。 ( 2 )服务请求者。从企业的角度看,这是要求满足特定功能的企业。从体系结 构的角度看, 这是寻找并调用服务, 或启动与服务的交互的应用程序。 服务请求者角 色可以由浏览器来担当,由人或无用户界面的程序 ( 例如,另外一个 we b服务)来 控制它。 ( 3 )服务代理 服务注册中心)。这是可搜索的服务描述注册中心,服务提供 一一一一一, 一. -一一 一 . -一 2 华 中 科 技 大 学 硕 士 学 位 论 文 者在此发布他们的服务描述。 在静态绑定开发或动态绑定执行期间, 服务请求者查找 服务并获得服务的绑定信息 ( 在服务描述中)。 对于静态绑定的服务请求者, 服务注 册中心是体系结构中的可选角色,因为服务提供者可以把描述直接发送给服务请求 者。同样,服务请求者可以从服务注册中心以外的其它来源得到服务描述,例如本地 文件、w e b站点、 广告 和服务发现 ( a d v e r ti s e m e n t a n d d i s c o v e ry o f s e r v i c e s , a d s ) 或发现 w e b 服务 ( d i s c o v e ry o f w e b s e r v i c e s , d i s c o )。 1 .2 国内 外的 研究 情况 目 前 对w e b 服务 的 相关 研 究正 飞 速发 展 1 8 ,19 , 而网 络 缓 存 特别 是w e b 缓 存 做为 一种节省网络带宽、平衡服务器负载、 减少网络延时的技术也一直是学术界和工程界 研究的热点(2 0 ,2 1 1 , 但将高速缓存技术应用于we b 服务领域却是相对较新的研究领域, 目前对此领域进行研究的主要有i b m和微软两大公司。 i b m东京研究院的研究人员提出了一种基于x m l 语言常规解析的we b 服务高速 缓存的体系结构模型。 i b m的高级因特网技术实验室的软件工程师b ri a n d . g o o d m a n 提出用高 速缓存来加速w e b 服务的实现过程并且提出通过高速缓存抵御重播攻击。 微 软的研究人员也提出了x ml w e b 服务高速缓存的策略。 但是,以上研究均在初始阶 段, 只是 提出了 一些 体系结 构2 2 和策略的 可 行性 研究。 华中 科技大学外存储系统实验室 ( 国家专业实验室,教育部重点实验室) 瞄准网 络缓存这一研究方向, 在比较分析了目 前常见的几种代理缓存软件的基础上, 提出改 进代理缓 存软 件 s q u i d , 利用 其良 好的 请求转发、 缓 存管理 机制, 对其客户端和服务 器端加以 改进, 实现对w e b 服务的高 速缓存。 同时, 华中科技大学外存储国家专业实 验室与美国公司合作进行网络缓存方面的研究。 1 .3 实现we b 服务级存的关键技术 目前的缓存软件均不支持w e b 服务缓存, 本课题将改进目 前最为常见的一种we b 缓存 软件一 s q u id , 实 现对w e b 服务 的高 速缓 存。 其中 发 现s o a p 请 求、比 较是 否 满 足w e b 服务缓存策略、 存储s o a p 响应消息是本课题的 关键。 本节对实现w e b 服务 高速缓存的关键技术做概括性描述。 1 ) w e b 缓存技术 一 一一一一一一一 一, 3 华 中 科 技 大 学 硕 士 学 位 论 文 为了 减少网 络 拥塞和网 络延迟问 题, 提高网 络带宽的 使 用 效率2 3 ,2 4 1 , 人们在许多 方 面 进 行了 研 究 2 5 ,2 6 。 缓 存 技术 被 认为 是 提 高 w w w 性能的 最 主 要的 方 法 12 7 1 , 缓 存 技 术将www工作方式从客户用 民 务器方式转变为分布式方式,增强了www的扩展性。 在目 前情况下, 短时期内 很难大量提高网络的瓶颈带宽, 因此需要对典型的网络 应用的访问技术和使用方法进行优化,使得用户得到相对较好的使用性能。由于we b 业务在网络业务中占 有较大比重而且使用最广泛,we b 缓存技术以提高we b 用户可见 的 响 应时间, 即 w w w 访问 请求与 用户看到该 页面 之间的 延迟 1 2 8 1 作为 研究目 标。 在使 用同样的网络资源的情况下,为了 提供更好的响应, 减少访问 延迟, 需要更有效的利 用网络的带宽, 在时间和空间上提高网络资源的使用效率。 实 现这一目 标可以使用代 理 缓 存 和 w e b 预 取 技 术 2 9 ,3 0 ,3 11 2 ) s o a l 消息处理技术 s o a p 是基于x m l 在分布式的 环境中 交 换信息的 简单的 协 议。 s o a p 架构3 2 ,3 3 的 底层是 传送协议如h t t p 和s m t p ( s im p l e m a i l t r a n s f e r p r o t o c o l ) , 通过绑定与 消息 框架连接。s o a p 包括下面的4 个部分: 信封 ( e n v e l o p e ): 定义了 一 个消息框架, 描述消息的内容是什么, 是谁发送的,谁应当接受并处理它以 及如何处理。 编码规则 ( e n c o d i n g r u l e s ) : 用于表示应用程序需要使用的数据类型的 实例。 绑定( b i n d i n g ) 定义底层通信协议, 进行消息交换。 r p c ( r e m o t e p r o c e d u re c a l l ): 表示远程过程调 用和应答的协定。 如果简化对s o a p的理解, 它可以 说一种x ml + r p c o v e r h t t p 的 开放标准协议, 方便w e b 服务提供者和服务请求者穿过防火墙在因特网上进行通信交 互。s o a p是一个跨平台的协议,每一个通过网络的 远程调用都可以 通过s o a p 封装 起来。s o a p 使用h t t p 传送x m l 消息,尽管h t t p 不是最有效率的通信协议,而 且在传送x m l消息时还需要额外的文件解析,但是x ml 和h t t p都是开放标准规 范, h t t p 是一个在w e b 上被最广泛应用又能 避免许多关于防 火墙问 题的传送协议3 4 1 从而使s o a p 得到了广泛的接受和应用。 3 ) s q u id 软件相关技 术 s q u i d 是 一 个 高 性 能 的 代 理 缓 存 服 务 器 3 5 1 , s q u id 支 持f t p ( f i l e t r a n s f e r p r o t o c o l) , g o p h e r 和h t t p 协议 。 和一 般的 代 理 缓 存 软 件不同 3 6 . s q u id 用一 个 单 独的、 非 模块 化的、 1/ o 驱 动的 进程 来处 理 所有的 客 户 端 请求。 s q u i d 将 数 据 元缓 存 在内 存中 3 7 ,3 8 同时也缓存d n s ( d o m a i n n a m e s y s t e m ) 查询的 结果, 除此之外, 它 还支持非 模块化 的d n s 查 询, 对失 败的 请 求进 行消 极 缓 存。 s q u id 支 持s s l ( s e c u r e s o c k e t l a y e r ) , 一-一一一一一-一- 一- 一 4 华 中 科 技 大 学 硕 士 学 位 论 文 支持访问控制。由于使用了i c p ( i n t e r n e t c a c h e p r o t o c o l .轻量i n t e r n e t 缓存协议) , s q u i d能 够实 现层叠的 代理阵 列, 从而 最 大限 度 地 节约 带宽 。s q u i d由 一 个 主 要的 服 务 程 序s q u i d ,一 个d n s 查 询 程 序d n s s e r v e r , 几 个 重写 请求 和 执 行 认 证的 程 序, 以 及 几 个管 理工 具组成。 当s q u i d 启 动以 后, 它可以 派生出 预先指定 数目 的d n s s e r v e : 进 程, 而每一个d n s s e r v e r 进程都可以执行单独的d n s 查询,这样一来就大大减少了服务器 等待 d n s 查询的时间。 1 .4 本文主要研究工作 1 )研究思想及其方法 本文对网络缓存技术进行研究;分析w e b 服务的架构; 研究w e b 服务缓存技术 的必要性;详细分析w e b 服务的关键技术一s o a p消息:分析s o a p请求/ 响应消息 的格式;分析s o a p 消息和w e b 服务缓存软件的内在联系,得到一个实现w e b 服务 缓存的方法。 在研究的 基础上, 本文分析目 前常见的缓存软件s q u i d 的 流程及其模块工作过程; 对s q u i d 加以 改进, 设计w e b 服务缓存 软件的客 户端和服务器 端的 工 作流程; 给出 一 个实现w e b 服务缓存的试验。 2 )本文结构安排 本文结构安排如下: 第二章详细分析网络缓存中的主要技术一w e b缓存,包括 w e b缓存理论、代理 缓存的执行过程等;讨论缓存集群服务的相关技术,论述 ) a f s ( d i r e c t a c c e s s f i l e s y s t e m , 直接 访问 文 件系统) 是 一 种良 好的 缓存 服务 器 集群节 点 之间的 连 接技 术。 第三章首先研究w e b 服务架构, 然后研究w e b 服务缓存技术的必要性, 接下来 讨论在实现 w e b 服务缓存时应该注意的几个问题,最后分析s o a p技术在w e b 服务 中的关键作用,并说明s o a p 消息对w e b 服务缓存技术的重要性。 第四 章首 先分析s q u i d 软 件的 工作 流程及模块结 构, 给出 一个w e b 服务 缓存的系 统结构图,然后分别设计w e b 服务缓存的客户端处理流程及服务器端的处理流程。 第五章给出一个实现 w e b 服务缓存的试验。 第六章全文总结及后续工作 - 一一一一一一一-一目 一 一-一一 s 华 中 科 技 大 学 硕 士 学 位 论 文 2 网络缓存及相关技术的研究与分析 网络缓存尤其是w e b 缓存是一种应用比较广泛的提高网 络性能, 减少网络拥塞的 技术;为了 提高网 络缓存的性能 和稳定性, 可以 用缓存服务器集群技术, 直接访问 文 件系统 d a f s )是一种性能非常高的服务器集群节点之间的连接技术。 2 . 1 网络缓存技术分析 网络缓存技术可以提高网络性能、减少网络拥塞。网络缓存技术的重点是 w e b 缓存技术, 本节首先研究h t t p 协议的特点和缓存控制机制, 然后对we b 缓存技术做 详细的研究。 2 . 1 . 1 h t t p 协议特点分析及级存机制的研究 h ttp 是一个属于应用层的 面向 对象的协议,由于其简洁、快速的方式, 适用于 分布式超媒体信息系统, 是www网 络的基础,它于1 9 9 0 年提出, 经过几年的使用与 发展,得到不断的完善和扩展。目 前在www中使用的是h t t p / 1 .0 , h t t p / 1 . 1 ,而 h t t p - n g ( n e x t g e n e r a t i o n o f h t t p )的建议已经被提出来了。 1 ) h t t p 协议的主要特点分析 h t t p 是一个简单的协议, 客户进程建立一条同 服务器进程的 t c p 连接, 然后发出 请求并读取服务器进程的响应。 服务器进程关闭 连接表示本次响应结束。 服务 器进程 返回的 文件 通 常 含 有 指向 其 他 服务 器上 文 件的 指 针( 超文 本链 接) , 用户 可以 很 轻 松 的 沿着这些链接从一个服务器到下一个服务器。 h ttp 协议具有如下的 特点: ( 1 )支持客户枷服务器模式,采用请求应答方式。 ( 2 ) 简单快速: 客户向服务器请求服务的时候,只需传送请求方法和路径。 请 求方法常用的 有g e t , h e a d , p o s t 。 每种方法规定了客户机与服务器联系的 类型不 同。 ( 3 ) 灵 活 : h t t p 允 许 传 输 任 意 类 型 的 数 据 对 象。 正 在 传 输 的 类 型 由 c o n t e n t - t y p e 加以标记。 ( 4 ) 无 连 接: 这 个无 连接的 含 义与 计 算机网 络中 经 常 谈 到的 无 连 接的 含 义是 不 一 样的, 在 h t t p 1 .0 中 无 连接的 含 义 是限 制 每次 连 接 只处 理 一 个请求。 服 务 器处 理 完 客 户的 请求 并 收到 客 户的 应 答后, 连接 被断 开。 在 h t t p l i 中 的 含义 是 处 理 一 个或 者 一-一一-目 一 6 华中科技大学硕士学位论文 2 网络缓存及相关技术的研究与分析 网络缓存尤其是w e b 缓存是一种应用比较广泛的提高网络性能。减少网络拥塞的 技术;为了提高网络缓存的性能和稳定性,可以用缓存服务器集群技术,直接访问文 件系统( d a f s ) 是一种性能非常高的服务器集群节点之间的连接技术。 2 1 网络缓存技术分析 网络缓存技术可以提高网络性能、减少网络拥塞。网络缓存技术的重点是w e b 缓存技术,本节首先研究h t t p 协议的特点和缓存控制机制,然后对w e b 缓存技术做 详细的研究。 2 1 1 h t t p 协议特点分析及缓存机制的研究 h t t p 是一个属于应用层的面向对象的协议,由于其简洁、快速的方式,适用于 分布式超媒体信息系统,是w w w 网络的基础,它于1 9 9 0 年提出,经过几年的使用与 发展,得到不断的完善和扩展。目前在w w w 中使用的是h r 砰1 0 、h t t p 1 ,1 ,而 h t t p - n g ( n e x tg e n e r a t i o no f h t t p ) 的建议已经被提出来了。 1 ) h t t p 协议的主要特点分析 h t t p 是一个简单的协议,客户进程建立一条同服务器进程的t c p 连接,然后发出 请求并读取服务器进程的响应。服务器进程关闭连接表示本次响应结束。服务器进程 返回的文件通常含有指向其他服务器上文件的指针( 超文本链接) ,用户可以很轻松 的沿着这些链接从个服务器到下一个服务器。h t t p 协议具有如下的特点: ( 1 ) 支持客户栅服务器模式,采用请求应答方式。 ( 2 ) 简单快速:客户向服务器请求服务的时候,只需传送请求方法和路径。请 求方法常用的有g e t 、闭j a d 、p o s t 。每种方法规定了客户机与服务器联系的类型不 同。 ( 3 ) 灵活:h t t p 允许传输任意类型的数据对象。正在传输的类型i 妇c o n t e n t t y p e 加以标记。 ( 4 ) 无连接:这个无连接的含义与计算机网络中经常谈到的无连接的含义是不 样的,在h t t p l 0 中无连接的含义是限制每次连接只处理一个请求。服务器处理完 客户的请求并收到客户的应答后,连接被断开。在h t t p l 1 中的含义是处理一个或者 6 华中科技大学硕士学位论文 是多个页面。 ( 5 ) 无状态:h t t p 协议是无状态协议,无状态的意思是指协议对于事务处理没 有记忆能力。缺少状态意味着如果后续处理需要前面的信息,它必须重传,这样可能 导致每次连接传送的数据量增大,为了方便某些应用,h t t p 中( 比如说聊天室,电 子公告板等) 加入了c o o k e 的使用。 h t t p 协议是基于请求,应答模式的,一个客户机与服务器建立连接后,发送一个 请求给服务器,请求方式的格式为,u r l ( u n i f o r mr e s o u r c el o c a t o r ,统一资源标识 符) 、协议版本号,后边是m i m e ( m u l t i p a r t i n t e m e tm a i le x t e n s i o n ) 信息包括请求修 饰符、客户机信息和可能的内容。服务器接到请求后,给予相应的响应信息,其格式 为一个状态行包括信息的协议版本号、一个成功或者是错误代码。然后是m i m e 信息 包括服务器信息、实体信息和可能的内容。 许多h t t p 通讯是由一个用户代理初始化的并且包括一个申请在源服务器上资源 的请求,最简单的情况可能是在用户代理和源服务器之间通过一个单独的连接来完 成,h t t p 协议详细说明了在w c b 服务器和客户机以及中间媒介之间的交互过程。 2 ) h t t p 协议的缓存控制机制的分析 为了有效地利用传输带宽,避免传输冗余的数据,h t t p l 1 在缓存内容方面做了 比较大的改动,在协议中将缓存内容专门独立出来,作为一个独立的内容阐述。 h t t p l 1 中认为,缓存的存在前提是不能破坏语义的透明性,或者如果不能保留 所需要语义透明,则应当给予客户端适当的警告。 h t t p l 1 的缓存控制机制可以分为两种,隐式的或者是显示的。隐式的是指服务 器端在应答中所给出的一些信息,如文档何时过期,这只对代理缓存和客户端具有建 议作用,并不具备强制作用;而显示的机制则要求代理缓存和客户端必须按照规定去 做。一般情况下,显示控制机制的优先级要比隐式机制高。 h t t p 头信息是控$ o c a e h e 的基本方式,它可以告诉c a c h e - - 个对象在多少时间内 是新鲜的,指定时间之后,c a c h e 将到源w e b 服务器检查该对象是否修改过。 实体头e x p i r e s 用来设置对象的过期时间,它的值为一个有效的 兀t p 时间,任何 其它无效时间值特别是“0 ”值都将被解释为“已过去”,也就是说已经过期,这样 该对象将不被缓存,对该对象的每次调用都将从服务器上重新获取。若需使某个对象 为“永不过期”,则要将e x p i r e s 头的值设为距发送当前响应的时间1 年以后的时间值, 但h t t p 1 1 规范建议不要设置这样的过期头。需注意的是,设置的时间是格林尼治时 7 华中科技大学硕士学位论文 间,而不是本地时间。 另一个控制缓存的h t t p 头信息是c a c h e - c o n t r o l ,这是个通用头,使w e b 的发冻 者可以定义其网页如何被缓存处理,包括:可以缓存( c a c h e a b l e ) 和可以被缓存软件存 储的指示、期满的修改机制、验证和重载的控制等。c a c h e c o n t r o l 头的值主要有以下 几神形式: p u b l i c :标识一个响应可以被任何c a c h e 所缓存,包括不能被缓存的或者只能在非 共享c a c h e ( n o n s h a r e dc a c h e ) g q 缓存的对象。例如:如果一个网页需要身份验证,通 常是不能缓存的,但p u b l i c 标识使它可以缓存。 p r i v a t e :标识一个响应的全部或部分信息指定给某一个单独的用户,并且该响应 不能被共享c a c h e ( s h a r e dc a c h e ) 所缓存。 n o - c a c h e :强制要求缓存软件在使用该对象的各份前,到源服务器上进行确认。 n o s t o r e :防止保存任何敏感信息,适用于共享和非共享缓存。 m u s t - r e v a l i d a t e :通知缓存软件必须遵守给出的所有关于新鲜度的信息。通常, h t t p 允许c a c h e 对新鲜的对象自由处理。 p r o x y r e v a l i d a t e :与m u s t r e v a l i d a t e 作用相似,但只对代理缓存或共享缓存有 用。 m a x a g e = s e c o n d s 】:指定个对象被认为是“新鲜”的最长时间, s e c o n d s 】 是对该对象请求被刷新后的秒数。需要注意的一点是,如果一个响应中同时包含了 e x p i r e s 头和c a c h e - c o n t r o l 头,而且c a c h e - c o n t r o l 头中设置t m a x - a g e 的值,霓j e x p i r e s 头设置的日期值将被覆盖。 s - m a x a g e = s e c o n d s 】:与m a x a g e 作用相似,但只被代理缓存或共享缓存使用。 2 1 2w e b 缓存技术研究 1 ) w e b 处理过程分析 整个w e b 是一套由客户机( 例如浏览器或者是其它向w e b 服务器发出请求的软件) 和服务器组成的组件系统。如图2 1 所示,w e b 客户机( b r o w s e r ) 通过i n t e m e t 晦j w e b 服务 器( s e r v e r ) 发出对某些w e b 资源的请求。为了连到服务器,客户机必须知道服务器的主 机名或者是i p 地址,通过它们客户机和服务器之间才能建立起连接。当w e b 服务器接 受并且察觉到客户机的请求时,它会根据请求的具体内容产生回复并且传送之。如图 2 2 所示,这个过程的每个步骤都是需要花费时间的。 华中科技大学硕士学位论文 图2 1w e b 访问方式简单示意图 客p 端 服务器端 发起连接 传送请求消息 1 0 邋响应 肯息 接受到响应 i l 息 建立连接 生成响应清息 图2 2 一次连接过程中h t t p 的时间消耗 2 ) w 曲缓存的效果研究 随着访问频率的变化,网络上负载发生动态增长,由于服务器访问的瓶颈,用户 访问延时增加,网络有可能发生拥塞。为改善性能在、b 服务器和客户之间增加放 置服务器内容的缓存p 9 】,并放在靠近客户方;当用户请求相同的w e b 内容时,可以不 必访问服务器,而只要访问缓存,这样在很大程度上减少i n t e m e t 上的拥塞、降低网络 流量和访问延时。通过模型分析,w w w 流的访问特性呈现“短期局部性”,即在一 段时间内,在用户提交的访问请求中,先后出现相同请求的概率比较高。这种短期局 部性为设计缓存机制提供了理论根据。缓存是一种有效地缩短网络的用户文档取回时 问、加快w 曲服务器反应速度的策略。 ( 1 ) w e b 缓存的效果可以由下面几点进行反应: h :命中率,c a c h e 满足的引用和总引用数之比; b :字节命中率,跟文档大小相关; 9 华中科技大学硕士学位论文 = 一。! = = = = = = = = = = = j = = = = = = ;= = = 4 = = = = = = = = ;= = = = ; c :缓存带来的最大延迟的节省,跟文档距离相关; 文档i 取自文档集合 1 ,2 ,n ) ,大小s i ,存取的往返延迟d i ,引用次数r i ; 当缓存区无限大时,h ,b ,c 分别可由式( 2 1 ) ,式( 2 1 ) ,式( 2 3 ) c 4 0 j 得n : h = ( ,。一1 ) d j rj ( 2 1 ) ( 2 3 ) 从式( 2 1 ) ,式( 2 1 ,式( 2 ,3 ) 可以看到:h ,b ,c ,三个参数都和引用次 数t 有直接的关系,当r i 越大,这三个值也越大,在理想情况下( 文档i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 对班克街教育方案的评价
- 建筑钢结构毕业论文
- 本科毕业论文文献
- 山东省枣庄市薛城区2023-2024学年九年级上学期期中考试物理试题(原卷版)
- 2025四川长虹电子科技有限公司招聘行政人事专员岗位拟录用人员笔试历年参考题库附带答案详解
- 2026年内蒙古呼伦贝尔市单招职业倾向性考试必刷测试卷及答案解析(夺冠系列)
- 2026年洛阳文化旅游职业学院单招职业倾向性考试题库附答案解析
- 2026年上海政法学院单招职业技能考试题库带答案解析
- 2026年四川航天职业技术学院单招职业倾向性考试题库附答案解析
- 2026年安阳学院单招职业技能测试必刷测试卷及答案解析(名师系列)
- 中考数学总复习《概率初步》真题含完整答案详解【必刷】
- 软组织牵伸技术
- 2025年内河船员考试(主推进动力装置2103·一类三管轮)历年参考题库含答案详解(5套)
- 有效管理叛逆期学生的沟通策略
- 牛羊主要疾病防控管理
- 种公牛站管理办法
- 低空经济应用场景总结
- 2025年天翼云从业认证考试题库含答案
- 动脉瘤超声诊断临床实践与诊断规范
- 2025年陕西中考道德与法治真题解读及答案详解讲评(课件)
- 儿童通信知识科普课件
评论
0/150
提交评论