文摘

最近视频流的兴趣增加了,因为它构成了大部分的交通网络和蜂窝网络。这些网络使用不同的视频流技术。最著名的技术之一是破折号(即动态自适应蒸使用HTTP)。DASH适应流参数根据网络状况和使用HTTP协议用户和服务器之间的通信。DASH面临着许多挑战,可能会导致视频中断和质量差的用户体验(体验质量)等不良网络条件和缓冲水平控制。除了缺乏研究中,我们将介绍这些类型的服务的安全问题。在本文中,我们提出了一个集成的框架,该框架包括四个部分:质量预测模型,precache模型,光web应用防火墙,一个监控系统。这四个组件提高体验质量和precache和增加的安全级别。质量预测模型的结果用来预测下一段的质量取决于用户的网络条件和precache模型以提高缓存来减少流媒体系统上的负载和更多地依赖于缓存服务器。该web应用程序防火墙是用来抵御光版本视频攻击和验证的存在必要的HTTP标头。 The quality predictor model with the generated dataset achieved 97% classification accuracy using DecisionTree, and this experiment proved the strong relationship between congestion periods and streaming quality, which is s the main key in QoE.

1。介绍

1.1。流媒体协议

视频流技术四个主要协议:HTTP 1.1, HTTP 2.0, RTMP, RTSP [1]。

超文本传输协议(HTTP)是一种协议,它在应用程序层工作,特别是在网络服务器(2]。这取决于使用TCP / IP协议和传输数据(HTML、文件和数据库查询结果)。HTTP使用默认端口80。系统管理员可以配置网络服务器与其他港口。HTTP是一个标准统一的客户端和网络服务器之间的通信;该协议定义了如何构建一个用户请求,如何将其发送到服务器,服务器如何回应这些请求。三个特性使HTTP简单而有效:无连接、媒体独立和无状态的。

HTTP 1.0的升级版本和HTTP 1.1 HTTP 2.0 (3];这个版本有附加功能与旧版本相比,因为它是一个二进制协议,多路复用和加密。

实时消息传递协议(RTMP)是一种协议由Macromedia(现在Adobe)和支持Adobe Flash (4]。RTMP有各种衍生品如RTMPE(加密)5),rtmp(安全/ SSL / TLS) [6],RTMPT(封装在HTTP请求)7]。HTTP包丢失是略低于RTMP。最好使用HTTP / RTMP在高波动情况下。不推荐使用RTMP除了在小型网络中,如会议和电子学习讲座。

实时流协议(RTSP)依赖于RTP协议,实时传输协议,将视频片段转移到客户端(8]。这个协议的缺点是使用554端口;防火墙阻止默认这个端口。

1.2。短跑技术

自适应比特率(ABR)流媒体技术旨在提供,并提供一个一致的、高质量的流媒体经验,客户使用各种类型的设备在网络条件差的情况下(波动)9]。分段视频已经成为常见的视频内容分布在互联网和移动网络。破折号(代表动态自适应蒸使用HTTP)是一个受欢迎的ABR算法(10]。

DASH把视频文件分为部分和编码这些部分在不同的比特率;通常,每一段的长度是2到10秒。当用户请求一个视频文件,之前的编码文件发送根据当前网络环境从客户端;客户机请求下一个部分从流媒体服务器通过提供一个文件名为“MPD,”代表媒体演示描述。这个文件包含媒体内容,为冲刺(可用的决议,和许多有用的细节11]。

实现缓冲的目的是提高体验质量,并确保视频将继续在不断适应网络环境,以避免任何如果发生中断。

带宽限制,请求和响应之间的延迟,快速网络条件波动和客户端设备的局限性的主要关键是视频流技术挑战(12]。这些挑战做出适当选择下一个分辨率为下一段,结合客户端缓存,避免溢出和下溢不容易实现。

随着互联网和移动网络不断扩大,预期表明,移动网络视频应用的交通将约80%的总在移动网络流量在2020年初,每年将会增加13]。

