基于单播模式下航海安全图像卡顿问题分析及解决方案

2018-11-15 01:33李翔崔勇焦重波
电脑知识与技术 2018年20期
关键词:网络带宽

李翔 崔勇 焦重波

摘要:组播通信技术广泛应用于网络视频业务中,其相比单播和广播在特定的通信条件下更能节省网络带宽。本文针对航海安全图像业务在单播模式下终端出现卡顿、花屏的现象,提出使用组播技术传输图像以减少服务器负荷的解决方案,并在航海安全系统中得到有效应用。

关键词:航海安全电视;网络带宽;组播;Igmp-snooping

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)20-0040-02

航海安全电视系统应用于某船室内外监控功能,有效地保证了船舶及人员安全。但航海安全图像系统在使用过程中多次出现卡顿、花屏等现象。本文总结了基于组播技术实现视频图像传输,有效解决了图像卡顿及花屏等问题。

1 航海安全电视系统介绍

1.1 系统组成

航海安全电视系统主要用于监视海况环境、室内外设施等场景图像的摄取、传输和显示。系统由中心管理服务器、录像存储回放服务器、IPSAN存储阵列、室内、外摄像头、客户端等组成,如图1所示。航海安全电视服务器主要提供设备接入服务、媒体转发服务、中心管理服务及录像存储等服务。设备接入服务主要完成对终端设备的接入服务和管理;中心管理服务主要完成航海安全电视系统的管理。

1.2 图像传输工作原理

用户向中心管理服务发送观看视频图像的请求,中心管理服务判断用户是否有权限观看该图像,如果没有权限则拒绝,否则将用户的视频图像请求转发给设备接入服务,设备接入服务再将视频图像请求发送给摄像机,最后将视频数据逐级返回给客户端,用户得以通过客户端正常观看图像,如图2 所示。

2 航海安全电视图像卡顿的问题分析及解决方案

2.1 故障现象

某船航渡期间,部分航海安全电视监控终端出现阶段性画面卡顿、花屏等现象,并对监控终端进行维护,故障现象依旧存在。

2.2 原因分析

航海安全电视采用单播传输体制,系统为每个需求该信息的用户单独建立一条数据传送通路,并为该用户发送一份独立的拷贝信息。如果有10个用户通过单播方式播放同一路视频,服务器将发送10路相同的数据流。同时,监控终端每多申请一路画面,均要向中心服务器發送一次请求。目前某船有8台监控终端,平均每台监控终端提供9路监视画面,每路画面传输速率约4M。因此中心服务器向外发送的数据流量将达到8*9*4=288Mbit/s。服务器数据处理量过大可能是导致图像卡顿的原因。

为验证上述猜测,将视频码率由4M降至2M,并关闭1台客户端。此时画面卡顿现象消失。

通过上述方法解决了图像卡顿问题,但降低码率导致视频质量下降;同时限制客户端数量,系统的拓展性降低。因此需寻求新的解决方法。

2.3 解决方案

为从根本上解决问题,提出了组播技术的应用,将航海安全图像业务由单播改成组播。组播其基本原理为同样的数据只需在源主机方发送一份,而位于同一组播组内的主机都可以收到同样的数据,网络中其他主机不能收到。因此传输体制从单播改为组播模式,服务器只需向系统内监控终端提供现有视频路数的图像。

2.3.1 航海安全电视端组播配置

在航海安全电视系统的系统管理中心里,首先为航海安全电视系统开启平台组播功能,允许客户端以组播的方式接受音视频,其次为系统设置组播基地址及组播协议,系统会从设置的组播基地址开始自动为设备分配组播地址,我们为系统设置的是任意源的协议及地址。如图3所示,以上即为在服务器处的配置。

根据IP地址分配方案,为每一个航海安全电视客户端用户处配置一个VLAN 500下的IP地址,并设置其网络参数。

2.3.2 GPON系统ONU组播配置

通过在航海安全电视系统的承载网的GPON网管进行配置,首先我们需要给每一个ONU下的航海安全电视客户端用户选择一个线路模板,并为系统单独增加一个VLAN,将所有客户端用户划分在同一VLAN里,最后将每一个用户设置成组播用户。

