专利名称:多媒体网络安全系统及方法
技术领域:
本发明涉及通信或计算机领域的网络安全技术,尤指一种多媒体网络安全系统及方法。
背景技术:
随着网络的发展,网络安全也越来越突出,虽然各个企事业单位都有自己的私有网络,但在实际的应用过程中,又不得不与公网及其它网络进行通信,所以,大多数企事业单位为保证自己私有网络地安全,均采用防火墙来加以保障。防火墙之所以能够保障网络安全性,是因为防火墙能对经过的各种报文进行过滤。
请参照图1所示,一般防火墙均不会让任何有公共网络节点主动发起的连接进入防火墙内部,如“公共网络的节点21向私有网络的节点11的端口5000发起TCP连接”;同时,防火墙也限制私有网络内部节点随便向外部网络发起连接,“私有网络的节点11向公共网络的节点21的端口5000发起TCP连接”。如果防火墙允许私有网络内部节点向外部节点发起连接,则需要打开防火墙内部的某个端口,如1图中的防火墙打开了内部80端口,这样私有网络的节点11便可以向公共网络的节点21发起TCP连接,然后,节点21也就可以沿着原路响应节点11的请求,从而完成两个节点间的信息交互。
请参照图2所示,以H.323多媒体系统为例,其基本组件包括若干H.323终端、多点控制单元(MCU)、网守(GK)及网关,每一个组件在该多媒体系统中可作为一个节点,节点间可进行呼叫交互。
所述H.323协议包含两个主要协议H.225.0和H.245;其中H.225.0协议也主要包含两部分的内容认证(RAS,Regispation,Admisstion and Status)协议部分和Q.931协议部分。在H.323协议中,为实现远端摄像机的控制功能,引用了H.224协议,将远端摄像机控制的命令采用H.224协议进行打包,然后放在实时传输协议/实时传输控制协议(RTP/RTCP,Realtime Transport Protocol/Realtime Transport Control Protocol)中进行传送。在H.323协议中,主要用RTP/RTCP协议来传送音频媒体流、视频媒体流以及远端摄像机控制命令。
请参照图3所示,根据H.323协议的规定,节点A和节点B之间完整的呼叫过程主要包括四个过程RAS信令过程、Q.931信令过程、H.245过程和媒体流交互过程。
请参照图4所示,在媒体流的交互过程中,一个典型的H.323呼叫将包括音频媒体流和视频媒体流传输。在视/音频媒体流的传输过程中,每个节点A或B需要打开4个接收端口,包括视频媒体流的RTP接收端口、音频媒体流的RTP接收端口、视频媒体流的RTCP接收端口和音频媒体流的RTCP接收端口。
这样,根据H.323多媒体通信的特点,一旦呼叫的双方处于防火墙的两边,即节点A和节点B处于防火墙的两边,则必须在防火墙上打开H.323多媒体通信过程中媒体流需要用到的多个端口,因此减低了防火墙对网络安全的预防能力。
现有技术中,节点A、B之间有防火墙采用端口收敛技术,减少在防火墙上打开的端口数量。请参照图5所示,在防火墙内部(即在防火墙和私有网络节点A之间)设置独立的用于端口收敛的客户端设备;在防火墙外部(即在防火墙和公共网络节点B之间)设置独立的用于端口收敛的服务端设备,从而达到端口收敛的目的。在进行端口收敛时,现有技术一般采用音频和视频两个端口。
这样,现有技术虽然采用端口收敛技术,减少了在防火墙上打开端口的数量,但还存在以下问题
(1)必须在防火墙内部放置独立的端口收敛设备,增加用户使用成本,也将导致实际应用及维护的复杂度;
(2)由于还存在两个端口,所以端口收敛并不是很彻底;
(3)由于每个呼叫均要经过客户端/服务端进行端口收敛处理,所以其效率较低,而且会因此引入延迟,影响通信质量;
(4)由于该方式将客户端作为内部网络的代理来使用,这就要求节点A必须将网守的地址配置成客户端的地址。这样,在公共运营的环境下,非常不利于运营商统一部署业务,公布统一的网守地址,所以该方式有明显的使用局限性。
发明内容
本发明解决的问题是提供一种多媒体网络安全系统及方法,使位于防火墙两边的节点交互过程中,防火墙打开尽可能少端口,避免端口收敛不彻底,提高防火墙多网络安全防护的有效性。
为解决上述问题,本发明多媒体网络安全系统包括具有防火墙端口的防火墙、位于防火墙内侧的具有内部节点端口的内部节点及位于防火墙外侧的具有外部节点端口的外部节点,所述内部节点和外部节点穿越防火墙建立呼叫,所述外部节点在与防火墙之间设置有收敛端口,用于从一个防火墙端口接收内部节点所有内部节点端口的媒体流并区分媒体流以及将外部节点所有外部节点端口的媒体流经其穿越一个防火墙端口发送至内部节点的各个相应内部节点端口,且所述内部节点端口和外部节点端口的媒体流都具有用于区分媒体流的唯一标识。
所述内部节点在与防火墙之间设置有收敛端口,用于从一个防火墙端口接收外部节点的收敛端口的媒体流并区分媒体流以及将内部节点所有内部节点端口的媒体流经其穿越一个防火墙端口发送至外部节点的收敛端口。
所述媒体流的唯一标识包括内部节点向外部节点发送的告知报文中的IP包头中报文的源IP地址、用户数据报协议包头中报文的源端口号及对应重定向报文内容中的媒体流类型。
所述媒体流的唯一标识指在媒体流采用实时传输协议传输时的实时传输协议报文中的信息包标题域中的有效载荷类型域和同步源标识符域。
相应地,本发明多媒体网络安全方法,用于实现分别位于具有防火墙端口的防火墙内外两侧的内部节点和外部节点间的通信,包括以下步骤设置步骤,至少在外部节点设置收敛端口;确定地址步骤,确定通信对端的收敛端口地址;标识交互步骤,根据收敛端口地址,向收敛端口发送告知报文,该告知报文携带媒体流类型对应的唯一标识;媒体流传输步骤,根据收敛端口地址,经由收敛端口,穿越一个防火墙端口向通信对端发送携带唯一标识的媒体流或从一个防火墙端口接收通信对端的携带唯一标识媒体流;媒体流分发步骤,根据媒体流唯一标识,收敛端口区分媒体流。
所述方法还包括以下步骤声明步骤,向通信对端声明本身具有端口收敛能力。
所述声明步骤基于H.323协议,其具体过程如下向通信对端发送连接请求消息,声明本身支持端口收敛,所述连接请求消息通过扩展非标准信息域实现支持端口收敛的声明。所述声明步骤还包括以下步骤通信对端反馈呼叫处理消息,声明本身支持端口收敛,所述呼叫处理消息通过扩展非标准信息域实现支持端口收敛的声明。
所述确定地址步骤通过事先约定来实现。
所述确定地址步骤通过基于H.245协议交互协商实现,具体包括以下步骤向具有收敛端口的通信对端发送通过扩展H.245协议中命令消息中的非标字段实现的重定向地址请求消息;通信对端反馈通过扩展H.245协议中命令消息中的非标字段实现的且携带收敛端口地址的重定向地址响应消息。
所述确定地址步骤基于H.245协议通过打开逻辑通道实现,具体过程为具有收敛端口的外部节点或内部节点在打开逻辑通道响应消息中将本身各个端口地址皆填写成收敛端口地址。
标识交互步骤中告知报文基于重定向报文实现,所述重定向报文包括IP网络包头、包含报文的源IP地址的IP包头、包含报文的源端口号的用户数据报协议包头及包含媒体流类型的重定向报文内容;所述唯一标识包括所述的源IP地址、源端口号及对应的媒体流类型。
所述标识交互步骤中告知报文基于实时传输协议报文实现,采用信息包标题域中有效载荷类型域和同步源标识符域实现媒体流的唯一标识,具体步骤为向收敛端口发送同步源标识符通知报文,声明采用同步源标识符值及其对应的媒体流类型;收敛端口反馈同步源标识符响应报文,在同步源标识符响应报文包含同步源标识符值冲突或通知成功消息。
所述同步源标识符通知报文和同步源标识符响应报文通过扩展H.245协议中命令消息中的非标字段实现。
与现有技术相比,本发明具有以下优点
由于采用收敛端口及媒体流唯一标识,使得在不影响内部节点的正常通信的情况下,在防火墙上打开的端口尽可能的少(例如仅一个防火墙端口),从而提高防火墙对网络安全防护的有效性,同时也方便用户对防火墙设备的配置及维护;
不需要在防火墙内部增加额外设备/组件,方便用户使用,减少用户使用成本;同时也不会因此而影响通信效果;
由于媒体流的唯一标识、收敛端口地址确定实现方式有多种,方便用户在多种场合下使用,没有使用局限性。
图1是现有技术中网络安全系统一实施例框图。
图2是现有技术中H.323多媒体系统框图。
图3是现有技术中H.323多媒体呼叫流程图。
图4是图3细化流程图。
图5是现有技术中网络安全系统另一实施例框图。
图6是现有技术中多媒体网络安全系统一实施例框图。
图7是现有技术中多媒体网络安全系统另一实施例框图。
图8是本发明多媒体网络安全系统一实施例框图。
图9是本发明多媒体网络安全系统另一实施例框图。
图10是本发明多媒体网络安全系统又一实施例框图。
图11是本发明多媒体网络安全方法整体流程图。
图12是本发明多媒体网络安全方法一实施例流程图。
图13是本发明多媒体网络安全方法另一实施例流程图。
图14、15是图12、13中连接请求消息和呼叫处理消息扩展示意图。
图16、17是图12中重定向地址请求消息扩展示意图。
图18、19是图12中重定向地址响应消息扩展示意图。
图20是图12、13中重定向报文扩展示意图。
图21是本发明多媒体网络安全方法又一实施例流程图。
图22、23是图21中同步源标识符通知报文扩展示意图。
图24、25是图21中同步源标识符响应报文扩展示意图。
具体实施例方式
请参阅背景技术,防火墙内外两侧分布私有网络和公共网络,在本发明中将位于防火墙内侧的私有网络中的节点称之为内部节点,而位于防火墙外侧的公共网络或其他网络中的节点称之为外部节点。在不需要多媒体通讯时,例如,私有网络为企业网,仅需要与公共网络(如Internet)进行通讯,则在防火墙上开设一个端口即可。
然而在多媒体通讯时,请参照图6、7所示,多媒体通讯中按照H.323协议,一个普通的视音频呼叫,其媒体流的收发端口包括视频实时传输协议(RTP,Realtime Transport Protocol)端口、视频实时传输控制协议(RTCP,Realtime Transport Control Protocol)端口、音频实时传输协议(RTP,RealtimeTransport Protocol)端口和音频实时传输控制协议(RTCP,Realtime TransportControl Protocol)端口,这些端口都需要在防火墙上打开。由于每个内部节点对视频RTP端口、视频RTCP端口、音频RTP端口及音频RTCP端口均有发送和接收两个方向的媒体流,请参见图7所示,如果每个端口都不一致,则该呼叫在防火墙上需要打开8个端口。请参照图6所示,如果内部节点和外部节点的收发端口一致,则也需要在防火墙上打开4个端口。在防火墙打开端口越多越影响网络安全,多到一定程度防火墙形同虚设。现有技术采用端口收敛技术以减少在防火墙上开设端口的数量,但是以多媒体通讯中内部节点和外部节点的收发端口一致情况为例,采用现有技术解决方案,仍至少需要在防火墙上打开两个端口。
本发明的目的是使端口收敛更彻底,以便在多媒体通讯中在防火墙上开设尽量少的端口,一般情况,采用本发明解决方案,仅需要在防火墙打开一个端口且不影响内部节点和外部节点正常的多媒体通讯。
请参照图8所示,本发明多媒体网络安全系统,包括具有防火墙端口的防火墙1、位于防火墙内侧的具有内部节点端口的内部节点2及位于防火墙外侧的具有外部端口的外部节点3,所述内部节点2和外部节点33穿越防火墙1建立呼叫,所述外部节点3在与防火墙1之间设置有收敛端口31,收敛端口31用于从一个防火墙端口处接收内部节点2所有内部节点端口的媒体流并区分媒体流以及将外部节点3所有外部节点端口的媒体流经其穿越一个防火墙端口发送至内部节点2的各个相应内部节点端口,且所述内部节点端口和外部节点端口的媒体流具有用于区分媒体流的唯一标识。
请参照图9所示,所述内部节点2在与防火墙1之间设置有收敛端口22,该内部节点2的收敛端口22用于从一个防火墙端口处接收收敛端口31的媒体流并区分媒体流作相应处理以及将内部节点2所有内部节点端口的媒体流经其穿越一个防火墙端口发送至收敛端口31。
图8、9中的实施例是基于内部节点2和外部节点3收发端口一致的情况。请参照图10所示,当内部节点2和外部节点3收发端口不一致时,仍然适用图8、9中收敛端口设置方案。通过图10中的箭头方向分辨出单箭头表示内部节点2向外部节点3发送媒体流,而双箭头表示外部节点3向内部节点2发送媒体流。之所以用双箭头表示外部节点3向内部节点2传输方向,在实际的传输过程中,除了外部节点3向内部节点2发送媒体流外,内部节点2也要向外部节点3发送相应的报文。根据防火墙1的包过滤原则,在正常的情况下,外部节点3是不能直接向内部节点2发送媒体流的,除非内部节点2先向外部节点3发送告知报文告知,然后外部节点3采用沿着原路反馈到内部节点2。当然防火墙的包过滤原则同样适用于图8、9中的具体实施例,且在本发明多媒体网络安全方法会继续描述。另外,本发明涉及到公私网穿越的内容请参照专利申请申请号03159214.7,其名称为《多媒体协议穿越网络地址转换设备的实现方式》中的说明。
所述唯一标识是用于外部节点或内部节点在收敛端口处区分来自通信对端不同端口媒体流,以作相应处理,例如设置收敛端口的外部节点或内部节点通过媒体流中唯一标识能够将统一从收敛端口接收到的媒体流区分为“视频RTP”、视频“RTCP”、“音频RTP”及“音频RTCP”报文,再作进一步的处理,区分过程参见本发明多媒体网络安全方法。所述媒体流的唯一标识通过内部节点根据包过滤原则向外部节点发送的告知报文实现的,包括告知报文中的IP包头中报文的源IP地址、用户数据报协议包头中报文的源端口号及对应重定向报文内容中的媒体流类型。
或者所述唯一标识通过在媒体流采用实时传输协议传输时,直接在实时传输协议报文中,采用信息包标题域中有效载荷类型域(PT)和同步源标识符域(SSRC)实现,后文详述。
在防火墙打开端口,一般是指在防火墙1的内部接口上,即打开防火墙1内部节点2可以访问公共网络或其他网络的某个端口,如打开防火墙1的80端口,则表示防火墙内部节点2可以访问外部网络中以80端口作为接收端口的外部节点3。
本发明多媒体网络安全系统中,因为至少在外部节点3设置收敛端口31(根据防火墙的包过滤原则,仅在内部节点设置收敛端口,防火墙1对应外部节点的各个端口还需开设多个端口),相当于无论外部节点3有多少个端口,其媒体流的收发都集中在一个收敛端口31处,所以穿越防火墙1时只需打开一端口与收敛端口31建立通讯,防火墙1内部节点2仅需要向收敛端口31发送媒体流便能完成正常的通信,从而减少防火墙打开端口的数目。
若内部节点2也设置收敛端口22,则此时私有网络和公共网络或其他中的外部节点3都设置了收敛端口,所以,同样防火墙1的内部节点2仅需要由收敛端口22发送媒体流便能完成正常的通信,即只需要打开内部节点2收敛端口22到外部节点3的收敛端口31这一端口,从而减少防火墙1打开端口的数目。
请参照图11所示,本发明多媒体网络安全方法,用于分别位于防火墙内外两侧的内部节点和外部节点间通信,其特征在于,包括以下步骤
步骤s1,设置步骤,至少在外部节点设置收敛端口;
步骤s2,确定地址步骤,确定通信对端的收敛端口地址;
步骤s3,标识交互步骤,根据收敛端口地址,向收敛端口发送各个媒体流类型对应的唯一标识,因为至少在外部节点设置收敛端口,所以需要至少向外部节点的收敛端口发送告知报文(符合防火墙包过滤原则),携带媒体流类型对应的唯一标识;
步骤s4,媒体流传输步骤,根据收敛端口地址,经由收敛端口,穿越一个防火墙端口向通信对端发送携带唯一标识的媒体流或从一个防火墙端口接收通信对端携带唯一标识的媒体流;
步骤s5,媒体流分发步骤,根据媒体流唯一标识,收敛端口区分各个媒体流。
所述多媒体网络安全方法还包括以下步骤声明步骤,向通信对端声明本身具有端口收敛能力。所述声明步骤基于H.323协议进一步包括以下步骤向通信对端发送连接请求消息Setup,声明本身支持端口收敛,所述连接请求消息Setup通过扩展非标准信息域实现支持端口收敛的声明;通信对端反馈呼叫处理消息CallProceeding,声明本身支持端口收敛,所述呼叫处理消息CallProceeding通过扩展非标准信息域实现支持端口收敛的声明。需要说明的是仅使用连接请求消息而不要相应的呼叫处理消息也可达成声明效果。
所述确定地址步骤通过事先约定实现或者所述确定地址步骤通过基于H.245协议交互协商实现或者基于H.245协议通过打开逻辑通道实现。所述确定地址步骤,基于H.245协议交互协商,具体包括以下步骤向具有收敛端口的通信对端发送重定向地址请求消息,所述重定向地址请求消息通过扩展H.245协议中命令消息中的非标字段实现;通信对端反馈重定向地址响应消息,所述重定向地址响应消息携带收敛端口地址,且重定向响应消息通过扩展H.245协议中命令消息中的非标字段实现。
所述确定地址步骤基于H.245协议通过打开逻辑通道实现,具体包括以下步骤具有收敛端口的外部节点或内部节点在打开逻辑通道响应消息中将本身各个端口地址皆填写成收敛端口地址。
标识交互步骤中告知报文基于重定向报文实现,所述重定向报文包括IP网络包头、包含报文的源IP地址的IP包头、包含报文的源端口号的用户数据报协议包头及包含媒体流类型的重定向报文内容,具体步骤为向收敛端口发送重定向报文,而所述唯一标识包括所述的源IP地址、源端口号及对应的媒体流类型。
所述标识交互步骤中告知报文也可以基于实时传输协议报文实现,采用信息包标题域中有效载荷类型域和同步源标识符域实现媒体流的唯一标识,具体包括以下步骤向收敛端口发送同步源标识符通知报文,声明采用同步源标识符值及其对应的媒体流类型;收敛端口反馈同步源标识符响应报文,在同步源标识符响应报文包含同步源标识符值冲突或通知成功消息。所述同步源标识符通知报文和同步源标识符响应报文通过扩展H.245协议中命令消息中的非标字段实现。
如上所述,确定地址步骤和标识交互步骤具体实现方案有多种,可以排列组合多种不同的多媒网络安全方法具体实施例。在本申请文件为说明本发明多媒体网络安全方法原理,列举出3个实施例加以说明。
请参照图12所示,本发明多媒体网络安全方法一具体实施例(该实施例在内部节点、外部节点收发端口一致且在外部节点设置收敛端口),具体包括以下步骤
(1)内部节点在向外部节点发送Setup消息时,需要对Setup消息进行扩展,以便在Setup消息中声明内部节点具有端口收敛能力(即支持端口收敛),这样做可以兼容不支持端口收敛功能的节点,另外也可以在Setup消息声明主叫还是被叫,在本实施例中设内部节点为主叫;
(2)外部节点接收到内部节点发送的Setup消息后,向内部节点反馈CallProceeding消息时,需要对CallProceeding消息进行扩展,同时也在CallProceeding消息中声明外部节点具有端口收敛能力(该步骤可以省略);
(3)继续完成正常的H.323协议交互过程,这些过程与本专利申请无关,故省略;
(4)当完成所有的H.323协议过程后,内部节点通过H.245的扩展消息向外部节点发送重定向地址请求消息,请求外部节点的收敛端口地址;
(5)外部节点接收到重定向地址请求消息后,向内部节点返回重定向地址请求响应消息,并在该响应消息中带上收敛端口地址;这样如果事先内部节点并不知道外部节点的收敛端口地址则之行步骤(4)、(5),在具体的实现过程中,如果内部节点和外部节点双方已经约定了收敛端口地址,则可以省略步骤(4)和(5);
(6)在完成步骤(1)~(5)后,虽然按照H.323协议的过程,这时内部节点便可以向外部节点发送媒体流,当如果此时内部节点直接向外部节点的收敛端口发送媒体流,则外部节点还是不能区分各个端口媒体流的内容;所以,内部节点在向外部节点发送媒体流之前,需要先向收敛端口发送告知报文,本实施例采用重定向报文,使得外部节点能够根据重定向报文的内容来区分内部节点随后发送的各种媒体流信息;
(7)在外部节点收到重定向报文后,内部节点便可以向外部节点正常发送的携带唯一标识的媒体流,而外部节点也可以正常向内部节点发送唯一标识的媒体流了;
(8)根据媒体流唯一标识,将收敛端口处区分接收的媒体流进行相应处理。
请参照图13所示,本发明多媒体网络安全方法一具体实施例(该实施例在内部节点、外部节点收发端口一致且在外部节点设置收敛端口),具体包括以下步骤
(1)内部节点在向外部节点发送Setup消息时,需要对Setup消息进行扩展,以便在Setup消息中声明内部节点具有端口收敛能力(即支持端口收敛),这样做可以兼容不支持端口收敛功能的节点,另外也可以在Setup消息声明主叫还是被叫,在本实施例中设内部节点为主叫;
(2)外部节点接收到内部节点发送的Setup消息后,向内部节点反馈CallProceeding消息时,需要对CallProceeding消息进行扩展,同时也在CallProceeding消息中声明外部节点具有端口收敛能力;
(3)继续完成正常的H.323协议交互过程,这些过程与本专利无关,故省略;
(4)与上述实施例不同的是,本实施例直接在打开逻辑通道的过程中向内部节点告知外部节点的收敛端口地址,而不需要再通过扩展H.245消息来进行通知。在告知时,外部节点只需要在打开逻辑通道响应消息中,将自己的视频RTP接收地址、视频RTCP接收地址、音频RTP接收地址、音频RTCP接收地址均填为“收敛端口”的地址便可以了。这里的打开逻辑通道过程为标准的H.245协议过程,所以不再作详细描述;
(5)在完成过程(1)~(4)后,虽然按照H.323协议的过程,这时内部节点便可以向外部节点发送媒体流,当如果此时内部节点直接向外部节点的“收敛端口”发送媒体流,则外部节点还是不能区分媒体流的内容。所以,内部节点在向外部节点发送媒体流之前,需要先向收敛端口发送重定向报文,使得外部节点能够根据重定向报文的内容来区分内部节点随后发送的各种媒体流信息;
(6)在外部节点收到重定向报文后,内部节点便可以向外部节点正常发送的携带唯一标识的媒体流,而外部节点也可以正常向内部节点发送唯一标识的媒体流了;
(7)根据媒体流唯一标识,将收敛端口处的媒体流分发给目标节点的相应各个端口。
下面对上述两个实施例中涉及具体协议进行说明。多媒体通信中H.323协议包含两个主要协议H.225.0和H.245;其中H.225.0协议也主要包含两部分的内容RAS协议部分和Q.931协议部分。在H.323协议中,为实现远端摄像机的控制功能,引用了H.224协议,它将远端摄像机控制的命令采用H.224协议进行打包,然后放在RTP/RTCP协议中进行传送。RTP/RTCP协议(它是“实时传输协议/实时传输控制协议”的简称),在H.323协议中,主要用该协议来传送音频码流、视频码流以及远端摄像机控制命令。
请参照图14、15所示,Setup/CallProceeding消息扩展。
对Setup/CallProceeding 消息的非标参数的数据域(即NonStandardParameter的data域)进行扩展,用于表明该内部节点或外部节点端口收敛的能力以及本次呼叫内部节点做被叫还是主叫。
扩展协议的填写方式是在H323-UU-PDU中的非标数据(nonStandardData)字段中填写。nonStandardData(采用的结构为NonStandardParameter)包含两部分内容非标标识(nonStandardIdentifier)和数据域(data)。其中nonStandardIdentifier部分根据标准协议规定的内容进行填写,而Data部分的填写见图14、15。下面H.323相关字段描述
H323-UU-PDU∷=SEQUENCE{h323-message-body CHOICE{setup Setup-UUIE,callProceedingCallProceeding-UUIE,connect Connect-UUIE,alerting Alerting-UUIE,information Information-UUIE,releaseComplete ReleaseComplete-UUIE,facility Facility-UUIE,...,progress Progress-UUIE,empty NULL,--used when a Facility message is sent,statusStatus-UUIE,statusInquiry StatusInquiry-UUIE,setupAcknowledge SetupAcknowledge-UUIE,notifyNotify-UUIE},nonStandardDataNonStandardParameter OPTIONAL,(采用该字段)...,其他}<!-- SIPO <DP n="14"> --><dp n="d14"/>NonStandardParameter∷=SEQUENCE{nonStandardIdentifierNonStandardIdentifier,data OCTET STRING}NonStandardIdentifier∷=CHOICE{objectOBJECT IDENTIFIER,h221NonStandard SEQUENCE{t35CountryCode INTEGER(0..255),--country,per T.35,t35Extension INTEGER(0..255),--assigned nationally,manufacturerCode INTEGER(0..65535)--assigned nationally,}}
数据域进一步包括(见图13)类型、长度及参数。请参照图14所示,以Setup消息为例,当类型取值为1,参数取值为1,则表示支持端口收敛。
请参照图16、17、18及19所示,重定向地址请求(MPR)和重定向地址响应消息(MPR-ACK)的扩展。重定向地址请求消息,以下简称MPR(MediaPort Req);重定向地址响应消息,以下简称MPR-ACK。
MPR和MPR_ACK消息是H.245的扩展消息。MPR和MPR-ACK用于对重定向消息请求和响应,返回请求内部节点或外部节点新的发送媒体重定向报文的地址,即通信对端的收敛端口地址。
不管是MPR还是MPR-ACK消息,其均利用H.245协议命令消息(command消息,对应的结构是CommandMessage)中的nonStandard(非标字段,对应的结构是NonStandardMessage)字段进行扩展。在nonStandard中,使用非标数据字段(nonStandardData字段),nonStandardData(采用的结构为NonStandardParameter,非标参数)包含两部分内容非标标识(nonStandardIdentifier)和数据域(Data)。其中nonStandardIdentifier部分根据标准协议规定的内容进行填写,而Data部分的填写请参照图16、17、18及19。
H.245中相关字段描述如下
MultimediaSystemControlMessage∷=CHOICE{request RequestMessage,responseResponseMessage,command CommandMessage,--采用该消息indication IndicationMessage,...}CommandMessage∷=CHOICE{nonStandardNonStandardMessage,--采用该字段maintenanceLoopOffCommand MaintenanceLoopOffCommand,sendTerminalCapabilitySet SendTerrninalCapabilitySet,encryptionCommand EncryptionCommand,flowControlCommandFlowControlCommand,endSessionCommand EndSessionCommand,miscellaneousCommand MiscellaneousCommand,...,communicationModeCommand CommunicatiohModeCommand,conferenceCommand ConferenceCommand,h223MultiplexReconfiguration H223MultiplexReconfiguration,newATMVCCommand NewATMVCCommand,mobileMultilinkReconfigurationCommand MobileMultilinkReconfigurationCommand}NonStandardMessage ∷=SEQUENCE{nonStandardData NonStandardParameter,...}NonStandardParameter∷=SEQUENCE{nonStandardIdentifierNonStandardIdentifier,data OCTET STRING}NonStandardIdentifier ∷=CHOICE --Note1{object OBJECT IDENTIFIER,h221NonStandard SEQUENCE{t35CountryCodeINTEGER(0..255),--country,per T.35,t35Extension INTEGER(0..255),--assigned nationally,manufacturerCode INTEGER(0..65535)--assigned nationally}}
请参照图16、17所示,MPR消息中的非标数据字段中数据域包括以下字段及取值(各字段均采用网络字节序)
标识固定填0x45434543;
长度消息长度,以字节为单位,现在固定为8个字节;
类型固定填0(标识为MPR);
子类型取值及对应的端口,参见图17;
保留4字节保留字段,填0。
请参照图18、19所示,MPR_ACK消息中的非标数据字段中数据域包括以下字段及取值(各字段均采用网络字节序)
标识固定填0x45434543;
类型目前固定为1(标识为MPR_ACK);
长度消息长度,以字节为单位,现在固定为12个字节;
地址属性固定为2;
子类型,取值及对应的端口,参见图19;
端口号用于内部节点或外部节点发送重定向报文的目的端口号,即收敛端口端口号;
IP地址用于内部或外部节点发送重定向报文的目的IP地址,即收敛端口的IP地址;
保留4字节保留字段,固定填0。
这样,在MPR_ACK消息携带收敛端口地址记录在字段端口号和IP地址内。
请参照图20所示,重定向报文,以下简称MRI(Media RedirectIndication)。MRI报文用于建立防火墙内部到防火墙外部的媒体流通道,其扩展方式与MPR和MPR_ACK消息的扩展方式相同,不再赘述
MRI报文中的非标数据字段中数据域,即报文内容包括以下字段及取值(各字段均采用网络字节序)如下
标识固定填0x45434543
长度重定向报文的字节数,不包括标识和长度字段;
类型1-初始化,2-维持;
私网地址内部节点发送重定向报文使用的源IP地址;
私网端口内部节点发送重定向报文使用的源端口;
媒体种类
RTP图象 =0x01
RTCP图象=0x02
RTP声音 =0x03
RTCP声音=0x04
RTP H.224 =0x05
RTCP H.224 =0x06
方向0-接收方向,1-发送方向;
保留62字节保留字段,必须全部填0;
号码长度内部节点号码长度;
号码内部节点的节点号码。
当收发端口一致/不一致,重定向报文以“方向的取值0-接收方向或1-发送方向”区分确定内部节点和外部节点的媒体流,该重定向报文由内部节点向外部节点发送,外部节点遵照重定向报文的路径返回进行交互。
一个重定向报文的格式如下IP网络包头+IP包头(包含报文的源IP地址,IP1)+UDP包头(包含报文的源端口号,port1)+重定向报文内容(包含重定向报文中的节点号码、源端口号port2、源IP地址IP2及对应的媒体流类型,如图20所示);而“RTP/RTCP”报文的格式如下IP网络包头+IP包头(包含报文的源IP地址)+UDP包头(包含报文的源端口号)+RTP/RTPC报文内容。在上述的实现过程中,首先根据重定向报文内容中的节点号码、源端口号port2和源IP地址IP2来确定其对应的是什么类型的媒体流,确定媒体流类型后,又因为IP包头的源IP地址IP1和UDP包头的端口号port1唯一确定,则通过重定向报文结构可对应得出IP包头源IP地址IP1和UDP包头的端口号port1唯一对应的媒体流类型。这样虽然在随后接收到的“RTP/RTCP”报文时没有媒体流类型说明,但可以根据IP1和port1来区分不同类型的媒体流。所述UDP(User Datagram Protocol)指用户数据报协议。
这样,根据包过滤原则MRI报文可作为告知报文,并通知外部节点媒体流采用的标识IP包头中报文的源IP地址+用户数据报协议包头中报文的源端口号+对应重定向报文内容中的媒体流类型。
请结合参照图9、21所示,为本发明多媒体网络安全方法又一实施例,该实施例在内部节点、外部节点收发端口一致且在外部节点、内部节点都设置收敛端口,具体包括以下步骤
(1)内部节点在向外部节点发送Setup消息时,需要对Setup消息进行扩展,以便在Setup消息中声明内部节点具有端口收敛能力,具体扩展方式同前述实施例;
(2)外部节点接收到内部节点发送的Setup消息后,向内部节点反馈CallProceeding消息时,需要对CallProceeding消息进行扩展,同时也在消息中声明外部节点具有端口收敛能力,扩展方式同前述实施例;
(3)继续完成正常的H.323协议交互过程,这些过程与本专利无关,故省略;
(4)同样的,外部节点在打开逻辑通道的过程中告知内部节点其收敛端口的地址;在告知时,外部节点也只需要在打开逻辑通道响应消息中,将自己的视频RTP接收地址、视频RTCP接收地址、音频RTP接收地址、音频RTCP接收地址均填为收敛端口的地址便可以了。这里的打开逻辑通道过程为标准的H.245协议过程,所以不再作详细描述;(注意收敛端口地址的确定过程也可以用来重定向地址请求(MPR)和重定向地址响应消息(MPR-ACK)方式替代);另外,由于内部节点和外部节点都设有收敛端口,所以都需要知道通信对端的收敛端口地址,其实现方式同上;
(5)当完成所有的H.323协议过程后,内部节点通过H.245的扩展消息向外部节点发送向收敛端口发送同步源标识符通知报文(“SSRC通知”消息),向外部节点说明其即将发送的媒体流中将要使用的SSRC值,以SSRC值作为媒体流唯一标识;
(6)收敛端口反馈同步源标识符响应报文,在同步源标识符响应报文包含同步源标识符值冲突或通知成功消息。例如,外部节点接收到“SSRC通知”消息后,首先检查是否存在SSRC值冲突,如果存在SSRC值冲突,则向内部节点返回失败,并说明原因,以便内部节点重新生成SSCR值再通知外部节点,所以在实际的处理过程中,随后的整个通信过程都有可能由于SSCR值的冲突导致不断重复步骤(5)和步骤(6);如果不存在SSCR值冲突,则向内部节点返回成功消息;
(7)内部节点便可以向外部节点正常发送的媒体流,由于RTP/RTCP协议报文中,本身就已经包含SSRC,这样外部节点便可以根据媒体流报文中SSRC值及PT域来区分媒体流的具体内容;同样,这时外部节点也可以正常向内部节点发送媒体流。
所述同步源标识符通知报文/同步源标识符响应报文也可以基于H.245H.245协议命令消息扩展实现。
请参照图22、23所示,所述同步源标识符通知报文非标数据字段中数据域包括以下字段及取值(各字段均采用网络字节序)
标识固定填0x00000001;
长度消息长度,以字节为单位,固定为8;
类型目前固定填0(标识为MPR);
子类型取值及对应的端口,请参照图23;
SSRC值4字节,即将传送的RTP报文中SSRC值。
请参照图24、25所示,所述同步源标识符响应报文非标数据字段中数据域包括以下字段及取值(各字段均采用网络字节序)
标识固定填0x00000001;
长度消息长度,以字节为单位,固定为12;
类型目前固定为1;(标识为MPR_ACK);
子类型取值及对应的端口,请参照图25;
结果标识对SSRC声明的结果。0~成功,1~SSRC冲突,其它~保留;
保留4字节保留字段,固定填0;
SSRC(Synchronization source),同步源即RTP包的信源流,是个随机数。
综上所述,本发明多媒体网络安全系统及方法,用户在应用多媒体业务时,可以带来如下益处
由于采用收敛端口及媒体流唯一标识,使得在不影响内部节点的正常通信的情况下,在防火墙上打开的端口尽可能的少(例如仅一个防火墙端口),从而提高防火墙对网络安全防护的有效性,同时也方便用户对防火墙设备的配置及维护;
不需要在防火墙内部增加额外设备/组件,方便用户使用,减少用户使用成本;同时也不会因此而影响通信效果;
由于媒体流的唯一标识、收敛端口地址确定实现方式有多种,方便用户在多种场合下使用,没有使用局限性。
权利要求
1.一种多媒体网络安全系统,包括具有防火墙端口的防火墙、位于防火墙内侧的具有内部节点端口的内部节点及位于防火墙外侧的具有外部节点端口的外部节点,所述内部节点和外部节点穿越防火墙建立呼叫,其特征在于,所述外部节点在与防火墙之间设置有收敛端口,用于从一个防火墙端口接收内部节点所有内部节点端口的媒体流并区分媒体流以及将外部节点所有外部节点端口的媒体流经其穿越一个防火墙端口发送至内部节点的各个相应内部节点端口,且所述内部节点端口和外部节点端口的媒体流都具有用于区分媒体流的唯一标识。
2.如权利要求1所述的多媒体网络安全系统,其特征在于,所述内部节点在与防火墙之间设置有收敛端口,用于从一个防火墙端口接收外部节点的收敛端口的媒体流并区分媒体流以及将内部节点所有内部节点端口的媒体流经其穿越一个防火墙端口发送至外部节点的收敛端口。
3.如权利要求1或2所述的多媒体网络安全系统,其特征在于,所述媒体流的唯一标识包括内部节点向外部节点发送的告知报文中的IP包头中报文的源IP地址、用户数据报协议包头中报文的源端口号及对应重定向报文内容中的媒体流类型。
4.如权利要求1或2所述的多媒体网络安全系统,其特征在于,所述媒体流的唯一标识指在媒体流采用实时传输协议传输时的实时传输协议报文中的信息包标题域中的有效载荷类型域和同步源标识符域。
5.一种多媒体网络安全方法,用于实现分别位于具有防火墙端口的防火墙内外两侧的内部节点和外部节点间的通信,其特征在于,包括以下步骤
设置步骤,至少在外部节点设置收敛端口;
确定地址步骤,确定通信对端的收敛端口地址;
标识交互步骤,根据收敛端口地址,向收敛端口发送告知报文,该告知报文携带媒体流类型对应的唯一标识;
媒体流传输步骤,根据收敛端口地址,经由收敛端口,穿越一个防火墙端口向通信对端发送携带唯一标识的媒体流或从一个防火墙端口接收通信对端的携带唯一标识媒体流;
媒体流分发步骤,根据媒体流唯一标识,收敛端口区分媒体流。
6.如权利要求5所述的多媒体网络安全方法,其特征在于,所述方法还包括以下步骤
声明步骤,向通信对端声明本身具有端口收敛能力。
7.如权利要求6所述的多媒体网络安全方法,其特征在于,所述声明步骤基于H.323协议,其具体过程如下
向通信对端发送连接请求消息,声明本身支持端口收敛,所述连接请求消息通过扩展非标准信息域实现支持端口收敛的声明。
8.如权利要求7所述的多媒体网络安全方法,其特征在于,所述声明步骤还包括以下步骤
通信对端反馈呼叫处理消息,声明本身支持端口收敛,所述呼叫处理消息通过扩展非标准信息域实现支持端口收敛的声明。
9.如权利要求5所述的多媒体网络安全方法,其特征在于,所述确定地址步骤通过事先约定来实现。
10.如权利要求5所述的多媒体网络安全方法,其特征在于,所述确定地址步骤通过基于H.245协议交互协商实现,具体包括以下步骤
向具有收敛端口的通信对端发送通过扩展H.245协议中命令消息中的非标字段实现的重定向地址请求消息;
通信对端反馈通过扩展H.245协议中命令消息中的非标字段实现的且携带收敛端口地址的重定向地址响应消息。
11.如权利要求5所述的多媒体网络安全方法,其特征在于,所述确定地址步骤基于H.245协议通过打开逻辑通道实现,具体过程为具有收敛端口的外部节点或内部节点在打开逻辑通道响应消息中将本身各个端口地址皆填写成收敛端口地址。
12.如权利要求5所述的多媒体网络安全方法,其特征在于,标识交互步骤中告知报文基于重定向报文实现,所述重定向报文包括IP网络包头、包含报文的源IP地址的IP包头、包含报文的源端口号的用户数据报协议包头及包含媒体流类型的重定向报文内容;所述唯一标识包括所述的源IP地址、源端口号及对应的媒体流类型。
13.如权利要求5所述的多媒体网络安全方法,其特征在于,所述标识交互步骤中告知报文基于实时传输协议报文实现,采用信息包标题域中有效载荷类型域和同步源标识符域实现媒体流的唯一标识,具体步骤为向收敛端口发送同步源标识符通知报文,声明采用同步源标识符值及其对应的媒体流类型;收敛端口反馈同步源标识符响应报文,在同步源标识符响应报文包含同步源标识符值冲突或通知成功消息。
14.如权利要求13所述的多媒体网络安全方法,其特征在于,所述同步源标识符通知报文和同步源标识符响应报文通过扩展H.245协议中命令消息中的非标字段实现。
全文摘要
本发明公开一种多媒体网络安全系统及方法,其中系统包括防火墙、内部节点及外部节点,所述外部节点在与防火墙之间设置有收敛端口,用于从一个防火墙端口接收内部节点所有内部节点端口的媒体流并区分媒体流以及将外部节点所有外部节点端口的媒体流经其穿越一个防火墙端口发送至内部节点的各个相应内部节点端口,且媒体流具有唯一标识。相应多媒体网络安全方法包括以下步骤至少在外部节点设置收敛端口;确定通信对端的收敛端口地址;向收敛端口发送携带媒体流类型对应的唯一标识的告知报文;经由收敛端口,穿越一个防火墙端口向通信对端发送媒体流或从一个防火墙端口接收通信对端媒体流;根据媒体流唯一标识,收敛端口区分媒体流。
文档编号H04L12/24GK1713590SQ200410049678
公开日2005年12月28日 申请日期2004年6月23日 优先权日2004年6月23日
发明者陈显义, 苏红宏 申请人:华为技术有限公司