具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
参见图2a,图2a为本发明实施例提供的基本流程图。如图2a所示,如果第一监控域的用户S发送业务请求至第二监控域,则该流程可包括以下步骤:
步骤201a,所述第一监控域确定所述业务请求至第二监控域的路径上的下一跳。
在多级多域组网中,当下级域上电后,会向其直属上级域发送摄像头列表信息,如果该直属上级域还存在相应的直属上级域,则该直属上级域再将接收的摄像头列表信息以及自身的摄像头列表信息再次发送至其直属的上级域,直至接收到摄像头列表信息的监控域不再存在上级域为止,如此,上级域根据接收的摄像头列表信息即可获知到达各个下级域的路径。比如:如图2b所示,多级多域组网中包含4个监控域,即第一监控域至第四监控域,其中,第一监控域分别为第三监控域和第四监控域的直属上级域,第三监控域为第二监控域的直属上级域,则当第二监控域上电后,其会向直属的上级域即第三监控域发送自身的摄像头列表信息,由于第三监控域还存在直属上级域即第一监控域,则第三监控域还会将接收的摄像头列表信息和自身的摄像头列表信息发送给第一监控域,当第一监控域接收到第三监控域发送的摄像头列表信息时,即可获知到达第二监控域的路径为第一监控域-第三监控域-第二监控域,如此,本步骤201a中,第一监控域确定发送业务请求至第二监控域的路径上的下一跳即为第三监控域。
步骤202a,第一监控域判断自身和下一跳之间的干线为A类干线还是B类干线,如果是A类干线,则执行步骤203a;如果是B类干线,则执行步骤204a。
这里,A类干线为应用于树状组网中的干线,而B类干线为应用于其他组网方式比如网状组网等中的干线。
步骤203a,确定所述第一监控域和所述下一跳之间用于传输该业务请求所请求的数据的干线。之后执行步骤206a。
步骤204a,判断自身是否配置了干线管理策略,如果是,执行步骤205a;否则,直接执行步骤206a。
这里,干线管理策略主要是针对B类干线的,其主要配置在B类干线所对应的上级监控域,比如:如图2b所示,第一监控域发送业务请求至第二监控域的路径为第一监控域-第三监控域-第二监控域,其中,第一监控域为该路径的上级监控域,则如果第一监控域与第三监控域之间的干线为B类干线,而第三监控域与第二监控域之间的干线为A类干线或者B类干线,则干线管理策略配置在B类干线对应的上级监控域即第一监控域上;而如果第一监控域与第三监控域之间的干线为A类干线,第三监控域与第二监控域之间的干线为B类干线,则干线管理策略配置在B类干线对应的上级监控域即第三监控域上。
步骤205a,确定所述第一监控域和所述第二监控域之间用于传输该业务请求所请求的数据的干线。之后执行步骤206a。
步骤206a,第一监控域发送所述业务请求至所述下一跳,如果所述下一跳为第二监控域,则执行步骤207a;如果所述下一跳不为第二监控域,则执行步骤208a。
步骤207a,所述第二监控域利用上述确定的用于传输所述业务请求所请求的数据的干线传输该数据。
步骤208a,将所述下一跳作为第一监控域,返回执行步骤201a。
至此,通过上述步骤实现了本发明实施例提供的流程。
在上述实施例中,所述业务请求具体实现时可包括:实况视频业务请求和回放视频业务请求,其中,针对不同的业务请求本实施例具有不同的实现方式,下面分别对其进行描述。
下面结合具体实施例对本发明所提供的上述方法进行详细描述。图3为本发明实施例提供的详细方法流程图。在该实施例中,如果第一监控域的用户S发送实况视频业务请求至第二监控域,则如图3所示,该流程可以包括以下步骤:
步骤301,第一监控域确定所述实况视频业务请求至第二监控域的路径上的下一跳。
本步骤301中确定下一跳的具体操作可与步骤201a中的描述类似,这里不再赘述。
步骤302,第一监控域判断自身和下一跳之间的干线为B类干线还是A类干线,如果是B类干线,则执行步骤303;如果是A类干线,则执行步骤310。
步骤303,第一监控域判断自身是否配置了干线管理策略,如果是,执行步骤304;否则,执行步骤318。
步骤304,第一监控域判断本监控域中的媒体转发服务器当前是否正在转发所述实况业务请求所请求的实况数据,如果是,执行步骤305;否则,执行步骤306。
步骤305,该媒体转发服务器增加一条分发流,用于传输所述实况视频业务请求所请求的实况数据给所述用户S。
假如步骤304中媒体转发服务器正在给第一监控域中的用户B转发所述实况视频业务请求所请求的实况数据,则执行到本步骤305时,第一监控域中的媒体转发服务器再增加一条分发流,用于发送该实况数据给用户S。也就是说,执行到本步骤305时,用户S直接从媒体转发服务器即可接收到其请求的实况数据,这样,就不需要第二监控域额外利用干线传输用户S请求的实况数据,大大减少了干线利用率。至此,执行到本步骤305时,所述实况视频业务请求成功,结束当前流程。
需要说明的是,本实施例中,在步骤305之前,由于第二监控域已经使用和第一监控域之间的干线(记为干线1)传输所述实况视频业务请求所请求的实况数据给用户B,也就是说,在步骤305之前,该干线1的优先级为用户B的级别,如今执行到本步骤305时,由于该步骤305还将该干线传输的实况数据分发给用户S,则该传输了实况数据的干线1当前的优先级为用户S级别和用户B级别中最高的一个,假如用户S级别大于用户B级别,则干线1的优先级更新为用户S级别。
步骤306,第一监控域判断自身和目的地即第二监控域之间是否存在空闲干线,如果是,执行步骤307,否则,执行步骤308。
本实施例中各个监控域之间进行通信的干线在组网时已根据组网需求配置好了,如此,执行到本步骤306时,第一监控域即可在自身和第二监控域进行通信时所用的所有干线中查找是否存在未被占用即空闲的干线。
步骤307,将空闲干线中的其中一个作为第一监控域和第二监控域之间传输该实况视频业务请求所请求的实况数据的干线,并设置用户S的级别为该干线的优先级。之后,执行步骤318。
执行完本步骤307时,第一监控域和第二监控域之间被使用的干线的个数加1。
步骤308,抢占第一监控域和所述第二监控域之间优先级低于所述用户S级别的干线,如果抢占成功,则执行步骤309;否则,实况视频业务请求失败。
这里,在抢占干线时,优先保留分发流比较多的干线,即抢占优先级比较低、且分发流比较少的干线。
步骤309,断开被抢占干线当前所传输的数据,将该抢占的干线作为所述第一监控域和所述第二监控域之间传输该实况视频业务请求所请求的实况数据的干线,并设置用户S级别为该干线的优先级。之后,执行步骤318。
至此,通过上述步骤303至步骤309实现了第一监控域和下一跳之间的干线为B类干线时的流程。上述步骤303至步骤309适用于实况视频业务请求跨监控域传输或者不跨监控域传输两种情况,其中,跨监控域传输也就是上述步骤301中确定的下一跳不为第二监控域,而不跨监控域传输也就是上述步骤301中确定的下一跳为第二监控域。
需要说明的是,上述确定的第一监控域和所述第二监控域之间传输该实况视频业务请求所请求的实况数据的干线实质上为第一监控域限制自身接收第二监控域发送的数据的带宽即限制入口带宽。
步骤310,第一监控域判断本监控域的媒体转发服务器当前是否正在转发所述实况视频业务请求所请求的实况数据,是则执行步骤311;否则执行步骤312;
步骤311;所述媒体转发服务器增加一条分发流,用于传输所述实况视频业务请求所请求的实况数据给所述用户S。
步骤312,所述第一监控域判断自身和所述下一跳之间是否存在空闲干线,如果是,执行步骤313;否则,执行步骤314。
步骤313,将该空闲干线作为所述第一监控域和所述下一跳之间传输该实况视频业务请求所请求的实况数据的干线,之后执行步骤316。
步骤314,抢占所述第一监控域和所述下一跳之间优先级低于所述用户S级别的干线,如果抢占成功,则执行步骤315;否则,所述实况视频业务请求失败。
步骤315,将该抢占的干线作为所述第一监控域和所述下一跳之间传输该实况视频业务请求所请求的实况数据的干线。之后执行步骤316。
步骤316,判断该确定的所述第一监控域和所述下一跳之间传输该实况视频业务请求所请求的实况数据的干线是否配置了强制转发标志,如果是,执行步骤317;否则,执行步骤318。
之所以设置强制转发标志,主要是为了避免网络地址转换(NAT)策略或者其他一些配置策略所带来的数据传输被阻问题,比如,NAT策略要求内网向外网直接发送数据,而禁止外网直接发送至内网的数据,则如果不设置强制转发标志,则在接收到外网发送来的数据时则阻止该数据,而如果设置了强制转发标志,则即使在上述NAT策略或者其他配置策略阻断数据传输时也能强制转发数据。
步骤317,告知本监控域中的媒体转发服务器强制转发该实况视频业务请求所请求的实况数据。之后,执行步骤318。
也就是说,在后续接收到所述实况视频业务请求所请求的实况数据时,不管当前的数据传输策略如何都能强制转发该实况数据至用户S。
步骤318,第一监控域将实况视频业务请求发送至下一跳。
这里,实况视频业务请求中携带了用户S级别。
步骤319,下一跳判断自身是否为第二监控域,如果是,执行步骤320;否则,执行步骤321。
也就是说,本步骤319中下一跳判断所述实况视频业务请求携带的目的地址是否为自身的地址,如果是,则确定自身为目的地即第二监控域,否则,确定自身不是目的地。
步骤320,利用上述确定的传输所述实况视频业务请求所请求的实况数据的干线传输实况数据至第一监控域即启动所述实况视频业务请求所请求的实况数据。
这里,假如下一跳为目的地,如果目的地内部当前正在处理多条数据流,没有额外的处理资源来处理该实况视频业务请求所请求的实况数据,基于此,本步骤320就需要根据所述实况视频业务请求携带的用户S级别抢占处理资源处理该实况视频业务请求,具体为:抢占数据流级别低于所述实况业务请求携带的用户S级别所占用的处理资源,具体抢占操作可与现有技术类似,这里不再赘述。在抢占成功时,利用上述确定的传输所述实况视频业务请求所请求的实况数据的干线传输实况数据即启动所述实况视频业务请求所请求的实况数据;在抢占失败时,由于没有资源处理该实况视频业务请求,因此,所述实况视频业务请求也失败。至此,结束当前流程。
步骤321,将下一跳作为第一监控域,返回执行步骤301。
也就是说,在下一跳不为第二监控域,比如图2b所示为第三监控域时,该第三监控域按照上述第一监控域的操作进行。其中,第三监控域按照第一监控域的操作执行的过程中,需要第三监控域确定发送所述业务请求至第二监控域的路径上的下一跳,以及判断自身和确定的下一跳之间的干线为A类干线还是B类干线,如果是A类干线,这里,尽管上述步骤中第一监控域已经确定好自身和第二监控域之间传输该实况视频业务请求所请求的实况数据的干线,但是,第三监控域仍然需要确定该第三监控域和自身确定的下一跳之间用于传输所述实况数据的干线,之所以这样,是因为上述确定的第一监控域和所述第二监控域之间传输所述实况数据的干线实质上为第一监控域限制自身接收第二监控域发送的数据的带宽,即限制入口带宽,而A类干线应用于树状组网,属于专线形式,其实质上也为数据传输通道,因此,尽管限制好了上述入口带宽,如果第三监控域和下一跳之间没有数据传输通道传输后续第二监控域发送的所述实况数据,则第一监控域仍然接收不到所述实况数据,为了避免这种情况,第三监控域还需要确定自身和自身确定的下一跳之间用于传输所述实况数据的干线。
而如果是B类干线,由于第一监控域与该第一监控域确定的下一跳即第三监控域之间的干线为B类干线,并且,干线管理策略配置在B类干线所对应的上级监控域,因此,不管第一监控域是否配置了干线管理策略,该第一监控域确定的下一跳即第三监控域(实质上也为第一监控域的下级域)都不会配置干线管理策略,因此,可直接执行步骤418中第一监控域的操作。注意,由于B类干线应用于其他组网方式比如网状组网等,其显然与A类干线的专线形式不同,也即B类干线与数据传输通道无关,基于此,就不需要第三监控域确定自身和自身确定的下一跳之间用于传输所述实况数据的干线,而是直接执行步骤418中第一监控域的操作。
至此,实现了本发明实施例提供的详细流程。
为便于理解,下面以一具体实施例进行描述。
参见图4,图4为本发明实施例提供的多级多域组网结构图。如图4所示,该组网包含4个监控域,即甲域、乙域、丙域和丁域,其中,甲域分别为乙域和丙域的直属上级域,乙域为丁域的直属上级域,并且,甲域和乙域以及丙域之间的干线为应用于网状组网的B类干线,乙域与丁域之间的干线也为应用于网状组网的B类干线。如果甲域中的用户S发送实况视频业务请求至丁域,则首先甲域确定发送该实况视频业务请求的下一跳,这里确定的下一跳为乙域,之后,由于甲域为组网的上级域,且和乙域之间的干线为B类干线,则显然甲域上配置了干线管理策略,基于此,甲域判断本监控域中的媒体转发服务器当前是否正在转发所述实况业务请求所请求的实况数据,如果是,该媒体转发服务器增加一条分发流,用于传输所述实况视频业务请求所请求的实况数据给所述用户S,此时,无需继续下发该实况视频业务请求至乙域,该实况视频业务请求即请求成功;而如果否,则甲域判断自身和丁域之间是否存在空闲干线,如果是,则将空闲干线中的其中一个作为甲域和丁域之间传输该实况视频业务请求所请求的实况数据的干线,并设置用户S的级别为该干线的优先级;否则,抢占甲域和丁域之间优先级低于所述用户S级别的干线,将该抢占的干线作为所述甲域和丁域之间传输该实况视频业务请求所请求的实况数据的干线,并设置用户S的级别为该干线的优先级。之后,发送实况视频业务请求给乙域。由于目的地为丁域,并非为乙域,并且,乙域上没有配置干线管理策略,因此,在乙域和丁域之间的干线为B类干线时,乙域直接将实况视频业务请求发送至丁域,之后,由丁域按照上述步骤321的操作处理该实况视频业务请求。
以上是以实况视频业务请求为例进行描述的。优选地,作为本发明实施例的一种扩展,本发明还可应用于回放视频业务请求时的场景中,下面通过图5所示的流程描述。
参见图5,图5为本发明实施例提供的另一详细流程图。在该流程中,由于回放视频业务请求是用户根据自身需求发送的,多个用户同时需要回放视频业务的可能性不是很大,因此,其并非如实况视频业务那样能够进行实况数据复用,基于此,如果第一监控域的用户S发送回放视频业务请求至第二监控域,则如图5所示,该流程可包括以下步骤:
步骤501,第一监控域确定所述回放视频业务请求至第二监控域的路径上的下一跳。
步骤502,第一监控域判断自身和下一跳之间的干线为B类干线还是A类干线,如果是B类干线,则执行步骤503;如果是A类干线,则执行步骤508。
步骤503,第一监控域判断自身是否配置了干线管理策略,如果是,执行步骤504;否则,执行步骤515。
步骤504,第一监控域判断自身和目的地即第二监控域之间是否存在空闲干线,如果是,执行步骤505,否则,执行步骤506。
步骤505,将空闲干线中的其中一个作为第一监控域和第二监控域之间传输该回放视频业务请求所请求的回放数据的干线,并设置用户S的级别为该干线的优先级。之后,执行步骤514。
步骤506,抢占第一监控域和所述第二监控域之间优先级低于所述用户S级别的干线,如果抢占成功,则执行步骤309;否则,回放视频业务请求失败。
步骤507,断开被抢占干线当前所传输的数据,将该抢占的干线作为所述第一监控域和所述下一跳之间传输该回放视频业务请求所请求的回放数据的干线,并设置用户S级别为该干线的优先级。之后,执行步骤514。
步骤508,所述第一监控域判断自身和所述下一跳之间是否存在空闲干线,如果是,执行步骤509;否则,执行步骤510。
步骤509,将该空闲干线作为所述第一监控域和所述下一跳之间传输该回放视频业务请求所请求的回放数据的干线。之后执行步骤512。
步骤510,抢占所述第一监控域和所述下一跳之间优先级低于所述用户S级别的干线,如果抢占成功,则执行步骤511;否则,所述回放视频业务请求失败。
步骤511,将该抢占的干线作为所述第一监控域和所述下一跳之间传输该回放视频业务请求所请求的回放数据的干线。
步骤512,判断该确定的所述第一监控域和所述下一跳之间传输该回放视频业务请求所请求的回放数据的干线是否配置了强制转发标志,如果是,执行步骤513;否则,执行步骤514。
步骤513,告知本监控域中的媒体转发服务器强制转发该实况视频业务请求所请求的实况数据。之后,执行步骤514。
步骤514,第一监控域将回放视频业务请求发送至下一跳。
步骤515,下一跳判断自身是否为第二监控域,如果是,执行步骤516;否则,执行步骤517。
步骤516,利用上述确定的传输所述回放视频业务请求所请求的回放数据的干线传输回放数据即启动所述回放视频业务请求所请求的回放数据。
这里,步骤516中的具体操作类似步骤320,不再赘述。
步骤517,将下一跳作为第一监控域,返回执行步骤501。
以上对本发明实施例提供的方法进行了描述,下面对本发明实施例提供的装置进行描述。
参见图6,图6为本发明实施例提供的装置结构图。如图6所示,该装置可包括:
确定单元601,用于在向目的地发送用户S触发的业务请求时,确定发送所述业务请求至目的地的路径上的下一跳;
处理单元602,用于在判断出所述装置和所述下一跳之间的干线为B类干线时,判断是否配置了干线管理策略,如果是,确定所述装置和所述目的地之间用于传输该业务请求所请求的数据的干线,之后发送转发通知给发送单元603;否则,直接发送转发通知给发送单元603;在判断出所述装置和所述下一跳之间的干线为A类干线时,确定所述装置和所述下一跳之间用于传输该业务请求所请求的数据的干线,之后发送转发通知给发送单元603;。
发送单元603,用于在接收到所述转发通知后,发送所述业务请求至所述下一跳,如果所述下一跳为目的地,则由所述目的地利用所述确定的用于传输所述业务请求所请求的数据的干线传输该数据;如果所述下一跳不为目的地,则由所述下一跳按照所述装置包含的各个单元执行的操作处理该业务请求。
优选地,本实施例中,所述业务请求具体实现时可为实况视频业务请求或者回放视频业务请求,针对不同的情况,本发明实施例提供的装置具体有不同的结构。
如果所述业务请求为实况视频业务请求;则处理单元602具体实现时可包括:
媒体转发服务器6021,用于判断当前是否正在转发实况视频业务请求所请求的实况数据,如果是,增加一条分发流,用于传输所述实况视频业务请求所请求的实况数据给所述用户S;如果否,发送处理通知给第一处理子单元6022;
第一处理子单元6022,用于在接收到所述处理通知后,如果所述装置和下一跳之间的干线为A类干线,则确定所述装置和下一跳之间用于传输该实况视频业务请求所请求的实况数据的干线;如果所述装置和下一跳之间的干线为B类干线,则确定所述装置和目的地之间用于传输该实况视频业务请求所请求的实况数据的干线。
其中,第一处理子单元6022确定所述装置和下一跳之间用于传输该实况视频业务请求所请求的实况数据的干线的操作具体包括:判断所述装置和所述下一跳之间是否存在空闲干线,如果是,将该空闲干线作为所述装置和所述下一跳之间传输该实况视频业务请求所请求的实况数据的干线;如果否,抢占所述装置和所述下一跳之间优先级低于所述用户S级别的干线,将该抢占的干线作为所述装置和所述下一跳之间传输该实况视频业务请求所请求的实况数据的干线。
其中,第一处理子单元6022确定所述装置和目的地之间用于传输该实况视频业务请求所请求的实况数据的干线包括:判断所述装置和所述目的地之间是否存在空闲干线,如果是,将该空闲干线作为所述装置和所述目的地之间传输该实况视频业务请求所请求的实况数据的干线;如果否,抢占所述装置和所述目的地之间优先级低于所述用户S级别的干线,将该抢占的干线作为所述装置和所述目的地之间传输该实况视频业务请求所请求的实况数据的干线。
如果所述业务请求为回放视频业务请求;则处理单元602具体实现时可包括:
第一判断子单元6023,用于在所述装置和所述下一跳之间的干线为B类干线时,判断所述装置和所述目的地之间是否存在空闲干线,如果是,将该空闲干线作为所述装置和所述目的地之间传输该回放视频业务请求所请求的回放数据的干线;如果否,发送第一判断通知给第二处理子单元6024;在所述装置和所述下一跳之间的干线为A类干线时,判断所述装置和所述下一跳之间是否存在空闲干线,如果是,将该空闲干线作为所述装置和所述下一跳之间传输该回放视频业务请求所请求的回放数据的干线;如果否,发送第二判断通知给第二处理子单元6024;
第二处理子单元6024,用于在接收到所述第一判断通知时,抢占所述装置和所述目的地之间优先级低于所述用户S级别的干线,将该抢占的干线作为所述装置和所述目的地之间传输该回放视频业务请求所请求的回放数据的干线;在接收到所述第二判断通知时,抢占所述装置和所述下一跳之间优先级低于所述用户S级别的干线,将该抢占的干线作为所述装置和所述下一跳之间传输该回放视频业务请求所请求的回放数据的干线。
由以上技术方案可以看出,本发明提供的技术方案并非像现有技术那样针对两个具有上下级关系的监控域,其可应用于多个监控域中,实现了跨监控域传输视频业务。
并且,本发明提供的技术方案考虑到各种IP组网方式,并非限定A类干线,其也可应用在网状组网等组网中的B类干线,这大大扩展了视频业务的应用。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。