论文摘要
XML(Extensible Markup Language,可扩展标记语言)是一种使用标记标记内容以传输信息的简单方法,由于它的可扩展性和跨平台特征,在web服务器和数据库系统中得到了广泛的应用,已经成为了数据描述和交换的标准。然而,相对于现在企业级服务器GB级的数据吞吐量,基于软件的XML解析无法达到所要求的吞吐量,对网络性能来说,这已成为一个严重的瓶颈。如今,开发一种能够替代软件解析XML的方法已成为必须。本文通过对XML解析的理论分析以及四种解析模型的对比,最后提出了一种基于DOM解析模型的硬件解析XML的方法。它主要包括四个重要的模块:词法分析模块、格式良好检查模块、DOM树构建模块和Schema验证模块。词法分析主要是对输入的XML字符做出相应的标记,从而识别出元素名、属性名以及文本内容,通过使用一个FSM实现。格式良好检查主要是对XML文档进行语法检查,包括元素名检查和属性名检查,在元素名检查中,主要使用栈结构对元素名字符进行匹配,而属性名检查主要是检查同一元素的属性名唯一性,本文使用一种名为布隆过滤器的高效随机存储结构,可以快速的判断当前的元素是否已经出现过。DOM树构建模块独立于格式良好检查模块和Schema验证模块,它是对整个XML文档的信息建立一棵树形结构,主要包括元素名节点、属性名节点、元素内容节点和属性内容节点四种节点类型。Schema验证是对XML文档中的元素和属性与Schema文档中所定义的规则进行匹配来验证XML文档的合法性,由于Schema文档定义的规则比较固定,在解析之前,首先对Schema文档进行预处理,将它定义的规则制作成一个静态表存储在本地内存中,这样在进行解析的过程中可以直接通过查询表寻找相应的规则。最后通过大量的实验,验证了本文的硬件解析方法较软件解析方法拥有很高的加速比,此系统的吞吐量可以达到1.2Gbps。所有的实现都是在FPGA硬件环境下测试与仿真的。
论文目录
相关论文文献
- [1].Perl语言环境下XML文档解析方法[J]. 生物信息学 2010(04)
- [2].Java解析xml文件的研究与应用[J]. 硅谷 2014(06)
- [3].基于XML的批量数据处理与分析——以电子试卷为例[J]. 医学信息 2008(05)
- [4].XML解析安全问题及对策研究[J]. 计算机安全 2009(11)
- [5].基于Sax的嵌入式轻量级xml解析实现[J]. 衡阳师范学院学报 2018(06)
- [6].基于Android的车辆定位客户端XML解析技术[J]. 电脑编程技巧与维护 2015(10)
- [7].基于SAX的XML解析与应用[J]. 计算机与数字工程 2008(07)
- [8].基于Android平台的数独游戏设计[J]. 辽宁工业大学学报(自然科学版) 2013(04)
- [9].一种基于DOM4J的Web应用增量式建模方法[J]. 现代电子技术 2009(22)
- [10].基于XML的项目管理工作流一体化建模研究[J]. 计算机应用与软件 2017(12)
- [11].通过经验值提高速度的XML解析算法[J]. 移动通信 2017(02)
- [12].基于Web的数控远程配置系统的设计与实现[J]. 工业控制计算机 2009(02)
- [13].专利信息获取分析系统设计与实现[J]. 现代图书情报技术 2009(05)
- [14].VS环境下XML解析实现[J]. 电脑知识与技术 2013(23)
- [15].支持协作的轻量级模板语言的设计与实现[J]. 计算机工程与设计 2009(24)