论文部分内容阅读
随着互联网技术和广播电视技术的快速发展,有线数字互动电视等流媒体业务突飞猛进。面对低抖动、低成本和低功耗的需求,通用处理器已经逐渐难以满足流媒体系统对计算能力和数据传输带宽的要求。专注于网络处理应用的的网络处理器不但具有较强的计算能力,且保持较低的成本和功耗,为构建高性能流媒体应用平台的可行方案。 为实时平滑传输并发媒体流,基于网络处理器的流媒体网关关键技术包括:多核软件架构、协议并发解析、内容缓存和抗抖动等。本文对这些技术进行了研究,主要包括以下内容: 1、研究多核网络处理器上流媒体网关等应用系统的软件架构设计方法,在混合流水线(HPL)模型的基础了提出了虚拟流水线(VPL)模型,克服了HPL负载难以均匀分配的问题。VPL模型将功能逻辑设计和资源分配相分离,增强了应用开发阶段的灵活性。VPL支持多种数据流映射策略,提出了两种策略,并对其性能进行了理论分析和实验测试,以探讨二者之间如何选取。作为VPL的应用实例,在Cavium OCTEON处理器上设计流媒体网关应用HiliMG的多核架构。基于HiliMG的实验结果证明了VPL相对于HPL模型的性能优势,VPL使得吞吐率提升13%以上。 2、提出了“缓冲串”的概念为流媒体网关的传输协议转译操作建立了通用模型,以探讨与具体协议和运行平台无关的算法层次优化方案。基于缓冲串模型,研究如何从离散的输入缓冲串中直接进行载荷提取以减少一次内存拷贝。针对这一方案在事件驱动并发模型下会引发的字段断裂问题,设计了基于字符流状态机、基于对象流状态机和基于模式匹配的三种应对策略。以下一代广播电视网络(NGB)下的流媒体网关为例,验证本文的优化策略,在Linux主机实现了基于字符流状态机和对象流状态机的协议转译策略,在Cavium OCTEON嵌入式多核处理器平台上实现了基于硬件模式匹配引擎的转译策略,并同未作优化的朴素转译算法进行性能对比测试,测试数据表明本文提出的优化策略的能够降低15%到45%的CPU开销,并将空间复杂度由线性变为常数。 3、针对基于网络处理器的服务平台,提出了一种网络存储系统解决方案。提出一种考虑用户特点的区分性代理服务模型,将用户对服务提供商而言的重要程度作为缓存文件选择的重要依据,提出QoS(Quality of Service)收益这一指标,并针对这一指标提出了DQCS(Differentiated Qos-Based Caching Strategy)缓存策略。DQCS为每个用户分配大小不同的缓存空间,并通过协同过滤技术获取重要用户的偏好来决定缓存选择策略。DQCS的缓存替换策略依其对缓存前缀长度的不同又分为分为FPC(Fixed Prefix Caching)和VPC(Variable Prefix Caching)两种。实验结果表明,基于合理的参数选取,DQCS能够在保证缓存命中精准度的同时,大幅度提高了缓存服务的效用,更切合某些服务提供商的需求。同时,FPC的缓存命中率和QoS收益高于VPC,但VPC具有更好的字节命中率。 4、针对流媒体数据在经过IP网络传输后会产生较大的码率抖动的问题,提出了一种码率控制策略。这一策略根据缓冲队列的长度动态调节上游的发送行为。采用这一策略,基于Cavium OCTEON网络处理器设计了HiliMG的数据收发流水线。测试结果表明,HiliMG在开启该策略后能够有效控制播放速率,改善MDI(Media Delivery Index)指标,提升用户体验。