最近工作处理这些关键的挑战提出一个修改版的HTTP、流硬件体系结构或算法。除了缺乏研究,提出一个全面的框架,解决所有这些问题中提到的关键挑战,在本文中,我们提出了一个安全的和智能的框架,使用机器学习技术组成的四个部分:质量预测模型,precache模型中,web应用程序防火墙和监控系统。这四个组件提高体验质量和precache和增加的安全级别。

本文的其余部分组织如下:部分2提出了相关工作,部分3该模型解释说4讨论了实验中,部分5包含详细的结果和讨论(评价、比较和未来的工作),和部分6包括结论。

1.3。机器学习

机器学习(ML)理论设计和分析算法,让电脑自动“学习”,开展人工任务,而不是编码的逻辑在传统编程语言(14]。机器学习算法可以从数据分析和自动获取规则,利用这些规则来决定新病例。机器学习任务分为三个部分:分类、协会和聚类15]。

1.4。Web应用程序防火墙

OWASP是一个流行的基础,其宗旨是改善的安全软件通过各种项目和导游。(16定义web应用防火墙(WAF)如下:“web应用防火墙(WAF)”是一个应用程序防火墙对于HTTP的应用程序。这一组规则适用于HTTP会话。一般来说,这些规则涵盖常见的攻击,如跨站点脚本(XSS) (17和SQL注入18]。WAF存在于客户端和服务器之间,它验证收到一个请求,并根据分类结果,WAF将请求转发到网络服务器或下降(19]。

我们可以分类相关的作品分为三个类别:

2.1。修改HTTP结构

这些研究提出了修改版的HTTP。HTTP 1.1用作默认的版本。Alhamad和Kazi20.)提出了一种光HTTP版本产生较小的请求和响应。这个提议版本显著提高体验质量,减少请求和响应之间的延迟。修改广泛使用的协议结构,HTTP需要修改当前的软件和设备。这是一个昂贵的和不切实际的解决方案。

魏et al。21)提出了使用HTTP 2.0而不是HTTP 1.1利用HTTP 2.0特性,提高体验质量。这个版本的协议是不受欢迎的大多数软件和设备使用HTTP 1.1。

2.2。扩展或修改架构

这些研究提出了硬件扩展流体系结构。乔和他(22)提出了扩展流与主动precaching服务器架构在基站提高体验质量客户端可以从这些服务器与客户机请求缓存段从基站切换到另一个基站。另一方面,这种方法是昂贵的,因为它需要一个主动缓存服务器的设置在每一个基站和precaching过程需要有效的管理,以避免消费能力和存储。

Bruneau-Queyreix et al。23]提出协助请求响应缓存段通过提供相邻基站。本研究以提高precaching,因为它不需要设置任何额外的服务器。然而,它应该面临的挑战在相邻基站消耗资源。

Al-Habashna et al。24]提出协助precaching基站的客户为中心集群称为存储成员(SM)。本研究更有效期限和降低成本之间的延迟请求和响应但以牺牲存储会员体验质量,也是客户。

乔et al。25)提出了一个应用了双缓冲系统,保证更好的客户体验质量公路、缓冲系统应用于每一个基站和每辆车在高速公路上(客户端)。这项研究表明存储的内容要求在所有基站视频片段。Precaching在这个模型提高体验质量为代价的资源。

2.3。增强算法和机器学习使用

这些研究提出了专门的算法来提高体验质量,减少延迟,减少部分大小不同的礼仪。这些研究使用人工智能技术,和其他专注于提高性能的专用组件流体系结构。这些研究的贡献显著提高视频流服务,但他们需要被部署在一个集成框架,加强他们的贡献。

Claeys et al。26)提出了在客户端,让客户使用q学习的学习与可调奖励;这种方法将动态适应流媒体的行为取决于网络条件下最大化体验质量。

胡和曹27)提出了一个CPU频率调节能源利用(EFS)算法,减少了总功率消耗的CPU。CPU频率降低了CPU能量较低但增加了数据传输时间,然后增加了能耗,反之亦然。这个算法之间取得一个平衡CPU频率和传输时间,但它没有考虑性能在高波动的情况下网络条件。

