总第11期
2017年12月刊
Column Big Data    大数据专栏
Column Big Data    大数据专栏
IT大数据应用场景故事(连载)——网络视频承载质量分析
文/康乐
分享

“IT大数据”,顾名思义是运用大数据技术对企业各类IT基础设施、应用系统、数据库系统,或者各类物联网设备产生的日志进行分析与挖掘的一个平台系统。借助海量数据存储、分布式技术等大数据领域技术,帮助客户更快捷的定位事件根因、预测事件趋势、展现事件分析结果。本刊上期发表两篇关于IT大数据应用故事《WannaCry病毒分析》、《链路流量拥塞原因分析》,收到很多读者的反馈,尤其是关于病毒分析的过程,这里感谢读者朋友的批评与鼓励。本期继续刊发关于IT大数据的部署最佳实践,希望能得到大家更多反馈和更过支持。

1 故事背景

10月中旬,IT大数据产品线NDP解决方案团队(Network Data Platform Solution)参加了某客户“党的十九大重大活动保障工作”。按照客户要求,本次重保工作分为三阶段:重保前的巡检与问题排查、重保期间的值守监控、重保结束后的总结汇报。客户在重保前的排查中发现,监控图像系统从某地区视频专网上采集的图像信息质量参差不齐,大约有40%的摄像头存在卡顿现象,初步判断是由网络质量不佳造成。客户希望对上述问题进行根因分析,并提供解决方案。

NDP解决方案团队工程师利用IT大数据产品的“网络质量分析工具”,协助客户将卡顿最严重的几路摄像头,从卡顿10-20秒,播放1-3秒,改善到卡顿约1秒左右,连续播放15秒左右。基本解决了客户对相关区域图像信息采集的要求。这里分享一下问题解决过程,希望能给读者提供一些可借鉴之处。

2 视频承载质量参数的特点与获取

1、网络视频流量的特点

对于视频流量特征的理解有助于对网络质量问题的分析和排障。视频流量的特点是:有流量突发、有大报文、传输比特率变化大。这些特征与视频编码原理有关。在视频编解码器中,单个帧可以采用三个模式中的一个进行编码—即I、P或 B,如图1所示。

图1 I帧,B帧和P帧的关系

I帧实际上是一个编码的图像,就像传统的静态图像文件一样。一个P帧是对前一帧的预测,只包含来自前一个帧图像的变化。编码器不需要在P帧中存储不变的背景像素,从而节省空间。一个B帧是通过当前后两帧进行内容预测,目的也是为了省空间。通常I帧数据非常大,P帧和B帧数据比较小。在I帧传输时会出现流量突发,一路平均流量为4.5Mbps的视频流,突发的流量可能达到20Mbps。这种突发(如图2所示)可能在交换机上造成丢包,从而影响图像信息质量。

图2 视频的流量突

网络视频流量传输的质量要求

该客户的视频信息主要来源于“安防视频监控系统”。在GBT28181-2011《安全防范视频监控联网系统信息传输、交换、控制技术要求》中详细定义了安防监控对“网络传输质量”的要求:

● 网络时延小于400毫秒

● 时延抖动小于50毫秒

● 丢包率小于0.1%

● 错误率小于0.01%

上述参数要求为解决网络质量问题建立的标准。其中,网络时延定义为从服务器端发送数据到终端接收到该数据之间的时间差。时延限制主要是用在具有实时性交互要求的视频应用中,如视频会议系统,但对于视频监控来说,400毫秒时延的要求并不高,正常网络都能满足。

时延抖动定义为网络传输延时的变化率。时延抖动对流媒体播放质量的影响比较大。网络设备通常会采用端口缓存队列的方案平滑数据报的抖动。但如果数据传输的抖动较大,则必须采用更大的缓存,其结果将直接造成更大的网络时延。在互联网上找到一些测试数据,抖动值在20毫秒以内对画面影响不大,主观上很难看出来质量损失。当抖动值超过100ms以后对画面会产生较大影响。主要表现为视频播放的不连续:有时停顿,时快时慢,同时伴随着一些马赛克,画面质量损失就不能满足监控要求了。

丢包会对视频质量造成很大影响。小的丢包率会造成图像的卡顿和语音的间歇中断,过高的丢包率甚至可以导致业务的中断。造成丢包的原因包括,物理链路质量问题、链路拥塞、流量突发(微观上的链路拥塞)等。

2、通过NDP系统获取网络传输质量

客户的安防视频监控系统部署环境如图3所示。摄像头发出的以太帧通过RJ45接口连接到小型光电收发器,以太帧通过光纤汇聚到XXX机房的汇聚光电收发器,之后以太帧再次通过RJ45接口接入到交换机,最后以太帧通过城域网到达核心机房。视频中心的安防监控系统可以通过IP网络访问摄像头。

