CN100384168C - H.323系统的多媒体会话穿越nat设备的方法 - Google Patents
H.323系统的多媒体会话穿越nat设备的方法 Download PDFInfo
- Publication number
- CN100384168C CN100384168C CNB200510022479XA CN200510022479A CN100384168C CN 100384168 C CN100384168 C CN 100384168C CN B200510022479X A CNB200510022479X A CN B200510022479XA CN 200510022479 A CN200510022479 A CN 200510022479A CN 100384168 C CN100384168 C CN 100384168C
- Authority
- CN
- China
- Prior art keywords
- signaling
- terminal
- forwarding server
- address
- registrar
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
H.323系统的多媒体会话穿越NAT设备的方法,涉及一种IP通信方法,特别是涉及一种在NAT/Firewall环境中的H.323多媒体通信方法。本发明包括以下步骤:1)主叫终端向注册服务器发起包含主叫终端与被叫终端的号码信令;2)注册服务器返回的RAS(ACF)信令,3)主叫终端向转发服务器发送Q.931(Setup)信令;4)转发服务器向注册服务器发出两路RAS(ACF)信令,5)注册服务器向转发服务器返回两路RAS(ACF)信令,同时向被叫终端发出私有信令,6)主叫终端向转发服务器发出H.245信令;7)被叫终端建立RTP/RTCP媒体通道传输媒体流;8)转发服务器信令和媒体流。本发明可以在保障安全的基础上实现H.323系统的多媒体会话穿越NAT设备。
Description
技术领域
本发明涉及一种IP通信方法,特别是涉及一种在NAT/Firewall环境中的H.323多媒体通信方法。
背景技术
目前由于IPv4的公网地址资源匮乏,大多企事业单位与居民住宅区的网络都采用了私有地址,通过NAT/防火墙设备进行地址与端口的转换。
NAT/防火墙设备对HTTP等端口固定的一般应用协议只需要转换IP/TCP/UDP头即可很好的实现穿透,但对于在多媒体通信领域,国际上比较有影响的H.323系统来说,它是在控制信息中动态地协商媒体流端口的,信令协议里面的IP地址也是私有的,而私有IP地址在公网上是不能路由的,动态分配的端口为在NAT/防火墙上配置固定的包过滤策略带来了困难。
由于上述原因,H.323多媒体通信系统的普及受到了重大的阻碍。
发明内容
本发明所要解决的技术问题是,提供一种H.323系统的多媒体会话穿越NAT设备的方法,能够实现H.323系统多媒体通信无障碍的穿越NAT设备,克服现有技术的缺陷。
本发明解决所述技术问题采用的技术方案是,H.323系统的多媒体会话穿越NAT设备的方法,包括以下步骤:
1)主叫终端向注册服务器发起RAS(ARQ)信令,该信令中同时包含主叫终端与被叫终端的号码;
所述注册服务器包含各终端的注册信息;
2)注册服务器向主叫终端返回的RAS(ACF)信令,其中携带转发服务器的Q.931信令地址与端口;
3)主叫终端向转发服务器发送Q.931(Setup)信令,该信令中携带被叫终端的号码与转发服务器的Q.931地址与端口;
4)转发服务器收到Q.931(Setup)信令后,向注册服务器发出两路RAS(ARQ)信令,分别要求与主叫终端与被叫终端建立会话,同时转发服务器向主叫终端回应Q.931(Connect)信令,该信令携带转发服务器的H.245地址与端口;
5)注册服务器向转发服务器返回两路RAS(ACF)信令,同时向被叫终端发出私有信令,通知被叫终端呼叫转发服务器;
6)主叫终端收到Q.931(Connect)信令后,向转发服务器发出H.245信令,与之交互,直至建立RTP/RTCP媒体通道传输媒体流;
7)被叫终端收到了通知自己呼叫转发服务器的私有信令后,按参照前面第1)——6)步中主叫终端与注册服务器和转发服务器间的交互过程,建立RTP/RTCP媒体通道传输媒体流;
8)转发服务器将收到的来自主叫终端的信令和媒体流转发给被叫终端,将收到的来自被叫终端的信令和媒体流转发给主叫终端。
在各终端之间进行通信之前,各终端定期向注册服务器发送RAS注册包进行注册,RAS注册包的应用层与IP包头均包含了IP地址。注册服务器根据收到的RAS注册包的应用层与IP报头携带的IP地址是否相同,判断H.323终端处于公网还是私网:若相同则为公网,若不同则为私网。
在有私网终端参加的会话时,注册服务器向主叫终端与被叫终端均返回转发服务器的地址;在没有私网终端参加的会话时,注册服务器返回主叫或被叫终端的地址。
在转发服务器与私网终端之间建立RTP/RTCP通道的过程中,转发服务器在收到私网终端发出的打开通道请求回复后,采用所收到的打开通道请求回复信令携带的地址,发出打开通道请求回复。
本发明的有益效果是,不需要改造现有的NAT/防火墙设备,只需在小幅度改造H.323终端与注册服务器(即GK),并在局端设置专门的转发服务器,就可以在保障安全的基础上实现H.323系统的多媒体会话穿越NAT设备,从而为H.323多媒体通信系统的普及扫除阻碍。
以下结合具体实施方式和附图对本发明作进一步的说明。
附图说明
图1为自动判断终端公私网功能的实现的示意图。
图2为有私网终端参与的会话的流程图。
具体实施方式
本发明的实现分为两大功能模块:
(1)自动判断H.323多媒体终端处于私网还是公网;
(2)在局端设置专门的转发服务器,对来自或发向H.323多媒体终端的Q.931/H.245信令流与RTP/RTCP媒体流进行转发;该转发服务器主要具有类似于MCU的、同时建立多路会话的功能。
本发明实施的具体步骤是:
(1)H.323注册服务器(即GK)收到H.323终端定期发送的RAS注册包,收到的RAS注册包的应用层与IP包头均包含了IP地址:
当终端直接位于Internet时,应用层与IP包头包含的均是H.323终端的公网地址,二者相同;
当终端位于NAT设备背后时,应用层包含的是H.323终端的地址,IP包头包含的却是NAT设备的公网地址,二者不同;
H.323注册服务器(即GK)根据收到的RAS注册包的应用层与IP报头携带的IP地址是否相同,自动判断H.323终端处于公网还是私网。
(2)当一个H.323终端向另一个H.323终端发起呼叫时,按照含有GK的H.323系统中呼叫建立的标准流程,主叫终端首先会向H.323注册服务器(即GK)发起RAS(ARQ)信令,该信令中同时包含了主叫终端与被叫终端的号码,H.323注册服务器(即GK)根据这两个号码以及第1步中的信息得知两个终端分别处于公网还是私网;
(3)当两个终端中有不少于一个终端处于私网时,GK会在向主叫终端返回的RAS(ACF)信令中携带转发服务器的Q.931信令地址与端口;
当两个终端均处于公网时,GK会在向主叫终端返回的RAS(ACF)信令中携带被叫终端的Q.931信令地址与端口,后面就采用标准的H.323流程了,在此不作详述;
以下仅对两个终端中有不少于一个终端处于私网的情形进行叙述;
(4)主叫终端向转发服务器发送Q.931(Setup)信令,该信令中携带被叫终端的号码与转发服务器的Q.931地址与端口;
(5)转发服务器收到Q.931(Setup)信令后,向GK发出两路RAS(ARQ)信令,分别要求与主叫终端与被叫终端建立会话,同时转发服务器向主叫终端回应Q.931(Connect)信令,该信令携带转发服务器的H.245地址与端口;
(6)GK向转发服务器返回两路RAS(ACF)信令,同时向被叫终端发出私有信令,通知被叫终端呼叫转发服务器;
(7)主叫终端收到Q.931(Connect)信令后,向转发服务器发出H.245信令(包括主从判断、能力交换、打开通道等),与之交互,直至建立RTP/RTCP媒体通道传输媒体流;
(8)被叫终端收到了通知自己呼叫转发服务器的私有信令后,与GK和转发服务器进行类似于前面第2-7步中主叫终端与GK和转发服务器间的RAS/Q.931/H.245交互过程,直至建立RTP/RTCP媒体通道传输媒体流;
(9)转发服务器将收到的来自主叫终端的信令和媒体流转发给被叫终端,同时将收到的来自被叫终端的信令和媒体流转发给主叫终端。
本发明中的Q.931/H.245信令流采用TCP数据包格式。
本发明中的RTP/RTCP媒体流采用UDP数据包格式,该媒体流承载的内容可以包括但不限于语音、视频、文本数据等。
图1描述的是H.323注册服务器(即GK)自动判断H.323终端处于公网还是私网的功能。
本发明针对GK收到的RAS注册包进行分析,在GK端对H.323终端处于公网还是私网进行判断。
公网H.323终端发出RAS注册包,该包的IP包头与应用层地址均为H.323终端的地址(一般是公网地址)。这样,GK收到的来自公网终端的RAS注册包的IP包头与应用层地址也都是这样,二者是相同的。
私网H.323终端发出RAS注册包时,该包的IP包头与应用层地址均为H.323终端的地址(一般是私网地址),但经过NAT设备时,NAT设备会将该包的IP包头修改为NAT设备的地址。于是GK收到的来自私网H.323终端的RAS注册包,其IP包头是NAT设备的地址(一般是公网地址),而其应用层地址则是H.323终端的地址(一般是私网地址),二者是不同的。
利用上述特点,GK很容易就判断出H.323终端处于公网还是私网,并将该信息与H.323终端的号码对应起来。从而在终端之间进行会话时,参照该信息,进行下述智能判断:
在有私网终端参加的会话时,GK向主叫终端与被叫终端均返回转发服务器的地址;
在没有私网终端参加的会话时,GK向主叫终端(或被叫终端)返回被叫终端(或主叫终端)的地址。
如图2所示,描述的是有私网终端参与的会话中,系统的主要工作流程。该工作流程涵盖公网终端呼叫私网终端、私网终端呼叫公网终端、私有终端呼叫另一私网终端的情形。
特别的,本发明需要强调的部分是:
(1)当主叫终端发起呼叫时,它首先要向GK发出RAS(ARQ)信令,该信令中携带了主叫号码与被叫号码,GK从中读出主叫号码与被叫号码,如果二者中有一个对应网络类型是私网,GK就在向主叫终端返回的RAS(ACF)信令中携带转发服务器的Q.931地址;
(2)GK采用私有信令,通知被叫终端,告诉它将要加入一个有私网终端参与的会话,同时让其呼叫转发服务器;
(3)在转发服务器与私网终端之间建立RTP/RTCP通道的过程中,转发服务器必须在收到私网终端发出的打开通道请求回复(OpenLogicalChannelAck)后,再采用所收到的打开通道请求回复信令携带的地址,发出打开通道请求回复(OpenLogicalChannelAck),这样就利用了NAT设备能够记忆私网终端的私网地址与公网地址的映射关系的特性,从而有效避免从转发服务器发向私网终端的媒体流被NAT设备拦截,确保媒体流双向发送。
本文中,信令的两种表示方式含义一致,例如,Q.931-Setup与Q.931(Setup)含义相同。
Claims (5)
1.H.323系统的多媒体会话穿越NAT设备的方法,包括以下步骤:
1)主叫终端向注册服务器发起RAS-ARQ信令,该信令中同时包含主叫终端与被叫终端的号码;
所述注册服务器包含各终端的注册信息;
2)注册服务器向主叫终端返回的RAS-ACF信令,其中携带转发服务器的Q.931信令地址与端口;
3)主叫终端向转发服务器发送Q.931-Setup信令,该信令中携带被叫终端的号码与转发服务器的Q.931地址与端口;
4)转发服务器收到Q.931-Setup信令后,向注册服务器发出两路RAS-ARQ信令,分别要求与主叫终端与被叫终端建立会话,同时转发服务器向主叫终端回应Q.931-Connect信令,该信令携带转发服务器的H.245地址与端口;
5)注册服务器向转发服务器返回两路RAS-ACF信令,同时向被叫终端发出私有信令,通知被叫终端呼叫转发服务器;
6)主叫终端收到Q.931-Connect信令后,向转发服务器发出H.245信令,与之交互,直至建立RTP/RTCP媒体通道传输媒体流;
7)被叫终端收到了通知自己呼叫转发服务器的私有信令后,按参照前面第1)-6)步中主叫终端与注册服务器和转发服务器间的交互过程,建立RTP/RTCP媒体通道传输媒体流;
8)转发服务器将收到的来自主叫终端的信令和媒体流转发给被叫终端,将收到的来自被叫终端的信令和媒体流转发给主叫终端。
2.如权利要求1所述的H.323系统的多媒体会话穿越NAT设备的方法,其特征在于,各终端定期向注册服务器发送RAS注册包进行注册,RAS注册包的应用层与IP包头均包含了IP地址。
3.如权利要求2所述的H.323系统的多媒体会话穿越NAT设备的方法,其特征在于,注册服务器根据收到的RAS注册包的应用层与IP报头携带的IP地址是否相同,判断H.323终端处于公网还是私网:若相同则为公网,若不同则为私网。
4.如权利要求2所述的H.323系统的多媒体会话穿越NAT设备的方法,其特征在于,在有私网终端参加的会话时,注册服务器向主叫终端与被叫终端均返回转发服务器的地址;在没有私网终端参加的会话时,注册服务器返回主叫或被叫终端的地址。
5.如权利要求2所述的H.323系统的多媒体会话穿越NAT设备的方法,其特征在于,在转发服务器与私网终端之间建立RTP/RTCP通道的过程中,转发服务器在收到私网终端发出的打开通道请求回复后,采用所收到的打开通道请求回复信令携带的地址,发出打开通道请求回复。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510022479XA CN100384168C (zh) | 2005-12-30 | 2005-12-30 | H.323系统的多媒体会话穿越nat设备的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510022479XA CN100384168C (zh) | 2005-12-30 | 2005-12-30 | H.323系统的多媒体会话穿越nat设备的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1832437A CN1832437A (zh) | 2006-09-13 |
CN100384168C true CN100384168C (zh) | 2008-04-23 |
Family
ID=36994451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200510022479XA Expired - Fee Related CN100384168C (zh) | 2005-12-30 | 2005-12-30 | H.323系统的多媒体会话穿越nat设备的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100384168C (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075594B (zh) * | 2011-01-30 | 2016-03-02 | 中兴通讯股份有限公司 | 网络环境的识别方法、接入方法和基站 |
CN107566671B (zh) * | 2017-10-12 | 2020-09-25 | 上海华客信息科技有限公司 | 网络语音通信方法及其系统、存储介质、电子设备 |
CN113079144B (zh) * | 2021-03-24 | 2022-11-18 | 上海井星信息科技有限公司 | 一种穿透DMZ网络的SIP WebRTC网关系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002071717A2 (en) * | 2000-12-14 | 2002-09-12 | Vocaltec Communications Ltd. | Traversing firewalls and nats |
CN1444815A (zh) * | 2000-07-28 | 2003-09-24 | 瑞吉威系统及软件有限公司 | 带有防火墙和网络地址转换的音频-视频电话 |
CN1540952A (zh) * | 2003-11-03 | 2004-10-27 | 中兴通讯股份有限公司 | 多媒体系统静态地址转换方法 |
CN1735055A (zh) * | 2004-08-13 | 2006-02-15 | 中兴通讯股份有限公司 | 一种两个私网内的多媒体终端点对点呼叫的方法 |
-
2005
- 2005-12-30 CN CNB200510022479XA patent/CN100384168C/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1444815A (zh) * | 2000-07-28 | 2003-09-24 | 瑞吉威系统及软件有限公司 | 带有防火墙和网络地址转换的音频-视频电话 |
WO2002071717A2 (en) * | 2000-12-14 | 2002-09-12 | Vocaltec Communications Ltd. | Traversing firewalls and nats |
CN1540952A (zh) * | 2003-11-03 | 2004-10-27 | 中兴通讯股份有限公司 | 多媒体系统静态地址转换方法 |
CN1735055A (zh) * | 2004-08-13 | 2006-02-15 | 中兴通讯股份有限公司 | 一种两个私网内的多媒体终端点对点呼叫的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1832437A (zh) | 2006-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100539504C (zh) | 一种网络地址转换和/或防火墙穿越平台、系统及其方法 | |
US8082324B2 (en) | Method of establishing a tunnel between network terminal devices passing through firewall | |
US8166533B2 (en) | Method for providing media communication across firewalls | |
JP3872477B2 (ja) | ローカルipネットワークを通した多重通話システム及び方法 | |
US7257837B2 (en) | Firewall penetration system and method for real time media communications | |
CN100477636C (zh) | 客户端主应用部件与目标服务器间进行通信的装置和方法 | |
CN101431511B (zh) | 一种穿透防火墙在网络终端装置间建立联机信道的方法 | |
US20050066038A1 (en) | Session control system, communication terminal and servers | |
CN105721570B (zh) | 数据点对点传输方法及装置 | |
CN105681445B (zh) | 数据的点对点传输路径选择方法及装置 | |
US7948890B2 (en) | System and method for providing a communication channel | |
CN104683730A (zh) | 传输视频会议数据方法及视频会议系统 | |
CN100583814C (zh) | 一种实现多媒体业务nat穿越的方法 | |
US7542475B2 (en) | Communication between users located behind a NAT device | |
EP1726140B1 (en) | Method and apparatus for enhanced internet telephony | |
CN106506506A (zh) | 一种跨网通信的方法 | |
US7298747B2 (en) | Method of setting up communications in a packet switching system | |
CN100384168C (zh) | H.323系统的多媒体会话穿越nat设备的方法 | |
CN100493048C (zh) | 穿越网络地址转换和防火墙的多媒体通信代理系统及方法 | |
CN1645861A (zh) | 一种软交换网络穿越防火墙的方法 | |
US20060190992A1 (en) | Facilitating Bi-directional communications between clients in heterogeneous network environments | |
CN111432163B (zh) | 一种实现ims系统与云视讯会议系统互联互通的方法 | |
CN101013997B (zh) | 多媒体网关转发信令与媒体流的方法 | |
US7116775B2 (en) | Apparatus and method for managing BLF information in an inter-networking system | |
US7865621B1 (en) | Open settlement protocol bridge for multi-network voice connections |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080423 Termination date: 20201230 |
|
CF01 | Termination of patent right due to non-payment of annual fee |