Polakovičet al。28)提出了一个saliency-based DASH视频交付系统的扩展,它有助于提高体验质量糟糕的网络环境保护更多的比特框架的重要组成部分,而不是比特分配整个框架。

尤瑟夫et al。29日使用机器学习技术与流媒体信息(之前缓冲水平,带宽,带宽,下载时间,和以前的比特率)来预测算法上的行为。他们进行了六个不同的ABR实验算法BBA,流星锤,传统,熊猫,节日,和健壮的MPC使用六种不同的机器学习分类器:逻辑回归(LGS)、支持向量机(SVM),随机森林(RF), DecisionTree (DT), Ada提高(AdBst),梯度推进(GrdBst),朴素贝叶斯(NB) - - - - - -最近的邻居(资讯)。实验表明,这两种随机森林和梯度增加达到很高的预测精度等毫升使用分类器。

3所示。提出了框架

我们建议的框架包括四个主要部分:质量预测模型,precache模型,光web应用防火墙,一个监控系统。这些组件工作全面减轻的影响关键的挑战。我们保持了传统视频架构没有添加任何昂贵的资源或修改过程。相反,只有一台服务器用于主动预测使用机器学习技术的流媒体服务的数据中心。质量预测模型部署到该服务器,避免消耗流媒体服务资源(见图1)。

3.1。质量预测模型

这个组件实现两个目标,预测下一个适当的细分客户扮演一个视频和助攻precache模型更有效地管理precaching过程(参见算法1)。在本节中,我们将讨论“为满足配置web服务框架要求”和处理日志web服务生成的数据集。训练模型将讨论部分4。配置web服务包括三个基本步骤配置视频服务器与拟议的框架。流媒体服务通过web服务实现(例如,Apache或Nginx),每一个请求到达时,web服务日志,这些日志是用来生成一个数据集,用于培训质量预测模型。通常,web服务有一个默认的日志请求格式。系统管理员必须定制这种格式符合建议的解决方案。默认格式用于日志记录请求需要定制附加功能,将包含在数据集(步骤2 - 1算法1)。同时,额外的配置需要删除多余的头从web服务器发送到客户端;这将有助于减少很多响应发送到客户机。web服务需要更多的保护,也配置强制添加安全HTTP头。

输入:网络日志
输出:质量预测模型
1开始
2配置web服务框架来满足需求
2 - 1的配置存储额外的细节而日志请求
2 - 2的配置删除冗余的HTTP标头
2 - 3的配置强制添加和检查安全HTTP头
3收集网络日志
4处理web日志生成数据集
5质量预测模型选择合适的分类器
6培训生成的数据集使用选定的分类器
7结束

默认日志记录包含以下信息:主机、时间、HTTP方法,请求的资源(在视频的情况下,被请求的段)、HTTP版本和HTTP状态代码。

我们定制的客户端播放器发送“buffer_level”在每一个请求,它描述了当前客户端缓冲水平的球员,和web服务响应大小存储在日志除了默认信息(见图2)。

而不是让客户端发送当前的比特率,我们可以从这段提取请求的客户端。最后,配置了web服务之后,日志包含以下信息:主机、时间、HTTP方法,请求的资源(在视频案例中请求的部分),当前客户端缓冲水平,当前客户比特率、响应大小,HTTP版本和HTTP状态代码。这些信息将用于生成数据集。

下一步是配置web服务删除多余的头,不会影响流媒体服务和提高响应大小(步骤2 - 2算法1)。此外,客户端播放器应该减少请求的大小。这一步的主要目的是减少请求和响应的大小只包含有用,在流媒体服务所需的信息。信息标题不会发送给客户机,因为他们消耗的总大小。攻击者利用这些标头信息收集阶段(30.),例如,“服务器”头和“Access-control-Allow-Methods”头(见图3;这些头黑色边框突出显示)。

最后,需要配置web服务和客户端播放器强迫使用安全头需要提高流媒体服务过程的安全级别和防止常见的攻击31日)(2 - 3步算法1),如“Content-Security-Policy”、“Strict-Transport-Security”和“Content-Security-Policy”头(32]。

