CN114679433B - 视频访问会话管理系统、方法、计算机设备及存储介质 - Google Patents
视频访问会话管理系统、方法、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN114679433B CN114679433B CN202210585395.0A CN202210585395A CN114679433B CN 114679433 B CN114679433 B CN 114679433B CN 202210585395 A CN202210585395 A CN 202210585395A CN 114679433 B CN114679433 B CN 114679433B
- Authority
- CN
- China
- Prior art keywords
- session management
- management module
- sip
- session
- media
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请提供一种视频访问会话管理系统、方法、计算机设备及存储介质,包括:TCP会话管理模块用于响应客户端的视频访问请求,获取用于接收视频流的媒体信息及待访问的目标设备的身份信息,以将媒体信息和身份信息发送至SIP协议会话管理模块;SIP协议会话管理模块用于根据媒体信息和身份信息,向目标设备发送用于请求在客户端与目标设备之间建立SIP会话的会话请求,并在目标设备接受会话请求之后生成SIP协议栈标识,以将SIP协议栈标识反馈至TCP会话管理模块;其中,SIP协议栈标识被用于在接收到目标设备发送的会话终止消息时,结合身份信息回收与目标设备关联的TCP模块存储单元,以使系统扩展性和稳定性有效平衡。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种视频访问会话管理系统、方法、计算机设备及存储介质。
背景技术
GB/T28181一般运用于视频监控行业,如在现有的视频监控系统中,将连接到该视频监控系统中的设备使用GB/T28181中的SIP协议(Session Initiation Protocol,会话发起协议)来进行相互通信,也即建立会话实现会话管理。
然而,现有的视频监控系统为了保证稳定性,牺牲了绝大部分的性能,且各业务逻辑之间无法独立,造成系统扩展性差,维护成本高。
因此,现有的视频监控系统存在着稳定性与扩展性无法平衡的技术问题。
发明内容
本申请的目的在于提供一种视频访问会话管理系统、方法、计算机设备及存储介质,用以通过模块化设计,使得系统扩展性显著提升的同时,还可确保系统在各业务场景中的会话稳定性,缩减系统维护成本。
第一方面,本申请提供一种视频访问会话管理系统,包括:TCP会话管理模块、SIP协议会话管理模块;其中,
TCP会话管理模块,用于接收并响应客户端的视频访问请求,获取用于接收视频流的媒体信息,及待访问的目标设备的身份信息,以将媒体信息和身份信息发送至SIP协议会话管理模块;
SIP协议会话管理模块,用于接收并根据媒体信息和身份信息,向目标设备发送用于请求在客户端与目标设备之间建立SIP会话的会话请求,并在目标设备接受会话请求之后,生成SIP协议栈标识,以将SIP协议栈标识反馈至TCP会话管理模块中进行存储;
其中,TCP会话管理模块中存储的SIP协议栈标识,被用于在TCP会话管理模块接收到目标设备发送的会话终止消息时,结合身份信息,供TCP会话管理模块回收预置且与目标设备关联的TCP模块存储单元。
在本申请一些实施例中,视频访问会话管理系统还包括转码服务器、网络发包模块以及媒体服务器;其中,TCP会话管理模块还用于,通过转码服务器,接收客户端的视频访问请求;响应于视频访问请求,顺序通过网络发包模块和媒体服务器,获取用于接收视频流的媒体地址和媒体端口,作为媒体信息;解析视频访问请求,获取目标设备的平台ID和设备ID,作为身份信息;其中,网络发包模块用于利用预先配置的连接池元素,指示媒体服务器调度媒体资源以获取媒体信息。
在本申请一些实施例中,SIP协议会话管理模块,还用于在检测到客户端与目标设备之间的SIP会话断开时,通过SIP协议栈标识,确定TCP会话管理模块中存储的目标连接池句柄,及目标设备的设备ID;其中,TCP会话管理模块中存储有至少一个的连接池句柄,连接池句柄为客户端与视频访问会话管理系统之间通信链路的网络句柄;通过目标连接池句柄,确定目标客户端,以将SIP会话的断开信息发送至目标客户端,提示目标客户端重新发送视频访问请求;基于设备ID和SIP协议栈标识,将SIP会话的断开信息发送至媒体服务器,提示媒体服务器停止接收目标设备采集的视频流。
在本申请一些实施例中,媒体服务器包括调度媒体和至少一个子媒体,调度媒体用于调度至少一个子媒体,至少一个子媒体用于管理SIP会话;其中,子媒体的管理项包括:对SIP会话的链路通信检测。
在本申请一些实施例中,TCP会话管理模块中设置有存储单元,存储单元包括请求列表单元和第一状态码单元;其中,TCP会话管理模块,还用于响应于视频访问请求,确定第一状态码单元中的状态码;若状态码为失败,则将后序的视频访问请求放置于请求列表单元中,直至状态码更新为成功;其中,状态码用于表示前序的视频访问请求的响应状态,当状态码为成功时,表示客户端与目标设备之间建立了SIP会话,当状态码为失败时,表示客户端与目标设备之间未建立SIP会话。
在本申请一些实施例中,TCP会话管理模块,还用于检测请求列表单元中的视频访问请求的请求数量;若请求数量为空,则生成访问终止消息;通过SIP协议会话管理模块,发送访问终止消息至目标设备,并回收SIP协议栈标识。
在本申请一些实施例中,SIP协议会话管理模块中设置有存储单元,存储单元包括第二状态码单元;其中,SIP协议会话管理模块,还用于接收媒体信息和身份信息,检测第二状态码的状态信息;若第二状态码的状态信息为初始状态,则生成SIP协议栈标识;根据身份信息和SIP协议栈标识,生成会话请求;发送会话请求至目标设备,供客户端与目标设备之间建立SIP会话后,基于媒体信息传输目标设备采集的视频流。
第二方面,本申请提供一种视频访问会话管理方法,视频访问会话管理方法应用于视频访问会话管理系统,视频访问会话管理系统包括TCP会话管理模块、SIP协议会话管理模块,方法包括:
通过TCP会话管理模块,接收并响应客户端的视频访问请求,获取用于接收视频流的媒体信息,及待访问的目标设备的身份信息,以将媒体信息和身份信息发送至SIP协议会话管理模块;
通过SIP协议会话管理模块,接收并根据媒体信息和身份信息,向目标设备发送用于请求在客户端与目标设备之间建立SIP会话的会话请求,并在目标设备接受会话请求之后,生成SIP协议栈标识,以将SIP协议栈标识反馈至TCP会话管理模块中进行存储;
其中,TCP会话管理模块中存储的SIP协议栈标识,被用于在TCP会话管理模块接收到目标设备发送的会话终止消息时,结合身份信息,供TCP会话管理模块回收预置且与目标设备关联的TCP模块存储单元。
第三方面,本申请还提供一种计算机设备,包括:
一个或多个处理器;
存储器;以及一个或多个应用程序,其中的一个或多个应用程序被存储于存储器中,并配置为由处理器执行以实现上述的第二方面的视频访问会话管理方法。
第四方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器进行加载,以执行视频访问会话管理方法中的步骤。
第五方面,本申请实施例提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的第二方面提供的方法。
上述视频访问会话管理系统、方法、计算机设备及存储介质,通过精简的模块化设计,使得系统扩展性显著提升的同时,还可确保因模块之间的业务独立,使得系统在各业务场景中的会话稳定性同步提升,促使所有业务逻辑能够异步处理,进而缩减系统维护成本。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中的视频访问会话管理系统的结构示意图;
图2为本申请实施例中的传统会话管理方法的架构示意图;
图3为本申请实施例中的传统会话管理方法的流程示意图;
图4为本申请实施例中的视频访问会话管理系统的架构示意图;
图5为本申请实施例中的各存储单元的结构示意图;
图6是本申请实施例中的计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本申请的描述中,术语“例如”一词用来表示“用作例子、例证或说明”。本申请中被描述为“例如”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
本申请实施例提供一种视频访问会话管理系统、方法、计算机设备及存储介质,以下分别进行详细说明。
参阅图1,图1为本申请实施例提供的视频访问会话管理系统的架构示意图,该视频访问会话管理系统100首先包括:TCP会话管理模块102和SIP协议会话管理模块104。
其中,TCP(Transmission Control Protocol,传输控制协议)是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议。在简化的计算机网络OSI(Open System Interconnection,开放式系统互联)模型中,它完成第四层传输层所指定的功能,UDP(User Datagram Protocol,用户数据报协议)是同一层内另一个重要的传输协议,也是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
其中,SIP(Session Initiation Protocol,会话初始协议)是由IETF(InternetEngineering Task Force,因特网工程任务组)制定的多媒体通信协议。它是一个基于文本的应用层控制协议,用于创建、修改和释放一个或多个参与者的会话。广泛应用于CS(Circuit Switched,电路交换)、NGN(Next Generation Network,下一代网络)以及IMS(IPMultimedia Subsystem,IP多媒体子系统)的网络中,可以支持并应用于语音、视频、数据等多媒体业务,同时也可以应用于Presence(呈现)、Instant Message(即时消息)等特色业务。SIP是类似于HTTP(Hyper Text Transfer Protocol,超文本传输协议)。
本申请实施例提出的视频访问会话管理系统100包括连接池和扩展连接池,连接池是创建和管理至少一个连接的缓冲池的技术,这些连接准备好被任何需要它们的线程使用。具体而言,连接池是将已经创建好的连接保存在池中,当有请求来时,直接使用已经创建好的连接对数据库进行访问,这样即可省略创建连接的过程,又可省略销毁连接的过程,使得系统性能得到提高。而扩展连接池是响应于业务需求而设的,其可实现连接池无法完成的特殊业务逻辑,是解决系统高并发问题的策略之一。
参阅图2,为传统视频访问会话管理方法的架构示意图,转码服务器在接收到客户端的监控数据获取请求之后,将对该监控数据获取请求进行转码,然后通过信令服务器,利用转码后的请求信息向媒体服务器申请用于接收视频流的媒体信息,以利用媒体信息接收监控设备的视频流数据,进而通过转码服务器反馈至客户端。其中,因为Sip(SessionInitiation Protocol,会话初始协议)通信一般采用UDP(User Datagram Protocol,用户数据报协议),所以有个保活的问题,一般每隔几分钟再向服务器注册一下,Sip呼叫成功并建立了连接之后,媒体(音视频)传输是通过RTP(Real-time Transport Protocol,实时传输协议)协议进行的。
换而言之,转码服务器采集到声音和视频之后,会先按指定编码方式编码,如将音频编码成“G711”,将视频编码成“H264”,然后根据RFC(Request For Comments)相关协议加上包头,用UDP向指定的客户端发送,待客户端收到后先解包,再解码,最后播放。然而,本领域技术人员可以理解的是,基于RTP协议的收包线路在此场景下无疑是最频繁的,为了保证程序运行的稳定性,即需确保转码服务器不能参与到对会话内存的合理管控中,但若此时信令服务器通知收包状态发生变化,即变化的状态指示需将当前的会话关掉,释放出会话内存,而转码服务器无法处理内存释放,同时收包线路又达到最大负荷,则导致的结果就是针对于系统资源的无限等待,最终导致数据下发效率无法提升。简而言之,图2所示的链路,一是会话通讯会因为跨服务器传输,导致信息存在时间差、冗余信息,更会存在误杀情况;二是在一些特殊情况下,会存在业务卡死的情况,造成极大的内存泄漏。对此,本申请实施例提出一种视频访问会话管理系统,用以解决上述问题。
在一个实施例中,TCP会话管理模块102用于接收客户端的视频访问请求,并响应该视频访问请求,获取用于接收视频流的媒体信息,及待访问的目标设备的身份信息,以将媒体信息和身份信息发送至SIP协议会话管理模块104。SIP协议会话管理模块104在接收到媒体信息和身份信息之后,将根据媒体信息和身份信息,向目标设备发送用于请求在客户端与目标设备之间建立SIP会话的会话请求,并在目标设备接受会话请求之后,生成SIP协议栈标识,以将SIP协议栈标识反馈至TCP会话管理模块102中进行存储。
其中,客户端可以是任意终端设备,例如,客户端可以是既包括接收和发射硬件的终端设备,即具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备。客户端具体可以是台式终端或移动终端,还可以是手机、平板电脑、笔记本电脑中的一种。客户端向转码服务器发送视频访问请求,该视频访问请求用于请求目标设备的视频数据。
其中,身份信息包括平台ID和设备ID,媒体信息包括媒体地址和媒体端口,媒体信息是定位子媒体资源的重要参数,一个平台上可以挂载至少一个设备,即存在一个平台ID与至少一个设备ID关联。
具体而言,TCP会话管理模块102响应客户端的视频访问请求之前,客户端的视频访问请求首先会通过转码服务器进行转码,如转码为二进制格式的请求消息,进而将请求消息通过TCP高并发框架传输至TCP会话管理模块102。TCP会话管理模块102接收到转码后的视频访问请求之后,即可响应于视频访问请求,获取用于接收视频流的媒体信息,及待访问的目标设备的身份信息。
进一步地,TCP会话管理模块102获取到媒体信息和身份信息之后,会将媒体信息和身份信息发送至SIP协议会话管理模块104,以通知SIP协议会话管理模块104在建立与客户端之间的SIP会话之后,生成SIP协议栈标识,利用SIP协议栈标识对SIP会话进行高效管理。
在一个实施例中,视频访问会话管理系统还包括转码服务器、网络发包模块以及媒体服务器;其中,TCP会话管理模块102还用于,通过转码服务器,接收客户端的视频访问请求;响应于视频访问请求,顺序通过网络发包模块和媒体服务器,获取用于接收视频流的媒体地址和媒体端口,作为媒体信息;解析视频访问请求,获取目标设备的平台ID和设备ID,作为身份信息;其中,网络发包模块用于利用预先配置的连接池元素,指示媒体服务器调度媒体资源以获取媒体信息。
其中,媒体服务器是下一代网络的重要设备。该设备在控制设备(软交换设备、应用服务器)的控制下,提供在IP网络上实现各种业务所需的媒体资源功能,包括业务音提供、会议、交互式应答(IVR)、通知、统一消息、高级语音业务等。在应用服务器里,使用MSML(Media Server Markup Language,一种专用于媒体服务器交互的特殊xml)向媒体服务器发送放音等命令。媒体服务器具有很好的可裁剪性,可灵活实现一种或多种功能。
在一个实施例中,SIP协议会话管理模块104还用于在检测到客户端与目标设备之间的SIP会话断开时,通过SIP协议栈标识,确定TCP会话管理模块中存储的目标连接池句柄,及目标设备的设备ID;其中,TCP会话管理模块中存储有至少一个的连接池句柄,连接池句柄为客户端与视频访问会话管理系统之间通信链路的网络句柄;通过目标连接池句柄,确定目标客户端,以将SIP会话的断开信息发送至目标客户端,提示目标客户端重新发送视频访问请求;基于设备ID和SIP协议栈标识,将SIP会话的断开信息发送至媒体服务器,提示媒体服务器停止接收目标设备采集的视频流。
其中,连接池句柄可以是系统与客户端之间所建立的连接池的标识符,其是向内核注册时生成的;第二连接池句柄可以是系统与媒体服务器之间所建立的连接池的标识符。
具体而言,可参阅图3,在信令服务器与SIP协议会话管理模块104之间,由于是信令内部,肯定速度是非常快的,当目标相机意图通过SIP链路通知信令服务器掉线时,信令服务器将进一步通知媒体服务器,但由于信令服务器到媒体服务器走的是TCP链路,通信速度必然不及SIP链路,假设这时信令服务器到媒体服务器的TCP链路堵塞了,而在堵塞过程中,媒体服务器又检测到目标相机继续没有发包了,那么媒体服务器就会沿着TCP链路的上行通道通知信令服务器关闭会话,但在通知的过程中,如果有新的客户端接入的话,就会杀掉新进入的客户端,进而导致误杀情况发生。
对此,本申请实施例提出通过绑定模块之间的生命周期,来建立一种视频访问会话管理系统,其架构示意图可参阅图4。如图4所示,TCP会话管理模块的各个设备模块(如设备A模块、设备B模块、设备C模块等)、SIP协议会话管理模块的各个设备模块(如设备Asip模块、设备Bsip模块等)以及媒体服务器的子媒体所管控的会话(如会话A、会话B等)是生命周期同步的。其中,TCP会话管理模块的各个设备模块结构可参阅图5所示的“设备A-TCP模块”,其是设备A模块的全称。SIP协议会话管理模块的各个设备模块结构也可参阅图5所示的“设备Asip模块”。
具体而言,在初始状态时,客户端通过转码服务器请求观看目标相机“A”,此时,TCP会话管理模块的设备A模块、SIP协议会话管理模块的设备Asip模块状态如图5所示,即“平台ID、设备ID、call-id、连接池句柄、序列号、key”都会相应地更新信息,这个时候“设备A-TCP模块”本身是一个map,map的key为“设备ID”,而非“平台ID+设备ID”,“设备ID”结合“call-id”,即可避免误杀。
原因在于:传统设计中,信令端和媒体端缓存的key均为“平台ID+设备ID”,当目标相机通知信令端会话结束时,信令端会将缓存的key移除,而由于信令端和媒体端网络阻塞,媒体缓存不知道会话已经结束,此时一旦媒体缓存在第4秒检测到相机没有数据流过来,就会通知信令会话终止。同样的,在第4秒,若有新用户接进来,那么一进来就会被媒体的这个通知给误杀断掉,然后信令和相机之间的链路在重新构件的时候,也会被断掉。
所以为了解决这个问题,key不能采用“平台ID+设备ID”的原则,而是采用一个字符串随机组合的原则,并且整个环节使用时是绝对唯一的。如此,信令端和媒体端缓存的key均是随机字符串“x1”,只要相机和信令的SIP链路一直存在,随机字符串“x1”就代表了这个相机,但若相机和SIP链路发生变化,那么随机字符串“x1”就不会代表相机了。如果相机通知信令结束了,那么第二次请求的时候就会变为:信令端和媒体端缓存的key均是随机字符串“x2”。此时,就算媒体和信令出现了阻塞,那么也只能断开随机字符串“x1”对应的会话,而此时随机字符串“x1”代表的会话早已结束,则后面新进来的用户请求不受影响。
还需说明的是,如图4所示,子媒体所管控的会话主要有三个模块:收包模块,用于接收来自目标相机的视频流;注册分发模块,用于等待转码服务器的接入,转码服务器只要连接上注册分发模块,那么收到的数据包就会同步转发注册请求端;自检任务模块,用于检测目标相机和媒体服务器是否断流。其中,由于UDP是无状态的连接,如果中间数据中断,内核是无法检测出来的,所以只能采取轮询检测。
在一个实施例中,SIP协议会话管理模块104还用于,在接收到媒体服务器反馈的媒体信息之后,检测第一序列号;若第一序列号发生变化,则生成过期提示信息;将过期提示信息反馈至客户端,以提示客户端重新发送视频访问请求。
具体实现中,上述实施例并未说明序列号的作用,实际上,序列号用于供SIP协议会话管理模块104判断请求访问视频的客户端是否仍在线,即后续处理是否还有意义,若检测到序列号在消息发送之前,与信息反馈之后存在差异,则意味着客户端未持续在线,请求失效。
在本申请实施例中,除了检测第一序列号以判断请求访问视频的客户端是否在线之外,信令服务器在接收到客户端发送的视频访问请求时,也会判断媒体服务器是否在线。若媒体服务器掉线了,则暂停线程池,即控制所有的链路全部中断,但链路即使中断了,也可通过将连接池中的所有连接池元素全部回复为初始化,来通知客户端和转码服务器媒体掉线,会话可以初始化。
在一个实施例中,媒体服务器包括调度媒体和至少一个子媒体,调度媒体用于调度至少一个子媒体,至少一个子媒体用于管理SIP会话;其中,子媒体的管理项包括:对SIP会话的链路通信检测。
具体而言,信令服务器会通知媒体服务器去监理会话,比如目标相机通知信令服务器即将注销,信令服务器接收到会话结束的消息,则其必须通知媒体服务器,指示媒体服务器将媒体端口、媒体地址等资源都释放出来,供后续会话使用。反向的,媒体服务器主要是把收到的视频流分发出去,如果没有客户端需要视频流了,那么会话就没有存在的意义了,媒体服务器就会反向通知信令服务器去关闭对应的会话。
在一个实施例中,TCP会话管理模块中设置有存储单元,存储单元包括请求列表单元和第一状态码单元;其中,TCP会话管理模块还用于响应于视频访问请求,确定第一状态码中的状态码;若状态码为失败,则将后序的视频访问请求放置于请求列表单元中,直至状态码更新为成功;其中,状态码用于表示前序的视频访问请求的响应状态,当状态码为成功时,表示客户端与目标设备之间建立了SIP会话,当状态码为失败时,表示客户端与目标设备之间未建立SIP会话。
具体实现中,TCP会话管理模块102利用其所管控的空闲线程,从消息队列中提取到请求消息之后,可响应该请求消息对应的视频访问请求,将请求消息发送至下一个模块。然而,每个视频访问请求都需建立SIP会话,但建立SIP会话是需要时间的,而这个过程中,可能会收到其他的视频访问请求。如此,为避免逻辑混乱,需将其余未响应的视频访问请求放置于转发列表单元中,直至上一个视频访问请求处理完成,客户端与目标设备(如相机,尤其是国标相机)之间建立了SIP会话之后,TCP会话管理模块102管控的第一状态码的状态信息转为成功,即可按先后接收顺序,处理其余未响应的视频访问请求。
在一个实施例中,TCP会话管理模块还用于检测请求列表单元中的视频访问请求的请求数量;若请求数量为空,则生成访问终止消息;通过SIP协议会话管理模块,发送访问终止消息至所述目标设备,并回收SIP协议栈标识。
具体而言,当请求列表单元中的请求数量为“0”时,生成访问终止消息,触发会话终止,所有的SIP会话要依次回收;当目标设备通过已建立的SIP会话传输数据至客户端时,如发送“BYE”,则走从右至左的状态变更路线,会话依次回收,相当于数据的源头没有数据产生了,需通知客户端会话结束。
在一个实施例中,SIP协议会话管理模块中设置有存储单元,存储单元包括第二状态码单元;其中,SIP协议会话管理模块,还用于接收媒体信息和身份信息,检测第二状态码的状态信息;若第二状态码的状态信息为初始状态,则生成SIP协议栈标识;根据身份信息和SIP协议栈标识,生成会话请求;发送会话请求至目标设备,供客户端与目标设备之间建立SIP会话后,基于媒体信息传输目标设备采集的视频流。
具体实现中,TCP会话管理模块102将媒体信息和身份信息发送至SIP协议会话管理模块104之后,由于SIP设备都是一些嵌入式设备,并不具备高并发的能力,若频繁向SIP设备发送访问请求,则很容易导致SIP设备的网络荷载,从而导致大量丢包,因此本申请提出为各个SIP会话设置SIP协议栈标识,使得在发送SIP会话时,能够依据SIP协议栈标识“call-id”,避免会话成本升高,同时确保视频访问会话的稳定性。
继续说明的是,媒体服务器中,一个调度媒体管理多个子媒体,用以实现负载均衡,负载均衡的实现原理是:每个子媒体固定支持一定数量的视频流接入,当接入满了后,变更为忙碌子媒体,忙碌子媒体可通知调度媒体避免继续分配新会话;当数量变的可用时,同样通知调度媒体可以分配至新会话。
上述视频访问会话管理系统,通过精简的模块化设计,使得系统扩展性显著提升的同时,还可确保系统在各业务场景中的会话稳定性,缩减系统维护成本,平衡系统稳定性与扩展性。
本申请实施例提供了一种视频访问会话管理方法,视频访问会话管理方法应用于视频访问会话管理系统,视频访问会话管理系统包括TCP会话管理模块和SIP协议会话管理模块,下文将主要以该方法应用于上述图1中的视频访问会话管理系统100来举例说明,视频访问会话管理方法包括步骤S601至步骤S602,具体如下:
S601,通过TCP会话管理模块,接收并响应客户端的视频访问请求,获取用于接收视频流的媒体信息,及待访问的目标设备的身份信息,以将媒体信息和身份信息发送至SIP协议会话管理模块;
S602,通过SIP协议会话管理模块,接收并根据媒体信息和身份信息,向目标设备发送用于请求在客户端与目标设备之间建立SIP会话的会话请求,并在目标设备接受会话请求之后,生成SIP协议栈标识,以将SIP协议栈标识反馈至TCP会话管理模块中进行存储。
上述实施例中的视频访问会话管理方法,通过精简的模块化设计,使得系统扩展性显著提升的同时,还可确保系统在各业务场景中的会话稳定性,缩减系统维护成本,平衡系统稳定性与扩展性。
在一个实施例中,视频访问会话管理系统100可以实现为一种计算机程序的形式,计算机程序可在如图6所示的计算机设备上运行。计算机设备的存储器中可存储组成该视频访问会话管理系统100的各个程序模块,比如,图1所示的TCP会话管理模块102和SIP协议会话管理模块104;各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的视频访问会话管理方法中的步骤。
例如,图6所示的计算机设备可以通过如图1所示的视频访问会话管理系统100中的TCP会话管理模块102执行步骤S601。计算机设备可通过SIP协议会话管理模块104执行步骤S602。
其中,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的计算机设备通过网络连接通信。该计算机程序被处理器执行时以实现一种视频访问会话管理方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括一个或多个处理器;存储器;以及一个或多个应用程序,其中的一个或多个应用程序被存储于存储器中,并配置为由处理器执行上述视频访问会话管理方法的步骤。此处视频访问会话管理方法的步骤可以是上述各个实施例的视频访问会话管理方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器进行加载,使得处理器执行上述视频访问会话管理方法的步骤。此处视频访问会话管理方法的步骤可以是上述各个实施例的视频访问会话管理方法中的步骤。
本邻域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上对本申请实施例所提供的一种视频访问会话管理系统、方法、计算机设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种视频访问会话管理系统,其特征在于,包括:TCP会话管理模块、SIP协议会话管理模块以及媒体服务器;其中,
所述TCP会话管理模块,用于接收并响应客户端的视频访问请求,获取用于接收视频流的媒体信息,及待访问的目标设备的身份信息,以将所述媒体信息和所述身份信息发送至所述SIP协议会话管理模块;
所述SIP协议会话管理模块,用于接收所述媒体信息和所述身份信息,检测第二状态码的状态信息,若所述第二状态码的状态信息为初始状态,则生成SIP协议栈标识,并根据所述身份信息和所述SIP协议栈标识,生成会话请求,以发送所述会话请求至所述目标设备,供所述客户端与所述目标设备之间建立SIP会话后,基于所述媒体信息传输所述目标设备采集的视频流,并将所述SIP协议栈标识反馈至所述TCP会话管理模块中进行存储;
其中,所述TCP会话管理模块中存储的SIP协议栈标识,被用于在所述TCP会话管理模块接收到所述目标设备发送的会话终止消息时,结合所述身份信息,供所述TCP会话管理模块回收TCP模块存储单元;所述TCP模块存储单元是预置的,且与所述目标设备关联的;
其中,所述SIP协议会话管理模块中设置有存储单元,所述存储单元包括第二状态码单元,用于存储所述第二状态码;
其中,所述SIP协议会话管理模块,还用于在检测到所述客户端与所述目标设备之间的SIP会话断开时,基于所述目标设备的设备ID和所述SIP协议栈标识,将所述SIP会话的断开信息发送至所述媒体服务器,提示所述媒体服务器停止接收所述目标设备采集的视频流。
2.如权利要求1所述的系统,其特征在于,所述视频访问会话管理系统还包括转码服务器、网络发包模块;其中,所述TCP会话管理模块还用于,
通过所述转码服务器,接收所述客户端的视频访问请求;
响应于所述视频访问请求,顺序通过所述网络发包模块和所述媒体服务器,获取用于接收视频流的媒体地址和媒体端口,作为所述媒体信息;
解析所述视频访问请求,获取所述目标设备的平台ID和设备ID,作为所述身份信息;
其中,所述网络发包模块用于利用预先配置的连接池元素,指示所述媒体服务器调度媒体资源以获取所述媒体信息。
3.如权利要求2所述的系统,其特征在于,所述SIP协议会话管理模块,还用于在检测到所述客户端与所述目标设备之间的SIP会话断开时,通过所述SIP协议栈标识,确定所述TCP会话管理模块中存储的目标连接池句柄,及所述目标设备的设备ID;其中,所述TCP会话管理模块中存储有至少一个的连接池句柄,所述连接池句柄为所述客户端与所述视频访问会话管理系统之间通信链路的网络句柄;
通过所述目标连接池句柄,确定目标客户端,以将所述SIP会话的断开信息发送至所述目标客户端,提示所述目标客户端重新发送所述视频访问请求。
4.如权利要求1所述的系统,其特征在于,所述媒体服务器包括调度媒体和至少一个子媒体,所述调度媒体用于调度所述至少一个子媒体,所述至少一个子媒体用于管理所述SIP会话;
其中,所述子媒体的管理项包括:对所述SIP会话的链路通信检测。
5.如权利要求1所述的系统,其特征在于,所述TCP会话管理模块中设置有存储单元,所述存储单元包括请求列表单元和第一状态码单元;其中,
所述TCP会话管理模块,还用于响应于所述视频访问请求,确定所述第一状态码单元中的状态码;
若所述状态码为失败,则将后序的视频访问请求放置于所述请求列表单元中,直至所述状态码更新为成功;
其中,所述状态码用于表示前序的视频访问请求的响应状态,当所述状态码为成功时,表示所述客户端与所述目标设备之间建立了SIP会话,当所述状态码为失败时,表示所述客户端与所述目标设备之间未建立SIP会话。
6.如权利要求5所述的系统,其特征在于,所述TCP会话管理模块,还用于检测所述请求列表单元中的视频访问请求的请求数量;
若所述请求数量为空,则生成访问终止消息;
通过所述SIP协议会话管理模块,发送所述访问终止消息至所述目标设备,并回收所述SIP协议栈标识。
7.一种视频访问会话管理方法,其特征在于,所述视频访问会话管理方法应用于视频访问会话管理系统,所述视频访问会话管理系统包括TCP会话管理模块、SIP协议会话管理模块以及媒体服务器,所述方法包括:
通过所述TCP会话管理模块,接收并响应客户端的视频访问请求,获取用于接收视频流的媒体信息,及待访问的目标设备的身份信息,以将所述媒体信息和所述身份信息发送至所述SIP协议会话管理模块;
通过所述SIP协议会话管理模块,接收所述媒体信息和所述身份信息,检测第二状态码的状态信息,若所述第二状态码的状态信息为初始状态,则生成SIP协议栈标识,并根据所述身份信息和所述SIP协议栈标识,生成会话请求,以发送所述会话请求至所述目标设备,供所述客户端与所述目标设备之间建立SIP会话后,基于所述媒体信息传输所述目标设备采集的视频流,并将所述SIP协议栈标识反馈至所述TCP会话管理模块中进行存储;
通过所述SIP协议会话管理模块,在检测到所述客户端与所述目标设备之间的SIP会话断开时,基于所述目标设备的设备ID和所述SIP协议栈标识,将所述SIP会话的断开信息发送至所述媒体服务器,提示所述媒体服务器停止接收所述目标设备采集的视频流;
其中,所述TCP会话管理模块中存储的SIP协议栈标识,被用于在所述TCP会话管理模块接收到所述目标设备发送的会话终止消息时,结合所述身份信息,供所述TCP会话管理模块回收TCP模块存储单元;所述TCP模块存储单元是预置的,且与所述目标设备关联的;
其中,所述SIP协议会话管理模块中设置有存储单元,所述存储单元包括第二状态码单元,用于存储所述第二状态码。
8.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储器;以及一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现权利要求7所述的视频访问会话管理方法。
9.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求7所述的视频访问会话管理方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210585395.0A CN114679433B (zh) | 2022-05-27 | 2022-05-27 | 视频访问会话管理系统、方法、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210585395.0A CN114679433B (zh) | 2022-05-27 | 2022-05-27 | 视频访问会话管理系统、方法、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114679433A CN114679433A (zh) | 2022-06-28 |
CN114679433B true CN114679433B (zh) | 2022-08-30 |
Family
ID=82080927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210585395.0A Active CN114679433B (zh) | 2022-05-27 | 2022-05-27 | 视频访问会话管理系统、方法、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114679433B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6678735B1 (en) * | 2000-01-26 | 2004-01-13 | Nortel Networks Limited | Method and apparatus for a sip client manager |
CN1913533A (zh) * | 2006-09-05 | 2007-02-14 | 北京天地互连信息技术有限公司 | 基于会话初始化协议的远程视频监控系统及其实现方法 |
CN102484887A (zh) * | 2009-05-26 | 2012-05-30 | 诺基亚公司 | 用于传送媒体会话的方法和装置 |
CN103428168A (zh) * | 2012-05-17 | 2013-12-04 | 北京信悦通科技有限公司 | 一种sip客户端访问rtsp媒体资源的方法、系统及信令网关 |
CN105338006A (zh) * | 2015-12-15 | 2016-02-17 | 烽火通信科技股份有限公司 | Ims系统中被叫侧sip协议栈会话状态备份恢复的方法 |
CN114286050A (zh) * | 2021-12-17 | 2022-04-05 | 云从科技集团股份有限公司 | 视频监控平台级联方法、系统、计算机设备和存储介质 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100487124B1 (ko) * | 2002-11-12 | 2005-05-03 | 삼성전자주식회사 | 세션 이니세이션 프로토콜 시스템의 세션 정보 처리 방법및 그 기록매체 |
KR100680730B1 (ko) * | 2005-02-18 | 2007-02-09 | 한국정보통신대학교 산학협력단 | 다종 디바이스간의 핸드오프 시스템 및 방법 그리고 그에적용되는 sip 서버 및 sip 서버의 동작방법 |
ATE422794T1 (de) * | 2007-05-30 | 2009-02-15 | Research In Motion Ltd | Verfahren und system zur entregistrierung von ausserhalb der reichweite befindlichen geräten in einem drahtlosen lan |
FR2929062B1 (fr) * | 2008-03-21 | 2010-03-26 | Alcatel Lucent | Etablissement d'une conference avec une politique de mixage de flux de communication |
CN101409712A (zh) * | 2008-11-11 | 2009-04-15 | 深圳华为通信技术有限公司 | 一种用户设备的媒体信息获知方法和用户设备 |
CN102123151B (zh) * | 2011-03-08 | 2013-11-20 | 南京麦伦思科技有限公司 | 一种支持多类数据通讯的轻量级通信平台的实现方法 |
CN102594736B (zh) * | 2012-02-13 | 2014-10-15 | 浙江工业大学 | 一种gps设备接入网关装置 |
US9930122B1 (en) * | 2012-09-28 | 2018-03-27 | Open Text Corporation | Method and system for connection pooling for content management clients |
CN108243162B (zh) * | 2016-12-26 | 2020-12-04 | 大唐移动通信设备有限公司 | 一种sip注册的方法及装置 |
KR20190052826A (ko) * | 2017-11-09 | 2019-05-17 | 삼성에스디에스 주식회사 | 파일 전송 시스템 및 이를 수행하기 위한 컴퓨팅 장치 |
CN110213272A (zh) * | 2019-06-03 | 2019-09-06 | 重庆紫光华山智安科技有限公司 | 数据传输方法及装置 |
CN112565661A (zh) * | 2019-09-10 | 2021-03-26 | 中兴通讯股份有限公司 | 一种视频会议通信方法、装置以及计算机可读存储介质 |
CN111491007B (zh) * | 2020-03-04 | 2023-08-18 | 北京中盾安全技术开发公司 | Sip中心信令控制服务负载均衡方法及其负载均衡器 |
CN112187810A (zh) * | 2020-09-30 | 2021-01-05 | 武汉中科通达高新技术股份有限公司 | 一种前端设备控制方法及装置 |
CN113301025B (zh) * | 2021-05-07 | 2022-10-25 | 中国人民解放军陆军工程大学 | 一种ims音视频转码及传输控制系统及实现方法 |
CN112995234B (zh) * | 2021-05-20 | 2021-07-20 | 武汉中科通达高新技术股份有限公司 | 一种媒体传输链路管理方法及装置 |
CN113038090B (zh) * | 2021-05-24 | 2021-09-07 | 武汉中科通达高新技术股份有限公司 | 一种传输链路管理方法和系统 |
CN113098985B (zh) * | 2021-06-02 | 2021-09-28 | 武汉中科通达高新技术股份有限公司 | 一种会话管理方法及调度服务器 |
-
2022
- 2022-05-27 CN CN202210585395.0A patent/CN114679433B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6678735B1 (en) * | 2000-01-26 | 2004-01-13 | Nortel Networks Limited | Method and apparatus for a sip client manager |
CN1913533A (zh) * | 2006-09-05 | 2007-02-14 | 北京天地互连信息技术有限公司 | 基于会话初始化协议的远程视频监控系统及其实现方法 |
CN102484887A (zh) * | 2009-05-26 | 2012-05-30 | 诺基亚公司 | 用于传送媒体会话的方法和装置 |
CN103428168A (zh) * | 2012-05-17 | 2013-12-04 | 北京信悦通科技有限公司 | 一种sip客户端访问rtsp媒体资源的方法、系统及信令网关 |
CN105338006A (zh) * | 2015-12-15 | 2016-02-17 | 烽火通信科技股份有限公司 | Ims系统中被叫侧sip协议栈会话状态备份恢复的方法 |
CN114286050A (zh) * | 2021-12-17 | 2022-04-05 | 云从科技集团股份有限公司 | 视频监控平台级联方法、系统、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114679433A (zh) | 2022-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9509745B2 (en) | Java API for programming web real-time communication applications | |
KR101109276B1 (ko) | 세션 접속 유지 | |
US9712593B2 (en) | Javascript API for WebRTC | |
US9331967B2 (en) | Browser/HTML friendly protocol for real-time communication signaling | |
US9307031B2 (en) | Generic model for customizing protocol behavior through javascript | |
JP5379167B2 (ja) | Sip−httpアプリケーション相関器 | |
US7809846B2 (en) | Resilient application layer overlay framework for converged communication over Internet protocol networks | |
CN111479121B (zh) | 一种基于流媒体服务器的直播方法及系统 | |
US9565218B2 (en) | Resource management for WebRTC | |
US9648049B2 (en) | System and method for extending IP multimedia subsystem to HTML5 environments | |
RU2608469C2 (ru) | Способ и устройство высокоэффективной доставки уведомлений в реальном времени с малым временем задержки | |
CN103227788A (zh) | 实现网页应用程序与sip设备进行通信的方法和系统 | |
WO2010072081A1 (zh) | 一种实现流媒体服务器大量终端接入的方法及系统 | |
US8799478B2 (en) | Web services and session initiation protocol endpoint for converged communication over internet protocol networks | |
US20100281169A1 (en) | Presence-awareness for wireless devices | |
CN102075737A (zh) | 视频监控会话方法 | |
CN114679434B (zh) | 会话消息处理系统、方法、计算机设备及存储介质 | |
WO2019218474A1 (zh) | 一种视频通话服务的响应方法及系统 | |
WO2022241990A1 (zh) | 一种媒体传输链路管理方法、装置及存储介质 | |
US20090204715A1 (en) | Method and system for acquiring a transmission path of an sip message | |
CN117097702A (zh) | 一种基于SIP协议的高并发WebRTC网关处理方法、网关系统、电子装置及存储介质 | |
CN114679433B (zh) | 视频访问会话管理系统、方法、计算机设备及存储介质 | |
US9374391B2 (en) | Composite endpoint mechanism | |
CN114679435B (zh) | 会话管理系统、方法、计算机设备及存储介质 | |
US9549005B2 (en) | Auxiliary SIP services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |