包交换网络中用于传送音频数据的方法

文档序号:7655664阅读:283来源:国知局
专利名称:包交换网络中用于传送音频数据的方法
技术领域
本发明涉及在包交换网络中传送音频数据,并特别涉及由防火墙和/或网络地址转换装置分开的装置之间传送音频数据帧。
本发明的背景许多年来话音电话服务是通过通常称为普通老式电话服务(POTS)的电路交换网络实现的,并由本地电话服务供应商控制。这种系统中,表示会话的模拟电信号从每一电话机到交换站,并在交换站之间,在专用的铜导线对上传送。
近来,交换站之间的干线已经由光缆代替。计算装置使模拟信号数字化并使数字化的数据格式化为帧,以至多个会话能够在同一光纤上同时被传送。在接收端,计算装置重组模拟信号用于在铜导线上传送。双绞铜导线仍然用于连接电话机与本地交换站。
又近来,话音电话服务已经通过因特网实现。因特网数据传输速度及因特网带宽的优点,已使电话会话能够使用因特网包交换体系结构和TCP/IP协议传送。
现在有可用于个人计算机上的软件,使实时话音信息可通过因特网数据链路在两台个人计算机之间双向传输,,每一台个人计算机包括用于驱动话筒和扬声器的适当的硬件。发送的计算机把话音信息从话筒检测到的模拟格式转换为数字格式。软件便于把数据压缩到与发送计算机到因特网服务供应商(ISP)的数据连接兼容的速率,并便于使数字化和压缩的话音数据封装到TCP/IP协议中,带有适当的编址以允许通过因特网通信。
在接收端,计算机和软件使过程反向以便恢复模拟信号话音信息,通过与接收计算机相连的扬声器呈现给另一方。此外,可利用网关计算机连接因特网和本地电话交换站。网关可有效地操作连接借助于因特网的一个呼叫者与借助于传统电话的另一呼叫者。
发送计算机与接收计算机之间的因特网通信使用因特网寻址方案发生。因特网协议(IP)地址包括由圆点分开的四个数字。因特网上每一台机器有唯一的指定给它的数字,该数字由这些四个数字之一组成。在地址中,最左侧的数字具有最大的权重。比喻来说,这好象对应于邮寄地址中的ZIP代码。有时,头两个数字组成地址的这一部分,指示网络或地区。该网络连接到传输通路中最后的路由器。在同一目标网络中两个计算机之间进行区分时,只有最后的数字段变化。在这样的一个例子中,下一个字段指示目标路由器。当带有目标地址的包离开源路由器时,它检查矩阵表中的前两个数字以确定到达目标最少有多少个中继段。然后向下一个按由表确定的路由器发送包,并重复该过程。每一路由器具有自动寻找信息的数据库表。这一过程继续进行直到包到达目标计算机。组成一个消息的分开的包取决于通信量负荷可能不是经过同一通路。然而所有它们都到达相同的目标并按其原来顺序以无连接方式组合。
通过因特网提供话音电话服务的一个困难问题在于,发送计算机和接收计算机之一或两者可能通过网络地址转换(NAT),或代理服务器,或防火墙访问因特网,这种防火墙除了一般阻挡一定的连接之外还包括NAT功能。NAT服务器使得几个计算机能够共享单个IP地址。
典型的NAT服务器体系结构包括向NAT连接每一计算机专用的网络。NAT服务器具有指定的IP地址并连接到因特网。通过NAT访问因特网的计算机将通过该专用网络向NAT服务器发送帧。帧要包含目标计算机IP地址及发送计算机专用网络地址。NAT服务器转而在因特网上向目标计算机IP地址发送一个帧,并包含NAT服务器IP地址作为源IP地址。NAT服务器维护一个表,该表匹配专用网络上的发送计算机与由NAT服务器用来与目标计算机通过因特网通信的端口号码。当由NAT在特定的端口收到来自目标计算机的返回帧时,NAT服务器使用该表寻找原来发送计算机的地址。
所遇到的问题是,表示话音交谈的数据帧使用用户数据报协议(UDP);这是一种不可靠的实时无连接协议(RTP)。RTP采用具有最小开销数据的帧格式以优化网络带宽,以至在帧中不包含源地址字段。这样,当NAT服务器在专用网络上接收UDP帧用于通过因特网向IP地址路由时,帧不包含发送计算机源地址,因而NAT服务器不能在匹配发送计算机与端口号码的表中建立记录。
所需要的是在包交换网络上的两个装置之间进行UDP帧通信的一种方法,其设置为两个装置中至少一个通过NAT连接到网络。
本发明的概述本发明的第一方面是要提供在第一和第二客户之间通过诸如因特网等包交换网络进行通信的一种方法。该方法包括从第一客户向转换装置发送建立的请求,并转而从转换装置向第二客户发送建立的请求。然后,从第二客户向转换装置发送一个确认建立,并转而从转换装置向第一客户发送一个确认建立。这些步骤可以使用Q.931协议,该协议是由国际电话联盟(ITU)推荐的接口层基本呼叫控制协议,并命名为ISDN User-Network Interface Layer 3 Specification for Basic CallControl(ISDN基本呼叫控制用户网络接口层3规范)。
该方法还包括通过转换装置建立菊花链(daisy chained)连接,这包括以下步骤,在第一客户上的一端口与转换装置的第一动态端口之间建立第一通信信道,用于在第一客户与转换装置之间传送音频数据帧,并在第二客户上的一个端口与转换装置上的第二动态端口之间建立第二通信信道,用于第二客户与转换装置之间传送音频数据帧。在转换装置中维护一个表,该表与包含与第一动态端口和第二动态端口相关的数据,诸如音频通信数据,使用实时协议(RTP)和实时控制协议(RTCP)可以在第一通信信道与第二通信信道之间传输而与源地址无关。
在一个实施例中,第二客户位于一专用网络上,且转换装置连接在因特网与第二客户之间。这样,第二通信信道在专用网络上实现,且该方法还包括查询数据库以确定转换装置的IP地址及第二客户专用网络地址。
在第二实施例中,第一客户位于专用网络上且转换装置连接在因特网与第一客户之间。第二客户可以是在因特网上直接可寻址的。这样,第一通信信道是在专用网络上实现的,且该方法还包括查询一数据库以确定第二客户的IP地址。
在第三实施例中,第一客户位于第一专用网络上,该网有连接在第一客户与因特网之间转换装置(作为第一转换装置),且第二客户也位于一第二专用网络上,该网有连接在第二客户与因特网之间转换装置。
这样,在所述的方法中,第二通信信道包含插入在第一转换装置和第二客户之间的第二转换装置。从第一转换装置向第二客户发送建立请求的步骤包括,从第一转换装置向第二转换装置发送建立请求,和从第二转换装置向第二客户发送建立请求。从第二客户向第一转换装置发送确认建立的步骤包括,从第二客户向第二转换装置发送确认建立,以及从第二转换装置向第一转换装置发送确认建立。建立第二通信信道的步骤包括建立第二客户上的一个端口与第二转换装置上的第一动态端口之间的通信信道,以及建立第二转换装置上的第二动态端口与第一转换装置上的第二动态端口之间的通信信道。
本发明的第二方面是要提供隧道地址转换(TAT)引擎,用于维护第一和第二客户之间的包音频会话。转换引擎包括第一网络接口,用于在第一网络上与第一客户交换音频数据帧,及第二网络接口,用于在第二网络上与第二客户交换音频数据帧。存储器维护与第一与第二装置之间的包音频会话相关的数据,以使引擎能够从第一网络上的第一客户向第二网络上的第二客户,并从第二网络上的第二客户向第一网络上的第一客户与源地址数据无关转发帧。音频数据帧是实时协议帧。
地址转换引擎可包括呼叫建立引擎用于a)在第一网络接口上接收建立请求;b)响应在第一网络接口上建立请求的接收在第二网络接口上发送建立请求;c)在第二网络接口上接收确认建立;d)响应在第二网络接口上确认建立的接收在第一网络接口上发送确认建立;及e)基于包含在建立请求和确认建立中的信息向存储器写入数据。
在第一和第二网络接口至少之一上可以使用多个动态端口,用于同时维护多个音频会话。这样,存储器对于每一会话使在其上以IP地址接收音频帧的端口号码与向其转发音频帧的端口号码相关联。
地址转换引擎可进而包括查找引擎,用于查询数据库以确定与电话呼叫目标客户相关的公共网络地址。在目标客户是其本身的情形下,在地址转换引擎后,公共地址可能包含第二隧道地址转换引擎的网络地址,以及标识与第二隧道地址转换引擎相关的专用网络上电话呼叫目标客户的专用网络地址。
附图的简要说明

