P2P流媒体软件研发

P2P流媒体软件研发

论文摘要

当前,P2P流媒体直播软件已经大规模商业应用,而P2P点播软件在技术上也逐步走上成熟。虽然不同网络运营商对于P2P软件的蓬勃发展采取了截然不同的态度,但P2P软件所代表的个体资源(处理,存储,网络带宽)的整合和共享(网络的资源不在是孤立的信息点,也不在是依赖于少数几个大型的门户网站)的发展趋势不可逆转。其所带来的安全,版权等问题也成为当下探讨的热门话题。本文在介绍了进行P2P流媒体开发的基本技术后,分别介绍了作者在过去两年内所参与的两个P2P软件,总结了成功和失败的经验。P2P流媒体软件的研发已经经历了10多年的发展,主要包括了覆盖网的构建和数据调度算法的实现这两个方面:覆盖网的构建从最初的Napster,Gnutella的结构化结构到最近流行的基于流言的无结构的P2P网络,数据调度也从最初的多播树走到了数据驱动的或者说pull模型。从笔者的角度看待问题,我们可以得到两点:一切以应用为中心,把握真正的需求,并且在多个需求间正确的取舍和平衡,需求决定实现,例如P2P直播的流畅播放是以高时延为代价的。善于把握规律,利用用户操作习惯的统计学规律进行拓扑结构的构建也是一个好的想法。P2P的核心思想是以客户为中心,充分发挥客户的资源。本文共分三章,第一章概述P2P流媒体软件研发的技术基础。第二章介绍了P2P直播软件的研发和设计,并提供了核心的数据调度算法的源码示意。第三章介绍在机顶盒上的P2P分发模式,采用的是集中式管理,技术上虽然算不上创新,但在算法实现上,却需要解决许多难以解决的问题,而boost::multi_index等的应用,希望对于其他软件开发人员具有借鉴意义。

