(通信与信息系统专业论文)手机浏览器页面解析服务器海量日志模块设计与实现.pdf_第1页
(通信与信息系统专业论文)手机浏览器页面解析服务器海量日志模块设计与实现.pdf_第2页
(通信与信息系统专业论文)手机浏览器页面解析服务器海量日志模块设计与实现.pdf_第3页
(通信与信息系统专业论文)手机浏览器页面解析服务器海量日志模块设计与实现.pdf_第4页
(通信与信息系统专业论文)手机浏览器页面解析服务器海量日志模块设计与实现.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

(通信与信息系统专业论文)手机浏览器页面解析服务器海量日志模块设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 罄 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文 中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学 或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究 所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:叠! 至1日期:趔殳:墨:1 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权 保留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅 和借阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印 或其它复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在年解密后适用本授权书。非保密 论文注释:本学位论文不属于保密范围,适用本授权书。 、们 本人签名:盈! 垄1 日期: 竺! ! :ij 导师签名: r 、 张倒 ,- 一 日期:塑巴:i :丝 一ii “0;j 手机浏览器页面解析服务器海量日志 模块设计与实现 摘要 随着手机应用软件如雨后春笋般的涌现,越来越多的人们意识 到这一领域隐藏的巨大市场潜力,手机浏览器作为众多互联网应用 的基础载体变得越来越重要,而现有的手机浏览器满足不了用户日 益多元化的功能需求,我们急需开发出新一代的手机浏览器。参考 成熟的p c 机浏览器内核功能模块划分,并在此基础上实现自己的框 架设计,称之为一个“轻量级”的手机浏览器内核一页面解析服务 器。 本文将围绕页面解析服务器的两大功能实体w e b c o r e 与 j a v a s c r i p t c o r e 以及服务性功能实体海量日志模块展开论述。 本文分析阐述了主流浏览器的设计框架,结合万维网联盟w 3 c 标准,有针对性的对比测试了不同浏览器的性能,确定最终浏览器 内核参考设计模型;概述了浏览器内核的分层设计方案及其功能模 块划分,其中详细描述了w e b c o r e 模块如何解析h t m l ,生成d o m 树,调用j a v a s c r i p t c o r e 模块处理网页中的j a v a s r i p t 脚本并修改相应 d o m 树,并举例说明了上述页面数据处理流程。 在本文的主体部分展开描述了海量日志模块的设计实现工作, 并对各个子模块的功能、程序设计思路及重要设计模式进行了细致 全面的介绍。整个设计过程经需求分析、概要设计、详细设计,最 终在l i n u x 及w i n d o w s 操作系统通过c + + 编程实现配置文件驱动的设 计方案,并通过宏定义解决跨平台编译问题。编写用于模块测试的 桩模块,驱动模块以及各种测试用例,经单元测试、系统联调,给 出测试结果数据,分析性能瓶颈,提出多种可行的解决方案。 最后对全文进行了总结,指出了本文的研究工作及意义,并对 未来的工作方向提出了展望。 关键词 b r o w s e rw e b c o r e l o g w 3 c j a v a s c r i p t c o r e d o m _;二0一 h,j t h ed e s i g na n di m p l e m e n t a t i o no fl o g m o d u l ei nm o b i l eb r o w s e r 咂bp a g e a n a l y s z i n gs e r v e r a j e i s t r a c t w i t ht h ed e v e l o p m e n to fm o b i l ea p p l i c a t i o ns o f t w a r e ,m o r ea n dm o r ep e o p l e r e a l i z e dt h a ti ti sag i a n tm a r k e tt h a th a s n tb e e nd e e p l ye x p l o i t e d a n dm o b i l ew e b b r o w s e ra sab a s ec a r r i e ro fv a r i o u si n t e m e ta p p l i c a t i o n si sb e c o m i n gm o r ea n dm o r e i m p o r t a n t b u tt h ee x i s t i n gm o b i l ew e bb r o w s e rc a n ts a t i s f i e dt h ed i v e r s i f i c a t i o n d e m a n d so ft h eg r o w i n gm o b i l eu s e r s ,s ow en e e dt od e v e l o pan e wv e r s i o no fm o b i l e b r o w s e ri nah u r r y r e f e rt ot h ef u n c t i o nm o d u l e sd i v i t i o no fm a t u r eb r o w s e rk e r n e li n p e r s o n a lc o m p u t e r , a n di m p l e m e n to u ro w n f r a m e w o r kd e s i g nw h i c hw ec a l la n l i g h t m o b i l ew e bb r o w s e rk e r n e l w e bp a g ea n a l y z i n gs e r v e r t h i st h e s i sf o c u s e so nt h et w oc o r em o d u l e s w h i c ha r ew 曲c o r ea n d j a v a s c r i p t c o r ei nw e bp a g ea n a l y z i n gs e r v e ra n ds e r v i c ef u n c t i o nm o d u l e - l o gm o d u l e t h i st h e s i sa n a l y s e sa n ds t a t e st h ed e s i g nf r a m e w o r ko fm a i nt r e n db r o w s e r , m u l t i - a n g l e sa n dm u l t i l e v e l st o t e s ta n dc o m p a r et h ep r o p e r t i e so ft h e mw i t ht h e c o m b i n a t i o no fw 3 cc r i t e r i a a n df i n a l l yd e c i d et h ew e bb r o w s e rk e r n e ld e s i g nq u o t e m o d u l e w e b k i t s u r v e yt h es p l i b l e v e ld e s i g na n df u n c t i o nm o d u l e sd i v i d eo fw e b b r o w s e rk e r n e l d i s c r i b e sh o wt op a r s eh t m lw e bp a g e ,c r e a t ed o mt r e e ,c a l l j a v a s c r i p t c o r em o d u l et op r o c e s sj a v a s c r i p tf u n c t i o n si nw e bp a g ea n dt h e nm o d i f y d o mt r e er e l a t i v e l y a n dg i v e sa ne x a m p l et oe x p l a i nt h ew e bp a g ed a t ap r o c e s sf l o w d e s c r i b e da b o v e t h em a i np a r to ft h i st h e s i s d e s c r i b e st h el o gm o d u l eo fw e bp a g ea n a l y z i n g s e r v e ri n d e t a i l ,i n t r o d u c et h ef u n c t i o na n dd e s i g nm e t h o d so fe a c hs u b - m o d u l e i n c l u d i n gs o m ei m p o r t a n td e s i g np a t t e r n a f t e rr e q u i r e m e n ta n a l y s e s ,h i g h l o wl e v e l d e s i g n u s i n gc + + l a n g u a g et oi m p l e m e n td e p l o yf i l ed r i v e nd e s i g ns c h e m ei nl i n u xa n d w i n d o w so s u s i n gm a c r od e f i n i t i o nt os o l v ec r o s s p l a t f o r mc o m p i l ep r o b l e m s t h e n d ou n i ta n ds y s t e mc o m b i n et e s t st og e tt h ep e r f o r m a n c et e s t i n gr e s u l t s ,a n dg i v es o m e p o s s i b l es o l u t i o n so fp o t e n t i a lq u e s t i o n si nl o gm o d u l e a tl a s to ft h i st h e s i s ,s u m m a r i z e st h ew h o l ew o r ko ft h i sp r o j e c t ,p o i n t so u t r e s e a r c hc o n t r i b u t i o na n ds i g n i f i c a n c e ,a n dd i s c u s s e st h ed i r e c t i o no ff u t u r ew o r k k e yw o r d s : b r o w s e r l o g w e b c o r e w 3 c i v j a v a s c r i p t c o r e d o m 目录 第一章绪论l 1 1 论文选题。l 1 1 1课题的研究背景l 1 1 2课题的研究内容。2 1 2 本论文结构安排。4 第二章页面解析服务器系统框架设计5 2 1 浏览器架构概述5 2 1 1各主流浏览器性能比较7 2 1 2 性能比较总结l5 2 2 浏览器内核概述1 6 2 2 1 浏览器内核解析1 6 2 2 2 内核层设计1 7 2 2 3 应用层设计1 7 2 3 浏览器页面解析服务器概述1 8 2 3 1 w e b c o r e 模块l9 2 3 2 j a v a s c r i p t c o r e 模块2 4 2 4 本章小结2 5 第三章海量日志模块的设计与实现2 6 3 1 功能需求分析2 6 3 2 日志记录原则2 7 3 3 模块架构设计与实现2 7 3 3 1 框架设计2 7 3 3 2 重要类组件设计与部分实现细节2 7 3 4 本章小结4 4 第四章海量日志模块的配置以及测试分析4 5 4 1 配置文件驱动方案设计4 5 4 1 1 配置文件的书写规则4 6 4 1 2 配置文件的解析方式4 7 4 2 性能测试及结果分析4 9 4 3 本章小结51 第五章总结与展望5 2 参考文献5 3 致谢 5 5 作者攻读硕士学位期间发表的学术论文目录5 6 v v i 北京邮电大学硕士研究乍学位论文 第一章绪论 手机浏览器内核包括页面的解析、d o m 树的构建、脚本的执行、页面的布 局输出等功能,可以说是浏览器开发中的最核心部分1 1 1 。成熟的浏览器内核包括 t r i d e n t ( i e 内核) 、g e c k o ( f i r e f o x 内核) 、w e b k i t ( s a f a r i 、c h r o m e 内核) 、 p e s t r o ( o p e r a 内核) 等1 2 l ,在客户端浏览器上都有着很好的表现。 i i 论文选题 1 1 1课题的研究背景 一般来说手机浏览器的内核模块通常具有如下两个特点: ( 1 ) 负责浏览器的核心功能: 虽然h t m l 本身是一种很简单的网页语言,但是通过其他技术的协助,现 在的网页早已不是最初的那个样子,这些辅助技术包括:c s s ,j a v a s c r i p t 、x m l 和p l u g i n l 3 i 等。因此,一个浏览器的核心任务就是处理网页中的 h t m l + c s s + j a v a s c r i p t + x m l + p l u g i n 。 ( 2 ) 模块相对固定,即相对来说是平台无关的: 各个浏览器几乎具有一个共同的特征:尽量复用已有的模块和库,尤其是 浏览器的核心模块。这主要是因为核心模块的结构通常非常复杂,独立开发会 耗费大量的精力。各大浏览器开发厂商为了抢占市场,越来越强调其产品的跨 平台性,因此在浏览器开发的时候会尽可能的将复杂的核心功能抽离出来,将 其设计为平台无关的,以保证切换到另一个平台的时候,所需做的改动尽可能 的少。 在浏览器架构的8 个组成模块中,u i 、网络模块和显示后端这三个模块通 常是平台相关的,也就是说会依赖于具体操作系统的底层a p i 和底层库。因此 相对于其他模块来说,这三个模块并不是固定的,对于跨平台的浏览器来说, 这三个模块会根据其所处平台的不同而完全不同;而且这三个模块所完成的功 能也是浏览器的辅助功能,而并非核心功能。因此在这8 个模块中,浏览器内 核通常是指浏览器引擎、r e n d e r 引擎、j s 引擎、x m l 解析器及数据持久模块这 北京邮电大学硕十研究生学位论文第一章绪论 五个相对固定、负责浏览器核心功能的模块1 4 i 。 综合分析已经发布的浏览器内核,无论是否开源,都存在着内聚性很强的 特点,即内部功能模块依赖设计,相互之间耦合性非常强。这对于实现浏览器 灵活的架构设计带来了很大的限制,在手机平台上,由于受到内存以及处理器 处理能力的限制,当使用已有的浏览器内核来满足手机平台浏览器的需求时, 需要做大量的功能裁剪工作,但是经过剪裁的浏览器内核在稳定性上存在很大 的风险。 我们将浏览器内核简化分为内核层( k e r n e l ) 和应用层( a p p ) ,内核层负责 浏览器内核最基本的核心操作,而应用层则负责与需求相关的具体应用的业务 逻辑1 4 i 。在内核层的设计中,要充分考虑平台无关性和应用无关性,而将具体应 用相关的逻辑交给应用层处理,这样的层次划分将浏览器的核心功能与具体应 用逻辑解耦和。在本课题中,我们就是要设计一个满足上述特点的轻量级的浏 览器内核,一个足够“小的内核,其只需支持d o m 树解析和j s 脚本执行以 及两者之间的绑定功能,而页面资源例如图片,影音等的下载功能可以放在应 用层实现,通过如此设计打破浏览器内核内聚性强的特点,为设计更复杂的逻 辑功能提供基础。 1 1 2课题的研究内容 手机浏览器需要在服务器端对页面进行转换,以生成适合手机浏览的页面。 其中页面处理服务器需要解析输入的h t m l 串,构建d o m 树,并按照一 定规则处理页面上的j a v a s c r i p t 脚本和c s s 表单,输出经过处理的h t m l 或序 列化后的d o m 树。我们尝试采用裁减改造开源浏览器内核w e b k i t 的方案,也 做了大量的工作,目前已经能够支持基本的页面解析和j a v a s c r i p t 脚本执行的需 求,但是存在比较严重的内存泄漏,系统的稳定性难以保证。技术瓶颈在于 w e b k i t 内核的内聚性非常强,开发者们在设计w e b k i t 内核时并没有考虑过模 块剥离的问题,所以只单纯抽取d o m 树解析和j a v a s c r i p t 脚本执行等模块的难 度比较大,也很难保证经过抽取后的浏览器内核不会出现问题。于是我们考虑 采取另外一种方案,即根据w 3 cd o m 规范实现自己的h t m l 解析模块,结合 另一种独立性好,处理速度更为惊人的开源j a v a s c r i p t 引擎v 8 来自行设计一种 行为更加可控,稳定性更好的手机浏览器页面解析服务器系统。 海量日志模块在整个后台页面解析服务器的系统设计中举足轻重,不仅要 记录海量的用户服务请求,数据流在本地服务器各模块之间以及网络中的的走 向,模块的数据处理结果等。将其用于分析用户行为,还要在系统运行调试中 2 北京邮电大学硕士研究生学位论文 第一章绪论 记录调试信息,反映各种异常情况。它是后台服务器系统运营维护的主要凭据。 在海量的日志信息的记录过程中要做到异步快速写入,并尽可能的避免阻 塞主进程,同时不允许出现内存泄露。 海量日志模块需要完成的功能有: ( 1 ) 支持日志信息同时输出至多种目标设备: 1 控制台屏幕( c o n s o l e ) 2 本地普通文件( 1 0 c a lf i l e ) 3 本地回卷文件( 1 0 c a lr o l lf i l e ) 4 套接口,发往特定主机的特定端口( 即指定进程) 5 系统日志( s y s l o g ) ( 2 ) 支持分级别打印 将日志信息按照信息源,产生方式划分为不同级别,并按照级别打印 输出 ( 3 ) 支持分模块打印 不同的模块可以定制所需记录的日志信息 ( 4 ) 支持多线程环境下日志信息的输出 尽可能少的阻塞主进程,同时增加不同线程间日志信息的同步管理。 ( 5 ) 支持文件转储 两种方式,分别为按照日志信息的产生时间与日志文件的大小。 ( 6 ) 异步写入日志 ( 7 ) 不允许出现内存泄露 日志记录的主要原则有: ( 1 ) 重要的函数( 业务处理) 入口处打印d e b u g 级别的日志信息,打印 出函数名称、入口参数。 ( 2 ) 函数有多个执行支路,在异常退出函数的支路上,打印w a r n i n g 级 别的日志信息,记录退出原因。 ( 3 ) 系统调用发生异常,甚至造成程序退出的地方,打印e r r o r 级别的 日志信息,记录发生该错误的文件、源代码行数、错误号等 ( 4 ) 系统与外在系统之间的交互信息,往来数据包使用i n f o 级别记录日 志信息。 3 北京邮电大学硕士研究生学位论文第一。章绪论 ( 5 ) 为了调试系统,更为细微的查看系统的运行状况而加入的日志信息, 使用t r a c e 级别。 1 2 本论文结构安排 本论文以手机浏览器轻量级内核系统设计为研究背景,分析了现有的浏览 器内核结构,按照项目需求提出了两个解决方案,分别为修改裁剪成熟的浏览 器内核模块,和在考虑到灵活性,可扩展性,稳定性的基础上定制自己的浏览 器内核,称之为“页面解析服务器。在进行了全面的调研工作后否定第一种解 决方案,采纳第二种。 本课题的工作内容包括后台浏览器页面解析服务器的系统框架设计,相关 标准的阅读,底层类库的编写,以及海量日志这个独立模块的需求分析,概要 设计,详细设计,代码实现,功能测试等工作。 本论文的结构安排如下: 第一章“绪论 ,概述了本论文的课题背景,提出两种设计方案,说明了 本论文所完成的主要任务以及工作。 第二章“页面解析服务器系统框架设计,分析阐述了现有浏览器设计框架, 对比测试了不同浏览器的性能;概述了浏览器内核的分层设计模式;剖析了页 面解析服务器的模块划分。 第三章“海量日志模块设计与实现 ,本章首先提出了日志模块的功能需求, 设计原则,详细说明了日志模块的设计思想,给出了性能测试以及分析结果。 第四章“海量日志模块的配置与测试分析”,给出了自动配置服务器端日志 模块的设计方案,并详细说明了解析方式。并对日志模块进行了全面的性能测 试,分析性能瓶颈,给出可能的解决方案。 第五章“总结与展望 ,对本课题所作工作做了总结,并对今后的开发工作 做后续展望。 4 北京邮电大学硕士研究生学位论文 第二章页面解析服务器系统框架设计 第二章页面解析服务器系统框架设计 本章基于对手机浏览器内核的性能需求,首先分析了现有p c 机浏览器的设 计框架,多角度多层次对比了各主流浏览器性能之后,选择了w e b k i t 作为轻量 级手机浏览器内核的设计参考内核,接着对其进行功能模块的简化设计,提出 了将w e b c o r e 作为h t m l 解析模块,j a v a s c r i p t c o r e 作为j a v a s c r i p t 语句控制执 行模块的设计思想。 2 1 浏览器架构概述 随着互联网的产生,浏览器作为一个独立的桌面应用开始逐渐发展起来。 除了最初几个浏览器( 如l ) m _ x 、m o s a i c 等) 的设计相对简单一些以外,现代浏 览器的设计雏形很快就固定了下来,并且在十几年的时间内几乎没有任何变化。引。 一般来说,无论是多进程还是单进程( 多进程相对于单进程,只是换了一种对 这些基本模块的组织方式而已) ,目前浏览器的架构主要由如下8 个模块组成: 7 一j一、 u s e ri n t e r f a c e_ o 叠喜 参 o = 薹 易。 譬 皇 n o , 、 图2 - 1 浏览器功能模块划分 u s e ri n t e r f a c e 用户界面是浏览器中的最上层,需要注意的是该层不仅仅是界面这么简单, 而是集中了浏览器的几乎所有上层f e a t u r e s 实现,提供作为一个桌面应用软件所 5 北京邮电大学硕十研究生学位论文第二章页面解析服务器系统框架设计 必须的一些标准功能,譬如工具栏( t o o l b a r ) 、页面加载进度( v i s u a lp a g e 1 0 a d p r o g r e s s ) 、下载对话框、收藏夹、参数配置、打印等。 u i 层可能会与桌面环境集成起来,提供b r o w s e rs e s s i o nm a n a g e m e n t 或者与 其他桌面应用的通信。 r e n d e r e n g i n e r e n d e r 引擎的主要职责是对一个给定了u r i 的资源提供一个可视化的表示 方式。通常r e n d e r 引擎将会需要能够显示h t m l 、x m l 文档,并且还需要同 时显示这些资源上的c s s 、图片资源,它需要计算每个页面的具体布局,然后 可能用r e f l o w 算法来增量调整一下页面上每个元素的位置。通常来说,r e n d e r 流程包括网页的解析( p a r s i n g ) 、布j 君j ( 1 a y o u t ) 和绘锋j m j ( r e n d e r i n g ) 这三个过程。 r e n d e r 引擎中最重要的部分是h t m l 解析器,而且通常h t m l 解析器也会 非常的复杂,因为该解析器需要兼容格式不良好的h t m l 页面。 b r o w s e r e n g i n e 浏览器引擎与r e n d e r 引擎密切相关,在很多浏览器中,这两个引擎甚至被 放在了一起作为一个模块。可以将浏览器引擎看成是r e n d e r 引擎的接口,该模 块主要提供浏览器最基本的功能,譬如u r i 加载和一些基本浏览动作( 前进、 后退、重载等) 。另外浏览器引擎还提供对r e n d e r 引擎配置的查询和操作。 浏览器引擎还会提供给u i 一些消息,譬如出错信息或者加载过程信息等。 网络模块 网络模块按照网络标准实现了h t t p 、f t p 等传输协议,需要兼容不同字符 集之间的传输转换,解决m i m e 媒体类型文件的传输等。 另外,该模块通常还需要负责实现浏览器的资源缓存。 j a v a s c r i p t 引擎 负责解释执行j a v a s c r i p t 语句,执行结果会被传递给r e n d e r 引擎,供其显 示。值得注意的是有可能一些j a v a s c r i p t 代码会被高层次的模块( 浏览器引擎或 r e n d e r 引擎) 屏蔽掉,譬如打开一个弹出窗口的功能。 x m l 解析引擎 x m l 解析引擎需要将x m l 文档输出为一个d o m 树。由于x m l 文件的高 标准化,该模块的可重用性非常高,事实上,大部分浏览器都采用了现有的某 个x m l 解析器。 显示后端 一般来说,显示后端是平台相关的, w i n d o w i n gm e t h o d 、一个u 1w i d g e t s 集合、 数据持久模块 它通常要包含d r a w i n gp r i m i t i v e 和 一个字体集合。 数据持久模块的职责是将与b r o w s i n gs e s s i o n 相关的数据存储在硬盘上。这 些数据可能包括高层的书签、工具栏设置、浏览历史、表单自动完成数据和配 6 北京邮电大学硕士研究生学位论文 第二章页面解析服务器系统框架设计 置参数等信息,也可能包括底层的c o o k i e s 、安全证书、c a c h e 等。另外还可能会 包括用户名、密码。 2 1 1各主流浏览器性能比较 本小节研究对比了i e 8 、f i r e f o x 旧、o p e r a 、9 0 0 9 l ec h r o m e 、邀游、搜狗、世 界之窗等几种市场主流浏览器的性能。虽然g o o g l ec h r o m e 浏览器在架构上存在 一些劣势,但从整体性能上考虑,g o o g l ec h r o m e 优势明显,尤其在j a v a s c a j p t 脚本执行速度上表现最为突出。因此采取g o o g l ec h r o m e 浏览器内核w e b k i t 作为 我们的设计参考内核。 表2 - 1 各主流浏览器设计比较 湖览器 班l 浆陈r e m 擎d e r j s 弓ix 玑显示后网络 数据持 擎靖模块 久 解析模块 莨b 锅镩r w毛 f d l s e f l y n x b r o w s e rc 咐 无无 c 口薛擘e l i b g a t , t l c o 佬 m o t i f + xb r o w - s e t m o s a i c b r o w s e rc o r el i b h t m l w 无无 h i b l a r w w l l c o 传 s p i d e r “g ( 十 n e c k o + g c o n f 、 e p i p h aa 积+ a 旧c i 氛i l | 妇啪 鱼也叫7 l i b x m l 2 , a y “g _ t x + n 3 s 馐s? d o z i l t a y mp f i 结等x l l ” i 玩白【, u i +g t x 十n z c k o + a d a p t 薏e “g t x 十,n 3 s 狸sm o z s t o r a 鬟亭e 韶蒯菌 x l l ”m 学h 乳r e f og 荡陡o 丸l o n k e f 一, , p a t 丸互a c :d o m x ( n g l a y o u t ) y c o c o a s t 徽毒g e 壹事 w i n d o w s g d l 、 孔戤 k o n q u e q t + 强纠i 善o t x d e 一lp o r t 叫煳随i k 3 s 。- q t 十x lil i b r a r i e s啪不详 r i 曩f 醌弩b x 蛰c o c o 嚣+ k w q ( a dj j 3 一 c o r e s a f a r i不详 a p t e 伊琵 j s c o e x p a t f o u a d a 不详 1 9 i 如啦tl 嗣急噩俸c a r b o n t i o n w e b c o r s q g i r er e 匿妇h b 托碍s es 村銎o o v u 震3 冼o t l 趱l w i n a 冱s 乏t a 盛翻瓤虿而鼯n 0 坟矗挂w 柏 n 老t d 髓 s ;匹a + b “y w s e r黝h s q l i e , v f n d o c h r o m p r o c e s sw 或,c o r w $ 2 s i d a t t pb l o c k c h r o m ev 8i b x m f = , t e 、 e g d ie 每g d i g o o 窑l efx xf t l e b r o w s e r ) u n l x :g :皇 生 0 0 e r a 不详 p f e s t o 不详不详不详 不详 7 北京邮电大学硕七研究生学位论文 第二章页血i 解析服务器系统框架设计 表2 - 2 各主流浏览器共性特征 导航地址栏,搜索栏,前进,后退,刷新,停止 窗口操作标题栏,状态栏,打开,最大化,最小化,关闭 书签管理加入,整理,导入,导出 网页内容获取全选,保存,打印 个性化历史,主页,菜单栏,源文件,安全选项,语言设置 邮忖加功能自动填表,分页浏览,禁止弹出式广告,广告过滤 表2 3 各主流浏览器支持标准 l 、h t t p ( 超文本传输协议) 和h t t p s 2 、 h t m l ( 超文本链接标记语言) ,x h t m l ( 口- - 扩展的超文本标记语言) 及 x m l ( 可扩展标记语言) 3 、图形档案格式如g i f 、p n g 、j p e g 、s v g 4 、 c s s ( 层叠样式表) 5 、 j a v a s c r i p t ( 动态网页d h t m l ) 6 、c o o k i e 让网站可以追踪浏览者 7 、 电子证书 8 、m a c r o m e d i af l a s h 9 、j a v aa p p l e t 1 0 、f a v i c o n s 1 l 、无线应用协议 1 基本功能比较( 默认基本安装) 表2 4 各主流浏览器基本功能 i e 8f i r e f o xc h o r m eo p e r a傲游 搜狗 t t 多标签页浏览 0 q q -0 _0 双击关闭标签页 q _t0 、| 双击新建标签页 、l心0j 拖拽链接打开新标签 - 0 _00 记忆最近打开的标签 0 j - 0 0 0 0 一 一 北京邮电大学硕士研究生学位论文 第二章页面解析服务器系统框架设计 鼠标手势 x-00 多搜索引擎支持 00- 0- - 拖拽( 划词) 搜索 t 0 0 00 内容聚合( r s s ) 00- 网址缩写 x -0 自动填表 -0 - 皮肤功能 -心 2 u i 新增功能比较( 最新版本) i e 8 :界面布局延续i e 7 的风格,在按钮的细节上有所增删。 f i r e f o x :在f i r e f o x3 的基础上,针对中国用户的习惯而特殊定制,如默 认情况下启动火狐就可看到的“魔镜”功能框,最值得注意的是加入了双 击标签栏空白处新建标签和双击标签关闭的功能。多了一些功能按钮, 如“火狐捷径”。支持更换主题功能,对界面的样式、按钮风格等进行自 定义,继承了原版f i r e f o x3 的各种特性。 o p e r a :保留国际版小巧、安全、快速的特点,另外加入了双击标签关 闭、拖拽后台打开等功能。 g o o g l ec h r o m e :整体风格沿袭g o o g l e 一贯的简约之风,甚至更为简单。 颠覆了传统的界面,几乎去除了窗口的标题栏,将标签页和窗口控制按 钮置于界面最顶端,除此之外,界面上只有地址栏和收藏栏。不具备一 些常用的功能。 邀游:界面上总体并没有多少变化,而比较多的是功能的调整、完善和 增加。 搜狗:界面简洁,为浏览区域腾出更多空间,标签页类似g o o g l ec h r o m e 的样式;其它元素则与傲游有些相似,如同样采用了标题栏和菜单栏一 体的靠局。可在线搜索网址的地址栏、多任务异步浏览、教育网浏览加 速等。 世界之窗:小巧:安装包只有几百k b ,还提供了单文件的绿色版。延续 了其简洁的风格,与g o o g l ec h r o m e 十分相似,可以自己更换皮肤。 腾讯t t :加入了 t t 2 0 0 8 ”风格的皮肤,采用了与世界之窗相似的界面风 格布局。新版皮肤界面更加美观、时尚,同时也更加简洁。 o 北京邮电大学硕士研究生学位论文第二章页嘶解析服务器系统框架设计 3 安全性与隐私比较 i e 8 :i e 7 增加了对钓鱼攻击的保护界面,i e 8 加入了隐私浏览模式,使 用该模式浏览时,可以避免i e 存储浏览会话的数据,最大程度防止个 人隐私的泄露,这种功能非常适用于办公室、网吧等场合。另外增加了 “s m a r t s c r e e n 筛选”( 智能网址过滤器) 功能:可以对当前访问的网站进 行在线的检查,如果有危险则组织访问并进行警告,保护用户免于钓鱼 网站和恶意软件干扰( f i r e f o x 3 的功能相类似) ,仍然提供一键删除浏览 的历史记录功能。 f i r e f o x :检测当前访问的网页,根据每隔3 0 分钟更新一次的数据库中 的记录,针对恶意网站与钓鱼网站进行阻止访问。可以很方便的读取到 网站的标识信息1 6 l :地址栏前会以不同的颜色进行显示,让用户很快了 解到当前网页是否有包含验证信息;可以查看和该网站的关系,如是否 以前浏览过该网站、是否已经保存它的c o o k i e s 、是否已经保存它的密码 等;在隐私保护方面,提供一键清除隐私的功能,没有提供安全浏览模 式。 o p e r a :提供了类似于火狐中国版的钓鱼欺诈和恶意网站保护功能,该 功能在用户访问网页之时进行检测,过滤有害的网址。对于个人隐私的 保护,提供了一键彻底清除个人数据的功能。 g o o g l ec h r o m e :支持针对网络欺诈和恶意网站攻击的保护。当要访问的 网站被怀疑存在网络欺诈、恶意软件或其它不安全因素,c h r o m e 浏览 器会发出警告。但测试中发现g o o g l ec h r o m e 的这个功能并不如火狐中 国版和o p e r a 中国版好用,有一些网址没有成功的过滤。在安全隐私方 面c h r o m e 提供“隐身模式”,可以避免记录个人浏览记录信息,另外还提 供了隐私的便捷清除功能。 邀游:在安全方面提供了“傲游安全监控”的特色功能。能够监视任何从 浏览器中运行和调用的程序,当它们被运行之前,傲游会先挡住它们, 询问用户是否允许操作。通过这个功能,当网站中的木马或病毒想要通 过本地程序执行动作时,傲游就会弹出警告窗口,用户可以选择是否允 l o 北京邮电大学硕士研究生学位论文第二章页面解析服务器系统框架设计 许执行。对于钓鱼攻击,傲游会在地址栏以绿色背景显示安全站点,不 过可支持的站点比较少,实际作用不大。在隐私保护方面,其提供了快 捷隐私清除功能,不仅可以一次清除所有隐私内容,还可以有选择地清 除地址栏、搜索栏中的某项内容;但是比起现在流行的隐私浏览模式, 比较落伍。 搜狗:没有提供对钓鱼网站和恶意网页特别的防护,但是提供了隐私保 护浏览模式,可以一键切换到该模式,浏览网页不留痕迹,保护隐私信 息不外泄。 世界之窗:提供了安全浏览模式,测试中并没有发现其具体的作用,对 于钓鱼网站和恶意网站都不会进行阻止。在隐私保护方面提供了公共场 合和隐私浏览两种模式,适应不同的使用环境需要。 腾讯t t :安全和隐私功能相对比较简单,仅支持浏览记录的快速清除。 但提供了一种与其他浏览器的隐私模式不同的安全浏览模式,腾讯t t 的安全浏览模式简单的禁止加载网页中的脚本,虽然对于安全有一定的 作用,但是往往会影响网页的正常浏览。 4 弹出窗口组织测试结果比较 测试条件: ( 1 ) 使用网络上的一组弹出窗口测试网页 ( h t t p :w w w c n p r o x y c o m p o p k i l l e r t e s t i n d e x h t m l ) ( 2 ) 不加装额外的插件和工具,采用默认设置 ( 3 ) 2 7 种不同类型的弹出窗口测试 测试结果: 表2 _ 4 各浏览器弹出窗口组织测试结果 i e 8f i r e f o xc h o r m e o p e r a傲游 搜狗 t t 弹窗拦截成功数 2 52 52 42 52 22 31 9 弹窗拦截失败数2 232 5 48 结果分析: 前四款自主开发的内核浏览器的弹窗拦截能力在总体上好于后三款i e 内核 浏览器,其中i e 8 、f i r e f o x 和o p e r a 的“失误”都只有两项;在后三款采取i e 内核的第三方浏览器中,搜狗浏览器的表现尤为出色,只有四项未通过,而 北京邮电大学硕士研究生学位论文第二章页匝i 解析服务器系统框架搜计 腾讯t t 的表现最差,未通过项达到了八项,在很大程度上无法充分保护用 户免受弹窗干扰。 5 a c i d 兼容性比较 互联网中存在着各种各样的网页服务器、网页浏览器,他们往往是在不同平 台、采用不同的技术开发。由于大家采用的标准不同,导致早期互联网存在 大量的不兼容问题。典型的表现形式是,一个浏览器中正常的网页,在另外 一个浏览器中就变得不正常。为此互联网联盟( w 3 c ) 1 7 1 制定了一系列标准 并督促w e b 开发者和内容提供者遵循这些标准。标准的内容包括使用语言的 规范,开发中使用的导则和解释引擎的行为等等。w 3 c 也制定了包括x m l 和c s s 等的众多影响深远的标准规范。 兼容性的一个核心问题就是浏览器如何对于网页进行排版,即如何渲染 ( r e n d e r ) 。但是,各个浏览器的开发者都更加愿意自己设定标准,这样浏览 器一旦占领市场,就可以给新来的竞争者们设置障碍。所以w 3 c 标准制定 的初期,基本上无人理睬。w 3 c 在不断游说各大浏览器开发者的同时建立 了一个网页标准项目( w e bs t a n d a r dp r o j e c t ) ,招募专业网页程序员开发了一 个测试网站,用来测试浏览器对于w 3 c 标准的遵循程度,这个测试网站, 就是a c i d 。在这个网站面前,哪些浏览器和蔼可亲,哪些浏览器头上有角就 变得一清二楚。这使得用户选择有了一个直观的比较标准,让浏览器开发员 有了一个明确的目标。采取相同的标准,能够让网站开发者节省大量的时间, 让浏览器的用户看到更多的内容,所以随着时间的推移,通过a c i d 测试也 逐渐成为评价浏览器好坏的标志。 目前a c i d 测试分a c i d l 、a c i d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论