学位论文 > 优秀研究生学位论文题录展示

基于网络存储器和机顶盒的家庭多媒体系统

作 者: 田渊青
导 师: 王东;沈文枫
学 校: 上海交通大学
专 业: 软件工程
关键词: 网络存储器 机顶盒 P2P下载 远程控制 流媒体服务器
分类号: TP393.02
类 型: 硕士论文
年 份: 2011年
下 载: 42次
引 用: 0次
阅 读: 论文下载
 

内容摘要


电视是家庭生活的重要组成部分。随着科技的飞速发展,平板电视早已走入平常家庭,人们不再满足于普通有线电视不够清晰的画面,对于高质量音视频的需求日益增长,高清机顶盒逐渐走进了人们的日常生活。但现在大部分的高清机顶盒都只支持服务器对点的推送,用户只能从内容提供商提供的片源中选择,而无法播放本地局域网内的媒体文件。另外,高清片源获取渠道方面,传统的拷盘模式由于价格昂贵、费时费力,只被一些专业发烧友所推崇,很难在普通家庭用户中推广。高速发展的P2P技术及不断提速的家庭网络带宽将24小时不间断下载变为可能,用户可以很方便地通过P2P下载获取大量高清片源。有了片源,存放成了大问题,动辄几十吉字节的高清片源需要海量的存储设备。普通的移动硬盘不够存放,而家庭用户又不可能拥有专业的磁盘阵列柜,所以小型家庭网络存储设备开始被关注。但是传统的网络存储设备只具备海量存储、备份等功能,并没有发挥出“网络化”的特点;因此,家庭对于多功能智能网络存储器的需求越来越大。论文基于当前市场需求及网络存储器与高清机顶盒的技术特点,系统深入研究嵌入式平台开发技术,结合当前主流的P2P、VPN和流媒体技术,在网络存储器中通过添加P2P模块实现P2P本地下载;通过添加远程管理模块,结合远程网站实现网络存储器的远程访问控制;通过添加流媒体控制模块,与机顶盒互动,将网络存储器与机顶盒取长补短,绑成一整套家庭多媒体系统。该系统由电视作显示终端、机顶盒作操作平台、网络存储器作为系统核心,提供下载、存储、远程控制等功能,使网络存储器不再独立化,成为真正的家庭媒体中心。论文主要开展的工作及成果如下:(1)以通用Linux下BitTorrent及ED2K客户端为基础,通过代码的二次开发实现任务动态调度算法并交叉编译移植到以ARM为平台的家庭网络存储器中,编写负责任务管理的守护进程将P2P客户端的任务状态输出至中间文件及数据库并开放端口监听命令,设计B/S架构的WebGUI及与守护进程的通信协议显示任务状态、管理控制任务队列,实现用户通过网页管理页面简单方便地控制网络存储器进行“P2P自主下载”。(2)将OpenVPN客户端移植到网络存储器中,编写CGI程序控制NAS设备与远程网络中心账号绑定或解绑,编写守护进程管理OpenVPN客户端的启停及NAS设备虚拟IP地址的分配,设计NAS设备与远程网络中心的通信协议接口使两者保持连接,在远程网络中心端采用多层防火墙+端口绑定+单向ip端口过滤,转发所有NAS设备的通信数据,配合P2P管理模块实现用户远程管理家庭网络存储器的P2P下载。(3)将VLC流媒体服务器移植到网络存储器中,在机顶盒端设计了面向用户的B/S架构WebGUI,搜索并显示保存在网络存储器中的高清媒体文件,接受用户遥控器点播,通过VLC流媒体服务器将被点播的媒体文件编码成网络流,推送至高清机顶盒并输出至高清电视播放。在家庭局域网环境下,实现基于用户自有节目的高清VOD点播控制。整套系统集远程管理、P2P下载保存、遥控器VOD点播于一体,具有智能化、网络化、互动化的特点,将网络存储器与高清机顶盒各取所长,整合成一体化的家庭高清多媒体系统。

