上海代写论文网专业提供代写毕业论文、代写本科论文服务

相关文章推荐

联系方式
学校学生上网行为分析技术探析
发布时间:2019-09-10

  摘    要: 校园网学生上网行为分析,是高校校园网管理部门尽早发现校园网资源使用状况,学生管理部门了解学生上网行为是否健康的技术基础。文章提出利用DPDK架构实现网络数据包快速采集,利用深度学习进行网络流量分析,实现校园网学生上网行为的准确识别,并对学生上网行为分析的未来发展方向进行了探讨和展望。

  关键词: 学生上网行为; 深度学习; 流量识别; DPDK架构; 网络数据采集;

  Abstract: The analysis of students' online behavior on campus network is the technical basis for the management department of campus network to find out the use of campus network resources as soon as possible, and the management department of student to know whether students' online behavior is healthy or not. This paper analyses the main challenges faced by the behavior analysis technology of campus network, and puts forward the idea of using DPDK framework to realize the rapid collection of network data packets, and using deep learning to analyze network traffic, so as to realize the accurate identification of students' online behavior on campus network. The future development direction of students' online behavior analysis is discussed and prospected.

  Keyword: student online behavior; deep learning; traffic recognition; DPDK framework; collection of network data;

  0、 引言

  校园网学生上网行为分析指,通过在校园网出口或校园网不同节点采集网络流量,识别流量信息中的网络应用, 如P2P应用、WWW、网络游戏等,然后对网络应用进行统计和汇总,从而了解校园网网络资源的应用情况以及学生的网络行为。

  通过校园网学生上网行为分析,高校信息管理部门能精细化地了解校园网资源的使用情况并准确判断校园网资源使用是否出现了异常,如通过网络中的P2P流量占整个资源的比例,浏览器应用占据资源的比例,即时通信软件占用的比例,以及网络视频信息占用的比例等,能判断学校校园网流量资源的使用是否合理;此外,通过流量识别能够发现校园网中是否存在异常流量,从而为校园网管理部门拦截管控异常流量提供了技术支持。

  与高校学生“一卡通”数据和学生成绩数据结合进行数据挖掘,建立适当的关联模型,能够使学生管理部门预判是否有学生因为不健康的上网行为影响了学习,并对这些学生进行预警。因此,校园网学生上网行为对高校的管理部门非常重要。

  校园网学生上网行为分析主要通过校园网数据采集,流量数据识别,应用的统计汇总以及结果的可视化等技术实现。随着校园网速度的提升,网络应用复杂度增加,各种新的未知网络流量数据以及大量加密网络流量的出现,给校园网数据的采集及流量识别带来了挑战。
 

