高性能CDN流媒体服务器系统设计和实现
发布时间:2020-12-30 07:24
近年来,随着信息类型的多元化和网络宽带接入技术的迅猛发展,音视频业务成为人们生活、娱乐、通信不可或缺的元素,使得流媒体技术与内容分发网络(CDN)技术再次成为研究与推广的焦点,其相关应用如在线直播、小视频等视频业务快速兴起。流媒体有着连续性、实时性、时序性等优点,流媒体与CDN的结合成为各大互联网公司重点开发的热门技术。流媒体服务器是数据传输的核心部件,传统的流媒体服务器仅依靠传输层的流量控制,已经无法满足大流量高并发的媒体服务器需要。而当前流行的Nginx服务器通过控制用户上线频率来控制流量突发,实际应用中瓶颈日益明显。因此,如何控制流量的抖动,优化网络是一个需要解决的现实问题。针对这些问题,本文以某大型互联网公司的实际研究项目作为课题,首先对CDN架构进行了优化,将基于流量整形策略的拥塞控制算法应用到实际项目的Nginx服务器上,并结合自适应网络承载能力的方法进行优化;其次,基于令牌桶算法,采用数据缓存和发送模块分离的思路,将令牌桶算法进行变种;最后对系统进行测试,结果表明,与传统的Nginx流媒体服务器相比,优化后的服务器避免了因数据突发造成的瞬时网络拥塞,减少了丢包发生,提升了...
【文章来源】:南京邮电大学江苏省
【文章页数】:70 页
【学位级别】:硕士
【文章目录】:
摘要
abstract
第一章 绪论
1.1 课题研究背景及意义
1.2 国内外研究及应用现状
1.3 论文主要内容
1.4 论文章节安排
第二章 流媒体CDN相关理论基础与技术
2.1 流媒体概述
2.1.1 流媒体的产生过程
2.1.2 流媒体传输方式及技术特点
2.1.3 流媒体性能指标
2.1.4 流媒体播放方式
2.1.5 流媒体相关协议
2.2 CDN相关理论基础
2.2.1 CDN基本概念及其组成
2.2.2 CDN关键技术
2.3 流媒体技术与CDN的实际应用
2.4 本章小结
第三章 流媒体CDN系统的架构设计
3.1 流媒体服务器需求分析
3.2 流媒体服务器框架设计
3.3 CDN网络架构设计
3.3.1 CDN网络拓扑
3.3.2 CDN负载均衡
3.4 流媒体CDN的关键技术选取
3.4.1 流媒体协议选取
3.4.2 服务器选型
3.4.3 流量整形算法选取
3.5 本章小结
第四章 高性能流媒体服务器设计
4.1 流媒体服务器框架设计
4.2 流媒体服务器数据处理模块设计
4.2.1 数据接收和转发模块设计与实现
4.2.2 数据录制模块设计与实现
4.3 流媒体服务器数据缓存模块设计
4.3.1 Cache模块模型架构
4.3.2 Cache模块的主要接口设计
4.3.3 Cache模块的功能设计与实现
4.4 流媒体服务器数据发送模块设计
4.4.1 Shaper模块模型架构
4.4.2 Shaper模块运行机制
4.4.3 令牌桶在Shaper模块中的应用
4.4.4 数据重传
4.5 流媒体服务器参数优化
4.5.1 流媒体服务器配置文件优化
4.5.2 Linux内核参数优化
4.6 本章小结
第五章 系统实现及测试
5.1 流媒体服务器环境搭建
5.2 测试前的准备工作
5.2.1 网络拥塞模拟
5.2.2 推流操作
5.2.3 模拟增加丢包率场景
5.3 流量整形后的测试结果与分析
5.3.1 单用户发包波形分析
5.3.2 增加丢包率场景下的网络性能指标比较
5.3.3 水位线参数对服务性能的影响
5.4 性能与稳定性测试结果
5.4.1 性能测试
5.4.2 稳定性测试
5.5 本章小结
第六章 总结与展望
参考文献
附录1 程序主要算法代码
附录2 攻读硕士学位期间撰写的论文
致谢
【参考文献】:
期刊论文
[1]内容分发网络中基于相关内容吸引的缓存算法[J]. 张成,杨东风,黄协,张根耀. 计算机工程. 2014(09)
[2]利用Nginx实现网站负载均衡[J]. 刘振宇. 中国管理信息化. 2012(16)
[3]RTP/RTCP实时传输协议的研究与Linux实现[J]. 潘鹏,杜旭,叶婷,徐静华. 计算机工程与应用. 2005(24)
[4]王松:中国CDN发展与ChinaCache的成长之路[J]. 韩志国. 中国传媒科技. 2005(04)
[5]基于用户行为统计的流媒体集群负载均衡算法[J]. 林光国,戴琼海,丁嵘. 清华大学学报(自然科学版). 2005(04)
硕士论文
[1]基于云平台的流媒体缓存策略研究[D]. 张春雨.南京邮电大学 2014
本文编号:2947243
【文章来源】:南京邮电大学江苏省
【文章页数】:70 页
【学位级别】:硕士
【文章目录】:
摘要
abstract
第一章 绪论
1.1 课题研究背景及意义
1.2 国内外研究及应用现状
1.3 论文主要内容
1.4 论文章节安排
第二章 流媒体CDN相关理论基础与技术
2.1 流媒体概述
2.1.1 流媒体的产生过程
2.1.2 流媒体传输方式及技术特点
2.1.3 流媒体性能指标
2.1.4 流媒体播放方式
2.1.5 流媒体相关协议
2.2 CDN相关理论基础
2.2.1 CDN基本概念及其组成
2.2.2 CDN关键技术
2.3 流媒体技术与CDN的实际应用
2.4 本章小结
第三章 流媒体CDN系统的架构设计
3.1 流媒体服务器需求分析
3.2 流媒体服务器框架设计
3.3 CDN网络架构设计
3.3.1 CDN网络拓扑
3.3.2 CDN负载均衡
3.4 流媒体CDN的关键技术选取
3.4.1 流媒体协议选取
3.4.2 服务器选型
3.4.3 流量整形算法选取
3.5 本章小结
第四章 高性能流媒体服务器设计
4.1 流媒体服务器框架设计
4.2 流媒体服务器数据处理模块设计
4.2.1 数据接收和转发模块设计与实现
4.2.2 数据录制模块设计与实现
4.3 流媒体服务器数据缓存模块设计
4.3.1 Cache模块模型架构
4.3.2 Cache模块的主要接口设计
4.3.3 Cache模块的功能设计与实现
4.4 流媒体服务器数据发送模块设计
4.4.1 Shaper模块模型架构
4.4.2 Shaper模块运行机制
4.4.3 令牌桶在Shaper模块中的应用
4.4.4 数据重传
4.5 流媒体服务器参数优化
4.5.1 流媒体服务器配置文件优化
4.5.2 Linux内核参数优化
4.6 本章小结
第五章 系统实现及测试
5.1 流媒体服务器环境搭建
5.2 测试前的准备工作
5.2.1 网络拥塞模拟
5.2.2 推流操作
5.2.3 模拟增加丢包率场景
5.3 流量整形后的测试结果与分析
5.3.1 单用户发包波形分析
5.3.2 增加丢包率场景下的网络性能指标比较
5.3.3 水位线参数对服务性能的影响
5.4 性能与稳定性测试结果
5.4.1 性能测试
5.4.2 稳定性测试
5.5 本章小结
第六章 总结与展望
参考文献
附录1 程序主要算法代码
附录2 攻读硕士学位期间撰写的论文
致谢
【参考文献】:
期刊论文
[1]内容分发网络中基于相关内容吸引的缓存算法[J]. 张成,杨东风,黄协,张根耀. 计算机工程. 2014(09)
[2]利用Nginx实现网站负载均衡[J]. 刘振宇. 中国管理信息化. 2012(16)
[3]RTP/RTCP实时传输协议的研究与Linux实现[J]. 潘鹏,杜旭,叶婷,徐静华. 计算机工程与应用. 2005(24)
[4]王松:中国CDN发展与ChinaCache的成长之路[J]. 韩志国. 中国传媒科技. 2005(04)
[5]基于用户行为统计的流媒体集群负载均衡算法[J]. 林光国,戴琼海,丁嵘. 清华大学学报(自然科学版). 2005(04)
硕士论文
[1]基于云平台的流媒体缓存策略研究[D]. 张春雨.南京邮电大学 2014
本文编号:2947243
本文链接:https://www.wllwen.com/kejilunwen/xinxigongchenglunwen/2947243.html