IP网络流量数据采集与存储系统的设计与实现
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
近年来,随着以TCP/IP为核心协议的互连网的快速发展,IP技术作为一种承载业务和沟通传输的中间体得到了极大的发展。基于IP的业务应用发展迅速,网络的规模日趋庞大。网络的可用性与网络规模膨胀的矛盾显得更加突出。结构越来越复杂和规模越来越庞大的网络系统更需要网络管理软件来保证系统的正常运作,网络管理的质量会直接影响到网络的运行质量,管理好一个网络与网络的建设同等重要。
     网络管理软件通过对网络数据的分析达到对网络资源、性能、故障的管理,而网络数据的获取是网络管理软件中最为重要的部分,本文详细阐述了IP网络流量数据采集与存储系统的设计与实现。
     文章首先介绍了网络管理的一些基础知识,包括网络管理的基本概念、网络管理的五大功能以及网络管理的体系结构。
     其次,文章分析了网管数据采集系统所使用的主要协议,包括SNMP、NetFlow、sFlow以及RMON等。
     接着,文章介绍了IP网络海量数据的存储方法,并比较了几种存储方案的优劣。
     文章最后结合项目实践详细描述了IP网络数据采集与存储系统的设计与实现。鉴于被管网元的多样性和管理类别的不同,我们在数据采集层上采取了不同的协议采集不同的网管数据,把数据采集分为主动数据采集和被动数据采集。NetFlow、sFlow、SNMP TRAP属于被动采集的范畴,在flowd里面自动实现数据的采集、告警和入库操作:而SNMP、CLI属于主动采集,必须让采集服务器使用轮询操作来及时取得网管数据。为了避免海量数据存取导致的平凡I/O操作,在数据存储上我们采取了嵌入式数据库,并将原始数据和处理了的业务数据进行分库存储;另外为了提高系统的整体效率,我们对系统进行分层处理,每一层对应着不同的进程,数据采集层为flowd进程和arpd进程、业务处理层为flow-mining进程,而前台展示层我们则使用J2EE规范技术实现。
     为了提高数据接收和处理效率,我们用C语言编写了数据采集层和业务处理层,而前台展示层我们则用跨平台性良好的JAVA技术实现。
With the great development of Internet , the IP network technology ,as a carrier of business and communication, having got rapid growth in recent years. The business based on IP technology also make good time ,which make the network become more and more enormous, and increase the inconsistency between availability and size of the network. The quality of the network management can directly affect the network's transport, the construction is as important as management to network..
     Network management software manage the network resource、performance、fault by analyzing the network data, how to get network data is the most important part during the course of developing the network management software, This article will elaborate on the design and implement method of data acquisition and storage system.
     This paper first introduces some base theory of network management technology, including base conception, main functions and framework of network management.
     Secondly, this paper analyzes some protocols used by data acquisition, including SNMP, NetFlow and RMON.
     After that this paper gives a brief introduction about how to storing big data of IP network, at the same time, To show differences we compare many kinds of storing means.
     Finally , the design and implementation of the data acquisition and storage system allied project practice is discussed in detail at chapter 5. Taking different protocols collecting different network data in data acquisition layer for network cell and management class difference, In upper level, data acquisition is divided into active acquisition and passive acquisition.
     NetFlow、SNMP TRAP belong to passive acquisition, and in the flowd module acquisitive the data , save the data and transfer the data to alarm module. However, SNMP and CLI, belonging to active acquisition , must be polled regularly by polling server. In order to avoiding frequently operate about I/O, using embedded database store collected data, for origin data and business data disposed store in difference databases. In order to improve the whole efficiency of the whole system, divide the whole system into three layers , each layer corresponding with a process. Data collect layer is flowd and arpd process, business dispose layer is flow-mining, then for the front disposal we take J2EE technology.
     In order to promote the efficiency of receiving and disposing, we program with the C language for data collecting layer and business disposing layer . for front disposal layer we program with the JAVA language for it working different platform.