全文目录


摘要  3-5
ABSTRACT  5-12
1 绪论  12-15
  1.1 课题背景  12-13
  1.2 国内外发展现状  13
  1.3 研究的目标和内容  13-14
  1.4 论文结构  14-15
2 家庭多媒体系统架构  15-23
  2.1 架构概要  15-17
  2.2 网络存储端设计  17-21
    2.2.1 网络存储设备(NAS)  17-18
    2.2.2 NAS P2P 下载  18-20
    2.2.3 远程管理  20-21
    2.2.4 流媒体输出  21
  2.3 小结  21-23
3 NAS BT 下载  23-43
  3.1 BitTorrent 协议综述  23
  3.2 BT 客户端选择  23-24
  3.3 Ctorrent 概述  24
    3.3.1 Ctorrent 命令行模式  24
    3.3.2 Ctorrent 状态栏输出  24
  3.4 NAS BT 设计概要  24-27
    3.4.1 设计思想  24-25
    3.4.2 主要流程  25-27
  3.5 Ctorrent 端详细设计  27-34
    3.5.1 主要函数修改  27-28
    3.5.2 日志函数说明  28-33
    3.5.3 Ctorrent 编译移植  33-34
  3.6 Daemon(EHTMON)程序设计  34
    3.6.1 Socket 服务器以及命令格式  34
    3.6.2 运行状态文件  34
  3.7 通讯协议  34-38
    3.7.1 文件目录结构  35
    3.7.2 任务运行参数文件  35-36
    3.7.3 数据文件  36
    3.7.4 任务信息日志文件  36
    3.7.5 任务状态日志文件  36-37
    3.7.6 系统Debug 日志文件  37-38
  3.8 WebGUI Ajax 设计  38-39
    3.8.1 etorrent.htm  38
    3.8.2 taskaction.php  38
    3.8.3 taskqueue.php  38
    3.8.4 taskinfo.php  38
    3.8.5 eh_util.php  38-39
    3.8.6 get_config.php  39
    3.8.7 configinfo.php  39
    3.8.8 ini_util.php  39
    3.8.9 killeht.php  39
  3.9 界面图示  39-42
  3.10 小结  42-43
4 NAS ED2K 下载  43-63
  4.1 ED2K 协议综述  43
  4.2 ED2K 客户端选择  43
  4.3 Mldonkey 概述  43-44
    4.3.1 Telnet 终端接口  44
    4.3.2 Mldonkey 接口命令  44
  4.4 NAS ED2K 设计  44-47
  4.5 Mldonkey ARM 移植配置  47
  4.6 Daemon(ED2KMON)设计  47-51
    4.6.1 ED2KMON 框架及功能  48
    4.6.2 程序流程图  48-51
    4.6.3 数据结构和类  51
  4.7 通讯协议  51-57
    4.7.1 目录结构  51-52
    4.7.2 启动脚本  52
    4.7.3 ED2KMON  52-53
    4.7.4 状态文件式样  53-54
    4.7.5 数据表结构  54
    4.7.6 任务列表文件  54-55
    4.7.7 保存路径文件  55
    4.7.8 服务器文件  55
    4.7.9 状态信息文件  55-56
    4.7.10 搜索关键字文件  56
    4.7.11 搜索结果文件  56-57
  4.8 WebGUI Ajax 设计  57-60
    4.8.1 全局设计  57
    4.8.2 添加任务流程  57-58
    4.8.3 显示已完成任务  58-59
    4.8.4 速度模式切换  59-60
    4.8.5 手动上传KAD 节点文件  60
    4.8.6 函数表  60
  4.9 界面图示  60-62
  4.10 小结  62-63
