一种视频信号网络损伤模拟装置、系统及方法_3

文档序号:9202946阅读:来源:国知局
:当报文内容含有 OPT1NS, DESCRIBE, ANNOUNCE, SETUP, PLAY, TEARDOffN关键字且CSeq序号按顺序增长时则为RTSP报文。
[0030]3、Soap:当报文内容中报文符合Xml文档格式且含有Header和Envelope字段时认为是Soap报文。
[0031]4、RTCP:一般在获得RTP报文后,可以判断出RTP使用的端口,而RTCP报文使用的端口为RTP报文使用端口的下一个端口,例如RTP使用20000端口,RTCP报文使用20001端口,因此认定只要是RTP报文使用端口的下一端口发出的报文即为RTCP报文,协议解析模块104对该类报文不进行解析而直接进行转发。
[0032]所述协议解析模块在按照所述损伤参数设置模块所配置的参数向其中的视频数据报文加入损伤时,首先判断协议解析出的报文是否为RTP数据包,若是,则根据损伤参数设置模块103所配置损伤类型和参数向其中的视频数据报文加入损伤时,若不是,则不进行损伤。所述协议解析模块根据损伤参数设置模块103所配置损伤类型和参数向其中的视频数据报文加入损伤时,按照损伤配置表中的损伤表单的顺序,依次向每个RTP数据包的报文前端添加I个损伤表单,再根据损伤表单对RTP数据包的视频数据报文进行损伤。
[0033]其中,在本申请实施例中,请参考图2,所述网络信号损伤类型包括:固定时延损伤、均勾分布时延损伤、高斯分布时延损伤、丢包损伤、重发损伤;各类网络信号损伤类型对应的网络信号损伤参数如下:
固定时延损伤:网络信号损伤参数为固定时延值,取值范围是0-16.384s,调节精度为Ims ;固定时延损伤时生成的损伤配置表中损伤表单的内容为损伤类型和时延值,所有损伤表单的时延值均相等,其值等于固定时延值;
丢包损伤:网络信号损伤参数为丢包率,取值范围是0-100%,调节精度是0.0001% ;丢包损伤时生成的损伤配置表中损伤表单的内容为损伤类型和是否截获的标识信息;此时标识信息根据丢包率随机设置,损伤参数设置模块103根据丢包率随机在损伤配置表中将一部分损伤表单的标识信息设置为截获,例如置1,那么不截获的标识信息置O ;
重发损伤:网络信号损伤参数为重复帧概率,取值范围是0-100%,调节精度是0.0001% ;重发损伤时生成的损伤配置表中损伤表单的内容为损伤类型和是否重发的标识信息;此时,标识信息根据重复帧概率随机设置,损伤参数设置模块103根据重复帧概率随机在损伤配置表中将一部分损伤表单的标识信息设置为重发,例如置1,那么不重发的标识信息置O ;
均勾分布时延损伤:网络信号损伤参数有均勾分布时延最小值、均勾分布时延最大值,取值范围都是Ο-lOs,但最小值必须小于最大值,调节精度均为Ims ;均勾分布时延损伤时生成的损伤配置表中损伤表单的内容为损伤类型和时延值,所有损伤表单中的时延值满足均勾分布,这些时延值根据均勾分布时延最小值、均勾分布时延最大值自动生成;
高斯分布时延损伤:网络信号损伤参数有高斯分布时延最小值、高斯分布时延均值、高斯分布时延标准差,需保证可能的最大时延值不超过10s,调节精度为Ims ;高斯分布时延损伤时生成的损伤配置表中损伤表单的内容为损伤类型和时延值,所有损伤表单中的时延值满足高斯分布,这些时延值根据高斯分布时延最小值、高斯分布时延均值、高斯分布时延标准差自动生成。
[0034]上述各种损伤类型生成损伤配置表时损伤表单的生成方法如下:
固定时延损伤:损伤类型为固定时延损伤;所有损伤表单的时延值均等于人机界面输入的或者预置的网络信号损伤参数文件中的固定时延值。
[0035]丢包损伤:损伤类型为丢包损伤,是否截获的标识信息的取值有截获和不截获两种取值(例如截获取值为1,不截获取值为0),这两种取值的赋值方式为:人机界面输入的或者预置的网络信号损伤参数文件中的丢包率为损伤参数设置模块103中的随机函数提供参数,随机函数根据该丢包率依次为这些损伤表单中的是否截获的标识信息进行赋值;随机函数赋值为每个损伤表单中的是否截获的标识信息进行赋值的方法为:
随机函数随机生成a~b之间的一个随机数,a、b分别为随机数的取值下限值和上限值,并判断该随机数是否小于(b-a) /n,如果小于则对损伤表单中的是否截获的标识信息置1,否则损伤表单中的是否截获的标识信息置O。其中η为丢包率的倒数。
[0036]重发损伤:损伤类型为重发损伤,是否重发的标识信息的取值有重发和不重发两种取值(例如重发取值为1,不重发取值为0),这两种取值的赋值方式为:人机界面输入的或者预置的网络信号损伤参数文件中的重复帧概率为随机函数提供参数,随机函数根据该重复帧概率依次对这些损伤表单中的是否重发的标识信息进行赋值;本实施例中,随机函数为每个损伤表单中的是否重发的标识信息进行赋值的方法同丢包损伤,不同点在于:使用的η为重复帧概率的倒数。
[0037]均匀分布时延损伤:损伤类型为均匀分布时延损伤,所有损伤表单中时延值满足均匀分布,这些时延值的赋值方式为:人机界面输入的或者预置的网络信号损伤参数文件中的均勾分布时延最小值C、均勾分布时延最大值d为均勾分布函数提供参数,均勾分布函数对各损伤表单中的时延值进行赋值;本实施例中,均匀分布函数为每个损伤表单中的时延值进行赋值的方法如下:
本实施例中,均匀分布函数在c~d之间产生一系列随机数,这些随机数按从小到大或从大到小的顺序依次赋给各损伤表单中的时延值。
[0038]高斯分布时延损伤:损伤类型为高斯分布时延损伤,所有损伤表单中时延值满足高斯分布,这些时延值的赋值方式为:人机界面输入的或者预置的网络信号损伤参数文件中的高斯分布时延最小值、高斯分布时延均值、高斯分布时延标准差为高斯分布函数提供参数,高斯分布函数对各损伤表单中的时延值进行赋值。本实施例中,由于高斯分布的最大时延值不超过10s,调节精度为1ms,因此高斯分布时延值不大于10000。高斯分布函数在0-10000之间产生一系列随机数,并将这些随机数依次赋给各损伤表单中的时延值。
[0039]实际应用中,上述随机函数根据丢包率或重复帧概率生成随机数、均匀分布函数根据均勾分布时延最小值和均勾分布时延最大值生成时延值、高斯分布函数根据高斯分布时延最小值和高斯分布时延均值及高斯分布时延标准差为生成时延值时本领域常用的技术手段,可以调用计算机各种库函数实现,本实施例中不再赘述其具体方法。
[0040]上述随机函数、均匀分布函数、高斯分布函数存储在损伤参数设置模块103中,损伤参数设置模块103,通过这些函数获得算上表单中参数取值,形成损伤配置表。
[0041]协议解析模块104按照所述损伤参数设置模块103所配置的参数向其中的视频数据报文中加入损伤时的具体方式为:
当损伤类型设置为固定时延损伤时,损伤配置表中各RTP数据包的时延值均等于固定时延值,所有损伤表单中的时延值相等,损伤方法为:在每个RTP数据包的报文首部添加发送时间戳,该发送时间戳的值等于通信连接模块接收到RTP数据包的时间加上该RTP数据包的损伤表单中的时延值,然后将RTP数据包暂存到存储器中;每隔一段时间对存储器中暂存的所有RTP数据包时间戳进行扫描,当扫描到与当前时间匹配的时间戳时,则将该时间戳对应的所有RTP数据包发送给被测NVR ;
当损伤类型设置为丢包损伤时,根据损伤配置表,截获部分RTP数据包,不再向被测NVR发送;具体地,当RTP数据包的表单为截获的标识信息时,对该RTP数据包进行截获,反之不进行截获;
当损伤类型设置为重发损伤时,向被测NVR重发部分数据包;具体地,当RTP数据包的表单为重发的标识信息时,对该RTP数据包进行重发,反之不进行重发;
当损伤类型设置为均匀分布时延损伤时,损伤配置表中各RTP数据包的时延值呈均匀分布,损伤方法为:在每个RTP数据包的报文首部添加发送时间戳,该发送时间戳的值等于通信连接模块接收到RTP数据包的时间加上
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1