引文
[1] 金胜梅 中国网络管理软件市场2004-2008年预测与分析http://www.idc.com.cn/
    [2] 王胜军 网络管理软件的发展趋势http://www.sina.com.cn/
    [3] 吴黎兵,吴产乐,崔建群,熊卿;《一种基于移动代理的网络性能管理模型研究》;武汉大学学报(理学版),2005 Vol.51 No.05
    [4] 王龙; 武汉和中网络性能管理系统技术白皮书;2006.02
    [5] 吕霞,李文印,玄光哲;《基于SNMP的校园网网络性能管理系统的实现》;吉林大学学报(信息科学版),2003 Vol.21 No.02
    [6] 刘文涛;《Linux网络入侵检测系统》;电子工业出版社,2004.10
    [7] 谢希仁;《计算机网络》;电子工业出版社,2002.6
    [8] 周冀松,雷震甲;《SNMP网管协议的原理与实现》;无线电通信技术,2004Vol.30No.3
    [9] http://www.cisco.com/
    [10] 崔毅东,张晖,徐惠民;《基于NetFlow技术的网络流量统计》;电信科学,2003 Vol.19NO.6
    [11] 刘广义,卢泉,杨国良;《基于NetFlow流量采样的误差分析》;电信科学,2005 Vol.21NO.5
    [12] 刘健.《NetFlow技术原理与应用》.铁道通信信号,2005 Vol.41 No.1
    [13] 吕倩,谭邦:《网络监视系统设计与实现》,南华大学学报(自然科学版)2005 Vol.41No.1
    [14] http://www.sFlow.org/
    [15] 熊剑锋,张凌,宁国宁,叶昭;《基于sFlow的网络流量测量系统》,华中科技大学学报(自然科学版)2003 S1 No.4
    [16] 陈波,高伟勋,瞿雪萍,刘海荣;《SFlow技术在网络安全管理中的应用》中国教育网络2005 Vol.03 No.5
    [17] 中科永联高级技术培训中心;《测试驱动开发》;http://www.itisedu.com/phrase/
    [18] W.Richard Stevens著,尤晋元译;《UNIX环境高级编程》;机械工业出版社,2004.8
    [19] 李玉波、朱自强、郭军;《Hnux C编程》;清华大学出版社 2005.9
    [20] http://www.sleepycat.com/
    [21] W.Richard Stevens;《TCP/IP详解》;机械工业出版社,2003.12
    [22] 周伟明;《多任务下的数据结构与算法》; 华中科技大学出版社 2006.4
    [23] 王敬华、林萍、陈静; 《C语言程序设计教程》; 清华大学出版社,2005.10
    [24] 郑瑞卿,黄国斌;《操作系统同步研究—Linux内核同步机制》;电脑知识与技术(学术交流),2005 No.12
    [25] SmarTraining工作室、梁如军、从日权;《Red Hat Linux 9网络服务》;机械工业出版社,2004.1
    [26] 张银福、陈曙晖、赵振宇;《Linux网络应用技术》;国防科技技术大学,1999.5
    [27] Michael K.Johnson、Erik W.Troan《Linux应用程序开发》;电子工业出版社,2005.11
    [28] Arthur Griffith《GCC技术参考大全》;清华大学出版社,2004.7
    [29] Keith Haviland、Dina Gray、Ben Salama著,舒明、熊占波等译;《UNIX系统编程》电子工业出版社,2003.1
    [30] Ellie Quigley著,吴雨浓译;《Linux Shell实例精解》;中国电力出版社,2003.2
    [31] 王逸飞;《IP网管数据采集系统的设计与实现》;西安电子科技大学,2004.2,10-10
    [32] 苗序娟 《网络流量的检测与分析》天津工业大学,2005.02,8-10
    [33] Kapil Sharma, Mohammed J. Kabir, Peter C. Norton, Nathan Good, Tony Steidler-Dennison; 《Professional Red Hat Enterprise Linux 3》; Wrox; November 2004
    [34] Richard Stones, Neil Matthew, Alan Cox; 《Beginning Linux Programming, 2nd Edition》; Wrox; April 2005
    [35] Robert Sheldon, Geoff Moes; 《Beginning MySQL》; Wrox; April 2005
    [36] Vivek Chopra, Amit Bakore, Ben Galbraith, Sing Li, Chanoch Wiggers; 《Professional Apache Tomcat 5》; Wrox; April 2005
    [37] Berthold Daum; 《Professional Eclipse 3 for JAVA Developers》; Wrox; November 2004
    [38] Ivor Horton; 《Ivor Horton's Beginning JAVA 2, JDK 5 Edition》; Wrox; December 2005
    [39] Jason Gerner, Elizabeth Naramore, Morgan Owens, Matt Warden; 《Professional LAMP: Linux, Apache, MySQL and PHP5 Web Development》; Wrox; December 2005
    [40] Robert Sheldon, Geoff Moes. 《Beginning MySQL》. Wrox Press. April 2005.
    [41] Vivek Chopra, Amit Bakore, Ben Galbraith, Sing Li, Chanoch Wiggers. 《Professional Apache Tomcat 5》. Wrox Press. April 2005.
    [42] Berthold Daum. 《Professional Eclipse 3 for Java Developers》. WroxPress, November 2004.
    [43] Ivor Horton. 《Ivor Horton's Beginning Java 2, JDK 5 Edition》. Wrox Press. December 2005.
    [44] Jason Gerner, Elizabeth Naramore, Morgan Owens, Matt Warden . 《Professional LAMP: Linux, Apache, MySQL and PHP5 Web Development》 .Wrox.December 2005.
    [45] Robert Sheldon, Geoff Moes . 《Beginning MySQL》 .Wrox Press,April 2005.
    [46] Eric Foster-Johnson, John C. Welch, Micah Anderson . 《 Beginning Shell Scripting》 .Wrox Press,April 2005.
    [47] Paul Love, Joe Merlino, Craig Zimmerman, Jeremy C. Reed, Paul Weinstein 《Beginning Unix》 .Wrox Press,April 2005.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700