CN1457182A - 媒体网关控制协议消息可靠传送机制的实现方法 - Google Patents
媒体网关控制协议消息可靠传送机制的实现方法 Download PDFInfo
- Publication number
- CN1457182A CN1457182A CN 02118996 CN02118996A CN1457182A CN 1457182 A CN1457182 A CN 1457182A CN 02118996 CN02118996 CN 02118996 CN 02118996 A CN02118996 A CN 02118996A CN 1457182 A CN1457182 A CN 1457182A
- Authority
- CN
- China
- Prior art keywords
- media gateway
- command list
- mgcp
- response
- message
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种媒体网关控制协议(MGCP)消息可靠传送机制的实现方法,该方法是在媒体网关控制协议栈中增设尚未收到响应的MGC命令表、正在处理的MG命令表和已发出响应的MG命令表。当MGCP发送模块发送命令时,将该命令记录于MGC命令表中,当MGCP发送响应消息时,将其记录于已发出响应的MG命令表中;当接收到MGCP命令时先在已发出响应的MG命令表中查找匹配项,根据查表的不同结果进行不同的处理;当接收到MGCP响应消息时,则在尚未收到响应的MGC命令表查找,如果找到匹配项则传递该响应消息,否则放弃该消息。本发明保证了同一个MGCP消息最多执行一次,而且实现了对MGCP消息的高效率处理,可支持电信级设备大容量通信。
Description
技术领域
本发明涉及IP网络电话中媒体网关控制协议(Meadia Gateway ControlProtocol:MGCP),特别是媒体网关控制协议消息可靠传送机制的实现方法。
背景技术
随着科技的发展,IP电话技术以低廉的成本,先进的技术,稳定的语音质量在人们的日常生活中正在发挥着越来越重要的作用,经过几年的发展,IP电话技术已经日益成熟,目前主流的IP电话技术是以H323协议为基础实现的,但是H323协议实现复杂,扩展困难,随着IP电话用户数量的增多,H323技术正日益显示出自己的局限性。为了顺应这个趋势,各种新兴的IP电话技术正在不断出现,其中,MGCP协议是突出的一个代表,它是根据分离网关结构要求提出的一个新的协议,综合了简单网关控制协议(SGCP)和IP设备控制(IPDC)协议的基础上而形成的。
MGCP协议应用在媒体网关控制器(Meadia Gateway Controller:MGC)和媒体网关(Meadia Gateway:MG)之间,并且分离网关结构对于IP电话的大规模应用,特别是IP电话进入家庭具有十分重要的意义,因此,MGCP协议正受到广泛的重视。IETF网关控制工作组(MEAGCO)在该协议的基础提出了MEAGCO协议,ITU-T SG16也在该协议的基础上指定了相应的建议(H.248)。
在媒体网关控制协议(Meadia Gateway Control Protocol,以下称MGCP协议)的RFC2705建议中提到,由于MGCP协议是在UDP上传送,MGCP消息可能会丢失。如果没有及时收到响应,MGCP会重发命令。对于大多数命令来说,重复执行此命令会产生混乱,例如,多次执行创建连接命令会使网关状态成为不可预测。为此,命令传输过程必须保证同一命令只执行一次。在RFC文档中,定义该特性为“At Most Once”。
发明内容
本发明的目的在于提供一种媒体网关控制协议消息可靠传送机制的实现方法。本发明基于MGCP协议实现设备,保证MGCP消息在一次呼叫中,同一命令最多只执行一次,保证消息的可靠传送和正确处理。
本发明的实现方法是:
在媒体网关控制协议栈中至少增设尚未收到响应的媒体网关控制器(MGC)命令表、正在处理的媒体网关(MG)命令表和已发出响应的媒体网关(MG)命令表:
当MGCP发送模块发送命令时,将该命令记录于媒体网关控制器(MGC)命令表中,当MGCP发送响应消息时,将其记录于已发出响应的媒体网关(MG)命令表中,并删除正在处理的媒体网关(MG)命令表中的相应项;
当MGCP消息接收模块接收到MGCP命令时,首先在已发出响应的媒体网关(MG)命令表中进行查找,如果有匹配项则根据该匹配项内容重发响应消息,否则再对正在处理的媒体网关(MG)命令表进行查找,如果正在处理的媒体网关(MG)命令表中有匹配项则放弃该命令,否则在该表记录该项;
当MGCP消息接收模块接收到MGCP响应消息时,则在尚未收到响应的媒体网关控制器(MGC)命令表查找,如果找到匹配项则传递该响应消息,否则放弃该消息。
通过本发明,实现了以下几点:同一个MGCP消息最多执行一次。MGCP发送端在发送MGCP命令之后,正确处理MGCP接收端回送的响应。MGCP接受端在接收到MGCP命令之后,正确处理该命令,并且回送正确响应。由于本发明简单,而且实现了对MGCP消息的高效率处理,可支持电信级设备大容量通信。
附图说明
图1为本发明的尚未收到响应的媒体网关控制器(MGC)命令表的结构示意图;
图2为本发明的正在处理的媒体网关(MG)命令表和已发出响应的媒体网关(MG)命令表的结构示意图。
具体实施方式
在实现MGCP协议栈时,本发明定义了三个与MGCP实现有关的表结构:
表一是尚未收到响应的MGC命令表,其结构参考图1。尚未收到响应的MGC命令表用TransactionID做索引。在MGCP模块中,有一个事先分配好的,大小为TransactionID可能值的数组结构MGCPCmdNoRsp。此数组中每一个元素的值是指向TransactionID等于此元素数组下标的MGCPCmdNoRsp结构的指针,如果空闲,指针为NULL。这样可以根据TransactionID做索引直接找到对应的结构。在下面的例子中,数组下标等于0和N的数组元素指向两个不同的MGCPCmdNoRsp结构,这两个结构的TransactionID分别等于0和N。
表二和表三分别是正在处理的MG命令表和已发出响应的MG命令表,这两张表的存储结构都是采用以事务ID为索引的链表结构,如图2所示。这种结构有一个事先分配好的,大小为65535(事务ID的最大值)的数组结构。此数组中每一个元素的值是指向一个链表头的指针,而这个元素的数组下标正好等于此事务ID。如果空闲,指针为NULL。这样可以根据MG的事务ID做索引直接找到对应的链表,然后以IP地址做主键,在链表中找到对应的结构。在下面的例子中,数组下标等于M和N的数组元素指向两个不同的链表头,这两个链表的事务ID分别等于M和N。
对上述三个表的操作如下:
当MGCP处理模块从上层模块接收到MGCP消息之后,对该消息进行编码,编码完成之后发送给消息的接收方。然后,判断该消息的类型,如果该消息是MGCP命令,则向表一插入一个表项;如果该消息为MGCP响应消息,则以TransID和IP地址为主键,删除表二中相应的表项,在表三插入新的表项,表示已处理完接收的命令并给该命令的发送方发送响应消息。
当MGCP消息接收模块从网络中接收到MGCP消息包时,首先进行解码,解码完成之后,判断消息类型:
A、如果是MGCP命令,则以TransID和源IP地址为主键查表三。如果在表三有匹配项,则表示该命令已被处理完但命令的发送方未收到响应消息而重发的命令,因此,不再处理该命令,而是根据表三中的内容重发响应,结束处理流程;如果在表三中没有匹配项,则以TransID和源IP地址为主键查表二,如果在表二中有匹配项,表示该命令已接收过且正在处理中,因此放弃该命令消息,结束消息处理流程;如果在表二中没有匹配项,则可以判断,该消息是一个新命令消息,则在表二中插入一个新表项,并将该消息传递给上层消息模块,结束消息处理流程。
B、如果是响应消息,则以TransID为索引查找表一,如果在表一中没有匹配项,则说明该消息为错误消息,放弃;如果在表一中有匹配,则可以判断该消息为合法的响应消息,将该消息传递给上层协议栈调用模块,结束处理。
对于表一中的MGCP命令项,如果在规定的时间内未收到响应消息,则按重发机制重发相应的命令。对其中已超过设定时间的表项给予删除。
Claims (4)
1、一种媒体网关控制协议(MGCP)消息可靠传送机制的实现方法,其特征在于:
在媒体网关控制协议栈中至少增设尚未收到响应的媒体网关控制器(MGC)命令表、正在处理的媒体网关(MG)命令表和已发出响应的媒体网关(MG)命令表:
当MGCP发送模块发送命令时,将该命令记录于媒体网关控制器(MGC)命令表中,当MGCP发送响应消息时,将其记录于已发出响应的媒体网关(MG)命令表中,并删除正在处理的媒体网关(MG)命令表中的相应项;
当MGCP消息接收模块接收到MGCP命令时,首先在已发出响应的媒体网关(MG)命令表中进行查找,如果有匹配项则根据该匹配项内容重发响应消息,否则再对正在处理的媒体网关(MG)命令表进行查找,如果正在处理的媒体网关(MG)命令表中有匹配项则放弃该命令,否则在该表记录该项;
当MGCP消息接收模块接收到MGCP响应消息时,则在尚未收到响应的媒体网关控制器(MGC)命令表查找,如果找到匹配项则传递该响应消息,否则放弃该消息。
2、根据权利要求1所述的实现方法,其特征在于:尚未收到响应的媒体网关控制器(MGC)命令表采用链表结构,其中的记录项用处理事务标识符(TransactionID)做索引。
3、根据权利要求1或2所述的实现方法,其特征在于:尚未收到响应的媒体网关控制器(MGC)命令表中的项在超过设定时间时被删除。
4、根据权利要求1所述的实现方法,其特征在于:正在处理的媒体网关(MG)命令表和已发出响应的媒体网关(MG)命令表采用链表结构,其中的记录项用事务标识符做索引。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 02118996 CN1457182A (zh) | 2002-05-10 | 2002-05-10 | 媒体网关控制协议消息可靠传送机制的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 02118996 CN1457182A (zh) | 2002-05-10 | 2002-05-10 | 媒体网关控制协议消息可靠传送机制的实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1457182A true CN1457182A (zh) | 2003-11-19 |
Family
ID=29410367
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 02118996 Pending CN1457182A (zh) | 2002-05-10 | 2002-05-10 | 媒体网关控制协议消息可靠传送机制的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1457182A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006074603A1 (fr) * | 2005-01-12 | 2006-07-20 | Huawei Technologies Co., Ltd. | Procede de distribution de messages entre un dispositif de commande de passerelle support et une passerelle support |
CN100454827C (zh) * | 2004-02-28 | 2009-01-21 | 华为技术有限公司 | 一种防止收号丢失的方法 |
-
2002
- 2002-05-10 CN CN 02118996 patent/CN1457182A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100454827C (zh) * | 2004-02-28 | 2009-01-21 | 华为技术有限公司 | 一种防止收号丢失的方法 |
WO2006074603A1 (fr) * | 2005-01-12 | 2006-07-20 | Huawei Technologies Co., Ltd. | Procede de distribution de messages entre un dispositif de commande de passerelle support et une passerelle support |
CN100417126C (zh) * | 2005-01-12 | 2008-09-03 | 华为技术有限公司 | 下一代网络中媒体网关控制器和媒体网关间消息分发的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8446847B2 (en) | System, device and method for implementing special call service | |
CN1930905A (zh) | 无线ip电话机 | |
CN101056189A (zh) | 一种电话会议控制方法和系统 | |
CN1934840A (zh) | 会话启动协议(sip)中或其相关的改进 | |
CN101257435B (zh) | 基于nat-pt的sip应用层网关的实现方法 | |
CN100372346C (zh) | 一种基于软交换的媒体服务器 | |
CN101222547B (zh) | Ip-pbx系统 | |
CN1497903A (zh) | 为电信交换领域提供控制和监测功能的方法和系统 | |
CN1466344A (zh) | VoIP应用穿越防火墙的方法 | |
CN1457182A (zh) | 媒体网关控制协议消息可靠传送机制的实现方法 | |
WO2005041535A1 (de) | Verfahren zum aufbau einer kommunikationsverbindung in einem direkt kommunizierenden kommunikationsnetzwerk | |
CN1553710A (zh) | 一种视频会议中的流转换系统和方法 | |
CN101179468B (zh) | 异构网络sip终端与h.323终端通讯的方法 | |
WO2007025410A1 (fr) | Methode de compression de signalisation pour systeme de communication multipartie | |
CN1190047C (zh) | 融合电话网和ip网用户的个人号码业务的实现方法及系统 | |
CN1731744A (zh) | 分组语音网络的监听方法 | |
CN1559133A (zh) | 实时通信连接的网络过渡装置和通信系统 | |
CN1176544C (zh) | 媒体网关控制协议中主叫pc客户端携带主叫号码的方法 | |
CN1581969A (zh) | 速率适配方法 | |
CN1301610C (zh) | 基于网络通信终端的即时通信方法 | |
CN1889610B (zh) | 大容量分布式信令处理设备及其方法 | |
JP2001077915A (ja) | VoIPアドレス設定システム及び方法 | |
CA2343754A1 (en) | Scaleable communications system | |
CN1208932C (zh) | 应用于多媒体通讯中的传输呼叫方法 | |
CN100337459C (zh) | 对接口标识符错误的用户消息的处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |