发明内容
有鉴于此,本发明提供了一种视频数据存储方法,能够优先处理重要通道的数据,保证重要通道的数据具有较低的丢包率。
本发明还提供了一种视频数据存储中的设备,能够优先处理重要通道的数据,保证重要通道的数据具有较低的丢包率。
为了达到上述目的,本发明提出的技术方案为:
一种视频数据存储方法,预先在视频编码器EC端或IP存储区域网络SAN端启用虚拟IP地址,该方法包括:
EC对处理过的重要通道的数据进行标识后缓存,并对处理过的其他通道的数据直接进行缓存;
EC优先对标识后的数据进行基于internet的SCSI传输协议iSCSI封装、传输控制协议TCP封装和IP封装,并用虚拟IP地址对标识后的数据进行IP头替换后发送出去,使得路由设备优先转发接收到的带有虚拟IP地址封装的数据、IP SAN存储设备优先存储接收到的带有虚拟IP地址封装的数据。
当预先在EC端启用虚拟IP地址时,所述用虚拟IP地址对标识后的数据进行IP头替换为:将进行IP封装后的标识后的数据的源IP地址替换为虚拟IP地址。
该方法进一步包括:
IP SAN存储设备根据所述iSCSI封装和TCP封装,得到IP头替换前的IP封装,通过所述替换前的IP封装将iSCSI响应发送给EC。
当预先在IP SAN存储设备端启用虚拟IP地址时,所述用虚拟IP地址对标识后的数据进行IP头替换为:将进行IP封装后的标识后的数据的目的IP地址替换为虚拟IP地址。
EC对处理过的重要通道的数据进行标识为:EC对处理过的重要通道的数据的I帧进行标识。
一种视频数据存储中的视频编码器EC,应用于包括EC、路由设备和IP存储区域网络SAN存储设备的视频数据存储系统中,预先在EC端或IP SAN端启用虚拟IP地址,该EC包括处理器、数据标识、数据缓存和基于internet的SCSI传输协议iSCSI协议客户端,其中,
所述处理器,用于对接收到的数据进行处理后发送;
所述数据标识,用于对处理器处理过的重要通道的数据进行标识;
所述数据缓存,用于对数据标识进行标识的数据进行缓存,或对处理器处理过的其他通道的数据直接进行缓存;
所述iSCSI协议客户端,用于对数据缓冲中标识后的数据进行iSCSI封装、传输控制协议TCP封装和IP封装,并用虚拟IP地址对标识后的数据进行IP头替换后发送出去,使得路由设备优先转发接收到的带有虚拟IP地址封装的数据、IP SAN存储设备优先存储接收到的带有虚拟IP地址封装的数据。
当预先在EC端启用虚拟IP地址时,所述用虚拟IP地址对标识后的数据进行IP头替换为:将进行IP封装后的标识后的数据的源IP地址替换为虚拟IP地址。
当预先在IP SAN存储设备端启用虚拟IP地址时,所述用虚拟IP地址对标识后的数据进行IP头替换为:将进行IP封装后的标识后的数据的目的IP地址替换为虚拟IP地址。
所述数据标识,用于对处理器处理过的重要通道的数据的I帧进行标识。
一种视频数据存储中的路由设备,应用于包括视频编码器EC、路由设备和IP存储区域网络SAN存储设备的视频数据存储系统中,
所述路由设备,用于识别由EC发送的数据的IP头,并对识别出的IP头中带有虚拟IP地址的数据优先转发给IP SAN存储设备。
一种视频数据存储中的IP存储区域网络SAN存储设备,应用于包括视频编码器EC、路由设备和IP SAN存储设备的视频数据存储系统中,该IPSAN存储设备包括:基于internet的SCSI传输协议iSCSI协议目标端、数据处理和逻辑资源,其中,
所述iSCSI协议目标端,用于解析由路由设备转发的EC发送的数据,并对解析出的IP头中带有虚拟IP地址的数据优先发送给数据处理;
所述数据处理,用于对iSCSI协议目标端发送的数据送入逻辑资源;
所述逻辑资源,用于对数据处理发送的数据进行存储。
综上所述,本发明所采用的视频数据存储方法及其设备,是通过预先启用虚拟IP地址,并由EC对处理过的重要通道的数据进行标识后缓存,且能够优先对进行标识后的重要数据进行处理,并在处理时用虚拟IP地址进行IP头的替换后再发送出去,使得路由设备优先转发接收到的带有虚拟IP地址封装的数据、IP SAN存储设备优先存储接收到的带有虚拟IP地址封装的数据。由于本发明视频数据存储时是通过对重要通道的数据进行标识,并对标识的重要通道的数据进行IP头替换,进而EC、路由设备、IP SAN存储设备都能够对替换为虚拟IP地址的重要通道的数据进行优先处理,因此,本发明方法能够优先处理重要通道的数据,保证重要通道的数据具有较低的丢包率。
具体实施方式
为了解决本发明提出的技术问题,本发明所述方案的具体实现包括:
预先在EC端或IP SAN端启用一个虚拟IP地址,EC对处理过的重要通道的数据进行标识后缓存,并对处理过的其他通道的数据直接进行缓存;EC优先对标识后的数据进行iSCSI封装、TCP封装和IP封装,并用虚拟IP地址对标识后的数据进行IP头替换后发送出去,使得交换机优先转发接收到的带有虚拟IP地址封装的数据、IP SAN存储设备优先存储接收到的带有虚拟IP地址封装的数据。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。
图2为本发明视频数据存储方法实施例的工作流程图。如图2所示,该流程包括:
步骤201:预先在EC端或IP SAN存储设备端启用虚拟IP地址。
需要说明的是,在本步骤中,既可以在EC端启用虚拟IP地址,也可以在IP SAN存储设备端启用虚拟IP地址,具体以后续应用为准。
还需说明的是,在本步骤中,当在EC端启用虚拟IP地址时,可以在EC端启用一个虚拟IP地址,也可以在EC端启用多个虚拟IP地址,为了对区分不同通道数据的优先级,最重要通道的数据以第一个虚拟IP地址来替换IP头,次重要通道的数据以第二个虚拟IP地址来替换IP头,等等。
步骤202:EC对处理过的重要通道的数据进行标识后缓存,并对处理过的其他通道的数据直接进行缓存。
为了能够识别重要通道的数据,在本步骤中,需要对重要通道的数据进行标识,以区别其他通道的数据。
对重要通道的数据进行标识可以为在处理过的重要通道的数据后添加一个标识,还可以采用其他方式来进行标识重要通道的数据,以不影响本发明实施例的实现为准。
需要说明的是,为了更加进一步减少数据处理负荷,在本步骤中,所述对处理过的重要通道的数据进行标识为:对处理过的重要通道的数据的I帧进行标识。
步骤203:EC优先对标识后的数据进行iSCSI封装、TCP封装和IP封装,并用虚拟IP地址对标识后的数据进行IP头替换。
在本步骤中EC不仅需要优先对标识后的重要通道的数据进行协议封装,而且需要将IP层封装进行替换,以便使得路由设备和IP SAN存储设备能够根据封装的虚拟IP地址识别出重要通道的数据,进而能够优先处理重要通道的数据。
需要说明的是,当在EC端进行IP头替换后,路由设备和IP SAN需要识别出替换了IP头的封装后的数据中的虚拟IP地址,进而能够优先转发带有虚拟IP地址的封装数据。
还需说明的是,在本步骤中,用虚拟IP地址对标识后的数据进行IP头替换可包括两种情况:当步骤201中预先在EC端启用虚拟IP地址时,所述用虚拟IP地址对标识后的数据进行IP头替换为将进行IP封装后的标识后的数据的源IP地址替换为虚拟IP地址;当步骤201中预先在IP SAN存储设备端启用虚拟IP地址时,所述用虚拟IP地址对标识后的数据进行IP头替换为:将进行IP封装后的标识后的数据的目的IP地址替换为虚拟IP地址。
步骤204:路由设备优先转发接收到的带有虚拟IP地址封装的数据。
在本步骤中,路由设备对接收到的数据的IP头进行识别,当识别出IP头中带有虚拟IP地址时,对封装了该虚拟IP地址的数据进行优先转发。
步骤205:IP SAN存储设备优先存储接收到的带有虚拟IP地址封装的数据。
同步骤204中的路由设备一样,在本步骤中,IP SAN存储设备对接收到的数据的IP头进行识别,当识别出IP头中带有虚拟IP地址时,对封装了该虚拟IP地址的数据进行优先转发。
此外,IP SAN存储设备还需向EC返回iSCSI响应,具体实现同现有技术不再赘述。
需要说明的是,当步骤201为预先在EC端启用虚拟IP地址时,在本步骤中,IP SAN存储设备根据所述iSCSI封装和TCP封装,即可得到IP头替换前的IP封装,进而通过所述替换前的IP封装将iSCSI响应发送给EC。
至此,即完成了本发明视频数据存储方法实施例的整个工作流程。
为了更具体明确本发明实施例的工作流程,下面以预先在EC端启用一个虚拟IP地址举例说明该实施例的具体实现:
假设在视频数据存储中一共有n台EC,每台EC除了实际IP地址10.1.1.*之外,在每台EC的接口上均启用1个虚拟IP地址:192.168.1.10,即每台EC的实际IP不同,但虚拟IP是相同的。
1、假设每台EC均有重要通道,则需要对重要通道的数据进行标识后进行缓存;
2、EC优先取出进行标识后的数据对其进行iSCSI封装、TCP封装和IP封装,且原本封装的IP报文头源地址为10.1.1.1、目的地址为IP SAN的目标地址,对其进行虚拟IP地址的替换后,源地址变为192.168.1.10;
3、EC发送了进行虚拟IP地址替换的数据后,数据被送到路由设备(如交换机),路由设备识别到该数据的IP头中有IP地址为192.168.1.10时,即会发现它为所有EC建立的公共地址建立的虚连接传输的数据,故此时路由设备对源IP地址为192.168.1.10的数据进行优先转发;
4、当数据传送到IP SAN存储设备的接口时,IP SAN存储设备识别到该数据的IP头中有IP地址为192.168.1.10时,也优先处理带有IP地址为192.168.1.10的数据;
需要说明的是,在本步骤中,虽然源IP地址为公共的IP地址192.168.1.10,并不能区分出是由哪一台EC发送过来的数据,但是当数据解到TCP后,IP SAN存储设备查询现有iSCSI连接和TCP连接,即发现TCP的数据段CID等标志与其中一个原有连接的数据段一致,即认为是该TCP上的数据,再往上送到iSCSI就会发现其LUN号等信息,iSCSI就会正确的将数据写给相应的逻辑资源;
5、IP SAN存储设备向EC发送iSCSI回应报文;
在本步骤中,虽然EC发送的数据读写报文采用的是虚拟IP192.168.1.10,但由于在iSCSI会话中的CID为原有连接的CID,故iSCSI会话认为其是原有连接中的数据回应,因此TCP连接建立的SOCKET中,记录的仍然是老地址10.1.1.1,所以IP SAN将这一信息透明的传递给下一层,由于EC发送的数据实际上是借用了原有的TCP连接,所以IP SAN回应时仍然将改回应报文交给原有的TCP连接,在其上进行传输。
需要说明的是,在target IP地址填好进行回应后,中间的路由设备收到该报文时,查看IP头显示得知目的地址为10.1.1.1,而路由设备是知道10.1.1.1的路径的,所以就把该报文转发给10.1.1.1的EC,进而由对应的EC判断出该报文就是原来虚拟IP地址发送的报文的回应报文,则继续向下发送数据。
还需说明的是,在本实施例中,当发生丢包或超时重传时,由于原有的TCP连接并没有改变,因此,EC和IP SAN存储设备之间仍可按照原来的TCP连接进行相应的处理,过程同现有技术,不再赘述。
基于上述方法,图3给出了本发明视频数据存储中各设备的结构示意图。如图3所示,在本发明视频数据存储中包括有EC、路由设备和IP SAN存储设备,应用于包括EC、路由设备和IP SAN存储设备的视频数据存储系统中,预先在EC端或IP SAN端启用虚拟IP地址。
其中,所述EC可包括:处理器、数据标识、数据缓存和iSCSI协议客户端,所述处理器,用于对接收到的数据进行处理后发送;
所述数据标识,用于对处理器处理过的重要通道的数据进行标识。
进一步地,所述数据标识,用于对处理器处理过的重要通道的数据的I帧进行标识。
所述数据缓存,用于对数据标识进行标识的数据进行缓存,或对处理器处理过的其他通道的数据直接进行缓存。
所述iSCSI协议客户端,用于对数据缓冲中标识后的数据进行iSCSI封装、TCP封装和IP封装,并用虚拟IP地址对标识后的数据进行IP头替换后发送出去,使得路由设备优先转发接收到的带有虚拟IP地址封装的数据、IPSAN存储设备优先存储接收到的带有虚拟IP地址封装的数据。
当预先在EC端启用虚拟IP地址时,所述用虚拟IP地址对标识后的数据进行IP头替换为:将进行IP封装后的标识后的数据的源IP地址替换为虚拟IP地址;当预先在IP SAN存储设备端启用虚拟IP地址时,所述用虚拟IP地址对标识后的数据进行IP头替换为:将进行IP封装后的标识后的数据的目的IP地址替换为虚拟IP地址。
至此,即得到了本发明所采用的EC。
所述路由设备,用于识别由EC发送的数据的IP头,并对识别出的IP头中带有虚拟IP地址的数据优先转发给IP SAN存储设备。
所述IP SAN存储设备可包括:iSCSI协议目标端、数据处理和n个逻辑资源,其中,
所述iSCSI协议目标端,用于解析由路由设备转发的EC发送的数据,并对解析出的IP头中带有虚拟IP地址的数据优先发送给数据处理;
所述数据处理,用于对iSCSI协议目标端发送的数据送入逻辑资源;
所述逻辑资源,用于对数据处理发送的数据进行存储。
至此,即得到了本发明视频数据存储中各设备的结构。图3所述各设备的具体工作流程可参见图2,这里不再赘述。
总之,本发明所采用的视频数据存储方法及其设备,是通过预先启用虚拟IP地址,并由EC对处理过的重要通道的数据进行标识后缓存,且能够优先对进行标识后的重要数据进行处理,并在处理时用虚拟IP地址进行IP头的替换后再发送出去,使得路由设备优先转发接收到的带有虚拟IP地址封装的数据、IP SAN存储设备优先存储接收到的带有虚拟IP地址封装的数据。由于本发明视频数据存储时是通过对重要通道的数据进行标识,并对标识的重要通道的数据进行IP头替换,进而EC、路由设备、IP SAN存储设备都能够对替换为虚拟IP地址的重要通道的数据进行优先处理,因此,本发明方法能够优先处理重要通道的数据,保证重要通道的数据具有较低的丢包率。
进一步地,本发明方法在对处理过的重要通道的数据进行标识时可仅对处理过的重要通道的数据的I帧进行标识,从而进一步减少数据处理负荷,更进一步地降低重要通道的数据的丢包率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。