配置web服务后,可以使用web服务生成日志数据集。数据集包含以下信息(见表1):缓冲水平、时间(小时只从DateTime提取字符串),响应大小,类型的段(音频或视频),和比特率(比特率分类简化问题)(见表2)。

每一个原始请求在一行将会被转化为一个表行,包含五个字段(4输入特性和一个输出类)。质量预测模型会解析请求,提取特征,并预测相应的比特率取决于输入(见图4)。

我们对生成的数据集进行了实验有四个快速和受欢迎的分类器实时应用程序(线性SVC, KNeighbours、朴素贝叶斯和DecisionTree) (33),我们选择DecisionTree。这个分类器实现最高精度和最好的大O时间复杂度(它将在节中详细讨论5)。

3.2。Precache模型

Precaching拥堵期前工作,取决于质量预测模型的结果。我们提出了一个数学系数评价的有效性precaching基于接收到的请求数网络服务器和缓存服务器收到的请求的数量(见方程(1))。

一个新的数据集的视频流数据可以用于有效precache质量预测模型和聚类算法。提出数学系数称为“precaching有效性系数”评估模型,将有助于提高它。

precaching有效性系数,sr接收到web服务,请求cr请求到达缓存服务器,tr视频流服务接收到的总请求。

总请求接收到视频流服务计算如下:

例如,如果总请求系统收到的1000个请求,缓存服务器响应430个请求,并将其余转发给流媒体服务器。precaching有效性系数计算如下:

3.3。Web应用程序防火墙

是一个定制的web应用程序防火墙配置其规则和行为检测视频流攻击只通过检查所需的HTTP头信息,而不是一个完整的web应用程序部署防火墙。主要目标是提高性能而不影响安全水平。

随着视频技术的使用HTTP,他们受到网络攻击,它需要网络安全控制来提高安全级别和减轻这些攻击。

OWASP列出了十大攻击(34)为web应用程序和服务在一个项目叫做“OWASP前十名。“最后释放这个项目发表在2021年9月。

我们宁愿部署光WAF实例缓存服务器,因为它是第一个面对潜在的攻击者。它接收请求和响应客户或将它转发到流媒体服务器。

提出光WAF检查安全header和检查的有效载荷的存在;必须只包含“buffer_level”参数为一个整数值。它将删除任何请求未成形的在此模式中,阻止用户立即(参见算法2)。

输入:HTTP请求“r”
输出:HTTP响应
1开始
2虽然WAF是“上”
3收到HTTP请求“r”
4如果“buffer_level”存在于负载。
5如果“buffer_level”参数值是一个整数
6如果安全标头存在
7如果IP不在黑名单
8将请求传递给流媒体服务
9其他的
10下降请求和阻止IP
11endif
12其他的
13下降请求和阻止IP
14endif
15其他的
16下降请求和阻止IP
17endif
18其他的
19下降请求和阻止IP
20endif
21结束
3.4。监控系统

监控系统是一个web应用程序,可以帮助技术管理员监控整个流过程。这个web应用程序连接到一个数据库来检索所需的所有信息。

4所示。实验

本节讨论的技术环境的流媒体服务器和客户端播放器来生成一个数据集的播放视频:解析web日志生成数据集,选择一个分类器,然后火车。

4.1。技术环境

我们建立了一个本地web环境中生成web日志,玩视频很多次在一天的不同时间来填补网络服务器日志和产生足够的行数据集。

技术环境包括以下组件:一个web服务器(Apache 2.4), web客户端(Dash.js),谷歌的Chrome浏览器,净限幅控制浏览器应用程序的带宽,和Python编写必要的脚本(参见图5)。

