Archive for the ‘学习’ Category

学习资料收集 uPnP

Thursday, August 2nd, 2007

Windows XP中的uPnP:  http://www.microsoft.com/china/windowsxp/pro/techinfo/planning/upnp/protocol.mspx

SSDP
顾名思义,简单服务发现协议 (SSDP) 定义了网络服务是如何在网络上被发现的。SSDP 基于 HTTPU 和 HTTPMU 创建,定义了控制点定位网络上感兴趣的资源和设备通知它们在网络上的可用性的方法。通过定义同时使用搜索请求和展示通知,SSDP 避免了在仅使用这两种机制中的任一种时所必需的开销。这样,网络中的每个控制点都可以获得关于网络状态的完整信息,同时保持了低水平的网络流量。

访问点和设备都可以使用 SSDP。UPnP 访问点启动后可以发送 SSDP 搜索请求(通过 HTTPMU)来发现网络上可用的设备和服务。访问点可以细化该搜索,从而仅查找特定类型的设备(如 VCR)、特定服务(如具有时钟服务的设备)乃至特定设备。

UPnP 设备会侦听多播端口。一旦收到搜索请求,该设备就检查该搜索条件以确定它们是否匹配。如果匹配,一个单播 SSDP(通过 HTTPU)响应将被发送到该控制点。

同样,当将设备插入网络时,它会发出多播 SSDP 展示通知消息,通知它所支持的服务。

在展示通知和单播设备响应消息中都包含该设备描述文档(含有该设备支持的属性和服务组合的信息)所在位置的指示符。

除了提供发现功能外,SSDP 还提供了设备及其关联的服务适当地从网络离开的方式(再见通知),并包含清除陈旧信息的缓存超时设置来进行自我维护。

一个SSDP数据报文的例子:

0000  01 00 5e 7f ff fa 00 1a  70 fb 91 29 08 00 45 00   ..^….. p..)..E.
0010  01 56 00 00 40 00 01 11  c6 f3 c0 a8 01 01 ef ff   .V..@… ……..
0020  ff fa 0c 01 07 6c 01 42  28 de 4e 4f 54 49 46 59   …..l.B (.NOTIFY
0030  20 2a 20 48 54 54 50 2f  31 2e 31 0d 0a 48 4f 53    * HTTP/ 1.1..HOS
0040  54 3a 20 32 33 39 2e 32  35 35 2e 32 35 35 2e 32   T: 239.2 55.255.2
0050  35 30 3a 31 39 30 30 0d  0a 43 41 43 48 45 2d 43   50:1900. .CACHE-C
0060  4f 4e 54 52 4f 4c 3a 20  6d 61 78 2d 61 67 65 3d   ONTROL:  max-age=
0070  31 33 30 0d 0a 4c 4f 43  41 54 49 4f 4e 3a 20 68   130..LOC ATION: h
0080  74 74 70 3a 2f 2f 31 39  32 2e 31 36 38 2e 31 2e   ttp://19 2.168.1.
0090  31 3a 32 38 36 39 2f 67  61 74 65 64 65 73 63 2e   1:2869/g atedesc.
00a0  78 6d 6c 0d 0a 4e 54 3a  20 75 72 6e 3a 73 63 68   xml..NT:  urn:sch
00b0  65 6d 61 73 2d 75 70 6e  70 2d 6f 72 67 3a 73 65   emas-upn p-org:se
00c0  72 76 69 63 65 3a 57 41  4e 49 50 43 6f 6e 6e 65   rvice:WA NIPConne
00d0  63 74 69 6f 6e 3a 31 0d  0a 55 53 4e 3a 20 75 75   ction:1. .USN: uu
00e0  69 64 3a 55 55 49 44 2d  57 41 4e 43 6f 6e 6e 65   id:UUID- WANConne
00f0  63 74 69 6f 6e 44 65 76  69 63 65 2d 31 32 33 34   ctionDev ice-1234
0100  3a 3a 75 72 6e 3a 73 63  68 65 6d 61 73 2d 75 70   ::urn:sc hemas-up
0110  6e 70 2d 6f 72 67 3a 73  65 72 76 69 63 65 3a 57   np-org:s ervice:W
0120  41 4e 49 50 43 6f 6e 6e  65 63 74 69 6f 6e 3a 31   ANIPConn ection:1
0130  0d 0a 4e 54 53 3a 20 73  73 64 70 3a 61 6c 69 76   ..NTS: s sdp:aliv
0140  65 0d 0a 53 45 52 56 45  52 3a 20 4c 69 6e 75 78   e..SERVE R: Linux
0150  2f 32 2e 34 2e 32 30 20  55 50 6e 50 2f 31 2e 30   /2.4.20  UPnP/1.0
0160  0d 0a 0d 0a                                        ….

Close
E-mail It