发明内容
本发明提供一种安全控制方法和设备,以在监控系统中实现安全控制。
为了达到上述目的,本发明提供一种安全控制方法,应用于包括视频客户端VC、接入设备、视频管理VM服务器和流媒体服务器MS的监控系统中,该方法包括:
所述接入设备接收来自所述VC的注册请求消息,并将所述注册请求消息发送给所述VM服务器;在所述VC注册成功时,所述接入设备接收所述VM服务器返回的注册成功消息,所述注册成功消息中携带所述VM服务器为所述VC分配的业务标签信息;所述接入设备记录所述VC的IP地址、所述VC的MAC地址、所述接入设备上所述注册请求消息的接收端口、所述业务标签信息的对应关系;
所述接入设备接收所述MS发送给所述VC的数据,所述数据中携带所述VM服务器为所述VC分配的业务标签信息、以及所述VC的IP地址;当所述数据中携带的业务标签信息和IP地址在所述对应关系中有相匹配的记录时,所述接入设备通过所述业务标签信息和IP地址所对应的MAC地址和接收端口将所述数据发送给所述VC;否则,所述接入设备丢弃所述数据。
所述数据具有两层IP头,且所述数据的内层IP头的目的IP地址为所述VC的IP地址,所述数据的外层IP头的目的IP地址为所述接入设备的地址;
当所述接入设备从所述数据的外层IP头中获知目的IP地址为自身的地址时,所述接入设备在剥掉外层IP头后,从剥掉外层IP头后的数据中获得所述VM服务器为所述VC分配的业务标签信息、以及所述VC的IP地址。
所述接入设备将所述注册请求消息发送给所述VM服务器,之后还包括:
当所述接入设备接收到所述VM服务器返回的注册成功消息时,所述接入设备允许所述VC与所述VM服务器之间通过所述接收端口进行数据传输;
当所述接入设备未接收到所述VM服务器返回的注册成功消息时,所述接入设备禁止通过所述接收端口转发来自所述VC的数据。
在所述接入设备接收到所述VM服务器返回的注册成功消息之前,所述接入设备仅允许通过所述接收端口向所述VM服务器转发来自所述VC的注册请求消息;在所述接入设备禁止通过所述接收端口转发来自所述VC的数据之后,所述接入设备禁止通过所述接收端口向所述VM服务器转发来自所述VC的注册请求消息。
所述接入设备未接收到所述VM服务器返回的注册成功消息,具体包括:
所述接入设备在向所述VM服务器发送预设次数的注册请求消息后未接收到所述VM服务器返回的注册成功消息,和/或,在预设时间内未接收到所述VM服务器返回的注册成功消息,所述接入设备确认未接收到所述VM服务器返回的注册成功消息。
所述接入设备记录所述VC的IP地址、所述VC的MAC地址、所述接入设备上所述注册请求消息的接收端口、所述业务标签信息的对应关系,之后还包括:
所述接入设备接收来自所述VM服务器的Label回收消息,所述Label回收消息中携带所述VM服务器为所述VC分配的业务标签信息;并删除自身记录的所述业务标签信息所对应的对应关系。
一种安全控制方法,应用于包括视频客户端VC、接入设备、视频管理VM服务器和流媒体服务器MS的监控系统中,该方法包括:
所述VM服务器接收所述接入设备转发的来自所述VC的注册请求消息;在所述VC注册成功时,为所述VC分配业务标签信息,并通过所述接入设备向所述VC发送注册成功消息,所述注册成功消息中携带所述业务标签信息;由所述接入设备记录所述VC的IP地址、所述VC的MAC地址、所述接入设备上所述注册请求消息的接收端口、所述业务标签信息的对应关系;
所述VM服务器接收所述接入设备转发的来自所述VC的点播请求消息;在允许所述VC点播数据时,所述VM服务器将所述VC的IP地址以及为所述VC分配的所述业务标签信息通知给所述MS;由所述MS向所述接入设备发送携带所述业务标签信息以及所述VC的IP地址的数据。
在向所述MS通知所述VC的IP地址以及所述业务标签信息时,所述VM服务器将所述接入设备的地址通知给所述MS,由所述MS发送目的IP地址为所述接入设备的地址的数据,所述数据具有两层IP头,且所述数据的内层IP头的目的IP地址为所述VC的IP地址,所述数据的外层IP头的目的IP地址为所述接入设备的地址。
所述VM服务器通过所述接入设备向所述VC发送注册成功消息,之后还包括:
当VC离线或主动下线后,所述VM服务器向所述接入设备发送Label回收消息,所述Label回收消息中携带所述VM服务器为所述VC分配的业务标签信息。
一种安全控制方法,应用于包括视频客户端VC、接入设备、视频管理VM服务器和流媒体服务器MS的监控系统中,该方法包括:
所述MS接收来自所述VM服务器的通告消息,所述通告消息中携带所述VC的IP地址以及所述VM服务器为所述VC分配的业务标签信息;
所述MS通过所述接入设备向所述VC发送数据时,所述数据中携带所述业务标签信息以及所述VC的IP地址。
所述通告消息中还携带所述接入设备的地址;在向所述VC发送数据时,所述数据具有两层IP头,且所述数据的内层IP头的目的IP地址为所述VC的IP地址,所述数据的外层IP头的目的IP地址为所述接入设备的地址。
一种接入设备,应用于包括视频客户端VC、所述接入设备、视频管理VM服务器和流媒体服务器MS的监控系统中,该设备包括:
注册请求消息传输模块,用于接收来自所述VC的注册请求消息,并将所述注册请求消息发送给所述VM服务器;
注册成功消息传输模块,用于在所述VC注册成功时,接收所述VM服务器返回的注册成功消息,所述注册成功消息中携带所述VM服务器为所述VC分配的业务标签信息;
对应关系管理模块,用于记录所述VC的IP地址、MAC地址、接入设备上所述注册请求消息的接收端口、所述业务标签信息的对应关系;
数据处理模块,用于接收所述MS发送给所述VC的数据,所述数据中携带所述VM服务器为所述VC分配的业务标签信息、以及所述VC的IP地址;
并当所述数据中携带的业务标签信息和IP地址在所述对应关系中有相匹配的记录时,通过所述业务标签信息和IP地址所对应的MAC地址和接收端口将所述数据发送给所述VC;否则,丢弃所述数据。
所述数据具有两层IP头,且所述数据的内层IP头的目的IP地址为所述VC的IP地址,所述数据的外层IP头的目的IP地址为所述接入设备的地址;
所述数据处理模块,还用于当从所述数据的外层IP头中获知目的IP地址为自身的地址时,在剥掉外层IP头后,从剥掉外层IP头后的数据中获得所述VM服务器为所述VC分配的业务标签信息、以及所述VC的IP地址。
还包括:注册管理模块,用于当接收到所述VM服务器返回的注册成功消息时,允许所述VC与所述VM服务器之间通过所述接收端口进行数据传输;当未接收到所述VM服务器返回的注册成功消息时,禁止通过所述接收端口转发来自所述VC的数据。
所述注册管理模块,还用于在接收到所述VM服务器返回的注册成功消息之前,仅允许通过所述接收端口向所述VM服务器转发来自所述VC的注册请求消息;在禁止通过所述接收端口转发来自所述VC的数据之后,禁止通过所述接收端口向所述VM服务器转发来自所述VC的注册请求消息。
所述注册管理模块,进一步用于在向所述VM服务器发送预设次数的注册请求消息后未接收到所述VM服务器返回的注册成功消息,和/或,在预设时间内未接收到所述VM服务器返回的注册成功消息,确认未接收到所述VM服务器返回的注册成功消息。
还包括:回收消息传输模块,用于接收来自所述VM服务器的Label回收消息,所述Label回收消息中携带所述VM服务器为所述VC分配的业务标签信息;
所述对应关系管理模块,还用于删除自身记录的所述业务标签信息所对应的对应关系。
一种视频管理VM服务器,应用于包括视频客户端VC、接入设备、所述VM服务器和流媒体服务器MS的监控系统中,该VM服务器包括:
注册请求消息传输模块,用于接收所述接入设备转发的来自所述VC的注册请求消息;
业务标签信息分配模块,用于在所述VC注册成功时,为所述VC分配业务标签信息;
注册成功消息传输模块,用于通过所述接入设备向所述VC发送注册成功消息,所述注册成功消息中携带所述业务标签信息;由所述接入设备记录所述VC的IP地址、所述VC的MAC地址、所述接入设备上所述注册请求消息的接收端口、所述业务标签信息的对应关系;
点播请求消息传输模块,用于接收所述接入设备转发的来自所述VC的点播请求消息;
业务标签信息传输模块,用于在允许所述VC点播数据时,将所述VC的IP地址以及为所述VC分配的所述业务标签信息通知给所述MS;由所述MS向所述接入设备发送携带所述业务标签信息以及所述VC的IP地址的数据。
所述业务标签信息传输模块,还用于在向所述MS通知所述VC的IP地址以及所述业务标签信息时,将所述接入设备的地址通知给所述MS,由所述MS发送目的IP地址为所述接入设备的地址的数据,所述数据具有两层IP头,且所述数据的内层IP头的目的IP地址为所述VC的IP地址,所述数据的外层IP头的目的IP地址为所述接入设备的地址。
还包括:回收消息传输模块,用于当VC离线或主动下线后,向所述接入设备发送Label回收消息,所述Label回收消息中携带所述VM服务器为所述VC分配的业务标签信息。
一种流媒体服务器MS,应用于包括视频客户端VC、接入设备、视频管理VM服务器和所述MS的监控系统中,该MS包括:
接收模块,用于接收来自所述VM服务器的通告消息,所述通告消息中携带所述VC的IP地址以及所述VM服务器为所述VC分配的业务标签信息;
发送模块,用于通过所述接入设备向所述VC发送数据时,所述数据中携带所述业务标签信息以及所述VC的IP地址。
所述通告消息中还携带所述接入设备的地址;在所述发送模块向所述VC发送数据时,所述数据具有两层IP头,且所述数据的内层IP头的目的IP地址为所述VC的IP地址,所述数据的外层IP头的目的IP地址为所述接入设备的地址。
与现有技术相比,本发明至少具有以下优点:接入设备通过记录业务标签信息、VC的IP地址和MAC(MediaAccess Control,介质访问控制)地址、以及VC与接入设备连接的端口之间的对应关系,在接收到来自MS的数据时,只有当数据中携带的业务标签信息匹配该对应关系时,才会利用MAC地址和端口转发数据给VC;由于客户端感知不到业务标签信息,无法伪造数据,从而可以保证监控业务数据的安全性,使得网络中仅出现合法的监控业务数据流,最大限度的提高网络带宽的利用率;而且从网络协议层面来控制监控业务数据流,接入层安全,高效、简洁且安全,不需要安全控制服务器,即可以在监控业务接入层,保证监控业务数据流的安全性。
具体实施方式
本发明提出一种安全控制方法,该方法应用于包括接入设备(如接入交换机、路由器等)、VC、MS和VM服务器的监控系统中,该接入设备与VC之间为直接连接,如图2所示,该安全控制方法包括以下步骤:
步骤201,VC向接入设备发送注册请求消息,该注册请求消息的目的地址为VM服务器,且用于到VM服务器上进行注册。
步骤202,接入设备接收来自VC的注册请求消息,并将注册请求消息发送给VM服务器。
本发明中,在VC未注册成功之前,接入设备需要在与VC直连的端口(该端口为接入层端口,如端口P)上监听注册请求消息,并当在端口P上监听到注册请求消息后,将注册请求消息发送给VM服务器。需要注意的是,在VC未注册成功之前(即接入设备接收到VM服务器返回的注册成功消息之前),接入设备默认仅允许向VM服务器转发通过端口P接收到的来自VC的注册请求消息;对于端口P上接收到的其他类型的报文,接入设备均直接丢弃。
进一步的,当监听到注册请求消息后,在将注册请求消息发送给VM服务器时,接入设备还需要将自身的设备ID(一般为接入设备的环回口IP地址或管理口IP地址)和注册请求消息的接收端口信息(即端口号P)添加到注册请求消息的相应字段中。
步骤203,VM服务器接收来自接入设备的注册请求消息,并在VC注册成功时,为VC分配业务标签信息,以及通过接入设备向VC发送注册成功消息,该注册成功消息中携带上述分配的业务标签信息。
具体的,VM服务器在接收到注册请求消息后,需要利用该注册请求消息实现对VC的注册,并在注册成功时返回注册成功消息,否则返回注册失败消息或不返回消息。其中,在注册成功时,VM服务器还需要为VC分配业务标签信息(每个VC对应唯一的业务标签信息,即Label信息);此外,VM服务器还需要记录注册请求消息中携带的接入设备ID信息(即接入设备的地址信息)以及接入接口信息等,以便后续过程中使用。
步骤204,接入设备接收VM服务器返回的注册成功消息,并记录VC的IP地址、MAC地址、注册请求消息的接收端口、及业务标签信息的对应关系。
具体的,在VC注册成功时,接入设备可以接收到VM服务器返回的注册成功消息,该注册成功消息中携带了VM服务器为VC分配的业务标签信息;之后,接入设备可以记录VC的IP地址、VC的MAC地址、接入设备上注册请求消息的接收端口(端口P)、以及业务标签信息的对应关系,如表1所示的一种对应关系示意情况。
表1
Index |
IPAdd |
Mac Add |
Port |
Label |
1 |
192.1.0.1 |
0000-0011-2233 |
G1/0/1 |
10000 |
2 |
192.1.0.10 |
0000-0011-2244 |
G1/0/3 |
20000 |
3 |
192.1.0.100 |
0000-0011-2255 |
G1/0/4 |
30000 |
本发明中,基于VM服务器对VC的注册情况,可以有注册成功和不成功等两种情况,其中:
(1)当接入设备接收到VM服务器返回的注册成功消息时,接入设备允许VC与VM服务器之间通过上述接收端口进行数据传输;即接入设备将注册成功消息中携带的安全配置信息下发到注册请求消息的接收端口(即端口P),以利用安全配置信息允许VC通过该接收端口与VM服务器之间实现双向监控通信。该安全配置信息为允许VC通过端口P与VM服务器之间实现双向监控通信,且VM服务器返回的注册成功消息中会携带该安全配置信息。
具体的,在注册成功消息中还需要携带设备ID和接收端口信息,在接入设备接收到VM服务器返回的注册成功消息时,接入设备检查注册成功消息中携带的设备ID和接收端口信息是否正确;如果是,则接入设备将安全配置信息下发到端口P,从而仅允许VC与VM服务器之间的双向监控通信,其他无关通信或者恶意攻击信息均无法通过该接入设备进行转发;否则,接入设备直接丢弃注册成功消息,此时不将安全配置信息下发到端口P。
需要说明的是,由于在VC未注册成功之前,接入设备默认仅允许向VM服务器转发通过端口P接收到的来自VC的注册请求消息;因此,在接入设备将注册成功消息中携带的安全配置信息下发到端口P之前,接入设备仅允许通过端口P向VM服务器转发来自VC的注册请求消息;在接入设备将注册成功消息中携带的安全配置信息下发到端口P之后,接入设备允许通过端口P向VM服务器转发来自VC的其他类型的信息。
(2)当接入设备未接收到VM服务器返回的注册成功消息时(如接收到注册失败消息或未接收到返回的任何消息),接入设备确定VC为非法接入客户端,并禁止通过接收端口转发来自VC的数据。需要注意的是,在禁止通过端口P转发来自VC的信息之后,则接入设备也将禁止通过端口P向VM服务器转发来自VC的注册请求消息,此时不会转发来自VC的任何信息。
具体的,接入设备在向VM服务器发送预设次数(例如预设次数为经验值5次,实际应用中还可以进行调整)的注册请求消息后未接收到VM服务器返回的注册成功消息,和/或,在预设时间(例如预设时间为经验值120s,实际应用中还可以进行调整)内未接收到VM服务器返回的注册成功消息,则接入设备确认未接收到VM服务器返回的注册成功消息。
例如,接入设备在连续向VM服务器发送5次注册请求消息后,均未接收到VM服务器返回的注册成功消息,则确认未接收到VM服务器返回的注册成功消息;或者,接入设备在120s内均未接收到VM服务器返回的注册成功消息,则确认未接收到VM服务器返回的注册成功消息;或者,接入设备在连续向VM服务器发送5次注册请求消息后,如果在120s内均无法接收到VM服务器返回的注册成功消息(即注册ACK消息),则确认未接收到VM服务器返回的注册成功消息。
本发明中,在确认未接收到VM服务器返回的注册成功消息后,接入设备确定端口P进入注册静默阶段(该阶段禁止转发任何注册报文或业务数据),即认为VC为非法接入客户端(VM服务器中无此VC或VC与VM服务器的通信故障),因此避免了恶意攻击监控系统或无故耗用带宽资源的问题。进一步的,在接入设备禁止通过端口P向VM服务器转发来自VC的注册请求消息之后,只有当达到预设时间(如等待静默定时器超时,该等待静默定时器在向VM服务器发送注册请求消息时启动)或者接收到VM服务器返回的注册成功消息时,注册静默阶段才能结束,之后,接入设备允许通过端口P向VM服务器转发来自VC的注册请求消息。
需要说明的是,上述处理是针对注册阶段的处理过程,在点播阶段中,在VC注册成功后,本发明提供的安全控制方法还可以包括以下步骤:
步骤205,VC通过接入设备向VM服务器发送点播请求消息,VM服务器接收接入设备转发的来自VC的点播请求消息。
具体的,VC在注册成功后可与VM服务器进行通信,当VC需要查看某路单播实况或回放存储录像时,则VC会向VM服务器发送请求查看数据的点播请求消息(即业务请求消息)。
步骤206,VM服务器通过接入设备向VC发送业务应答消息,并向MS发送通告消息。
具体的,在接收到点播请求消息后,VM服务器审核该点播请求消息(如检查点播请求消息所携带的接入设备ID和入接口信息是否正确,以确定VC是否有查看某路单播实况或回放存储录像的权限),如在允许查看权限范围内,VM服务器向VC回应业务应答消息,该业务应答消息中携带MS的地址信息(业务应答消息中还可携带VM服务器为VC分配的业务标签信息),之后,VC收到业务应答消息后,根据消息中携带的信息开放相应的端口。否则(如所携带的接入设备ID和入接口信息错误),回应监控业务点播失败消息,该消息中携带的错误码为接入设备ID不一致,之后,VC收到该监控业务点播失败消息后将重新发起注册流程,即注册更新接入设备ID和入接口信息。
此外,由于VC查看某路单播实况或回放存储录像时,数据均需要通过MS进行转发,因此,在VM服务器允许VC点播数据时,VM服务器还需要通过通告消息将VC的IP地址以及为VC分配的业务标签信息通知给MS,该通告消息中还可以携带其他的信息(如VC的端口等)。例如,VM服务器为VC1分配的业务标签为10000时,则对于MS向VC1发送的数据,VM服务器需要将业务标签信息10000通知给MS。
步骤207,MS通过接入设备向VC发送携带业务标签信息的数据。
具体的,MS在接收到来自VM服务器的通告消息后,由于该通告消息中携带了VC的IP地址以及VC所对应的业务标签信息,因此MS可以利用该VC的IP地址向VC发送携带该业务标签信息的数据(即数据中携带业务标签信息以及VC的IP地址)。
需要说明的是,本发明中,MS发送给VC的数据需要在接入设备上进行处理,一种优选的通知接入设备对数据进行处理的方式为:
在MS确定了发送给VC的数据(数据的目的IP地址为VC的IP地址,且数据中携带VC所对应的业务标签信息)后,在数据1上重新封装一层IP头,得到封装后的数据,该IP头的目的IP地址为接入设备的IP地址;基于此,VM服务器在发送通告消息时,该通告消息中还需要携带接入设备的地址(可以为接入设备的IP地址);因此,在MS向VC发送数据时,数据具有两层IP头,且数据的内层IP头的目的IP地址为VC的IP地址,数据的外层IP头的目的IP地址为接入设备的IP地址。
具体的,MS在接收到来自VM服务器的通告消息后,利用VC的IP地址、接入设备的IP地址、VC所对应的业务标签信息,将需要转发的数据的目的IP地址封装为VC的IP地址,并打上对应的业务标签信息;之后在重新封装一层IP头,IP头的目的IP地址为接入设备的IP地址。
步骤208,接入设备接收MS发送给VC的数据,该数据中携带VM服务器为VC分配的业务标签信息、以及VC的IP地址。
步骤209,当数据中携带的业务标签信息和IP地址在对应关系中有相匹配的记录时,接入设备通过MAC地址和接收端口(即业务标签信息和IP地址所对应的MAC地址和接收端口)将数据发送给VC;否则,接入设备确定接收到的数据为非法数据,并丢弃该数据。
本发明中,在接入设备接收到数据后,当接入设备从数据的外层IP头中获知目的IP地址为自身的地址时,则接入设备获知自身需要对该数据进行处理(即判断是否可以转发该数据给VC);之后,接入设备在剥掉外层IP头后,从剥掉外层IP头后的数据中获得VM服务器为VC分配的业务标签信息、以及VC的IP地址,并利用业务标签信息和IP地址查询表1所示的对应关系,当查询结果为对应关系中有相匹配的记录时,则通过该对应关系中的MAC地址和接收端口将数据发送给VC。例如,数据中携带的业务标签信息为10000,携带的VC的IP地址为192.1.0.1时,则有相匹配的记录,且接入设备需要通过0000-0011-2233和G1/0/1将剥掉外层IP头后的数据发送给VC。
本发明中,当VC离线或主动下线后,VM服务器将感知VC故障,并向接入设备发送Label回收消息(即VM服务器根据所记录的该VC所直连的接入设备的ID信息向接入设备发送Label回收消息),该Label回收消息中携带VM服务器为VC分配的业务标签信息。之后,接入设备接收来自VM服务器的Label回收消息,并删除自身记录的该业务标签信息所对应的对应关系;基于此,在接收到该业务标签信息所对应的数据后,接入设备将不会进行转发,从而保证监控系统的安全性。此外,如果VC的接入接口Down掉,则在直连的接入设备的Label表项Hold定时器超时后,同样需要删除该Label表项(即表1所示)。
综上所述,本发明中,由于客户端感知不到业务标签信息,无法伪造数据,从而可以保证监控业务数据的安全性,使得网络中仅出现合法的监控业务数据流,最大限度的提高网络带宽的利用率,有效防治IP网络中的恶意用户攻击监控系统,从而造成监控系统崩溃的问题;且保证无权限用户或弱权限用户无法绕开监控应用系统层的认证监听窃取高权限监控数据,从而避免造成监控信息泄露。
此外,根据监控系统应用层的权限认证和为数据流分配标签,将接入层设备的网络协议层标签转发功能与监控系统应用层进行联动控制业务组播流、单播流、或数据报文的发送和接收,从网络协议层面来控制监控业务数据流,接入层安全,高效、简洁且安全,不需要安全控制服务器,即可以在监控业务接入层,保证监控业务数据流的安全性。
以下结合图1所示的监控系统对本发明进行进一步的说明。假设VC1(IP地址为192.0.0.10)所连接入设备(即交换机)为SW1(设备ID一般设为Loopback口IP地址1.0.0.1),所直连的接入设备的接入端口为P1,MS1(IP地址:100.0.0.10)所连交换机为SW2。则:
(1)注册阶段。
VC1向VM服务器发送注册请求消息,SW1收到注册请求消息后(其他数据均丢弃不处理),在注册请求消息中填入自身的设备ID信息1.0.0.1和接入端口信息P1,并将注册请求消息继续向VM服务器转发,启动注册定时器。
VM服务器收到该注册请求消息后,检查该注册请求消息是否合法,如为合法注册请求消息(即VC的注册过程合法,允许VC通过注册),则将注册请求消息中所携带的设备ID信息1.0.0.1和接入端口信息P1记录下来,同时向VC回应注册成功消息(该注册成功消息中携带VM服务器为VC分配的Label信息);否则,向VC回应注册失败消息。
如果VC直连的接入设备在注册定时器1分钟超时之前,监听到VM服务器发送的注册成功消息,则记录该VC对应的Label信息、该VC的IP地址、该VC的MAC地址、以及直连接口P1端口之间的对应关系,如表2所示;并将直连接口P1端口设为信任端口,允许VC与VM服务器之间的通信。
Index |
IPAdd |
Mac Add |
Port |
Label |
1 |
192.0.0.10 |
0000-0011-2233 |
P1 |
10000 |
如果注册定时器超过1分钟,即超时后仍没有收到注册成功消息,则SW1可将P1端口设为注册静默端口。
(2)点播阶段。
VM服务器在接收到来自VC1的点播请求消息(即监控业务点播请求消息)后,检查VC1是否有权限查看所请求的业务实况,如果没有权限查看所请求的业务实况,则VM服务器直接向VC1回应监控业务点播失败消息;如果在允许查看权限范围内,则VM服务器可以向VC1客户端回应请求成功消息,该请求成功消息中携带VM服务器为业务流所分配的转发MS目的IP地址100.0.0.10和端口信息40000。之后,VC1收到回应消息后,检查该回应消息是否为业务点播成功应答,如为点播失败应答的信息,则检查失败错误码;如为业务点播成功应答的信息,则开放对应的业务接收端口为40000。
此外,由于VC业务点播和录像回放均通过MS进行转发,因此,VM服务器还需要将该业务流所对应信息通过通告消息发送给MS1;该通告消息中携带VC1的IP地址192.0.0.10、对应的设备ID信息1.0.0.1和Label值10000,以及VM服务器为该业务流分配的端口40000。
MS1在收到监控业务点播的通告消息后,检查该通告消息的合法性,以及本地资源是否支持该业务转发,如均无异常则回应点播成功消息,并建立对应的业务流转发表项,以及将对应的业务流打上标签值10000;之后加封装一层IP头,且该IP头的目的地址为通告消息中携带的设备ID信息1.0.0.1;之后MS1将加封装一层IP头后的数据向VC侧进行转发。
SW1收到该业务流后,判断目的IP地址为自身的设备ID信息后,剥掉外层IP头,然后根据内层所携带的标签值10000以及IP地址192.0.0.10查找注册阶段所建立的表项,根据查找到的端口信息P1端口和对应的MAC地址0000-0011-2233进行业务流的转发。
(3)回收阶段。
VC1下线时向VM服务器发送下线请求,VM服务器收到后发送应答消息,且向VC1的直连接入设备SW1发送Label 10000的回收消息;SW1收到Label 10000的回收消息后,将Label为10000的信息从表项中删除。此外,如果VC1直连端口P1接口Down时,SW1的Label表项Hold定时器3分钟超时后,也需要从表项中删除相关信息。
基于与上述方法同样的发明构思,本发明还提出了一种接入设备,应用于包括视频客户端VC、所述接入设备、视频管理VM服务器和流媒体服务器MS的监控系统中,如图3所示,该接入设备包括:
注册请求消息传输模块11,用于接收来自所述VC的注册请求消息,并将所述注册请求消息发送给所述VM服务器;
注册成功消息传输模块12,用于在所述VC注册成功时,接收所述VM服务器返回的注册成功消息,所述注册成功消息中携带所述VM服务器为所述VC分配的业务标签信息;
对应关系管理模块13,用于记录所述VC的IP地址、MAC地址、接入设备上所述注册请求消息的接收端口、所述业务标签信息的对应关系;
数据处理模块14,用于接收所述MS发送给所述VC的数据,所述数据中携带所述VM服务器为所述VC分配的业务标签信息、以及所述VC的IP地址;并当所述数据中携带的业务标签信息和IP地址在所述对应关系中有相匹配的记录时,通过所述业务标签信息和IP地址所对应的MAC地址和接收端口将所述数据发送给所述VC;否则,丢弃所述数据。
所述数据具有两层IP头,且所述数据的内层IP头的目的IP地址为所述VC的IP地址,所述数据的外层IP头的目的IP地址为所述接入设备的地址;
所述数据处理模块14,还用于当从所述数据的外层IP头中获知目的IP地址为自身的地址时,在剥掉外层IP头后,从剥掉外层IP头后的数据中获得所述VM服务器为所述VC分配的业务标签信息、以及所述VC的IP地址。
还包括:注册管理模块15,用于当接收到所述VM服务器返回的注册成功消息时,允许所述VC与所述VM服务器之间通过所述接收端口进行数据传输;当未接收到所述VM服务器返回的注册成功消息时,禁止通过所述接收端口转发来自所述VC的数据。
所述注册管理模块15,还用于在接收到所述VM服务器返回的注册成功消息之前,仅允许通过所述接收端口向所述VM服务器转发来自所述VC的注册请求消息;在禁止通过所述接收端口转发来自所述VC的数据之后,禁止通过所述接收端口向所述VM服务器转发来自所述VC的注册请求消息。
所述注册管理模块15,进一步用于在向所述VM服务器发送预设次数的注册请求消息后未接收到所述VM服务器返回的注册成功消息,和/或,在预设时间内未接收到所述VM服务器返回的注册成功消息,确认未接收到所述VM服务器返回的注册成功消息。
还包括:回收消息传输模块16,用于接收来自所述VM服务器的Label回收消息,所述Label回收消息中携带所述VM服务器为所述VC分配的业务标签信息;
所述对应关系管理模块13,还用于删除自身记录的所述业务标签信息所对应的对应关系。
基于与上述方法同样的发明构思,本发明还提出了一种视频管理VM服务器,应用于包括视频客户端VC、接入设备、所述VM服务器和流媒体服务器MS的监控系统中,如图4所示,该VM服务器包括:
注册请求消息传输模块21,用于接收所述接入设备转发的来自所述VC的注册请求消息;
业务标签信息分配模块22,用于在所述VC注册成功时,为所述VC分配业务标签信息;
注册成功消息传输模块,23用于通过所述接入设备向所述VC发送注册成功消息,所述注册成功消息中携带所述业务标签信息;由所述接入设备记录所述VC的IP地址、所述VC的MAC地址、所述接入设备上所述注册请求消息的接收端口、所述业务标签信息的对应关系;
点播请求消息传输模块24,用于接收所述接入设备转发的来自所述VC的点播请求消息;
业务标签信息传输模块25,用于在允许所述VC点播数据时,将所述VC的IP地址以及为所述VC分配的所述业务标签信息通知给所述MS;
由所述MS向所述接入设备发送携带所述业务标签信息以及所述VC的IP地址的数据。
所述业务标签信息传输模块25,还用于在向所述MS通知所述VC的IP地址以及所述业务标签信息时,将所述接入设备的地址通知给所述MS,由所述MS发送目的IP地址为所述接入设备的地址的数据,所述数据具有两层IP头,且所述数据的内层IP头的目的IP地址为所述VC的IP地址,所述数据的外层IP头的目的IP地址为所述接入设备的地址。
还包括:回收消息传输模块26,用于当VC离线或主动下线后,向所述接入设备发送Label回收消息,所述Label回收消息中携带所述VM服务器为所述VC分配的业务标签信息。
基于与上述方法同样的发明构思,本发明还提出了一种流媒体服务器MS,应用于包括视频客户端VC、接入设备、视频管理VM服务器和所述MS的监控系统中,如图5所示,该MS包括:
接收模块31,用于接收来自所述VM服务器的通告消息,通告消息中携带所述VC的IP地址以及所述VM服务器为所述VC分配的业务标签信息;
发送模块32,用于通过所述接入设备向所述VC发送数据时,所述数据中携带所述业务标签信息以及所述VC的IP地址。
所述通告消息中还携带所述接入设备的地址;在所述发送模块32向所述VC发送数据时,所述数据具有两层IP头,且所述数据的内层IP头的目的IP地址为所述VC的IP地址,所述数据的外层IP头的目的IP地址为所述接入设备的地址。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。