图1是使用因特网的包交换音频通信系统的框图;图2是一表,表示存储在一目录服务器中在图1的音频通信系统中有用的信息;图3a是一框图,表示图1的音频通信系统的操作中有用的连接步骤的第一实施例;图3b是一框图,表示图1的音频通信系统的操作中有用的连接步骤的第二实施例;图4是在图1的音频通信系统中有用的一客户的框图;图5是一状态机图示,表示图4的客户的示例性操作;图6是在图1的音频通信系统中有用的隧道地址转换(TAT)服务器的框图;图7是表示图6的TAT服务器的示例性操作的梯形图;及图8是在图6的TAT服务器中有用的示例性打开的呼叫表。
优选实施例的说明现在将参照附图详细说明本发明。在附图中,相同的标号始终用来标记相同元件。
因特网电话体系结构概要图1是使用因特网12的包交换音频通信系统10的框图。因特网12通过一系列路由器和高速网(未示出)互连多个专用网络24(a)-24(c)。
每一专用网络24(a)-24(c)通过一路由器39,一网络地址转换(TAT)服务器38,或防火墙28连接到因特网。
网络24(c)通过路由器39连接到因特网12,该路由器的功能是把专用网络24(c)上的客户14之间的IP通话连接到与因特网12连接的另一装置。典型的因特网服务供应商(ISP)采用这种结构用于将其客户连接到因特网12。因为网络24(c)通过路由器39连接到因特网12,故每一客户14包含一IP地址,或者是永久指定的,或者每当客户登录到专用网络24(c)时由DHCP服务器指定的,并能够称为直接连接到因特网12。
网络24(b)是通过防火墙28连接到因特网12的,防火墙28通过控制专用网络24(b)上的客户14与另外方式连接到因特网12的远程计算装置之间的数据交换,用于提供安全性。
网络24(a)通过NAT服务器38(例如代理服务器)连接到因特网12,使专用网络24(a)上的多个客户14能够共享IP地址用于连接到与因特网12连接的远程计算装置。
多个客户14的每一个包括与其连接的普通老式电话服务(POTS)电话机16,以便对用户提供接口,使得如果他或她使用的是传统的电话,操作者能够与远程人员谈话。在操作中,与发起客户(以下称为发起客户14(o))相关的电话机16的操作者向电话机键板拨发永久指定给目标客户(以下称为目标客户14(d))10数字电话号码,以便在发起客户14(o)与目标客户14(d)之间建立因特网连接,或多个菊花链连接。然后音频数据将通过因特网连接发送,以便于在发起客户14(o)与目标客户14(d)的操作者之间正常的电话会话。
人操作者习惯于使用10-数字电话号码,这种号码一旦指定给一个人,则保持相对稳定。然而,每一连接到因特网的客户14通过12-数字IP地址被寻址,这种地址每当装置登录到网络时可能改变。而且,如果装置通过NAT服务器连接到因特网,可能需要12-数字IP地址加上第二个12-数字虚拟IP地址对客户14寻址。这样,目录服务器22也要连接到因特网12以便于各客户14之间连接的建立。对每一客户14指定一永久10数字电话号码,且目录服务器22包含一数据库26,该数据库存储对客户14寻址所需的连接数据,并每当客户14的地址有变化时则更新这种连接数据。
简要参见图2,目录服务器22和数据库26使连接的IP地址与Q.931端口,并如果可用,则是虚拟IP地址与Q.931端口同用来标识每一客户14的每一10-数字电话号码相关联。
再来参见图1,NAT服务器38或防火墙28可以防止在NAT服务器38后面或防火墙18后面的客户14与其它地方连接到因特网的另外的客户直接交换因特网电话帧。更具体来说,NAT服务器38采用TCP帧中的源地址字段以便代表专用网络上的客户建立代理连接。然而,系统10采用UDP帧(为了更有效地使用带宽),且UDP帧不包含源地址字段。因而系统10包含多个隧道地址转换器(TAT)服务器36,一个服务器与每一防火墙28和NAT 38相关。TAT服务器36可用与NAT服务器38或防火墙28运行在同一硬件上,或者可用运行在与防火墙28的周边网络连接的专用硬件上。
在操作中,发起客户14(o)从操作者接收10-数字电话号码。然后,发起客户14(o),如果是直接连接到因特网12,采用目录服务器22确定与目标电话号码相关的连接IP地址(及Q.931端口)及虚拟IP地址(及Q.931端口),以便建立与目标客户14(d)的连接。另外,如果发起的客户14(0)本身是在防火墙28或NAT服务器38后面,则它不10-数字电话后面传送给与其相关联的TAT服务器36,且TAT服务器36使用目录服务器22确定与目标电话号码相关联的连接IP地址(及Q.931端口)及虚拟IP地址(及Q.931端口)。
例如,参见图3a发起的客户14(o)的操作者拨发向目标客户14(d)永久指定的10数字电话号码。因为客户14(o)直接连接到因特网12,故它直接查询目录服务器22以确定与目标客户14(d)相关的该TAT服务器36关联的连接IP地址(及Q.931端口)(以下称为目标TAT服务器36(d)),及与目标客户14(d)相关的虚拟IP地址(及Q.931端口)。查询由请求箭头120和响应箭头122指示,然后,如连接箭头124所指,发起客户14(o)将连接到目标TAT服务器36(d),该服务器将转而连接到目标客户14(d),如连接箭头126所指,以建立发起客户14(o)与目标客户14(d)之间的菊花链连接。
对于第二个例子参见图3b,操作者再次拨入永久指定给目标客户14(d)的10数字电话号码。因为客户14(o)本身在TAT服务器36后面(以下称为发起TAT服务器36),客户14(o)不直接查询目录服务器22,而是建立由连接箭头128所指的与发起TAT服务器的连接,并把10数字电话后面传送给发起TAT服务器36(o)。然后TAT服务器36(o)将查询目录服务器22以确定与目标TAT服务器36(d)相关的连接IP地址(及Q.931端口),以及与目标客户14(d)相关的虚拟IP地址(及Q.931端口)。查询由请求箭头130和响应箭头132指示。然后,如连接箭头134所指,发起TAT服务器36(o)将连接到目标TAT服务器36(d),该服务器将转而连接到目标客户14(d),如连接箭头136所指,以建立发起客户14(o)与目标客户14(d)之间的菊花链连接。
返回来参见图1,系统10还包括连接因特网与公共交换电话网(PSTN)19的网关18。网关18使得电话呼叫能够在连接到专用网络24上的客户14的电话机16与连接到本地电话公司PSTN网19上的用户回路的电话机17之间进行。在操作中,如果由操作者输入的10-数字电话号码不与目录服务器22中的客户装置14相关,则连接将建立在发起客户14(o)与网关18之间,且网关将转而通过公共交换电话网19(例如拨发10-数字电话号码)建立与该10-数字电话号码相关的客户17的一个连接。
客户参见图4,图中示出,每一客户14的示例性结构。为了本发明的目的,客户14包括用于操作POTS模拟的处理单元15,电路62,用于POTS模拟电路60的驱动程序72,用于网络接口电路62的驱动程序74,以及因特网电话应用程序76。客户装置可用是桌面计算机,POTS模拟电路60,及网络接口电路62的每一个可用是插入到计算机扩展槽的卡。然而本发明可以预见到其它构成,并包括集成到嵌入系统而具有POTS模拟电路60,网络接口电路62,驱动程序72和74,及因特网电话应用程序的功能的适用装置类型。
POTS模拟电路60包括RJ-11阴接头64,用于把传统的POTS电话机16连接到电路60。提示和振铃模拟电路66模拟提示和振铃线路上的低频POTS信号,用于操作电话机16。音频系统68连接在提示和振铃模拟电路66与因特网电话应用程序76之间。音频系统68的操作使来自电话机16中的话筒的音频信号数字化,并将数字化的信号呈现给因特网电话应用程序76,并同时操作接收来自因特网电话应用程序76的音频信号的数字数据(表示远程呼叫者的话音),将该数据转换为模拟音频数据,并向提示和振铃模拟电路66呈现模拟音频数据。提示和振铃模拟电路66根据从音频系统68接收的模拟信号调制提示和振铃线路,以便驱动电话机16的扬声器。
网络接口电路62包括使数据帧与连接到专用网络30的其它装置通信的电路。
结合图4参见图5的状态机图示,其中示出因特网电话应用程序76的基本操作。闲置状态80表示因特网电话应用程序76处于闲置以等待操作者发起电话呼叫或等待从远程地点接收的电话呼叫。如果操作者拾起电话机16并拨发电话号码,则因特网电话应用程序76将转变到拨号状态82,在拨号状态82,因特网电话应用程序76将从音频子系统68接收表示向电话机16拨发目标电话号码的操作者的DTMF信号的数据。在收到目标电话号码之后,因特网电话应用程序76转换到连接状态84,其中该状态建立出站连接,这种连接如前面参照图3a和3b所讨论的,可以是通过因特网12上一个或多个TAT服务器36与目标客户14(d)的菊花链连接的序列,并通过该连接进行交换表示电话呼叫的数据。在操作者之一已经“挂断”后,因特网电话应用程序76转变到终止状态86,其中与目标客户14(d)的连接结束,并然后返回闲置状态80。
如果收到来自远程地点的呼叫(例如,远程装置试图与客户14建立Q.931连接),则因特网电话应用程序76将从闲置状态80转变为振铃状态88。在振铃状态88期间,因特网电话应用程序76产生适当的信号,用于引起提示和振铃模拟电路66产生供电话机16用的传统的振铃信号。如果在远程操作者挂机之前操作者没有拾起,则因特网电话应用程序76将转回闲置状态。另外,如果操作者拾起电话机16,则因特网电话应用程序76将转变到连接状态84,其中该状态再次与远程装置建立入站连接,并进行交换表示电话会话的数据。
TAT服务器如前所讨论,如果发起客户14(o)和目标客户14(d)之一或两者都在NAT服务器38或防火墙28之后,则发起客户14(o)和目标客户14(d)之间的连接将是通过与每一NAT服务器38或防火墙28相关的TAT服务器36菊花链式连接的序列。为了TAT服务器36按菊花链连接的顺序进行其部分,TAT服务器36必须能够1)接收连接请求,建立连接(入局连接),并另外当接收连接请求时模拟目标客户14(d);2)发起连接请求,建立连接(出局连接),并另外模拟发起客户14(o),以便按菊花链建立下一个连接;3)从入局连接接收的帧把数据转移到出局连接发送的帧。
图6示出TAT服务器36的基本元件的框图。TAT服务器36包括控制单元46,用于操作Q.931模块50和H.245模块以便设定并接收入局连接上的音频数据,并用于设定并FS发送出局连接上的音频数据。打开的呼叫表44维护对通过TAT服务器36每一菊花链连接的记录,以使TAT服务器36能够同时进行几个呼叫。稍后这里将参照图8,与Q.931连接,H.245连接及RTP信道一同讨论打开的呼叫表44更详细的讨论。
控制单元46还可以操作网络接口协议48,并驱动网络接口电路54以便发送并接收网络40上的帧。应当认识到,在TAT服务器36以连接在两个或多个分开的网络之间的路由器实现的情形下,网络40可以代表两个或多个分开的网络连接。
结合图3b参见图7的梯形图,图中示出与通过TAT服务器在第一装置和第二装置之间建立菊花链连接相关的步骤。
因为TAT服务器36是一系列菊花链式连接中的一个链接,且不起发起客户14(o)的作用,故第一步骤表示接收来自端口1720上的第一装置的Q.931连接请求。(端口1720是熟知的用于接收Q.931连接请求的端口)。设定与连接请求相关的数据可以包括以下之一1)与目标客户14相关联的10-数字电话号码,这是在第一装置是发起客户14(o)而TAT服务器36与连接到发起客户14(o)到因特网的NAT服务器38或防火墙28相关联的情形下;2)第二装置的实际IP地址和Q.931端口,如果第二装置也是TAT服务器36,连同目标客户14的虚拟IP地址和Q.931端口,它们将传送给第二TAT服务器以便连接到目标客户14;3)IP地址(实际的或虚拟的),如果第二装置是TAT服务器36将与之直接连接的目标客户14。
如果收到10-数字电话号码,则TAT服务器36必须运行查询目录服务器22的子程序(图1)以获得第二装置的IP地址(并如果适当,则是目标客户的虚拟IP地址)。
下一步骤表示向第二装置发送设定的Q.931设定请求。在收到来自第二装置指示第二装置准备连接的信号后,TAT服务器36与代表每一个TAT服务器的第二装置交换数据帧,并且第二装置的介质按对于建立通信的要求使用H.245协议设置并建立主/从关系。
同时,TAT服务器36确认已经准备好连接到第一装置,并与代表TAT服务器第一装置交换数据,且第一装置介质设置并建立与第一装置的主/从关系。上述步骤由Q.931连接箭头140表示在梯形图上。
此后,(在梯形图上由H.245设定箭头142表示)TAT服务器36向第一装置和第二装置的每一个,对于实时协议(RTP)数据帧和实时控制协议(RTCP)帧,打开H.245逻辑通信信道。RTP和RTCP信道是在动态端口地址上建立的,于是对于同时发生的多个因特网电话呼叫TAT服务器36作为菊花链逻辑中的一个连接装置操作。
TAT服务器36把适当的数据写到打开的呼叫表,该表把每一入局连接(及RTP信道)映射到其对应的出局连接(及RTP信道)供转发数据。在对于这一步骤作为示例的目的描述向打开的呼叫表写入数据时,应当注意,在数据产生任何其它的步骤同时数据可以写到表44。
简单参见图8,能够看到打开呼叫表包含定义以下内容的数据与呼叫第一装置的Q.931连接150;与呼叫第二装置的Q.931连接152;与呼叫第一装置的H.245连接154;与呼叫第二装置的H.245连接156;RTP路由158-来自第一装置的入局;RTP路由160-向第一装置的出局;RTP路由162-来自第二装置的入局;及RTP路由164-向第二装置的出局;更具体来说,表示与第一装置Q.931连接150的数据包括i)发起与TAT服务器建立呼叫的第一装置上供连接的IP地址和端口号码及ii)由TAT用来与第一装置进行这种Q.931连接的IP地址和端口号码。与第二装置的Q.931连接152包括i)由TAT向其发送连接请求的第二装置的IP地址和端口号码及ii)由TAT用来与第二装置进行这种Q.931连接的IP地址和端口号码。应当看到,因为TAT连接到专用网络及公共的因特网,在每一网络上似乎应当有不同的IP地址。这样,用于与第一装置进行Q.931连接150的TAT的IP地址将不同于用于与第二装置进行Q.931连接152的TAT的IP地址。
类似地,表示与第一装置进行H.245连接154的数据包括i)用于发起呼叫建立的第一装置上进行H.245连接的IP地址和端口号码及ii)由TAT用来与第一装置进行H.245连接的IP地址和端口号码。以及,表示与第二装置的H.245连接156的数据包括i)TAT向其发送建立请求的第二装置的IP地址和端口号码及ii)由TAT用来与第二装置进行H.245连接的IP地址和端口号码。
RTP路由158是用来从第一装置向TAT发送RTP帧的路由,并包括供RTP路由158使用的第一装置上的IP地址和端口号码,以及供RTP路由158使用的TAT上的IP地址和端口号码。一旦使用RTP路由158从第一装置收到RTP帧,使用RTP路由164,这是用来从TAT向第二装置发送RTP帧的路由,这些帧由TAT发送到第二装置。RTP路由164包括TAT上的IP地址和端口号码,及第二装置上用于RTP路由164的IP地址和端口号码。
类似地,RTP路由162是用来从第二装置向TAT发送RTP帧的路由,并包括供RTP路由162使用的第二装置上的IP地址和端口号码,以及供RTP路由162使用的TAT上的IP地址和端口号码。并一旦使用RTP路由162从第二装置收到RTP帧,则使用RTP路由160,这是用来从TAT向第一装置发送RTP帧的路由,这些帧由TAT发送到第一装置。RTP路由160包括TAT上的IP地址和端口号码,及第二装置上用于RTP路由160的IP地址和端口号码。
一旦在第一装置客户与TAT服务器36之间及该TAT服务器36与第二装置之间建立起通信连接,就可以通过TAT服务器36在第一装置与第二装置之间发送表示操作者音频通信的数据帧。
应当看到,本发明的因特网音频通信系统提供了访问专用网络上客户的能力,不论这种客户在是否在防火墙或NAT服务器之后。使用通常的10-数字电话号码,对于人操作者每一客户易于被识别,并使用目录服务器用于确定目标客户的因特网地址,并使用一个或多个TAT服务器连接到目标客户,每一客户能够易于通过因特网被访问,而与防火墙和NAT服务器无关。
此外,虽然对本发明已经就一定的优选实施例进行了展示和说明,但明显的是,在阅读和理解本说明书时业内专业人员会想象到等价物和改型。本发明包括包括所有这些等价物和改型,并仅以以下权利要求之范围为限。
权利要求
1.在第一和第二客户之间通过包交换网络进行音频通信的一种方法,该方法包括a)从第一客户向转换装置发送建立请求;b)从转换装置向第二客户发送建立请求;c)从第二客户向转换装置发送一个确认建立;d)从转换装置向第一客户发送一个确认建立;e)在第一客户上的一端口与转换装置上的第一动态端口之间建立第一通信信道,用于在第一客户与转换装置之间传送音频数据帧;f)在第二客户上的一个端口与转换装置上的第二动态端口之间建立第二通信信道,用于在第二客户与转换装置之间传送音频数据帧;以及g)维护表示第一动态端口和第二动态端口之间的对应关系的数据,使得音频通信数据可以在第一通信信道与第二通信信道之间传输而与源地址数据无关。
2.权利要求1的方法,其中使用实时协议和实时控制协议在第一通信信道与第二通信信道上传送音频数据帧。
3.权利要求2的方法,其中第二通信信道在专用网络上实现,且该方法还包括查询数据库以确定转换装置的IP地址及第二客户专用网络地址。
4.权利要求3的方法,其中发送建立请求的步骤和发送确认建立的步骤包括使用可靠的数据协议交换多个数据包,多个包包括用来建立第一和第二通信信道的信息。
5.权利要求4的方法,其中发送建立请求的步骤和发送确认建立的步骤使用Q.931协议。
6.权利要求2的方法,其中第一通信信道在专用网络上实现,且该方法还包括查询数据库以确定第二客户IP地址。
7.权利要求6的方法,其中发送建立请求的步骤和发送确认建立的步骤包括使用可靠的数据协议交换多个数据包,多个包包括用来建立第一和第二通信信道的信息。
8.权利要求7的方法,其中发送建立请求的步骤和发送确认建立的步骤使用Q.931协议。
9.权利要求1的方法,其中转换装置是第一转换装置,且第二通信信道包含插入在第一转换装置和第二客户之间的第二转换装置,从第一转换装置向第二客户发送建立请求的步骤包括i)从第一转换装置向第二转换装置发送建立请求;及ii)从第二转换装置向第二客户发送建立请求;从第二客户向第一转换装置发送确认建立的步骤包括i)从第二客户向第二转换装置发送确认建立;以及ii)从第二转换装置向第一转换装置发送确认建立;在第二客户上的一个端口与第一转换装置上的第二动态端口之间建立第二通信信道的步骤包括i)建立第二客户上的一个端口与第二转换装置上的第一动态端口之间的通信信道;以及ii)建立第二转换装置上的第二动态端口与第一转换装置上的第二动态端口之间的通信信道。
10.权利要求9的方法,其中使用实时协议和实时控制协在第一通信信道与第二通信信道上传送音频数据帧。
11.权利要求10的方法,其中发送建立请求的步骤和发送确认建立的步骤包括使用可靠的数据协议交换多个数据包,多个包包括用来建立第一和第二通信信道的信息。
12.权利要求11的方法,其中发送建立请求的步骤和发送确认建立的步骤使用Q.931协议。
13.权利要求10的方法,其中第一客户与第一转换装置之间的通信信道在第一专用网络上实现,且其中第二客户与第二转换装置之间的通信信道在第二专用网络上实现,该方法还包括查询数据库以确定第二转换装置的IP地址及第二客户专用网络地址。
14.权利要求13的方法,其中发送建立请求的步骤和发送确认建立的步骤包括使用可靠的数据协议交换多个数据包,多个包包括用来建立第一和第二通信信道的信息。
15.权利要求14的方法,其中发送建立请求的步骤和发送确认建立的步骤使用Q.931协议。
16.一种隧道地址转换引擎,用于维护第一和第二客户之间的包音频会话,转换引擎包括a)第一网络接口,用于在第一网络上与第一客户交换音频数据帧;b)第二网络接口,用于在第二网络上与第二客户交换音频数据帧;及c)存储器,维护与第一与第二装置之间的包音频会话相关的数据,以使引擎能够从第一网络上的第一客户向第二网络上的第二客户,并从第二网络上的第二客户向第一网络上的第一客户与源地址数据无关地转发帧。
17.权利要求16的隧道地址转换引擎,其中音频数据帧是实时协议帧。
18.权利要求17的隧道地址转换引擎,还包括呼叫建立引擎用于i)在第一网络接口上接收建立请求;ii)响应在第一网络接口上建立请求的接收,在第二网络接口上发送建立请求;iii)在第二网络接口上接收确认建立;iv)响应在第二网络接口上确认建立的接收在第一网络接口上发送确认建立;及v)基于包含在建立请求和确认建立中的信息向存储器写入数据。
19.权利要求18的隧道地址转换引擎,其中在第一和第二网络接口至少之一上使用多个动态端口,用于同时维护多个音频会话。
20.权利要求19的隧道地址转换引擎,其中存储器对于每一会话使在其上以IP地址接收音频帧的端口号码与向其转发此音频帧的端口号码相关联。
21.权利要求20的隧道地址转换引擎,还包括查找引擎,用于查询数据库以确定与电话呼叫预期接收者相关联的公共网络地址。
22.权利要求21的隧道地址转换引擎,其中与电话呼叫目标客户相关联的公共地址可以包含第二隧道地址转换引擎的网络地址,以及标识与第二隧道地址转换引擎相关的专用网络上电话呼叫目标客户的专用网络地址。
全文摘要
隧道地址转换引擎(36)使得因特网协议包音频的转换能够在两个客户装置(14)之间被维护。至少一个客户装置(14)可以在防火墙(28)后或在网络地址转换后,或在代理服务器后。隧道地址转换引擎(36)使用不包含源地址信息的不可靠的数据协议向意向目标路由音频数据帧。可通过一系列隧道地址转换引擎(36)维护音频转换。
文档编号H04L29/12GK1439213SQ01808543
公开日2003年8月27日 申请日期2001年10月9日 优先权日2000年10月21日
发明者朱培兰, 詹世伟 申请人:英诺媒迪亚Pte有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1