2.3.3交换机端组播配置

为启用组播技术,需要在业务承载网的交换机上开启相应组播配置。配置方法如下:

a.在所有交换机全局使能组播;

b.在汇聚交换机图像业务所在vlan的三层接口下开启pim sm以及igmp,指定igmp版本为V3。

2.3.4出现问题及解决方法

航海安全电视改成组播业务后,图像卡顿故障解决,但是由于配置不全,引发出以下两个问题,随即对出现问题进行解决。

1)GPON的ONU下客户端用户无法同时观看8路以上不同图像。

在使用过程中,发现在客户端处用户无法同时观看8路以上不同的图像。经实验得出,直接连接交换机的用户可以同时观看8路以上不同图像,并未受路数限制,而连接ONU下的用户存在这个问题,通过检查分析,发现在配置ONU时,ONU参数设置中的同时观看路数默认设置为8,于是将其修改成范围内最大值32,经验证问题解决。

2)组播数据在VLAN下广播,导致岸端图像业务出现卡顿。

接收岸端图像时,发现岸端图像传输存在视频卡顿现象。随即组织问题排查,首先检查设备参数、网络连通性,均正常,于是在接入交换机上进行端口检测,查看该端口详细信息,如图4所示。在末行显示Output bandwidth utilization:100%,说明该端口出方向占用率过高,端口数据流异常,导致端口堵塞。

通过对此端口配置镜像口,用wireshark进行抓包分析,发现端口收到的80M以上的数据流为航海安全电视图像的组播数据。由此可知航海安全电视图像组播报文在以广播方式给同一个VLAN里的其他端口发送组播数据,从而造成百兆端口满负荷工作。而岸端图像和航海安全图像没有队列优先之分,因此接收图像时出现队列丢包现象,从而导致岸端图像出现卡顿现象。

为了避免造成端口堵塞,于是采用IGMP Snooping技术解决此问题。IGMP Snooping是实现数据链路层组播的一种解决方案。配置IGMP Snooping后,二层设备通过对上游三层设备和下游用户之间的IGMP报文进行分析,为端口和组播MAC地址建立映射关系,并根据映射关系,实现在数据链路层组播数据的按需转发。

当二层设备没有运行IGMP Snooping时,组播数据在二层会被广播;而运行IGMP Snooping后,已知组播组的组播数据不会在二层被广播,而在二层被组播给指定的接收者。于是在接收岸端图像的接入交换机开启IGMP Snooping。

开启后,组播数据在二层网络环境下不再广播,岸端图像业务恢复正常。

2.4性能验证

修改完毕后,对航海安全电视系统进行性能验证,结果如下。

1)在分别对服务器、GPON、交换机进行参数配置后,对航海安全电视进行功能业务的测试验证,航海安全电视系统的图像各功能均正常。

2)在航海安全电视系统各功能正常的前提下,将之前降低的每路视频码率恢复为原码率,并且在保证全船航海安全电视客户端用户正常观看图像的前提下,再增加一个航海安全电视客户端用户以及图像监控路数,此时观看图像,并未出现卡顿现象,航海安全电视业务均正常。

3)在服务器端使用wireshark软件对图像数据进行抓包分析,发现此时图像数据以组播发送,其组播组地址为我们之前设置的以XX.XX.XX.XX起始的地址。

3 结束语

本文针对航海安全电视图像业务出现卡顿、花屏现象,对其故障现象进行分析,总结了应用组播技术传输的解决方案,通过组播配置,实现了航海安全电视基于组播技术传输图像业务,并解决了引发的相关问题,经过实际验证与应用,目前航海安全电视系统运行稳定。

猜你喜欢
网络带宽
动态自适应的HTTP流码率渐进切换算法
基于小波神经网络的大数据在线负载异常监测技术研究
基于流量控制的Docker容器网络带宽控制机制
如何提升高带宽用户的感知度
关于优化校园网管理策略的探讨