图3 安防视频监控系统部署

传统的网络质量测量方法需要端到端部署探测代理程序(摄像头)与探测统计服务器(网络核心),在安防监控环境下,无法在各品牌摄像头上部署统一的探测代理程序。另一种测量网络质量的方案是通过分析报文协议,获取相关参数。如图3所示,部署在核心机房将所有视频流量镜像到NDP采集器上,通过解析实时传送协议(Real-time Transport Protocol或简写RTP)获得丢包率、网络时延抖动等参数。RTP是客户安防视频监控中采用的应用层承载协议,读者可以在互联网上获取协议的相关说明。

获得丢包率的方法:由于RTP协议在每发送完一个报文后就将报文中序列号(seq字段)递增1,因此采集器收到镜像流量后对流量进行会话识别,当识别出RTP会话后,提取报文中的seq字段,连续统计发送包总数、接收包总数和丢包总数,这样可以在测试时间能实时的计算出丢包率。

获得时延抖动的方法:数据报到达时延抖动定义为RTP数据报在接收端包间隔和发送端包间隔时延差值的平均平滑绝对值。建议读者参考文章《网络视频质量评价方法研究》(作者:雷霄骅),其中对通过RTP计算时延抖动参数有详细阐述。

获得网络时延的方法:最好的测量方案是主动ping各摄像头,但这个方案在必须在NDP系统上配置所有的摄像头IP地址,并且对于数百摄像头轮询ping将对服务器也有一定压力。替代方案是NDP系统通过分析服务器侧TCP三次握手的时间差获得传输层响应时间,这个时间基本与网络时延相差很小,可作为网络时延做网络定性分析。互联网上有很多关于此类计算方法的文章,这里不再赘述。

至此,NDP系统就获得了影响视频网络质量的三个主要的数:时延、抖动、丢包率。

如图4所示是某敏感区域内各摄像头的网络视频承载情况:

图4 摄像头网络视频承载

点击图表下钻到某摄像头的具体情况如图5所示:

图5 摄像头流量详情

3 视频质量问题排查

从NDP平台上挑选了几路质量较差的摄像头进行问题分析。摄像头数据流依次经过小型光电收发器、汇聚光电收发器、接入交换机、核心机房;NDP平台分析发现视频流存在丢包现象,可以确认丢包发生在摄像头到接入交换机之间流量经过的某个节点。接下来的排查思路是对摄像头到接入交换机之间的各个传输节点依次排查,逐步缩小丢包范围。

● 在所有监控摄像头中挑选丢包严重的进行故障排查;

● 收集交换机运行信息,确认接入交换机是否存在丢包现象;

● 测试各节点光衰情况并替换各节点设备;

排查场景1

首先在NDP系统的告警功能中找出质量较差的摄像头189(代号)和81(代号),从NDP上可以看到这两台摄像头丢包严重时会达到15%。

在摄像头交换机上未发现丢包情况,初步确认丢包发生在接入交换机之前的传输网络中。继续排查传输链路,发现上述两摄像头部署在同一位置附近,该区域无法通光纤,目前是通过无线对射的方式传输到光纤节点后,在通过交换机接入核心机房。由于无线传输受周围环境影响比较大,因此实时视频传输无法得到保障,丢包问题基本确认。

● 排查场景2

再次挑选同一站点的丢包率在0.4%的摄像头(代号91、92、93、94)进行问题排查。而按照国家标准GBT28181-2011规定,丢包应小于0.1%,才能保证视频质量。该节点四台摄像头丢包率相近,说明丢包发生在小光电转换器到XXX机房汇聚光电转换器之间。

到达这四路摄像头的部署站点后,进行了如下排查:

● 测试光衰:光衰值为-14db,大于-20db属于正常光衰;说明机房到达该站点的光衰没有问题。

● 减少上行流量:关闭一路摄像头后丢包和时延没有任何变化,说明没有网络拥塞或突发的问题。

● 替换该站点光电收发器,从NDP上可看到丢包现象基本消失,丢包问题基本确认。

结束语

通过H3C IT大数据NDP分析系统,不仅可以分析监控网络中各终端的实时、历史流量,还可以通过分析这些流量的承载协议了解网络服务质量,协助定位分析应用性能问题,发现网络中存在的隐患,并对网络优化和扩建提供指导性数据。本文简要介绍了一些利用NDP系统进行视频流量质量巡检与问题排查的原理与实践,类似的网络质量分析动作在日常运维中会经常遇到,希望本文的分析思路能给读者带来一些帮助。

分享到
关闭