基于RTP的矢量数据流式传输研究
作者简介:苗茹(1979-),女,河南开封人,博士,讲师,研究方向为空间数据处理与可视化。E-mail: mr1015@126.com
收稿日期: 2015-03-16
要求修回日期: 2015-04-26
网络出版日期: 2015-09-07
基金资助
国家自然科学基金青年基金项目“面向地图可视的矢量数据流式渐进传输研究”(41201411);资源与环境信息系统国家重点实验室自主部署项目“陆地表层系统数据-模型共享研究与应用示范”(O88RA900KA)
Streaming Transmission of Vector Data Based on RTP
Received date: 2015-03-16
Request revised date: 2015-04-26
Online published: 2015-09-07
Copyright
针对WebGIS中大规模矢量数据的网络传输问题,提出采用流式传输方式分批次向客户端传输所需数据,从而达到矢量数据在线实时应用的目的。通过研究流式传输机制,建立了适应于矢量数据流式传输的服务框架;按照流式传输的要求,对矢量数据进行分块组织,保证每个批次的要素作为独立的单元传输并在客户端处理;在传输过程中,实时传输协议实现了矢量数据流式传输机制,并参照流媒体文件“边传边播”的模式,设计了矢量数据的封包和解包算法。该方法实现了矢量数据的发送和接收,达到了多次往复传输的目标,且能通过差错控制和压缩加密等手段提高数据传输效率、保证数据传输质量和安全。实验证明,矢量数据的流式传输能降低约一半的数据传输量,有效地提高了传输效率,降低了系统响应时间。
苗茹 , 宋佳 . 基于RTP的矢量数据流式传输研究[J]. 地球信息科学学报, 2015 , 17(9) : 1029 -1038 . DOI: 10.3724/SP.J.1047.2015.01029
Over the past decade, WebGIS has been widely adopted in various applications to visualize and share geospatial information over the Internet. To address the Internet transmission problems regarding large-volume vector data, streaming transmission based on streaming media transmission protocol is proposed. This paper focuses on the organization mode and the streaming transmission mechanism of vector data, and a service framework for vector data streaming transmission is put forward. The framework consists of server-side vector data preprocessing, streaming progressive transmission, client-side vector data reconstruction and application. A vector data structure is designed which is taken to be an independent group storage. Each group is a separate transmission unit, and the grouped features can be handled immediately after they arrive at the client side. This structure can support the data structure of point, polyline, polygon and other basic geometrics and abide by the OpenGIS standard encoding specification. The server-side preprocessing divides the originally stored vector data into several groups for progressive transfer. Referencing to the multimedia model, we propose an RTP-based streaming transmission schema on the basis of analyzing the packet headers of the RTP and RTCP. The RTP payload format is called vector data stream (VDS), and it is composed of a stream header and a stream body. The combination of RTP method with UDP for streaming transmission has better transmission efficiency than the XML-based WFS for web mapping applications. The error control method and security mechanism we proposed make up UDP's unreliable connection issue. The results are compared with WFS using 1:100 million Chinese basic geographic databases. The comparison reveals that the transfer size of WFS is larger than VDS and the transfer time of streaming transmission is approximately half of WFS's. Thus, the outline of a large-volume vector data map could be viewed quickly based on the proposed mechanisms and algorithms. The experimental results demonstrate the technical feasibility and usability of this approach.
Fig. 1 Traditional transmission and streaming transmission图1 传统传输方式与流式传输方式 |
Fig. 2 Framework of streaming transmission of vector data图2 矢量数据流式传输框架 |
Fig. 3 Structure of Vector Data Stream图3 VDS的结构 |
Fig. 4 The meaning of fields in Stream Header图4 Stream Header各字段的含义 |
Fig. 5 The meaning of fields in Stream Body图5 Stream Body各字段含义 |
Fig. 6 Process of vector file converter图6 矢量文件转换器流程图 |
Tab. 1 Comparison of vector file sizes before and after the conversion表1 转换前后文件的大小对比 |
矢量文件 | 要素类型 | 要素个数 | 原始大小(MB) | 转换后的大小(MB) |
---|---|---|---|---|
中国1:100万县级行政区 | 面 | 4459 | 66.52 | 33.50 |
中国1:100万等高线 | 线 | 96 786 | 144.67 | 72.42 |
中国1:100万居民点 | 点 | 35 602 | 3.84 | 1.01 |
Fig. 7 Framework of streaming transmission based on RTP图7 基于RTP的流式传输框图 |
Fig. 8 RTP packet of streaming transmission图8 流式传输过程中的RTP分组 |
Fig. 9 Sending and receiving RTP packets图9 RTP数据包的发送和接收流程图 |
Tab. 2 Structure of tagRepeatPackCmd表2 重传命令tagRepeatPackCmd结构 |
位置 | 字段 | 含义 | 类型 |
---|---|---|---|
Byte 0 | PackSerialNo | 重发的数据包序号 | Int32 |
Byte 4 | RepeatTimes | 重发请求的次数(可选项) | Int32 |
Fig. 10 Error control of vector data streaming transmission图10 矢量数据流式传输中的差错控制 |
Tab. 3 Structure of tagSecretKey表3 矢量数据的密钥tagSecretKey结构 |
位置 | 字段 | 含义 | 类型 |
---|---|---|---|
Byte 0 | MD5SecretKey | MD5加密算法密钥 | bit[32] |
Byte 32 | RSASecretKey | RSA加密算法密钥 | bit[1024] |
Fig. 11 Architecture of the prototype system图11 原型系统的总体架构 |
Fig. 12 The streaming web mapping for the 1:1M county-level divisions in China图12 1:100万县级行政区流式显示过程 |
Fig. 13 Comparison of transmission efficiency between WFS and RTP streaming图13 WFS与流式传输效率对比 |
The authors have declared that no competing interests exist.
[1] |
|
[2] |
|
[3] |
|
[4] |
|
[5] |
|
[6] |
|
[7] |
|
[8] |
|
[9] |
|
[10] |
|
[11] |
|
[12] |
|
[13] |
|
[14] |
|
[15] |
|
[16] |
|
[17] |
|
[18] |
|
[19] |
|
[20] |
|
[21] |
|
[22] |
|
[23] |
|
[24] |
|
/
〈 |
|
〉 |