CN109905696B - 一种基于加密流量数据的视频服务体验质量的识别方法 - Google Patents

一种基于加密流量数据的视频服务体验质量的识别方法 Download PDF

Info

Publication number
CN109905696B
CN109905696B CN201910019374.0A CN201910019374A CN109905696B CN 109905696 B CN109905696 B CN 109905696B CN 201910019374 A CN201910019374 A CN 201910019374A CN 109905696 B CN109905696 B CN 109905696B
Authority
CN
China
Prior art keywords
video
playing
qoe
neural network
tcp
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201910019374.0A
Other languages
English (en)
Other versions
CN109905696A (zh
Inventor
陈锐
杜歆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201910019374.0A priority Critical patent/CN109905696B/zh
Publication of CN109905696A publication Critical patent/CN109905696A/zh
Application granted granted Critical
Publication of CN109905696B publication Critical patent/CN109905696B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于加密流量数据的视频服务体验质量的识别方法。所述方法包括:获取视频播放时的加密流量文件以及相应的事件信息;对所述的事件信息进行处理,以确定该次播放的QoE等级;对所述的加密流量文件进行预处理,得到TCP流数据;以所述的QoE等级作为标签,所述的TCP流数据作为特征,构建端到端的深度学习模型;所述模型可根据加密流量文件识别视频播放的QoE等级。本发明提供的视频QoE等级识别方法,能够准确的对视频QoE等级进行识别,并且提供了完全自动化的方案。

Description

一种基于加密流量数据的视频服务体验质量的识别方法
技术领域
本发明涉及多传感器采集和流量分类领域,尤其涉及一种基于加密流量数据的视频服务体验质量(Quality of Experience,QoE)的识别方法。
背景技术
视频服务体验质量等级识别技术是指视频服务的用户在观看视频后,对用户的服务使用体验进行识别的技术。利用该技术,网络服务提供商可以动态的调整网络参数来提高带宽利用率。
视频QoE评估主要通过主观评估或客观评估来获取,由于主观评估耗时长代价高,且无法覆盖所有的网络状况及用户观看习惯。因此越来越多视频服务商改用客观评估来克服主观评估的不足。然而,客观评估需要建立与主观感受相映射的客观视频体验质量评估模型,再根据QoE评估模型的关键性能指标(Key Performance Indicators,KPIs)来反映用户的视频QoE。而评估模型中的KPIs参数都需要通过视频码率或清晰度来计算获取。对于网络服务提供商来说,常用的QoE识别步骤为:
(1)基于深度包解析技术从网络流量数据中获取视频服务的码率、清晰度等KPIs参数;
(2)利用预定义的客观QoE评估模型对视频服务的QoE进行评估。
但是,实际应用中,越来越多的视频服务采用加密传输,这使得基于深度包解析技术的KPIs识别方法失效了。
为了解决加密条件下,基于深度包解析的KPI试试别技术失效的问题,研究人员提出了基于流的深度解析方法。其基本步骤为:
(1)收集视频服务的TCP/UDP流以及对应的QoE等级作为训练样本。
(2)从TCP/UDP流中提取与KPIs相关的特征。
(3)训练机器学习模型进行QoE识别。
但是,在实际应用中,基于流的深度解析方法往往存在以下问题:
(1)带有QoE等级标签的数据难以自动化收集。
(2)特征往往需要专家设计以及筛选。
由于上述问题,导致该方案难以应用。
发明内容
本发明的目的在于针对现有技术的不足,提供一种基于加密流量数据的视频服务体验质量的识别方法。
本发明的目的是通过以下技术方案来实现的:一种基于加密流量数据的视频服务体验质量的识别方法,包括以下步骤:
(1)收集带有QoE等级标签的加密流量网络视频播放数据,构建训练集:记录目标视频在播放过程中产生的事件信息和加密流量数据,通过对事件信息预处理得到本次播放的QoE标签,通过对加密流量数据预处理得到TCP流文件,所述QoE标签和对应的TCP流文件构成训练集。
(2)利用构建的训练集训练神经网络分类模型。
(3)获取待测网络视频在播放过程中产生的加密流量数据,对加密流量数据预处理得到TCP流文件,再利用步骤2训练的神经网络分类模型生成视频播放的QoE等级。
进一步地,所述的步骤1在数据采集装置上实现。所述数据采集装置包括:
一台或多台安卓设备:根据设置的筛选条件,向存储有视频信息的数据库请求符合条件的视频id,然后用视频id通过网络播放指定视频,并采集视频播放过程中产生的事件信息。所述的筛选条件包括时长范围、播放数范围、清晰度范围、在视频网站上的播放数等;所述播放事件信息包括:视频载入事件、清晰度切换事件、停顿事件、播放完成事件、帧率等;
一计算机:监听安卓设备播放视频时产生的加密流量数据,得到加密流量数据文件;
一存储有视频信息的数据库:存储视频的视频信息,根据安卓设备发送的播放条件返回符合条件的视频id;所述视频信息包括:视频名称、视频id、视频时长、视频可选清晰度、视频在视频网站上的播放数、评论数等;
一存储服务器:接收并存储安卓设备采集的事件信息和计算机得到的加密流量数据文件。
进一步地,所述步骤1中,所述收集带有QoE等级标签的加密流量网络视频播放数据包括以下子步骤:
(1.1)安卓设备根据设定的筛选条件,向存储有视频信息的数据库请求符合条件的加密视频的视频id。
(1.2)安卓设备通知计算机本次播放开始,计算机设定本次测试的带宽范围,同时进行网络数据监听。
(1.3)安卓设备播放视频,在播放过程中记录播放事件信息。若本次播放正常,安卓设备通知计算机本次播放正常结束;计算机关闭网络监听,取消带宽控制,并将监听得到的加密流量数据文件上传到存储服务器;安卓设备将记录的播放事件信息上传到存储服务器。若本次播放异常,安卓设备通知计算机本次播放异常结束;计算机关闭网络监听,取消带宽控制,并抛弃本次监听得到的加密流量数据文件;安卓设备则抛弃本次记录的播放事件信息。
(1.4)重复步骤1.1~步骤1.3,收集多个训练数据。
进一步地,所述步骤1中,所述通过对事件信息预处理得到本次播放的QoE标签具体为:
首先,设定一个checkHigh函数,用来判断本次加密视频播放的QoE是否为高。若checkHigh小于预设阈值,则QoE等级为High;checkHigh函数为:
Figure GDA0002620688690000031
若checkHigh高于预设阈值,设定一个checkLow函数,用来判断本次视频播放的QoE等级是否为Low,若checkLow大于预设阈值,则QoE等级为Low;反之,则QoE等级设为Medium;checkLow函数为:
checkLow=nPLQ+nSC+nOR+nASD,
checkHigh函数和checkLow函数相关参数说明见表1:
表1:QoE评估函数checkHigh和checkLow的参数说明
Figure GDA0002620688690000032
进一步地,所述步骤1中,所述通过对加密流量数据预处理得到TCP流文件具体为:输入加密流量数据文件,去除其中的UDP包,保留TCP包;同时根据TCP包中的源IP、源端口、目标IP、目标端口四个字段对数据包进行分组,将源IP、源端口、目标IP、目标端口相同的数据包分入同一个TCP流文件;最后去除包含TCP包数量少于预设阈值的TCP流文件,从而将一个加密流量数据文件转换为多个TCP流文件。
进一步地,所述的步骤2中,所述神经网络分类模型描述如下:
(2.1.1)神经网络分类模型的输入数据格式:神经网络分类模型的输入数据格式与TCP流文件展开的TCP包序列格式对应。每个输入数据可由一个TCP流文件转换过来。设输入数据为T0={I1,I2,...,Ii,...,IN},Ii为TCP流文件中第i个TCP包转换过来的二进制序列。N为TCP流文件中TCP包的总个数。
(2.1.2)对于一个输入数据中的每一个二进制序列Ii,使用多层卷积神经网络提取包特征。设深度神经网络第l层的特征向量为
Figure GDA0002620688690000041
Figure GDA0002620688690000042
为第Ml个特征;第l+1层的特征向量由第l层的特征向量经过包括卷积、池化、非线性函数激活在内的操作得到;第1层的特征向量由其输入的二进制序列Ii经过包括卷积、池化、非线性函数激活在内的操作得到;最后一层的特征向量通过一个全连接层转为定长特征向量Fi。通过这一操作,输入的TCP包序列T0转化为特征向量序列,设为G={F1,F2,...,Fi,...,FN};所述的卷积操作是将卷积核分别与上一层特征向量的局部邻域进行卷积;池化操作是将第l层特征向量的局部邻域作加权平均或取最大值处理以对特征向量作降采样得到更高层次的特征表达;非线性激活函数对l层输出特征向量的每一维作非线性处理,从而获得特征的非线性表达。非线性函数激活处理在卷积之后进行。
(2.1.3)提取特征向量序列的时间特征:使用双向循环神经网络提取特征向量序列G的时间特征序列;其中双向神经网络的神经元可以为长短时记忆单元(Long Short-Term Memory,LSTM),也可以为门循环单元(Gated recurrent units,GRUs),或者其他常用的循环神经网络单元。
(2.1.4)根据时间特征序列得到QoE等级分类概率:设由2.1.3得到的时间特征序列为Q∈R2×m×l,其中m表示双向循环神经网络的隐单元数量,l表示双向循环神经网络的层数。将Q的所有组成元素按照顺序串联成一个向量v∈R2ml;将向量v输入到一个全连接层,输出得到一个定长的特征向量t∈Rc,其中c表示特征向量t的长度;使用向量t计算得到其到QoE等级分类概率的映射s=f(WTt+b)∈Rk,其中k为前述QoE等级的等级数,WT、b分别为神经网络学习到的权值向量和偏置项,函数f()为激活函数,这里使用Softmax函数估计输入训练样本属于各个等级的概率,即:
Figure GDA0002620688690000051
其中xi表示这是第i个样本,rki∈[1,...,k]表示xi的QoE等级,sj∈[s1,...,sk]表示s的第j个元素。
进一步地,所述步骤2具体包括以下子步骤:
(2.2.1)将训练样本随机打乱,每次训练迭代选择Nb对训练样本进行训练,其中
Figure GDA0002620688690000052
(2.2.2)将上述初始化处理后的训练样本输入到步骤2.1.1和步骤2.1.2定义的神经网络结构模型中,提取每个TCP包序列的特征序列,将特征序列输入到步骤2.1.3定义的双向循环神经网络中,提取特征序列的时间特征。最后将结果输入到步骤2.1.4定义的全连接层,输出各个QoE等级的分类概率。
(2.2.3)计算训练数据的真实标签和步骤2.2.2得到的预测分类概率值之间的相对熵误差J(W,b),即
Figure GDA0002620688690000053
其中
Figure GDA0002620688690000054
(2.2.4)根据计算出的相对熵误差,使用优化算法更新深度神经网络每一层的参数。这里的优化算法包括但不限于梯度下降算法以及各种梯度下降算法的变种。
(2.2.5),重复步(2.2.1)至步骤(2.2.4),每次输入随机选取训练数据Nb个,对神经网络参数进行调整,直至训练模型在验证数据集上的误差不再下降为止。
本发明的有益效果是:
(1)本发明使用了QoE等级客观评估方法,克服了主观评估方法耗时长代价高的缺点。
(2)本发明构建了训练数据自动采集系统,能够自动采集带有QoE标签的训练数据,解决了训练数据收集困难的问题。
(3)本发明使用了端到端的神经网络模型,直接从原始的TCP/UDP流中自动抽取特征,可以应用于加密流量,解决了深度包解析技术在加密流量下失效的问题,同时也避免了基于流的深度解析方法中,需要专家进行特征设计和筛选的问题。
(4)基于上述三个特点,本发明可以实现全自动的识别加密流量下的视频服务QoE等级,具有较好的实用价值。
附图说明
图1为本发明方法中视频播放数据采集和QoE标签生成的方法流程图;
图2为本发明方法中视频播放数据采集和训练集构建的方法流程图;
图3为本发明方法中视频播放数据自动采集装置的结构图;
图4为本发明方法中视频播放数据自动采集装置播放一次视频的方法流程图;
图5为本发明方法中QoE客观评估方法的方法流程图;
图6为本发明方法中QoE标签生成的方法流程图;
图7为本发明方法中QoE分类神经网络模型的模型结构图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细描述,本发明的目的和效果将变得更加明显。
图1给出了本发明的方法流程图,本发明对加密视频流量下的视频播放进行QoE等级识别分为三个步骤,即首先收集加密流量网络视频播放数据,构建训练集。然后利用构建的训练集训练神经网络分类模型。在分类模型训练完成后,就可以利用分类模型给新的加密流量网络视频播放数据生成视频播放的QoE等级。
如图1所示,步骤101中,收集视频播放数据指的是通过一套专用的适用于加密流量的网络视频服务质量数据采集系统,通过程序控制其自动播放符合预设条件的目标视频,并记录目标视频在播放过程中产生的事件信息和加密流量数据。同时,通过对事件信息预处理得到本次播放的QoE标签,通过对加密流量数据预处理得到TCP流文件。TCP流文件和对应的QoE标签构成训练集。数据采集过程流程图如图2所示,具体包括以下子步骤:
如图2所示,在步骤201中,数据采集装置自动播放符合预设条件的目标视频,并记录目标视频在播放过程中产生的事件信息,包括:视频载入事件、清晰度切换事件、停顿事件、播放完成事件、帧率等。同时,通过网络监听程序记录目标视频在播放过程中产生的加密流量数据。所述的数据采集装置结构如图3所示,具体包括以下四个单元:
a单元:如图3所示,组件301,一台或多台安卓设备,安装了与此数据采集系统搭配的安卓软件。该软件能够接受用户在软件上设置的筛选条件,然后向c单元请求符合条件的视频id,然后用视频id通过网络播放指定视频,并采集视频播放过程中产生的事件信息。所述的筛选条件包括:时长范围、播放数范围、清晰度范围、在YouTube(视频网站即可,不限于YouTube)上的播放数等。所述的事件信息包括:视频载入事件、清晰度切换事件、停顿事件、播放完成事件、帧率等;
b单元:如图3所示,组件302,装有监听软件tcpdump的linux服务器,用于监听a单元播放视频时产生的加密流量数据,得到加密流量数据文件。所述的监听软件不限于tcpdump,服务器系统不限于linux。
c单元:如图3所示,组件303,存储有视频信息的数据库,视频信息包括:视频名称、视频id、视频时长、视频可选清晰度、视频在YouTube(视频网站即可,不限于YouTube)上的播放数、评论数等,能接收来自于a单元的播放条件,返回符合条件的视频id。
d单元:如图3所示,组件304,存储服务器,可以接收a单元采集的事件信息和b单元采集的加密流量数据文件,并对应存储。
单个视频的数据采集流程如图4,具体包括以下子步骤:
如图4所示,在步骤401中,a单元根据设置的筛选条件,向c单元请求符合条件的加密视频的视频id。
如图4所示,在步骤402中,a单元通知b单元本次播放开始,b单元随之设定本次测试的带宽范围,同时开启tcpdump进行网络数据监听。
如图4所示,在步骤403中,a单元播放视频,在播放过程中记录播放事件信息,包括视频载入事件、清晰度切换事件、停顿事件、播放完成事件、帧率等。
若本次播放正常,则执行步骤404。如图4所示,在步骤404中,a单元通知b单元本次播放正常结束;b单元随之关闭tcpdump网络监听,取消带宽控制,将监听得到的加密视频数据流PCAP文件上传到d单元;a单元将记录的播放事件信息上传到d单元。
若本次播放异常,则执行进行步骤405。如图4所示,在步骤405中,a单元通知b单元本次播放异常结束;b单元随之关闭网络监听,取消带宽控制,抛弃本次监听得到的网络数据流PCAP文件;a单元则抛弃本次记录的播放事件信息。
如图4所示,在步骤406中,结束单个视频的数据采集流程。
重复步骤401~406收集多个训练数据。
如图2所示,在步骤202中,根据预设的QoE等级客观评估方法,利用在播放过程中采集到的播放事件信息来评估本次播放的QoE等级作为标签。所述的QoE等级客观评估方法基于一种模糊逻辑,具体评估流程图如图5所示,包括以下步骤:
如图5所示,在步骤501中,设定一个checkHigh函数,用来判断本次加密视频播放的QoE是否为高。若checkHigh小于1,则QoE等级为High;反之进入下一步判断。checkHigh函数相关参数说明见表1。
Figure GDA0002620688690000071
如图5所示,在步骤502中,设定一个checkLow函数,用来判断本次视频播放的QoE等级是否为Low。若checkLow大于1,则QoE等级为Low;反之,则QoE等级设为Medium。checkLow函数相关参数说明见表2。
checkLow=nPLQ+nSC+nOR+nASD
表2 QoE评估函数checkHigh和checkLow的参数说明
Figure GDA0002620688690000081
如图2所示,在步骤203中,对监听得到的加密视频数据流PCAP文件进行预处理,具体包括:去除其中的UDP包,保留TCP包;同时根据TCP包中的源IP、源端口、目标IP、目标端口四个字段对数据包进行分组,将源IP、源端口、目标IP、目标端口相同的数据包分入同一个TCP流文件;去除包含TCP包少于预设阈值的TCP流文件,阈值可根据实际情况进行调整;从而将一个PCAP文件转换为多个TCP流文件。
如图2所示,在步骤204中,将步骤202中获得的QoE标签与步骤203中获得的TCP流文件整合,构成带标签的训练集。
如图1所示,步骤102中,构建神经网络分类模型是指建立神经网络模型,利用步骤101中生成的训练集对神经网络模型进行训练和参数调整,具体步骤如图6所示,具体包括两个子步骤:(1)在步骤601中,建立神经网络模型;(2)在步骤602中,使用步骤101得到的训练样本训练该神经网络模型。
所采用的神经网络模型的结构图如图7所示,具体结构描述如下:
如图7所示,701结构中,神经网络模型的输入数据格式:神经网络分类模型的输入数据格式与TCP流文件展开的TCP包序列格式对应。每个输入数据可由一个TCP流文件转换过来。设输入数据为T0={I1,I2,...,Ii,...,IN},Ii为TCP流文件中第i个TCP包转换过来的二进制序列。N为TCP流文件中TCP包的总个数。
如图7所示,702结构的功能为:对于每一个二进制序列Ii,使用多层卷积神经网络提取包特征。设深度神经网络第l层的特征向量为
Figure GDA0002620688690000091
Figure GDA0002620688690000092
为第Ml个特征;第l+1层的特征向量由第l层的特征向量经过包括卷积、池化、非线性函数激活在内的操作得到;第1层的特征向量由其输入的二进制序列Ii经过包括卷积、池化、非线性函数激活在内的操作得到;最后一层的特征向量通过一个全连接层转为定长特征向量Fi。通过这一操作,输入的TCP包序列T0转化为特征向量序列,设为G={F1,F2,...,Fi,...,FN};所述的卷积操作是将卷积核分别与上一层特征向量的局部邻域进行卷积;池化操作是将第l层特征向量的局部邻域作加权平均或取最大值处理以对特征向量作降采样得到更高层次的特征表达;非线性激活函数对l层输出特征向量的每一维作非线性处理,从而获得特征的非线性表达。非线性函数激活处理在卷积之后进行。
关于卷积神经网络的详细内容,可参见LeCun,Yann."LeNet-5,convolutionalneural networks."URL:http://yann.lecun.com/exdb/lenet(2015):20。
如图7所示,703结构的功能为:提取特征向量序列的时间特征。使用双向循环神将网络提取特征向量序列G的时间特征序列;其中双向神经网络的神经元可以为长短时记忆单元(Long Short-Term Memory,LSTM),也可以为门循环单元(Gated recurrent units,GRUs),或者其他常用的循环神经网络单元。
有关循环神经网络的详细内容,可参见Lipton,Zachary C.,John Berkowitz,andCharles Elkan."A critical review of recurrent neural networks for sequencelearning."arXiv preprint arXiv:1506.00019(2015)。
如图7所示,704结构的功能为:根据时间特征序列得到QoE等级分类概率。设由步骤703得到的时间特征序列为Q∈R2×m×l,其中m表示双向循环神经网络的隐单元数量,l表示双向循环神经网络的层数。将Q的所有组成元素按照顺序串联成一个向量v∈R2ml;将向量v输入到一个全连接层,输出得到一个定长的特征向量t∈Rc,其中c表示特征向量t的长度;使用向量t计算得到其到QoE等级分类概率的映射s=f(WTt+b)∈Rk,其中k为前述QoE等级的等级数,WT、b分别为神经网络学习到的权值向量和偏置项,函数f()为激活函数,这里使用Softmax函数估计输入训练样本属于各个等级的概率,即:
Figure GDA0002620688690000101
其中xi表示这是第i个样本,rki∈[1,...,k]表示xi的QoE等级,sj∈[s1,...,sk]表示s的第j个元素。
有关softmax函数的详细内容,可参见https://en.wikipedia.org/wiki/Softmax_function。
如图6所示,在步骤602中,利用步骤101生成的训练数据,使用优化算法,对步骤601定义的神经网络模型的网络参数进行调整,得到最终的训练结果。具体包括以下步骤:
步骤602-1,将训练样本随机打乱,每次训练迭代选择Nb对训练样本进行训练,其中
Figure GDA0002620688690000102
步骤602-2,将上述初始化处理后的训练样本输入到步骤701和步骤702定义的神经网络结构模型中,提取每个TCP包序列的特征序列,将特征序列输入到步骤703定义的双向循环神经网络中,提取特征序列的时间特征。最后将结果输入到步骤704定义计算QoE等级的分类概率。
步骤602-3,计算训练数据的真实标签和步骤602-2得到的预测分类概率值之间的相对熵误差J(W,b),即
Figure GDA0002620688690000103
其中
Figure GDA0002620688690000104
关于相对熵的详细内容可参见https://en.wikipedia.org/wiki/Cross_entropy。
步骤602-4,根据计算出的相对熵误差,使用优化算法更新深度神经网络每一层的参数。这里的优化算法包括但不限于梯度下降算法以及各种梯度下降算法的变种。
步骤602-5,重复步602-1至步骤602-4,每次输入随机选取训练数据Nb个,对神经网络参数进行调整,直至训练模型在验证数据集上的误差不再下降为止。
如图1所示,步骤103中,分类生成QoE标签是指将一段加密流量下的网络视频播放产生的加密流量数据,经过步骤203中定义的预处理,得到TCP流文件,将TCP流文件输入到步骤102中训练完成的神经网络模型,输出生成QoE标签。在实际场景中经过测试,该方法的识别精度达到实际使用要求,并且易于维护及自动更新。

Claims (3)

1.一种基于加密流量数据的视频服务体验质量的识别方法,其特征在于,包括以下步骤:
(1)收集带有QoE等级标签的TCP流文件,构建训练集:记录目标视频在播放过程中产生的事件信息和加密流量数据,通过对事件信息预处理得到本次播放的QoE等级标签,通过对加密流量数据文件预处理得到TCP流文件,所述QoE等级标签和对应的TCP流文件构成训练集;
(2)利用构建的训练集训练神经网络分类模型;
(3)获取待测网络视频在播放过程中产生的加密流量数据,对待测网络视频在播放过程中产生的加密流量数据文件预处理得到TCP流文件,再利用步骤(2)训练的神经网络分类模型生成视频播放的QoE等级;
所述的步骤(1)在数据采集装置上实现;所述数据采集装置包括:
一台或多台安卓设备:根据设置的筛选条件,向存储有视频信息的数据库请求符合条件的视频id,然后用视频id通过网络播放目标视频,并采集目标视频播放过程中产生的事件信息;所述的筛选条件包括视频时长范围、播放数范围、清晰度范围;所述事件信息包括:视频载入事件、清晰度切换事件、停驻事件、播放完成事件;
一计算机:监听安卓设备播放视频时产生的加密流量数据,得到加密流量数据文件;
一存储有视频信息的数据库:存储视频的视频信息,根据安卓设备发送的筛选条件返回符合条件的视频id;所述视频信息包括:视频名称、视频id、视频时长、视频可选清晰度、视频在视频网站上的播放数、评论数;
一存储服务器:接收并存储安卓设备采集的事件信息和计算机得到的加密流量数据文件;所述步骤(1)中,所述收集带有QoE等级标签的TCP流文件包括以下子步骤:
(1.1)安卓设备根据设定的筛选条件,向存储有视频信息的数据库请求符合条件的加密视频的视频id;
(1.2)安卓设备通知计算机本次播放开始,计算机设定本次播放的带宽范围,同时进行网络数据监听;
(1.3)安卓设备播放视频,在播放过程中记录事件信息;若本次播放正常,安卓设备通知计算机本次播放正常结束;计算机关闭网络监听,取消带宽控制,并将监听得到的加密流量数据文件上传到存储服务器;安卓设备将记录的事件信息上传到存储服务器;若本次播放异常,安卓设备通知计算机本次播放异常结束;计算机关闭网络监听,取消带宽控制,并抛弃本次监听得到的加密流量数据文件;安卓设备抛弃本次记录的事件信息;
(1.4)重复步骤(1.1)~步骤(1.3),收集多个训练数据;
所述步骤(1)中,所述通过对事件信息预处理得到本次播放的QoE等级标签具体为:
首先,设定一个checkHigh函数,用来判断本次播放的目标视频的QoE等级是否对应High;若checkHigh小于第一预设阈值,则QoE等级对应High;checkHigh函数为:
Figure FDA0002646344210000021
若checkHigh高于第一预设阈值,设定一个checkLow函数,用来判断本次播放的视频的QoE等级是否对应Low,若checkLow大于第二预设阈值,则QoE等级对应Low;反之,则QoE等级对应Medium;checkLow函数为:
checkLow=nPLQ+nSC+nOR+nASD,
checkHigh函数和checkLow函数相关参数说明如下:
PHQ表示高清播放时长占比,其正则化值为nPHQ,正则化公式为
Figure FDA0002646344210000022
PLQ表示低清播放时长占比,其正则化值为nPLQ,正则化公式为
Figure FDA0002646344210000023
SD表示停驻时长,其正则化值为nSD,正则化公式为
Figure FDA0002646344210000024
SC表示停驻次数,其正则化值为nSC,正则化公式为
Figure FDA0002646344210000025
OR表示载入时长或视频时长,其正则化值为nOR,正则化公式为
Figure FDA0002646344210000026
ASD表示平均停驻时长,其正则化值为nASD,正则化公式为
Figure FDA0002646344210000027
所述步骤(1)中,所述通过对加密流量数据文件预处理得到TCP流文件具体为:输入加密流量数据文件,去除其中的UDP包,保留TCP包;同时根据TCP包中的源IP、源端口、目标IP、目标端口四个字段对数据包进行分组,将源IP、源端口、目标IP、目标端口相同的数据包分入同一个TCP流文件;最后去除包含TCP包数量少于第三预设阈值的TCP流文件,从而将一个加密流量数据文件转换为多个TCP流文件。
2.如权利要求1所述的基于加密流量数据的视频服务体验质量的识别方法,其特征在于,所述的步骤(2)中,所述神经网络分类模型描述如下:
(2.1.1)设置神经网络分类模型的输入数据格式:神经网络分类模型的输入数据格式与TCP流文件展开的TCP包序列格式对应;每个输入数据由一个TCP流文件转换过来;设单个输入数据为T0={I1,I2,...,Ii,...,IN},Ii为单个输入数据对应的一个TCP流文件中第i个TCP包转换过来的二进制序列;N为单个输入数据对应的一个TCP流文件中TCP包的总个数;
(2.1.2)对于一个输入数据中的每一个二进制序列Ii,使用多层卷积神经网络提取TCP包的包特征:设深度神经网络第l层的特征向量为
Figure FDA0002646344210000031
Figure FDA0002646344210000032
为第Ml个特征;第l+1层的特征向量由第l层的特征向量经过包括卷积、池化、非线性函数激活在内的操作得到;第一层的特征向量由输入的二进制序列Ii经过包括卷积、池化、非线性函数激活在内的操作得到;最后一层的特征向量通过一个全连接层转为定长特征向量Fi;使得T0转化为特征向量序列,设为G={F1,F2,...,Fi,...,FN};所述的卷积操作是将卷积核分别与上一层特征向量的局部邻域进行卷积;池化操作是将第l层特征向量的局部邻域作加权平均或取最大值处理以对特征向量作降采样得到更高层次的特征表达;非线性函数激活操作对第l层输出特征向量的每一维作非线性处理,从而获得特征的非线性表达;非线性函数激活操作在卷积操作之后进行;
(2.1.3)提取特征向量序列的时间特征:使用双向循环神经网络提取特征向量序列G的时间特征序列;其中双向循环神经网络的神经元为长短时记忆单元或门循环单元;
(2.1.4)根据时间特征序列得到QoE等级分类概率:设由步骤(2.1.3)得到的时间特征序列为Q∈R2×m×l,其中m表示双向循环神经网络的隐单元数量,l表示双向循环神经网络的层数;将Q的所有组成元素按照顺序串联成一个向量v∈R2ml;将向量v输入到一个全连接层,输出得到一个定长的特征向量t∈Rc,其中c表示特征向量t的长度;使用向量t计算得到其到QoE等级分类概率的映射s=f(WTt+b)∈Rk,其中k为前述QoE等级的等级数,WT、b分别为神经网络学习到的权值向量和偏置项,函数f()为激活函数,这里使用Softmax函数估计输入训练样本属于各个等级的概率,即:
Figure FDA0002646344210000041
其中xi表示这是第i个样本,rki∈[1,...,k]表示xi的QoE等级,sj∈[s1,...,sk]表示s的第j个元素。
3.如权利要求2所述的基于加密流量数据的视频服务体验质量的识别方法,其特征在于,所述步骤(2)具体包括以下子步骤:
(2.2.1)将训练样本随机打乱,每次训练迭代选择Nb对训练样本进行训练,其中Nb<<N;
(2.2.2)将步骤(2.2.1)处理后的训练样本输入到步骤(2.1.1)和步骤(2.1.2)定义的神经网络分类模型中,提取每个TCP包序列的特征向量序列,将特征向量序列输入到步骤(2.1.3)定义的双向循环神经网络中,提取特征向量序列的时间特征;最后将结果输入到步骤(2.1.4)定义的全连接层,输出各个QoE等级的分类概率;
(2.2.3)计算训练数据的真实QoE等级和步骤(2.2.2)得到的预测分类概率值之间的相对熵误差J(W,b),即
Figure FDA0002646344210000042
其中
Figure FDA0002646344210000043
W为WT的转置;
(2.2.4)根据计算出的相对熵误差,使用优化算法更新深度神经网络每一层的参数;所述优化算法包括梯度下降算法以及梯度下降算法的变种;
(2.2.5)重复步骤(2.2.1)至步骤(2.2.4),每次输入随机选取训练样本Nb对,对神经网络参数进行调整,直至训练模型在验证数据集上的误差不再下降为止。
CN201910019374.0A 2019-01-09 2019-01-09 一种基于加密流量数据的视频服务体验质量的识别方法 Expired - Fee Related CN109905696B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910019374.0A CN109905696B (zh) 2019-01-09 2019-01-09 一种基于加密流量数据的视频服务体验质量的识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910019374.0A CN109905696B (zh) 2019-01-09 2019-01-09 一种基于加密流量数据的视频服务体验质量的识别方法

Publications (2)

Publication Number Publication Date
CN109905696A CN109905696A (zh) 2019-06-18
CN109905696B true CN109905696B (zh) 2020-12-01

Family

ID=66943739

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910019374.0A Expired - Fee Related CN109905696B (zh) 2019-01-09 2019-01-09 一种基于加密流量数据的视频服务体验质量的识别方法

Country Status (1)

Country Link
CN (1) CN109905696B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110247930B (zh) * 2019-07-01 2020-05-12 北京理工大学 一种基于深度神经网络的加密网络流量识别方法
CN110418210B (zh) * 2019-07-12 2021-09-10 东南大学 一种基于双向循环神经网络和深度输出的视频描述生成方法
CN110620937B (zh) * 2019-10-21 2021-07-30 电子科技大学 一种基于http的动态自适应加密视频流量识别方法
CN110855669B (zh) * 2019-11-14 2020-10-09 北京理工大学 基于神经网络适用于加密流量的视频QoE指标预测方法
CN111414496B (zh) * 2020-03-27 2023-04-07 腾讯科技(深圳)有限公司 基于人工智能的多媒体文件的检测方法和装置
CN112163594B (zh) * 2020-08-28 2022-07-26 南京邮电大学 一种网络加密流量识别方法及装置
CN112101788B (zh) * 2020-09-15 2022-04-12 福州大学 基于长期记忆的视频QoE评价系统及方法
CN112203136B (zh) * 2020-12-04 2021-03-30 武汉绿色网络信息服务有限责任公司 一种对加密流量视频进行清晰度预测的方法和装置
CN113765738B (zh) * 2021-07-30 2022-09-30 中国科学院信息工程研究所 基于多任务学习和层次分类的加密流量QoE检测方法及系统
CN114025203B (zh) * 2021-11-04 2024-01-23 中国人民解放军国防科技大学 一种基于序列相似度的加密视频流量内容分析方法
CN114679606B (zh) * 2022-04-02 2023-05-09 哈尔滨工业大学 一种基于Burst特征的视频流量识别方法、系统、电子设备及存储介质
CN116647717B (zh) * 2023-07-27 2023-09-22 中启鼎铉科技(北京)有限公司 一种基于加密技术的计算机视频泄漏防护方法及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621351B (zh) * 2008-06-30 2013-09-11 华为技术有限公司 一种调节多媒体编码速率的方法、装置及系统
CN107733705B (zh) * 2017-10-10 2021-01-15 锐捷网络股份有限公司 一种用户体验质量评估模型建立方法及设备
CN107888579B (zh) * 2017-11-06 2020-06-09 浙江大学 一种非干扰式的移动视频用户体验质量指标建模方法
CN108696403B (zh) * 2018-03-23 2020-03-31 中国科学技术大学 一种基于网络流特征构造学习的加密视频QoE评测方法

Also Published As

Publication number Publication date
CN109905696A (zh) 2019-06-18

Similar Documents

Publication Publication Date Title
CN109905696B (zh) 一种基于加密流量数据的视频服务体验质量的识别方法
Yan et al. Learning in situ: a randomized experiment in video streaming
CN108921051B (zh) 基于循环神经网络注意力模型的行人属性识别网络及技术
US10880181B2 (en) Methods and apparatus for analysing performance of a telecommunications network
US20210160556A1 (en) Method for enhancing resolution of streaming file
KR102418969B1 (ko) 딥러닝 기반 통신망 장비의 장애 예측 시스템 및 방법
CN108111860B (zh) 基于深度残差网络的视频序列丢失帧预测恢复方法
CN101123737A (zh) 基于分组度量和图像度量两者测量视频质量的系统和方法
CN110943874B (zh) 一种家庭宽带网络的故障检测方法、装置和可读介质
JP2005521144A (ja) 複数の推薦スコアを用いる推薦システム
Bentaleb et al. Data-driven bandwidth prediction models and automated model selection for low latency
CN110362772B (zh) 基于深度神经网络的实时网页质量评估方法及系统
CN112001274B (zh) 人群密度确定方法、装置、存储介质和处理器
Shen et al. Deepqoe: Real-time measurement of video qoe from encrypted traffic with deep learning
CN106134215A (zh) 用户体验质量QoE预测装置、网络设备和方法
Alreshoodi et al. QoE prediction model based on fuzzy logic system for different video contents
CN101159635A (zh) 用于iptv业务的业务质量监测的参数采集方法及系统
Matulin et al. Modelling user quality of experience from objective and subjective data sets using fuzzy logic
Dinaki et al. Forecasting video QoE with deep learning from multivariate time-series
Alreshoodi et al. An empirical study based on a fuzzy logic system to assess the QoS/QoE correlation for layered video streaming
WO2017152932A1 (en) Method and scoring node for estimating a user's quality of experience for a delivered service
López et al. Prediction and modeling for no-reference video quality assessment based on machine learning
Fischer et al. DeepFlow: Towards network-wide ingress traffic prediction using machine learning at large scale
CN111325280A (zh) 一种标签的生成方法及系统
CN115904916A (zh) 一种硬盘故障预测的方法、装置、电子设备以及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20201201

Termination date: 20220109

CF01 Termination of patent right due to non-payment of annual fee