广电互动电视CDN系统快速转存推流技术

2017-08-24 07:37雷德刚唐新宇黄晓锋黄承海
科技传播 2017年15期
关键词:分片内存架构

雷德刚,林 舸,唐新宇,黄晓锋,黄承海

广西广播电视信息网络股份有限公司,广西南宁 530028

广电互动电视CDN系统快速转存推流技术

雷德刚,林 舸,唐新宇,黄晓锋,黄承海

广西广播电视信息网络股份有限公司,广西南宁 530028

利用无差错TCP传输协议缩短视频推流服务器到与IPQAM间UDP协议的传输距离,并结合内存快速转存服务器,设计一种新型的广电互动电视CDN架构以及视频推流方式。本文阐述了设计的思路、架构和转存推流技术内容。

IPQAMUDP协议;TCP协议;快速转存;分片算法;回源

广电网络的互动点播系统由包括服务器、传输网络、IPQAM、用户接入网等多个环节组成,哪个环节出现故障都会给用户播放造成不同程度的影响,其中在服务器与IPQAM之间的视频数据传输是最长的一个环节,这段距离的传输协议使用UDP协议,在传输过程中如有超过IPQAM所能承受范围的网络延时或者丢包现象,将会在用户终端上出现点播马赛克、卡顿等现象,极大影响用户的体验。

为了解决现在实际推流环境下UDP协议长距离传输易出现的网络抖动问题,隔绝系统和网络上的干扰,通过在CDN的边缘节点布置大内存且无存储硬盘的快速转存推流服务器,采用内存作为中转缓存,将快速转存推流服务器前置到与分前端IPQAM同一交换机网络内,使得快速转存推流服务器与上级服务器的内容传输采用TCP可靠传输协议,转存后向IPQAM以UDP协议继续推流,这样就大大缩短不可靠协议传输的距离,解决网络抖动引起的各种问题。形成一套视频内容高速可靠传输、推流质量明显改善的快速转存推流系统。

1 设计思路

1)根据现状进行改造,设计在边缘节点推流服务器与IPQAM之间,增加快速转存推流设备,同时将设备前置到分前端离IPQAM最近的点,通过交换机进行连接。

2)设计快速转存推流服务器采用高IO读写内存作为中转缓存,不配置存储内容的硬盘,性能高,方便维护。

3)开发内存转存推流技术,核心是使用内存作为数据缓存设备,来进行快速的数据读取和发送。通过优化内存缓存算法,提高缓存的利用率,改善推流质量和提高推流输出能力。

2 系统架构

2.1 架构改造

2.1.1 边缘城市节点推流网络现状

架构改造前,边缘带存储的推流服务器放置在各地级市内中心机房,直接承载用户的IPQAM分布式布放在各分前端(地级市下属城区、县、镇)机房内,响应到用户点播请求后,推流服务器推送视频TS流给IPQAM设备,由IPQAM转成RF信号供给用户机顶盒进行接收和观看。此种传输模式下,市中心机房与分前端的IPQAM间传输采用UDP协议,容易受到市中心机房到分前端的网络环境距离长、节点多的影响,传输稳定性无法完全保证,在出现网络抖动及延时的情况下,用户的收视体验较差。

2.1.2 改造后架构

设计在边缘推流服务器与分前端IPQAM间增加一层快速转存推流设备,尽可能多地从上一级推流服务器回源拉取热门视频内容,该设备与IPQAM一起放置在同一分前端机房内与交换机直连,长距离的向上回源视频内容行为使用TCP协议(可靠协议),同局域网内的向下推流采用UDP协议,以此减少网络抖动和延迟的影响。

3 快速转存系统配置

根据转存算法对CPU及内存容量的需求,通过对不同硬件配置的服务器进行测算,得出最佳的硬件配置组合。

3.1 内存转存推流原理

快速转存服务器首先向上级推流服务器请求视频数据缓存在服务器内存中,若有用户请求则高速读取内存中数据提供给外部请求,实现快递转存推流功能。

3.2 转存介质

与传统存储介质硬盘对比,内存读写速度快,数据传输时延低,可有效改善推流输出质量,另外其故障率低的特点。

3.3 物理内存分配设计

推流服务器基础容量:推流程序未连接用户时消耗内存550MB,为使正常工作,预留1GB内存。

并发内存占用:是指每个连接上媒体服务器所消耗的单个连接内存开销的总和。推流程序占用11.3%的内存,该服务器内存为64GB,则程序占用7405MB内存。此时推流并发为217个,则每平均每个连接消耗34MB内存,根据实际测试数据,纯内存或固态盘服务器可以支撑2000并发,所有我们设计每台转存服务器的并发数为2000,则需要消耗34MB×2000=68GB的内存。