5 NAS 远程管理  63-71
  5.1 结构设计  63-64
    5.1.1 NAS 端  63-64
    5.1.2 Portal 端  64
  5.2 方案特点  64-65
  5.3 NAS 端详细设计  65-68
    5.3.1 系统结构  65
    5.3.2 程序功能  65
    5.3.3 流程图  65-67
    5.3.4 数据结构和函数  67-68
  5.4 Portal-NAS 通信协议  68-70
    5.4.1 更新虚拟IP 地址  68
    5.4.2 发送下载状态  68-69
    5.4.3 获取下载信息  69
    5.4.4 注册设备  69-70
    5.4.5 注销设备  70
  5.5 小结  70-71
6 流媒体控制  71-80
  6.1 解决方案框架  71-72
    6.1.1 设备功能分解  71-72
    6.1.2 设备技术分解  72
  6.2 NAS 端实现  72-75
    6.2.1 概要思想  72
    6.2.2 VLC 简介  72-73
    6.2.3 流媒体系统设计  73
    6.2.4 VLC 提供的接口  73-74
    6.2.5 VLC 交叉编译移植  74-75
    6.2.6 NAS VLC 本地测试  75
  6.3 STB 端实现  75-79
    6.3.1 实现功能  75
    6.3.2 页面分析  75-79
  6.4 小结  79-80
7 系统测试  80-86
  7.1 P2P 下载测试  80-84
    7.1.1 测试环境  80-81
    7.1.2 速度测试  81
    7.1.3 页面响应性能测试  81-84
  7.2 远程管理服务器性能测试  84-85
  7.3 流媒体服务器测试  85
  7.4 小结  85-86
8 总结与展望  86-88
  8.1 主要工作总结  86-87
  8.2 进一步工作展望  87-88
参考文献  88-90
附录  90-115
  附录1.1 Ctorrent 常用命令行参数  90
  附录1.2 Ctorrent 状态栏输出格式  90-91
  附录1.3 BT 任务运行参数文件格式说明  91-92
  附录1.4 BT 任务信息日志文件格式说明  92-93
  附录1.5 BT 任务运行参数文件格式说明  93-98
  附录2.1 ED2K Mldonkey 接口命令  98-99
  附录2.2 ED2K Daemon 类定义  99-103
  附录2.3 ED2K WebGUI 函数表  103-110
  附录2.4 ED2K 服务器文件说明  110-111
  附录2.5 ED2K 界面图示  111-113
  附录3.1 Php Telnet 通用库- Connet 函数实体  113-115
致谢  115-116
攻读学位期间发表的学术论文目录  116-117
附件  117-119

相似论文

  1. 面向数字电视的高清互动展示系统的研究和实现,TN949.197
  2. 基于网络存储的流媒体服务器系统,TN919.8
  3. IPTV机顶盒关键技术研究与实现,TN948.55
  4. 基于wifi的嵌入式视频监控系统设计,TP277
  5. 基于远程控制的SD卡文件管理,TP273
  6. 有线数字电视机顶盒设计与实现,TN948.55
  7. 基于J2ME的手机远程桌面监控系统的设计与实现,TP311.52
  8. 数字家庭媒体系统设计与实现,TP311.52
  9. 面向移动平台的桌面虚拟化机制研究,TP316.7
  10. 基于视窗操作系统的程序隐藏技术术究,TP393.08
  11. 煤矿井下PLC道岔网络控制系统,TP273
  12. 面向机顶盒的P2P流媒体音频播放系统研究,TN948.55
  13. 基于B/S模式与OPC技术的生产线远程控制设计与实现,TP311.52
  14. 木马原理分析与系统实现,TP309.5
  15. 一款机顶盒控制系统的键盘与显示屏接口研发,TN948.55
  16. 基于Web Service的移动机械手网络控制系统的研究,TP241.2
  17. RIPC中数据压缩与安全通信技术的研究与实现,TP273
  18. 基于特洛伊木马技术的计算机远程控制研究与实现,TP273
  19. 远程控制系统智能计算传输技术和安全认证传输技术的实现,TP273
  20. 基于网络的旋压机远程监控研究,TP277

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机的应用 > 计算机网络 > 一般性问题 > 计算机网络结构与设计
© 2012 www.xueweilunwen.com