网络服务器配置为存储在日志请求;就像前面提到的2.1,我们修改了。js buffer_level发送”。“大巴克兔子”“我们部署一个分段(35视频网络服务器不同的比特率。

4.2。生成数据集

客户端(dash.js)应该请求视频很多次在一天的不同时间(通过修改网络服务器小时)与不同的网络环境(网络模拟的条件设置带宽网络限制器;参见图6(参见算法)来填补网络服务器日志3)。然后,一个python脚本将分析这些日志,并将它们转换为一个CSV文件,其中包含5个列(四个输入特性和一个输出类)。

输入:HTTP请求,玩视频很多次
输出:Apache日志
1开始
2启动test_hours = (2、6、10、14、20、23)
3启动test_bandwidths = [10 mbps, 2 mbps, 1 mbps, 800 kbps, 600 kbps, 200 kbps, 100 kbps)
4启动i = 0
5loop_counter <长度(test_hours)
6组web服务器时钟test_hours[我]
7设置浏览器带宽test_bandwidths[我]
8与dash.js播放视频
9我= + 1
10Endwhile
11结束

该算法生成大约2000个HTTP请求的网络服务器日志,小时,带宽设置取决于私人ISP数据库中保存详细的会议2015年和2018年之间的10000个客户。

4.3。选择分类器和培训

我们训练有素的生成的数据集有四个分类器(线性SVC, KNeighbours、朴素贝叶斯和DecisionTree)。以前的分类器在实时应用中很受欢迎。根据训练结果,我们选择DecisionTree用于部署质量预测模型(它将在节中详细讨论5)。

5。结果与讨论

本节讨论实验的结果,相关工作的局限性和拟议的框架如何解决这些局限性,和未来的工作。

5.1。实验评价

生成的数据集测试有四个分类:朴素贝叶斯、KNeighbours,线性SVC, DecisionTree。

评价键选择一个分类器这四个分类器的分类精度,大O时间复杂度在培训,测试,和执行(当分类器部署在一个真正的工作环境),和实时应用程序的效率。

以前所有分类器很受欢迎在实时应用程序;的差异存在于大O时间复杂度(36)(见表3)和分类准确性(见图7)。

根据结果,我们选择DecisionTree实现最高的分类准确率(见表4)和最低的大O时间复杂度和实时应用程序是有效的。

5.2。基准测试相关工作

大部分的讨论相关工作2提出了一种修改结构本身。我们可以用该方法比较预测模型由尤瑟夫et al。29日),使用不同的分类器训练六个数据集。图8描述了一个比较的六个数据集训练使用资讯研究[29日使用资讯)和生成数据集训练的结果。在这个对比中我们选择资讯根据分类器选择的结果部分5.1

5.3。提出了框架的限制相关的工作和贡献

相关研究主要集中在部分增强,而不是提出一个全面的框架来解决所有视频流技术的关键挑战。本节简要介绍研究人员的主要方法用于提高视频流技术,他们的影响,我们如何克服在拟议的框架(见表5)。

5.4。未来的工作

(我)提出质量预测模型的附加功能(2)使用一个新的数据集(或从isp)生成质量预测模型(3)构建一个precaching集群模型模型(iv)研究视频扩展和增强该光WAF的攻击(v)使用特点检测saliency-based扩展。我们建议深王等人提出的学习方法。37]。(vi)与新组件扩展框架

6。结论

在本文中,我们提出了一个集成框架,通过HTTP流媒体视频;这个框架在这个重大问题处理技术(安全、缓存和服务质量)。我们描述的整个框架,重点详细介绍第一个组件,提出了其他组件粗线。这个框架包括四个部分:质量预测模型,precache模型,光web应用防火墙,一个监控系统。这四个组件提高体验质量和precache和增加的安全级别。

流媒体服务架构不是costly-only与流媒体服务器(一台服务器的配置很简单客户端玩家和服务器端。质量预测模型提取特征从web服务日志来预测合适的流媒体质量根据客户网络情况;这些特性是缓冲水平、时间响应的大小,类型的段,比特率。该模型实现了97%的分类精度用DecisionTree生成的数据集。这个组件的结果用于协助precaching precache模型,我们提出了一个数学系数评价precache模型。光WAF提出保护与自定义流媒体服务和有效的规则检查存在的某些头文件和实现一个完整的和重型WAF payloads-instead。此外,监控组件包含一个web应用程序来监控整个过程。

数据可用性

与Python脚本生成的数据集将在以下存储库:https://github.com/aref2008/dash_framework

的利益冲突

没有利益冲突声明。

确认

我们要感谢的人提供任何支持来完成这项工作。