- 浏览: 1440431 次
- 性别:
- 来自: 郑州
文章分类
最新评论
-
getelephantbyid:
make 无法通过.....
php-5.3,php-5.4的thttpd2.25b补丁,及编译方法 -
getelephantbyid:
patch -p1 ../php-5.4.7_thttpd-2 ...
php-5.3,php-5.4的thttpd2.25b补丁,及编译方法 -
zander:
zander 写道c 语言是静态类型语言还是动态类型语言阅读理 ...
什么是动态语言和静态语言? -
zander:
c 语言是静态类型语言还是动态类型语言
什么是动态语言和静态语言? -
lunajiayou:
很有道理,赞一个
跟着苍蝇会找到厕所,跟着蜜蜂会找到花朵
说到DLNA,UPnP协议就一定要提到,这点从DLNA分层就能看出来。
UPnP是Universal Plug and Play的缩写,亦即通用即插即用。这个协议是由intel和microsoft主导的,主要针对家庭网络和企业网络。
UPnP组织论坛地址是: http://www.upnp.org .
UPnP架构以IP技术为基础,使家庭网络和企业网络设备自动连接和协同工作。
UPnP基础协议是UPnP Device Architecture,最新的版本是1.1。这个UDA架构给出了局域网内设备如何发现对方,了解对方以及与对方交流的流程。
UPnP使用的技术包括IP, TCP, UDP, HTTP, XML。
UPnP设备加入网络的过程
UPnP设备加入网络首先要获得IP(即使DHCP服务不提供的情况下)。
接下来的步骤称之为 发现或者寻找
。如果一个控制点(Control Point)加入到网络中,会发送一个广播协议,所有局域网的UPnP设备会做出响应。如果一个设备加入网络,会定时发送广播自己的设备信息和服务信息,以便感兴趣的控制点能找到。这个发现对方的过程是基于SSDP协议的。
请注意,这里的设备指的是具备存储内容的设备,例如媒体服务器,或者播放媒体的设备,例如播放器,或者网关设备。而控制点(CP)扮演的是客户端,不具备存储内容,播放媒体或者网关等设备的功能,只能浏览设备内容。
控制点和设备发现了对方,下一步就是 描述 ,意思是控制点了解设备有哪些功能。在这一个阶段,设备会告诉控制点设备的信息,设备可以提供的服务以及服务包含哪些命令,还包括命令所需要的参数。
控制点了解了设备的能力后,下一步就是 控制 。根据设备提供的服务和命令列表,控制点可以发送指令来控制设备做出回应。例如浏览设备内容, 控制点可以发送Browse指令得到设备内容,并呈现给用户。控制点发送的控制指令是通过SOAP协议使用XML描述的。
控制的下一步是 事件 。一个UPnP描述包括一组命令列表和描述运行时状态信息的变量。服务在 这些变量改变的时候进行更新,控制点可以进行订阅以获取相关改变。 服务通过发送事件消息来发布更新。事件消息包括一个或多个状态信息变量以及它们的当前数值。这些消息也是采用 XML 的格式,用GENA协议进行格式化。一个特殊的初始化消息会在控制点第一次订阅的时候发送,它包括服务相关的变量名及值。为了支持多个控制点并存的情形, 事件被设计成对于所有的控制点都并行通知。因此,所有的订阅者同等地收到所有事件通知。
最后一步是 表现 。如果设备带有表现URL,那么控制点可以通过它来获取设备表现信息,即在浏览器中加载URL,并允许用户来进行相关控制或查看操作。具体支持哪些操作则是由表现页面和设备完成的。
上面说到有控制点和设备两个概念。控制点英文称之为Control Point ,简称为CP;设备称之为device 。控制点不能称之为一个设备,它只具备浏览设备内容的能力,这一点是需要强调的。
我们用图形来描述UPnP的协议栈和UPnP设备交互过程:
UPnP协议栈
UPnP设备交互过程
UPnP的应用场景包括哪些呢?
典型应用场景
随着PC成为网络的中心并提供日益丰富的介质和连接服务,在设备与PC相连之后,越来越多的应用将被开发出来。下面的例子只是其中很小的一部分:
智能家庭网络
许多智能家居环境使用了现存的家庭控制网络,例如家庭网络来控制和监控整个家居环境,比如灯光,安防和其他家庭设备。这些网络可以连接PC上,但是除了
PC之外,不能被其他的设备存取。使用UPnP设备可以桥接这些网络成为一个网络,并提供用户更多设备存取家庭网络中的设备。在实现时也无须对家庭网络中
的现有布线和设备进行昂贵的升级,只需要将设备变成UPnP设备并能够与控制点通讯并接受控制点的控制命令。
数字音视频文件管理
可以在PC和其他设备上播放的数字化音视频文件在近几年正在成指数级的增长。一个家庭中,可能有几台计算机或者其他设备用于保存这些文件。使用UPnP可
以使这些分布在不同PC的文件统一管理。这些设备能被发现然后被其他控制点(比如个人电脑、UPnP接收器)控制,播放器可以通过家庭网络获得这些音视频
文件并播放它们,用户可以在电视上欣赏这些音视频文件。
数字图片库
许多家庭使用数字相机拍照,或者将已有照片扫描保存,然后将这些照片上载到他们的计算机中保存。在计算机中对其进行分类,或者以幻灯片的形式进行显示。随
着照片的增加,照片可能保存在多种设备或者多种介质上,比如光盘、硬盘、Flash卡。使用UPnP技术,图片库可以自己作为一个设备存在,并自动在网络
上声明。这使得一个照片库可能临时为多个应用程序使用,例如可以进行幻灯片显示的同时,在电子像框、机顶盒和电视上进行显示。
UPnP设备包括哪些类型呢?
1. 基本设备。这实际上是一个抽象设备,不提供任何服务。
2. UPnP AV设备。这个为DLNA框架提供的设备类型,包含media server, media render。
3. UPnP Printer设备。提供打印服务。
4. 网关设备(IGD)。这个应用非常广泛,很多路由器包含这个设备的服务。
5. UPnP Scanner设备。提供扫描服务。
6. 数字摄像头。提供摄像头类似的服务。
7. 亮灯控制。这是UPnP设备协议的一个标准例子服务。
下面的图包含了以上UPnP设备类型。
我们主要看UPnP AV设备以及他们能提供哪些服务和配套的内部设备。
在UPnP Device Architecture基础上,UPnP组织增加了UPnP AV Architecture,规定了音视频设备与控制点之间的交互过程和音视频设备提供的服务。
这个架构包含两种AV设备和一个控制点。一种AV设备为Media Server,保存各种音视频、图像等多媒体资料;另一种设备为Media Render,可以从Media Server获取多媒体数据并在本地进行播放。
下面的图描述了这三个组件(Media Server,Media Render,Control Point)的交互过程。
从这个图,我们还可以看出来Media
Server提供的服务至少包含内容目录(Content Directoy)、连接管理(Connection
Manager)和音视频传输(AVTransport),简称为CDS,
CMS和AVT。其中CDS和CMS是必须提供的服务,而AVT则是可选的服务。
而Media Render提供的服务至少包含播放控制(Rendering Control)、连接管理(Connection Manager)和音视频传输(AVTransport),简称为RCS, CMS和AVT。其中RCS和CMS是必须提供的服务,而AVT则是可选的服务。
在这个架构中,还提供了这个三个组件在实际应用中交互模型,有兴趣的朋友可以进一步阅读。
其它资料
http://miniupnp.free.fr/
http://www.upnp-hacks.org/
发表评论
-
使用strongswan建立基于ikev2 eap-mschapv2的ipsec服务器
2017-04-17 23:14 3094sudo apt-get install strongsw ... -
使用strongswan/xl2tpd建立ipsec/l2tp服务器
2017-04-17 22:32 6036sudo apt-get install strongsw ... -
SecureFX中文件名乱码的解决
2014-08-28 03:23 3284原始贴子:https://forums.vandyke.c ... -
为Linux编译atheros ar1111(设备ID:168c:0037,AW-NB100H – AR5B225 Atheros half size)网卡驱动
2012-07-15 22:57 4484买了个zotac h61itx-a-e wifi主板,从zot ... -
PHY管理接口(MDIO)
2012-01-17 17:01 4155对吉比特以太网而言,串行通信总线称为管理数据输入输出 (MDI ... -
理解ipsec身份标识和认证选项
2012-01-11 15:42 6791This article is part of the Ide ... -
netfiletr和iptables的状态和连接跟踪机制
2012-01-11 15:38 3293Como se lleva a cabo el rastreo ... -
编译安装iw
2011-11-09 13:31 2341ubuntu安装build-essentials libnl- ... -
从ip addr add和ifconfig的区别看linux网卡ip地址的结构
2011-09-24 13:06 1624转至:http://blog.csdn.net/dog25 ... -
Linux 用户态与内核态的交互——netlink 篇
2011-09-19 01:39 3471转至:http://bbs.chinaunix.net/thr ... -
netlink与rtnetlink(二)
2011-09-19 01:36 15808转至:http://blogold.chinaunix.net ... -
netlink和rtnetlink(一)
2011-09-19 01:35 5177转到:http://blogold.chinaunix.net ... -
Linux——Netlink
2011-09-19 01:24 9577转载:http://blog.csdn.net/firo_ba ... -
linux notification chains
2011-08-13 00:26 1020linux内核由各个不同的子系统构成,比如网络子系统、存储 ... -
内核中的notification chain浅析
2011-08-13 00:25 1346内核中的很多子系统都是联系很紧密的,因此有可能某个子系统的某些 ... -
Linux Notification chains
2011-08-13 00:24 2809Notifier是Linux 中提供一种在内核子系统 中共 ... -
printk 使用方法
2011-08-12 22:28 9802内核通过 printk() 输出的信息具有日志级别,日志级 ... -
WEXT/mac80211/nl80211/cfg80211
2011-07-29 02:32 11147Wireless-Extensions--旧的无 ... -
fedora上wpa_supplicant上网配置
2011-07-29 01:28 35041,vi /etc/sysconfig/wpa_supplic ... -
vi替换命令用法详解
2011-07-19 01:06 2166vi替换命令用法详解 : ranges /pat1/ ...
相关推荐
基于DLNA的UPNP协议的分析及实现,DLNA
This Standardized DCP Framework Annex has been adopted as a Standardized DCP Framework Annex by the Steering Committee of the UPnP Forum, pursuant to Section 2.1(c)(ii) of the UPnP Forum Membership ...
DLNA ,UPNP 相关文档规范。英文资料,很全面。 UPnP-arch-DeviceArchitecture-v2.0-20200417.pdf 其中这个文件是 upnp架构2.0规范 upnp的设备架构规范包括:发现,描述,控制,事件,展示。 另外还有很多不同设备...
DLNA Guidelines 2016最新版,也可以从发邮件到官网邮箱获取。 UPNP Spec 1.1和2.0两个版本,按需选择 。
upnp协议中文资料(DLNA)
编译ushare需要用到的最新源码库文件,包括ffmpeg dlna upnp和ushare源码库
mediaplayer是dlna设备(dmp),它可以搜索dms设备、浏览资源并在本地播放。
DLNA__Guideline UPnP-arch-DeviceArchitecture-v1.0 UPnP-arch-DeviceArchitecture-v2.0 UPnP-av-AVArchitecture-v1 UPnP-av-AVArchitecture-v2
DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA DLNA ...
dlna协议中的upnp部分,c++代码,android开发的引用库函数。
基于uPnP协议在DLNA架构中多媒体播放设备DMP的开发
在android环境下,使用UPnP发现设备,实现DLNA
UPnP-DLNA学习
上次上传的是upnp源码,忘记上传参考文档,由于上传只能上传60M,文档比较大分三次上传,这个命名为参考资料1,希望大家喜欢,upnp的源码资源名称为DLNA数字生活网络联盟,大小为14.99MB
通用UPnP、DLNA安卓播放器是一套关于家庭互联的项目源码,首先设备需要在一个局域网中,才能通过uPnP/Dlna服务可以实现设备间的点播交互,就像通过局域网你可以连接到你的智能电视上并且让你智能电视里面的某个视频...
上次上传的是upnp源码,忘记上传参考文档,由于上传只能上传60M,文档比较大分三次上传,这个命名为参考资料3,希望大家喜欢,upnp的源码资源名称为DLNA数字生活网络联盟,大小为14.99MB
UPnP编程指南,教你如何编程 UPnP编程指南,教你如何编程. UPnP编程指南,教你如何编程 UPnP编程指南,教你如何编程 UPnP编程指南,教你如何编程
UPnP的一个中文版参考指南。可以更快了解UPnP,进一步去学习DLNA,最终实现android多屏功能。适合初学者
通用媒体服务器 通用媒体服务器是兼容DLNA的UPnP媒体服务器。 它能够在大多数现代设备之间共享视频,音频和图像。 它最初是由shagrath基于PS3 Media Server来确保更大的稳定性和文件兼容性的。 要查看流行媒体服务器...
讲述DLNA的概念,架构,认证,设备模型,设备功能等