UPNP的工作流程


1.寻址。 DHCP 或AUtoIP
2.发现.
当设备接入网络,设备向网络上的CP通知自己的服务,同样,如果CP被添加到网络上,cp会搜索网络上的可用设备。要注意设备信息和服务信息都是要组播出去的。
SSDP(Simple Service Discovery Protocol,简单服务发现协议),说明设备是怎样向网络通知或者撤销自己可以提供的服务;CP是如何搜索设备以及设备是如何回应搜索的。

SSDP介绍:向网络通告自己的服务。采用UDP传输,没有消息体,其他类似http头
ssdp包含几个信息:
a.NOTIFY 说明是一个通知消息
b.目的地址HOST(HOST: 239.255.255.250:1900)
c.其他字段


3.描述
CP想要一个device更详细的信息,就打给它的URL跟它要。
描述分为两部分:一个是device description,是device的物理描述,就是说这个device是什么;还有一个是service descriptions,就是device的服务描述了,就是device能干些什么。

4.控制
设备描述部分,device description还有关于如何控制device的描述,会给出一个Control URL,CP可以向这个URL发送不同的控制信息就可以控制device了,然后device也可以返回一个信息反馈。
CP和device之间沟通信息按照Simple Object Access Protocol (SOAP)的格式来写,SOAP通过HTTP来传。

5.事件
变量值发生了变化或者模式的状态发生了改变,就产生了一个事件,该事件服务提供者(某设备的某个服务)会把该事件向整个网络进行多播(multicast)。而且,CP也可以事先向事件服务器订阅事件信息,就像RSS订阅一样,保证将该CP感兴趣的事件及时准确地单播传送过来(unicast)。

事件的订阅和推送这块用的通信协议是GENA(General Event Notification Architecture) ,通过HTTP/TCP/IP传送。

订阅过程:
a.订阅。subscriber发送订阅消息主要包含事件URL(evenURL),服务ID号(service identifier),这两个可以在设备服务描述信息中找到,以及寄送地址(delivery URL)。还会包含一个订阅期限(duration)。
b.成功订阅。publisher收到订阅信息,如果同意订阅的话就会为每个新subscriber 生成一个唯一的subscriber identifier并记录subscriber 的duration和delivery URL。
c.首次推送。订阅同意订阅之后还会向subscriber发送一组初始变量或状态值,进行首次同步。
d.续订。subscriber必须在订阅到期前发送renewal续订。
e.订阅到期。订阅到期后publisher会把subscriber的信息删除,subscriber又回到订阅前的状态。
f.退订。subscriber发送cancel信息将会取消订阅。subscriber因非正常退出网络的话,则不会退订直到订阅到期。
g.订阅操作失败信息。当订阅、续订和退订不能被publisher接收或者出现错误时,publisher会发送一个错误代码。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值