论文目录

  • 目录
  • 摘要
  • ABSTRACT
  • 1 绪论
  • 1.1 选题背景及意义
  • 1.2 国内外的研究现状
  • 1.3 内容发布技术
  • 1.3.1 传统的Client-Server架构
  • 1.3.2 多媒体代理服务器
  • 1.3.3 CDN概述
  • 1.3.4 P2P网络
  • 1.4 P2P STREAMING面临的挑战
  • 1.4.1 网络协议的复杂性
  • 1.4.2 网络和终端系统的异构性
  • 1.4.3 基于树状拓扑的协议及扩展
  • 1.4.4 基于Gossip的协议
  • 1.5 内网穿越技术
  • 1.5.1 NAT原理简介
  • 1.5.2 NAT技术类型及STUN协议
  • 1.5.3 软件开启UPnP
  • 1.6 视频编解码技术
  • 1.6.1 ASF格式简介
  • 1.7 流媒体传输协议
  • 1.8 跨平台网络编程技术
  • 1.9 P2P拓扑网络技术
  • 1.9.1 一些术语的解释
  • 2 P2P流媒体直播软件的分析和设计
  • 2.1 需求分析
  • 2.2 概要设计
  • 2.2.1 软件架构的设计
  • 2.2.2 覆盖网的构造
  • 2.2.3 数据调度
  • 3 STB上的P2P点播软件的分析和设计
  • 3.1 自定义术语解释
  • 3.2 需求分析
  • 3.2.1 设计约束及设计目的
  • 3.2.2 基本算法的分析与设计
  • 3.3 概要设计
  • 3.3.1 总论
  • 3.4 主要外部流程
  • 3.4.1 内容部署的步骤
  • 3.4.2 缓存变更
  • 3.4.3 用户请求播放
  • 3.4.4 节点登陆/退出
  • 3.4.5 Tracker启动/重启的处理
  • 3.4.6 Control启动/重启的处理
  • 3.4.7 文件的管理
  • 3.4.8 模块的划分和各模块维护的信息
  • 3.5 NP的设计
  • 3.5.1 总论
  • 3.5.2 主动对象
  • 3.5.3 多源下载器的实现
  • 3.5.4 主要流程
  • 3.6 CP的设计
  • 3.6.1 总论
  • 3.6.2 网络处理模块
  • 3.6.3 主要流程
  • 3.7 TS的设计
  • 3.7.1 总论
  • 3.7.2 主要流程
  • 3.8 CS控制
  • 3.9 CP控制
  • 3.10 详细设计
  • 3.10.1 CP节点管理模块
  • 3.10.2 内部实现
  • 3.10.3 网络处理与并发设计
  • 3.11 文件块管理模块
  • 3.11.1 接口设计
  • 3.11.2 内部实现
  • 3.11.3 文件块的切分及在CP中如何分布的性能分析
  • 3.12 主要的算法
  • 3.12.1 客户端负载的评估
  • 3.12.2 TS与CP数据一致性的维护
  • 3.12.3 TS中分配CP列表的策略
  • 3.12.4 NP数据调度的策略
  • 4 总结与展望
  • 致谢
  • 参考文献
  • 5 附件
  • INDEX的使用'>5.1 BOOST::MULTIINDEX的使用
  • 5.1.1 用户定义的类型
  • 5.1.2 确定需要的索引类型
  • 5.1.3 开始定义容器
  • 5.1.4 使用索引
  • 5.2 作者攻读硕士学位期间发表的论文
  • 相关论文文献

    • [1].P2P负面口碑特征属性挖掘与风险知识识别模型[J]. 武汉纺织大学学报 2019(06)
    • [2].P2P网络贷款监管的不足与完善[J]. 法制与社会 2019(36)
    • [3].P2P投资经验与甄别违约风险的能力——基于学习的视角[J]. 统计研究 2019(12)
    • [4].P2P网贷非法集资风险的法律规制研究[J]. 甘肃金融 2019(12)
    • [5].论网络非法集资犯罪侦防对策——以P2P网贷平台为视角[J]. 湖南警察学院学报 2019(06)
    • [6].P2P现状与大学生网贷的分析探究[J]. 教育教学论坛 2020(05)
    • [7].P2P网络借贷平台企业价值评估研究[J]. 合作经济与科技 2020(06)
    • [8].行为经济学视角下的P2P投资者行为分析[J]. 青海金融 2020(01)
    • [9].试论“监管沙盒”在规范我国P2P网络贷款平台应用路径选择[J]. 全国流通经济 2020(01)
    • [10].P2P融资平台下庞氏骗局的风险与防范[J]. 中国商论 2020(08)
    • [11].我国P2P发展困境分析——基于信息不对称视角[J]. 湖北科技学院学报 2020(01)
    • [12].认证方式对P2P的信用风险影响的有效性分析——基于“人人贷”经验数据[J]. 宿州学院学报 2020(02)
    • [13].P2P网络借贷平台财务风险预警体系研究[J]. 广西质量监督导报 2020(03)
    • [14].区块链在P2P行业征信体系的应用[J]. 科技资讯 2020(11)
    • [15].基于区块链技术的智能制造的P2P协同设计[J]. 机械设计与研究 2020(02)
    • [16].P2P网贷平台非法集资犯罪的刑法规制[J]. 法制博览 2020(15)
    • [17].基于P2P网贷行业失信危机征信系统应用问题探究[J]. 市场研究 2020(03)
    • [18].基于投资者结构的P2P网贷项目评估模型研究[J]. 安徽理工大学学报(社会科学版) 2020(02)
    • [19].P2P架构下环型结构文件热备份系统设计[J]. 软件导刊 2020(06)
    • [20].在营P2P网贷机构接入征信系统问题探讨[J]. 征信 2020(06)
    • [21].P2P网络借贷风险测度及防范[J]. 现代营销(下旬刊) 2020(07)
    • [22].蜂窝网络中P2P通信的关键技术研究[J]. 信息与电脑(理论版) 2020(13)
    • [23].基于P2P网贷行业现状的互联网金融监管未来发展趋势研究[J]. 现代商贸工业 2019(03)
    • [24].由P2P爆雷事件反思互联网金融的监管漏洞[J]. 现代营销(经营版) 2019(02)
    • [25].P2P网贷投资者特征与风险分析[J]. 广西质量监督导报 2019(03)
    • [26].我国互联网金融的风险及前景分析——以P2P网贷为例[J]. 现代营销(下旬刊) 2019(06)
    • [27].P2P平台下的“校园贷”问题研究[J]. 法制博览 2019(20)
    • [28].对互联网金融行业P2P管理问题的探讨[J]. 现代营销(下旬刊) 2019(07)
    • [29].基于P2P网络的计算机辅助教学系统[J]. 信息与电脑(理论版) 2019(21)
    • [30].P2P技术在云平台内容分发中的应用[J]. 信息与电脑(理论版) 2019(22)

    标签:;  ;  ;  

    P2P流媒体软件研发
    下载Doc文档

    猜你喜欢