学校学生上网行为分析技术探析
 

  1、 校园网学生上网行为分析技术面临的挑战

  校园网上网行为分析技术的关键是校园网流量数据的准确快速采集和网络流量的正确识别。本文首先对校园网网络数据采集和流量识别存在的技术难点进行分析,然后提出相应的解决方案。

  1.1、 校园网数据采集技术

  校园网网络数据可以使用集中式部署和分布式部署两种方式进行采集。集中式部署指在校园网出口处安装一个专门旁路硬件设备,借助设备俘获出入校园网的所有网络流量数据;此外也可以使用交换机镜像进行流量采集。但无论哪种方法,随着网络出口流量带宽的快速增加,校园网网络数据包俘获过程中丢包现象越来越严重。

  校园网网络数据采集可以采用硬件实现也可以采用软件实现。硬件实现需要购买专用硬件设备,这种方式采集准确度高,丢包率低,但不利于功能扩展和二次开发,不适合研究人员使用。软件方式由研究者自行开发,并可以根据需要进行灵活部署和设置,易于进行软件功能扩展。但当前网络数据俘获软件通常采用基于操作系统内核的旁路机制, 仅在系统内核协议栈处理数据包时捕获数据,整个数据包捕获或多或少的依赖操作系统内核协议栈。操作系统内核收发包需要首先由网卡触发中断,CPU将数据包从网卡缓存中拷贝到内核内存空间,经过内核协议栈处理后,再将数据包拷贝到用户态内存空间。此过程处理中断需要消耗大量CPU资源、多次内存拷贝以及系统调用[1];此外系统普通内存页只有4KB,内存访问速度慢,协议栈处理也将造成大量的性能消耗[2]。以上原因导致软件数据包俘获中消耗了大量资源,以至于在网络高负载时,由于系统资源被耗尽而出现大量丢包。

  此外,还可以采用分布式数据采集提高网络数据采集准确性和速度,满足高速校园网网络流量采集的需求。目前校园网网络拓扑结构大多数是树形结构,一般采用三层架构,即核心层、汇聚层和接入层。为了准确地采集数据,可以在核心层不同交换机上同时进行数据采集,并对采集的数据进行流量分析,最后再进行汇总。

  1.2、 流量识别

  学生上网行为分析另一个关键技术是网络流量的准确识别。通过识别网络流量的应用类型,对各种应用类型统计和汇总从而得到学生上网行为数据。

  目前,网络流量识别方法主要包括基于端口、深度包检测以及机器学习等三种。早期网络流量主要采用基于TCP的端口来进行识别,但随着P2P应用的大量出现以及动态端口号技术的广泛使用,利用端口号识别流量的方法不再有效[3]。

  随后提出了深度包检测DIP (Deep Packet Inspection)技术,DPI流量识别技术的基本原理是:首先对要识别的目标流量进行协议或者应用的特征分析,分析它们进行网络通信时,所发送的数据包负载中所携带的特征码,这种特征码可以是负载中某些特定位的二进制数据,负载中某些特征字符串或者负载通过散列变换后的数字签名。获取应用或协议的特征码后,将其应用到流量的识别中,当流量产生的数据包通过识别系统时,识别系统对其进行解包,检查数据包中是否携带目标流量类型的特征码,如果是则表示该流量与目标流量匹配。该技术通过检测负载特征识别流量,具有极高的准确率。因此,产生了大量的基于DPI技术的产品,如PACE[4]、Open DPI[5]、NDPI[6]、L7-filter、Libprotoident[7]等。但深度包检测存在两个问题,第一,实现深度包检测的前提是数据包的部分内容必须是可见的,但网络应用中出现了越来越多的加密流量,深度包检测无法准确地识别这类数据包的类型;第二,深度包检测的前提是网络数据包的载荷码是已知的,通过匹配网络数据包的载荷码才能识别出具体的应用。目前所有网络应用的载荷码的搜集汇总非常困难,此外,随着网络应用的发展,建立一个包括所有应用的网络数据包载荷特征库几乎是不可能,载荷特征码库不全则无法实现网络流量的准确识别。

  流量识别的研究热点是机器学习的方法,其原理是通过对网络流量预处理提取出网络流的有效特征与统计信息,并对所提取的特征信息进行机器学习以发现其规律,总结每一类流量的共性特征并构建网络流量模型,由此设计分类器对网络数据流量进行识别与分类。基于机器学习的流量识别算法,不受动态端口、加密、数据包特征库不全等影响,分类的准确度和可靠性比基于端口的和深度包检测方法有很大的提高。但到目前为止,基于机器学习的流量识别还处在初级阶段,机器学习的算法还较为复杂,尚未出现实用性的基于机器学习的流量识别工具。机器学习的流量识别算法分为有监督和无监督两种方式[8]。有监督算法,首先需要一个标准训练集,利用训练集训练分类模型,然后用分类模型进行测试流量的识别,有监督算法的准确度依赖于特征向量的选择和标准数据集构建,而标准数据集的构建比较困难。无监督算法则无需提供训练集,直接对数据样本进行挖掘实现聚类,但无法进行流量应用类型的准确判断。此外,目前还有研究者利用无监督算法聚类的结果来标注,再利用标注的结果进行测试数据识别的半监督机器学习算法,但可用的研究结果比较少。

  2、 校园网高速网络数据采集研究

  为了适应校园网高速流量增长的要求,在对软件网络数据俘获中存在的问题分析发现,现有的数据采集系统由于在软件中多次进行核心态与用户态切换,内存块设计的不合理导致系统资源不足,引起了校园网数据俘获过程中的丢包现象,针对该问题,我们对校园网网络数据采集软件进行了优化设计,最大限度地解决校园网网络数据包俘获中的丢包问题。

  为了更全面地解决基于软件的网络数据包采集中数据包转发和捕获效率低下的问题,6WIND, Intel等多家公司,针对Intel的CPU和网卡开发了数据包转发处理套件DPDK。DPDK是一套强大、高度优化的用于数据包处理的函数库和驱动集合,可以帮助用户将控制面和数据面平台进行整合,从而能有效地执行数据包处理[9]。

  为此,我们针对传统软件数据包俘获中存在的问题,在数据包采集过程中使用了轮询方式替代原有的中断方式,提高了采集的效率,并降低了资源消耗;使网卡驱动程序运行在用户态,从而避免了在核心态和用户态之间的切换开销,进一步减少了资源消耗;使用大内存机制,减少内存切换的次数,从而降低了内存切换的时间;采用了将不同进程绑定到不同的CPU内核的方式,提高了系统的并发程度,加快了处理速度;使用了新的数据结构将结果数据的结构体和数据绑定,减少内存分配的数量,达到节省资源提高处理速度的目的;减少了资源的消耗,从而降低了丢包现象。

  通过以上措施,较好地实现了在单个万兆网卡上进行软件数据采集的丢包问题[10]。

  3、 流量识别技术

  校园网的网络流量数据经过清洗后,下一步需要进行流量识别。由于基于端口的流量识别和深度包解析以及机器学习算法进行流量识别都存在问题,我们采用了基于深度学习的方式进行了校园网流量的识别。

  深度学习采用反向传播算法来学习网络流量的内部参数,实现从原始数据中逐层提取抽象的特征,最终实现分类。卷积神经网络CNN是深度学习的典型代表。CNN中的卷积层对输入数据进行特征提取,主要包含局部感知野、权值共享和多卷积核三方面的特性,前两者可以有效的降低数据维度,而多卷积核则为CNN中池化层进一步提取特征向量并降低特征维度进行准备,同时还能够降低过拟合影响。通过多次特征向量提取和处理,最终结果送入到CNN的全连接层,形成流量识别结果。与其他流量识别方法相比,深度学习无需大量的标准数据集,借助Moore提供的数据集以及网络流量的248种特征,能够实现网络流量中特征向量的自动提取,建立分类器,并实现测试数据流量的识别。

  Moore数据集是已标注处理的公开流量数据集,一共包含了十个时间段、十二个类别的流量包。每个流量包都采用相同的特征提取算法保留248个最重要的特征项,并标注流量类别。为了更加透彻的表示每个流量包中248个特征项与流量类别的关系,采用word2vec词向量工具向量化流量数据,将生成的词向量送入卷积神经网络的输入层。经过卷积层、池化层和全连接层的训练生成适合流量识别的模型并保存。在进行模型评估预测时可以直接调用保存的模型进行预测,无须再次训练模型和参数。实验表明,卷积神经网络在Moore数据集上准确率达到97%。

  虽然卷积神经网络在Moore数据集上取得了不错的效果,但是Moore数据集本身存在严重的标注类别流量包数量不均衡的问题。例如Moore数据集第二个时间段流量包entry2,共包含流量数据23801条,其中WWW流量数据18560条,而GAMES数据仅2条。为了保证数据集的质量,均衡各类别流量包的数量,提高网络流量识别准确性,需要对Moore数据集中的训练数据进行扩展。为此我们从校园网镜像端口采集了网络流量,将俘获的流量包采用Moore数据集的方式进行处理,保留最重要的248个特征项,以保证扩充前后数据集的一致性。通过对Moore数据集不断扩展,卷积神经网络在各个类别中准确率效果不断提升。

  4 校园网学生上网行为展望

  校园网学生上网行为分析实现主要包括了校园网数据采集,网络流量识别,应用类型的统计与分析,结果的可视化显示等四个方面技术。由于校园网出口带宽迅速提高,学生上网人数不断增加,网络应用类型越来越多,快速准确的校园网数据采集和网络流量识别面临着挑战。本文论述了基于DPDK的单节点流量快速采集技术,减少采集节点的资源消耗,防止采集中的丢包现象。采用基于深度学习的流量识别技术来提高校园网网络流量识别的准确度,保证学生上网行为的准确分类。

  随着技术的不断发展,还可以通过以下措施不断提升学生上网行为分析的性能。 (1) 将网络数据采集的分布式部署和网络流量识别的分布式计算相结合。例如采用SPARK系统或者HODOOP平台进行部署,分别提高网络数据采集和流量识别的速度。 (2) 进一步扩展标准网络数据集中的训练数据,平衡各类别网络流量数据的比例,优化深度学习的算法,不断提高校园网流量识别的准确性,降低深度学习复杂性,实现学生上网行为的工程性和实时性要求。

  参考文献

  [1] 王佰玲, 方滨兴, 云晓春.零拷贝报文捕获平台的研究与实现.计算机学报, 2005.28 (1) :46–52.2
  [2] 王佰玲, 方滨兴, 云晓春.传统报文捕获平台性能影响因素分析.计算机工程与应用, 2003.22:151–152
  [3] Thmos K, Andre B, Michalis F, et al. Transport layer identification of P2P traffic[C]//Proc of the 4thACM SIGCOMM Conference on Internet Measurement, 2004.25-27
  [4] DPI engine-R&SPACE2[EB/OL]. http://www.ipoque.com/products、dpi-engine-rsrpace-2.
  [5] OpenDPI[EB/OL].[2017-09-09]. https://sourceforge.net/projects/opendigt/.
  [6] Deri L, Martinelli M, Bujlow T, et al. nDPI:Opensourcehigh-speed deep packet inspection[C]//Proc of Wireless Communications and Mobile Computing Conference, 2014:617-622
  [7] Application layer packet classifier for Linux[EB/OL].[2017-09-09]. http://17-filter.soutceforge.net/2009.
  [8] 张炜.基于多分类器的网络流量分类研究[D].扬州大学, 2015.
  [9] 任昊哲,年梅.基于DPDK的高速数据包捕获方法[J].计算机系统应用,2018.27 (6) :240-243
  [10] 赵宁, 谢淑翠.基于dpdk的高效数据包捕获技术分析与应用.计算机工程与科学, 2016.38 (11) :2209–2215

对应分类:
版权所有:上海论文网专业权威的论文代写、论文发表的网站,秉承信誉至上、用户为首的服务理念,服务好每一位客户
本站部分论文收集于网络,如有不慎侵犯您的权益,请您及时致电或写信告知,我们将第一时间处理,邮箱:shlunwen@163.com