操作系统预留容量:为使正常工作,预留2GB内存。

热点分片缓存:在推流的同时,会将视频内容分片存储在内存磁盘上。若有多个用户同时访问相同视频内容,则媒体服务器将一直将直接使用内存磁盘上的视频分片数据,并且这些数据分片保持为兴奋状态,不进行删除。

整个服务器内存分配如下设计:操作系统预留:2GB

推流服务器基础:1GB

并发占用内存:34M×2000=68GB热点分片缓存:64-128GB

3.4 快速转存服务器选型

3.4.1 快速转存服务器硬件配置

单台快速转存服务器使用双至强1.70GHz的CPU和192G内存情况下,CPU使用率为75%左右;推流输出带宽达到7.5Gbps时,机顶盒视频播稳定、画面稳定,超过这个数值将出现收视马赛克现象,测试结果表面快速转存的算法在192G以上内存空间支撑时表现出最优的推流输出能力,为了费效比的最优,建议采用以下基本配置。

CPU配置:2×Intel(R) Xeon(R) CPU E5-2609 v4 @ 1.70GHz

内存配置:6×32GB

网卡配置:4×1GB 网络子卡、2×10GB 网络子卡

3.4.2 成本分析

四级CDN架构与三级CDN架构对比,虽然需多投入快速转存推流设备,但实际换算推流流量每Gbps输出硬件成本为1.85万元,低于原架构的2.51万元,加上只配置内存无硬盘的服务器对维护要求不高,两者综合,经济效益十分突出。

4 转存算法设计

4.1 转存方式

分片算法采用定长分片的方法,将媒体文件分割成大小一样的片段,先系统中采用8M一个分片。采用该方法,能简单高效的定位用户的请求、响应用户拖动等操作,而且在进行分片热点计算的时候,能快速定位到每个分片。

分片0(8M) 分片1(8M) 分片2(8M) 分片3(8M) 分片4(8M)

4.2 缓存算法

热点缓存算法能够计算出热点分片,通过缓存共享机制,提高用户请求缓存命中率,可减少实时回源量,提升推流能力。具体算法如下。

4.2.1 热点算法

使用分片访问频率来作为分片热点的计算方法,访问频率越高则认为该分片热度越大,即后续被访问的机率就越大。故在做热点计算的时候,不能完全将每个分片完全分离开,各自独立计算热度,而应该考虑其所处的位置,当前被访问的分片及其所在视频观看的热度。

4.2.2 预读算法

当用户在访问分片n的时候,分片n+1将会有很大机率被访问,增加一个预读机制,将分片n+1进行预读缓存,并且将分片n+1的热度直接配置为1,即进行热点分片预写入。

4.2.3 更新算法

在进行热点文件替换的时候,按照热度值从小到大进行清理,即缓存热度值高的分片数据,另外为了防止热点分片被频繁换出,需要记录每个分片的缓存时间,并且为每个分片配置一个保护时长,即在该时长内,热点分片不会被换出。

5 结论

通过互动点播CDN架构的改造和快速转存技术的开发和测试,实现了使用TCP协议替代UDP协议进行长距离传输视频流,解决了网络抖动、延时等因素引起的各种用户收视体验不佳问题,同时使用分片式内存存储转发机制提升了内存空间使用率,并提高了回源推流和转存推流的带宽输出能力,通过成本核算,每Gbps推流流量成本得到较大的降低,最终可使快速转存推流技术得以良好的应用。

[1]W.Richard Stevens.TCP/IP详解卷1:协议[M].北京:机械工业出版社,2016:107-269.

[2]梁洁,陈戈,等.内容分发网络(CDN)关键技术、架构与应用[M].北京:人民邮电出版社,2013:356-391.

TP3

A

1674-6708(2017)192-0054-02

雷德刚,广西广播电视信息网络股份有限公司。林舸,广西广播电视信息网络股份有限公司。唐新宇,广西广播电视信息网络股份有限公司。黄晓锋,广西广播电视信息网络股份有限公司。黄承海,广西广播电视信息网络股份有限公司。

猜你喜欢
分片内存架构
基于FPGA的RNN硬件加速架构
上下分片與詞的時空佈局
外部高速缓存与非易失内存结合的混合内存体系结构特性评测
功能架构在电子电气架构开发中的应用和实践
分片光滑边值问题的再生核方法
CDN存量MP4视频播放优化方法
“春夏秋冬”的内存
基于模糊二分查找的帧分片算法设计与实现
LSN DCI EVPN VxLAN组网架构研究及实现
一种基于FPGA+ARM架构的μPMU实现