09-SIP视频应用配置举例
本章节下载: 09-SIP视频应用配置举例 (2.33 MB)
本文档介绍了H3C SecPath GAP2000的SIP视频应用配置举例。
安防视频行业发展初期,不同视频厂家系统之间的互联,在技术层面没有实现统一标准。各个监控系统之间的视频资源共享,需要集成平台分别对不同厂家的产品单独接入。由于各厂家产品通讯接口各不相同,负责进行资源整合的平台工作量巨大;从升级维护的角度来说,很多厂家的接口软件版本管理变的异常复杂,容易混乱。H3C SecPath GAP2000视频功能模块是基于GB/T28181标准开发的视频通道功能。用于对接不同SIP监控域视频平台,帮助不同区域的视频平台,在路由交换彻底阻断的情况下,实现SIP信令协商以及RTP码流推送。
本文档中的配置均是在实验室环境下进行的配置和验证,配置前设备的所有参数均采用出厂时的缺省配置。如果您已经对设备进行了配置,为了保证配置效果,请确认现有配置和以下举例中的配置不冲突。
注:所有场景涉及到标准SIP-28181协议时,必须提前导入视频license授权,其它情况无需授权。
本文假设您已了解H3C SecPath GAP2000特性。
如图1所示,上级SIP监控域位于H3C SecPath GAP2000内侧,下级SIP监控域位于H3C SecPath GAP2000外侧。每个SIP监控域都有各自独立的SIP客户端、SIP设备、流媒体服务器、视频服务器(含信令控制服务器、信令网关)。
图1 H3C SecPath GAP2000 SIP视频应用配置举例组网图
· 级联/互联是SIP信令安全路由网关之间的联网模式,大多数视频厂商是将信令安全路由网关(也称“视频网关”、“信令网关”、“SIP网关”或“安全网关”)和信令控制服务器部署在一起的,也就是视频服务器。极少数情况下,视频厂商会将其独立部署。网闸要映射的实际是视频网关,而不是视频服务器。
· 网闸只能放在SIP网关和SIP网关之间级联/互联。只有级联/互联才能保证该SIP协议基于GB/T28181标准。SIP客户端到SIP服务器之间虽然也是SIP协议,但大部分视频厂商目前仍沿用私有标准。因此,网闸不能为SIP客户端到对面SIP服务器配置访问通道。
· 统计网闸两边的级联/互联线路有多少条。是否存在一对多关系。
· 两边SIP服务器级联/互联是基于GB/T28181-2011标准,还是GB/T28181-2016标准。SIP-UDP通道存在V1、V2两个版本。推荐使用V1版本。
· 将所有需要SIP服务器的IP以及信令网关端口PORT统计全,设计下级平台向上级平台注册的服务映射列表,GB/T28181-2016环境中视频厂商可能开启TCP级联/互联端口,GB/T28181-2011标准中没有TCP端口。申请内外端需要的IP地址。
本举例是在E6008P06版本上进行配置和验证的。
通过网闸MAN管理口登录网闸,打开浏览器输入https://192.168.0.1,(MAN口为专用管理口,其它网口不允许管理配置网闸)
系统管理员默认账号:admin;默认密码:adminh3c
安全管理员默认账号:secrecy;默认密码:secrecyh3c
图2 登录界面
该配置在系统管理员admin下操作
点击“网络管理”→“IP地址管理”→“内端机”,选中SLOT0/0,设置网闸内端系统的IP。
图3 设置网闸内端系统的IP
点击“+”,设置完后点“保存”退出。
图4 新建IP
图5 配置IP和掩码
点击“网络管理”→“IP地址管理”→“外端机”,选中SLOT0/0,点击“+”设置网闸外端系统的IP。
图6 设置外端系统IP
设置完后点“保存”退出。
图7 添加、保存外端IP设置
点击“网络管理”→“路由配置”设置内、外端机的路由,如下图。
图8 路由管理
点击“新增路由”按钮添加路由。注意“端机口”参数,由于网闸是多机体系,请注意所添加的路由是在哪一端系统上的。设置完毕后点“保存”退出。
图9 添加、保存内端路由
图10 设置外端路由
该配置在安全管理员secrecy下操作
针对需要开放的服务,配置网闸通道,点击“通道管理”,如下图:
图11 通道管理
点击“+”添加通道
如果视频服务器使用UDP来封装SIP信令(和码流无关),则配置SIP-28181-UDP通道
图12 添加外到内,SIP-28181-UDP通道
如果视频服务器使用TCP来封装SIP信令(和码流无关),则配置SIP-28181-TCP通道
图13 添加外到内,SIP-28181-TCP通道
图14 启用通道
6007P03版本之前推荐使用V2,6008版本之后推荐使用V1。
6007P03及其之前版本的SIP-28181-UDP-V1模式仅适用于早期GB/T28181-2011版本的视频服务,相对于V2版本,V1无法配置源端服务器IP,部分厂商的信令可能无法完全转换,而且不能用在GB/T28181-2016环境中。V2可用于大多数GB/T28181-2011和GB/T28181-2016组网环境。目前已适配过的厂商有海康、大华、宇视、科达等。但V2模式仅适合人工点播的业务场景。如果单位时间内同时发生大量invite点播,比如每分钟几百次点播(某些人工智能点播应用,或高级算法的抓图软件),网闸视频模块的处理能力可能达到极限,无法处理完所有请求。为了优化性能同时解决兼容性问题,6008版本开始,SIP-28181-UDP-V1模式进行了重制,已经可以实现每分钟500次invite点播的处理,并能兼容GB/T28181-2011和GB/T28181-2016标准。
其次上级平台如果是基于GB/T28181-2016标准,网闸并非一定要配置SIP-28181-TCP,应当视现场实际情况而定。如果平台厂商没有开启TCP信令监听服务,可以不用配置SIP-28181-TCP通道。如果厂商将SIP信令和码流传输协议选择基于TCP协议,那问题排查可能会很困难。因为基于TCP的SIP会对报文进行加密,加密后我们无法再通过分析报文来判断问题具体原因了,码流的质量也很难通过抓包软件来统计。所以建议视频厂商优先采用基于UDP的SIP以及码流。
视频平台在信令协议上选TCP或UDP,跟码流的TCP、UDP不是一个概念。网闸在选SIP-TCP或SIP-UDP通道时,只取决于信令的协议类型,和视频码流是否为TCP、UDP无关。Invite信令(点播)协商成功后,这两种通道类型,都能同时支持TCP码流和UDP码流。
码流不支持TCP主动模式,码流代理最多添加20条,仅支持ipv4,且配置码流的通道不支持上传和下载。
监听端口和目的端口需要保持一致,不能做转换。虽然界面允许将这2个参数配置不同数值,但目前各大视频厂商均不允许端口转换。SIP信令中有大量协议字段会涉及到端口号,网闸转换后,视频平台不一定能适配、兼容。
当存在一对多的级联关系时,比如内网1个视频服务器,外网2个视频服务器。网闸内、外端需要各准备2个IP作为监听和连接IP,不能使用同一个IP不同端口的配置方法。
RTP码流端口段不需要配置,网闸是通过解析SIP信令中的协商结果,动态生成RTP码流通道的。以内网点播外网视频为例,该过程分2步骤:首先,解析内网SIP服务器发送过来的SIP报文,将收流地址改为网闸外端机,使外网流媒体将RTP码流访问网闸外端IP。第二步,网闸将SIP客户端收流IP映射到网闸外端IP,将收到的RTP码流转发至SIP客户端,有时也可能是内网流媒体服务器。
如果RTP码流并发较高,可以适当调整线程数。建议不超过10。
每一组级联/互联,需要配置单向SIP-UDP或SIP-TCP通道。方向由下级到上级注册方向而定,如果两边平台是双向注册,任选一个方向都行。注意,同一组级联不可以配双向SIP通道,否则反向的注册会产会话冲突。而SIP-UDP或SIP-TCP根据上级开启的信令监听服务而定,通常2选1,UDP居多,不需要两种全配。
每一组联网关系中,网闸所使用的IP(含内、外端监听IP、连接IP)必须独立,不能和其它级联/互联关系混用IP。也不能和其它数据通道混用。虽然用同一个IP,不同SIP端口可以配置,也不影响SIP协商。但是网闸在生成RTP码流的时候,内部码流规则可能会产生逻辑冲突。因此要求,每一组级联/互联,必须使用独立IP。在一对多环境中,需要格外注意。
SIP业务和其他应用业务不能使用同一对监听地址和连接地址,必须独立使用。
SIP通道配置端口时32767及以上端口不能作为信令端口,高位端口需要预留出来给码流使用。
视频服务器(信令安全路由网关)在级联/互联组网环境中,既是客户端发起方,同时也是服务接收方。本章介绍,仅涉及与网闸相关的IP和端口配置。其它视频参数的配置,需要由视频厂商完成。
以海康视频平台为例,通过访问http://IP:8001/center打开管理中心,点击“系统维护”→“服务参数配置”→“视频联网网关”,分别找到“国标28181协议TCP端口”和 “国标28181协议UDP端口”,其级联/互联服务端口的设置如下图所示:
图15 海康SIP网关服务端口设置
平台其它服务端口都和网闸SIP通道无关。网闸不需要配置。
海康平台发起端配置,在联网网关的“外域配置”,通过访问http://IP:8080/ncg打开联网网关配置界面,如下图:
图16 联网网关外域配置
将对端级联IP,修改成网闸同一侧监听IP。比如内网视频平台需要将下图位置IP改成网闸内端IP 62.171.35.6,将SIP信令发往网闸内端监听IP。而不能是外网SIP网关实际IP 10.50.48.10。
图17 对端联网服务器IP(网闸监听IP)、端口(网闸监听端口)
同理,外网视频平台,此处需要修改成网闸外端IP 10.50.48.30。而不能是内网的SIP网关实际IP。
下级视频平台向上级平台注册成功后,只要平台权限允许,网闸是支持双向点播的。操作方法可以通过SIP客户端播放视频验证是否联通。部分厂家,还支持浏览器安装插件方式来播放视频。
图18 SIP客户端点播画面
图19 SIP协商及RTP码流点播流程图
抓包分析SIP信令,找到SIP信令中的invite报文。并找到SIP层message body中的(o)和(c)两个字段值,需要验证其SIP客户端(或流媒体服务器)收流IP是否修改成网闸IP。同时通过(m)字段获取码流目标端口。
图20 Invite报文内容修改对照图
然后通过收流IP和码流目标端口过滤出RTP码流会话
图21 下级目标端会话
同时检查SIP客户端和网闸之间会话,验证网闸是否将RTP码流返回给指定的SIP客户端地址(有时可能是上级流媒体服务器)
图22 上级请求端会话
如果网闸两侧都能抓到RTP码流报文,说明SIP视频应用已经通了。
有时候虽然视频能打开,但播放会出现中断、卡顿等现象。此时需要对刚才过滤出来的RTP码流会话做进一步分析
图23 将码流解码(Decode As)为RTP协议
图24 选择码流目标端口值,再选择RTP协议类型
图25 分析RTP流质量
码流质量主要关注2个数值,Lost丢包率和Seq Errs乱序报文数量。大部分厂商是直接将乱序算作丢包处理的。因此对于视频厂商,他们的丢包率=(Lost* RTP Packets +Seq Errs)/ RTP Packets。
图26 过网闸前RTP码流
图27 过网闸后RTP码流
如果通过网闸后,RTP乱序明显增加,这是由于网闸内部传输卡存在负载线路导致。处理该问题请联系研发。
实际上,任何负载均衡节点,包括交换机、路由器、防火墙,在转发RTP码流过程中都会产生乱序。由于RTP是基于UDP协议的,所以只能依赖RTP内部的SEQ来重新排序,但如果视频服务器要处理乱序,就需要消耗大量内存,并且产生播放延迟。所以目前绝大多数视频厂商是不处理乱序的,直接将其视为丢包处理。
一线工程师不但要判断过网闸后的乱序情况,同时也要调查过网闸前收到的码流是否存在乱序。如果RTP码流在到达网闸前已经产生了乱序,那就需要前面的节点设备来处理乱序问题。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!