一种在分组网络上发送多个话音信道的方法 【技术领域】
本发明一般地涉及因特网电话。更具体而言,本发明涉及对在局域网上发送话音分组的方式的改进。
版权声明/许可
本专利的公开文本的部分中包含了受版权保护的材料。版权所有者不反对任何人以其出现在专利商标局的专利文档或记录中的形式复制本专利文件或专利公开文本,但是在其他方面将保留所有的版权权利。如下的提示适用于下面所述的软件、数据及其附图:版权2001,Intel公司,保留所有权利。
背景技术
使用因特网来支持话音流量是一种新兴技术,其相对于公共交换电话网络(PSTN)的传统专用电路交换连接具有若干优点。使用互联网协议(IP)的分组交换连接来在因特网上传送话音数据称为VoIP。使用VoIP的一个好处是其通过使用因特网干线来长途传输而避开了PSTN收费服务。此外,因特网服务供应商(ISP)被免除了使用本地电话公司设施来完成通话的访问费用。因为PSTN收费和访问费用是所有长途通话费用地一大部分,能够避免它们是很大的优点。
VoIP相对PSTN还提供了其他好处,包括带宽合并和语音压缩,这两者都有助于整个网络效率。但是,在完全实现这些优点之前,必须解决某些技术挑战。
在VoIP中,话音数据在共享线路上作为数字化数据的分组来传送。除了其他类型的数据外,为获得与PSTN可比较的话音质量,即时地传送话音分组尤其重要。当使用诸如因特网的公共网络时这可能尤其困难,此时无法保证服务质量(QoS)的水平。已经发展了多种竞争的私有和非私有的标准来支持话音分组的传输。这些协议中的一些对硬件比对软件更有效,以及一些协议情况相反,但是还没有一种协议解决在因特网上发送大量话音分组中固有的所有问题。
作为一个例子,在1996年1月发布的题为“RTP:A Transport Protocolfor Real-Time Applications”(“RTP:用于实时应用的传输协议”)的评论请求(RFC)1889中所记载的实时协议(RTP),对诸如交互式音频和视频的具有实时特性的数据提供了端到端的传送服务。图1图示了一个RTP分组100的例子。如所示的,RTP分组100由40字节的有效负载110和总共54字节的四个不同头部组成,该四个头部包括介质访问控制(MAC)头部102、互联网协议(IP)头部104、用户数据报协议(UDP)头部106和RTP头部108。RTP有效负载110被设计成包含长度从5到30毫秒(ms)的话音分组。较短的话音分组被认为更好,因为其产生较短的延迟和提高的话音质量。
RTP最大的缺点可能是缺少可扩展性。因为RTP被优化用于在因特网上对每个远程分组仅仅发送单信道的话音数据(即一个话音呼叫),所以必须以相当高的速率发送分组,例如每秒200个分组(pps),尤其当发送5毫秒的较小的话音分组时。为了支持大量的比如1000个话音呼叫,分组速率急剧增大到200,000pps,这使每次分组到达就必须处理中断的VoIP应用的性能快速下降。因此,使用RTP发送大量分组将降低VoIP应用的性能,并且未充分利用带宽。
为了合并带宽,一些协议将多个话音信道聚合成单个分组。例如由因特网工程任务工作组(IETF)开放并由J.Rosenberg和H.Schulzrinne于1998年5月6日发布的题为“AN RTP Payload FORMAT FOR USERMULTIPLEXING”(“一种用于用户复用的RTP负载格式”)的因特网草案中所记载的一种RTP的聚合或多信道版本,将来自多个用户的数据复用到单个RTP分组中,而尝试着减小分组开销并提高可扩展性以确保即时传送分组。但是聚合的RTP协议带来了其他问题。例如,虽然终端计算机具有足够强的能力来处理一个话音呼叫,但是当同时处理单个分组中的上百个话音呼叫时它们可能很快就变得不堪重负,这又不利地影响了VoIP应用的性能。
VoIP的多信道RTP和其他聚合信道协议的另一个缺点是缺少明确的话音信道ID,这增加了额外的处理开销,并使得合并分组流即使可能也很困难了。在一种现有的对话音数据的聚合信道协议,即多协议标记交换话音业务(VoMPLS)中,信道标识数据仅长8位并且为了充分标识数据所属的话音信道而必须与分组标识组合。这样,例如,在分组流A上的信道5数据不同于在分组流B上的信道5数据。因此,不可能不用额外的信令就在分组之间移动信道。
目前的VoIP协议的另一个缺点是其未设计来支持明确的8字节边界对齐,而这对由64位处理器来高效处理是必须的。
【附图说明】
通过附图所图示的示例实施例而非限制的方式来描述本发明,附图中相似的标号表示类似的元件,其中:
图1图示了现有技术的实时协议(RTP)分组;
图2的方框图图示了结合了本发明的一个一般实施例的聚合话音信道(AVC)系统、以及其中可实现本发明的某些方面的操作环境;
图3是根据本发明的实施例,更详细地图示图2的AVC系统的方框图;
图4图示了根据一个实施例,图2的聚合话音信道系统的分组格式;
图5图示了由计算设备运行的方法的某些方面的流程图,该计算设备执行图2到3中示出的本发明的一个实施例;
图6图示了一个合适的计算环境的概观,在该环境中可以实现图2、3、4和5中所示出的本发明的某些方面;和
图7的方框图图示了结合了本发明的一个一般实施例的聚合话音信道系统、以及其中可实现图2、3、4和5中所示出的本发明的某些方面的计算机可读介质。
【具体实施方式】
在下面对本发明各个方面的说明中,将描述使用聚合话音信道系统来在分组网络上发送多个话音信道的方法。将给出具体细节以提供对本发明的透彻理解。但是,对本领域技术人员很清楚的是,只有所描述的本发明方面中的一些或全部,以及有或没有这些具体的细节中的一些或全部,也能实现本发明的实施例。在某些情况下,为了不混淆本发明可能会省略或简化公知的特征。
将使用术语来展现本说明的多个部分,本领域技术人员通常采用这些术语来将他们工作的实质传递给其他本领域技术人员,这些术语包括由计算机系统或电子商业应用执行的操作以及其操作对象的术语,例如传输、接收、检索、确定、生成、协议、数据结构等等。如同本领域技术人员很理解地,这些操作对象采取电、磁或光信号的形式,而这些操作涉及通过系统的电、磁或光部件来存储、传递、组合或者操纵信号。术语系统包括这些独立、附属或嵌入部件的通用以及专用布置。
将以对理解本发明最有帮助的方式将各种操作作为依次执行的多个分离的步骤来描述。但是,说明的顺序不应被理解成意味着这些操作必须按其所呈现的顺序来执行或者是依赖于顺序的。最后,短语“在一个实施例中”的重复使用不一定指相同的实施例,虽然可能是指相同的。
图2的方框图图示了结合了本发明的一个一般实施例的聚合话音信道(AVC)系统300、以及其中可实现本发明的某些方面的操作环境200。如所示的,AVC系统300处理接收来自以下的话音数据:基于互联网协议(IP)的网络212,例如因特网;或传统的公共交换电话网络(PSTN)204,也称为普通老式电话业务(POTS)。当接收自IP网络212时,话音数据通常以RTP分组226的形式传输,虽然可采用其他类型的实时分组协议而不偏离本发明的范围。通常使用RTP分组226的一个或多个话音呼叫不是由传统电话呼叫202产生的,而是由连接到LAN/WAN 210的源VoIP使能的PC 208产生的,该LAN/WAN 210连接到IP分组网际网212。VoIP使能的PC 208使用RTP分组226或其他类似可路由的分组来经过LAN/WAN 210而将话音分组数据传输到IP分组网际网212,以传输到另一个VoIP使能的目的地,例如VoIP ITG 220(如下所述在图3中示出)。在RTP分组226中承载的话音数据通常是压缩的,并且在由AVC系统300处理之前必须被解压缩成脉冲编码调制(PCM)或其他类型的数字方案以传输模拟数据。RTP分组226通过IP网络212路由,该IP网络212可以是任何基于分组的网际网,包括因特网或私有因特网电话业务供应商。
当接收自PSTN/POTS网络204时,话音数据通常以复用数据流216的形式传输。例如,在图示的操作环境200中,PSTN 204接收可由模拟话音信号组成的数据流214,该模拟话音信号已使用PCM或其他类型的数字方案数字化以传输模拟数据。例如,在T-1系统中,数据流214可包括8位字,其代表每秒采样8,000次(8kHz)的话音信号,其中每个采样都数字化成8位的字。数据流214可包含的数据不仅代表通常的话音呼叫202,而且代表传真传输设备、数据调制解调器、或能够生成可在POTS或PSTN话音电话网络上传输的数据的任何其他设备。PSTN 204通常接收多个数据流214,每个都代表不同话音信道(即单独的话音呼叫),并使用例如时分复用(TDM)或异步转移模式(ATM)复用技术的方案来将数据复用到一起以输出到单个复用数据流216,虽然可以采用其他类型的复用而不偏离本发明的范围。
在一个实施例中,AVC系统300由各种部件组成,包括AVC分组格式301、PCM/AVC转换器302、PSTN接口303和AVC处理器304。AVC系统300以一种避免不必要开销的高效方式来处理正在操作环境200中传输的话音数据。例如,AVC分组格式301被优化来传输在例如基于以太网的网络或“InfiniBand”系统网络的短途局域网上的话音数据。PCM/AVC转换器302将PCM数据转换成AVC数据格式301,反之亦然。作为一个例子,PSTN接口303从PSTN 204接收复用数据流216,并使用PCM/AVC转换器302将PCM数字话音数据转换成对应的AVC分组301。PCM/AVC转换器302还被用来将得自RTP分组26的PCM数据转换成对应的AVC分组301。AVC处理器304处理AVC分组301以进一步由VoIP使能的应用来处理。
对本领域技术人员将很清楚,PCM/AVC转换器302可将话音数据转换成AVC分组301,反之亦然,其中该话音数据已经使用其他类型的数字方案数字化以传输模拟数据,而非仅仅是已用PCM方案数字化的数据。因此PCM/AVC转换器302这样命名是为了方便而非限制。
图3是根据本发明的实施例,更详细地图示图2的AVC系统300的方框图。如所示的,AVC系统300由一个或多个VoIP因特网电话网关(ITG)220、媒体服务器228和PSTN接口303组成,这些都在局域网(LAN)或城域网(MAN)232中连接到一起,232可以是任何类型的基于分组的局域网,例如基于以太网的网络或“InfiniBand”系统网络。VoIP ITG 220操作来经由长途分组向IP网络212发送或从其接收话音数据,所述长途分组例如按照RTP协议或其他合适的长途协议格式化的RTP分组226。类似地,PSTN接口303操作来经由按照TDM/ATM协议或其他合适的基于电话网络的协议格式化的TDM/ATM数据流216,而向PSTN网络204发送或从其接收话音数据。媒体服务器228经由LAN/MAN 232接收由VoIP ITG 220或PSTN接口303生成的AVC分组301,由谁生成取决于话音数据在何处产生。
除了其他差别以外,本发明的AVC分组301不包括第3层头部。第3层头部用来使分组能够被路由经过长的距离,例如经由局域网(LAN)或广域网(WAN)210而到达互联网协议(IP)网际网212。例如,RTP分组226包括第3层头部,使得其能够经由LAN/WAN 210和IP网络212而被路由。相反,在图示实施例中的AVC分组301被设计来将话音呼叫流量经过相对短的距离,而传送到通常位于与AVC分组301产生的地方相同的建筑物内的目的地。例如,如图示实施例所示,AVC分组301可能从PSTN接口303产生到PSTN 204,其中PSTN接口303经由LAN或城域网(MAN)232而连接到目的地VoIP ITG 220或媒体服务器228。因为AVC分组301经过LAN/MAN 232来传输,所以它们不会被丢失或乱序传输。因此,不必要处理作为第3层分组处理一部分的序列号或时间戳。通过利用网络处理的这方面,由于去掉了第3层头部处理(虽然使得AVC分组301不能被路由经过长的距离),AVC分组301的设计提高了分组在其各个目的地的处理性能,所述目的地例如VoIP ITG 220、媒体服务器228和PSTN接口303。
这样,虽然VoIP ITG 220可简单地将RTP分组226经过LAN/MAN232转发到其目的节点,并且PSTN接口303可在TDM/ATM数据流216中接收话音数据时简单地生成RTP分组,但使用AVC系统300替换地生成AVC分组301来为话音呼叫路程的这部分承载话音数据,这是更高效、可扩展和鲁棒的。
在一个实施例中,每个VoIP ITG 220还配备有PCM/AVC转换器302和AVC处理器304,使得话音数据可在经过LAN/MAN 232发送之前从PCM格式被转换到AVC格式301并处理,以及反过来,在以RTP分组226经过IP网络212发送之前被处理并从AVC转换到PCM格式。类似地,每个PSTN接口303还配备有PCM/AVC转换器302和AVC处理器304,使得话音数据可在经过LAN/MAN 232发送之前从PCM格式被转换到AVC格式301并处理,以及反过来,在以TDM/ATM数据流216经过PSTN网络204发送之前被处理并从AVC 301转换到PCM格式。媒体服务器228配备有AVC处理器304,使得AVC分组301可由包括在媒体服务器228上的多种计算机电话服务在分离的话音信道数据中来高效处理以用于进一步处理,所述服务例如语音识别应用等等,对这些服务AVC分组301中所传输的话音信道数据的质量(即传输和处理速度)是必需的。
在一个实施例中,一旦对给定的话音信道接收到复用数据流216中的数据采样,PSTN接口303的PCM/AVC转换器302就基于与每个采样相关联的唯一话音信道标识来确定它们正确的目的地。通过使用控制协议,PSTN接口303的PCM/AVC转换器302设置了唯一的基于目的地的段ID,该段ID在数据流216中为其遇到的每个唯一话音信道明确地标识了正确的目的信道号。段ID确定AVC分组301被传送到这些目的地中的哪一个,例如传送到目的地VoIP ITG 220或媒体服务器228中的哪一个。
在一个实施例中,PSTN接口303的PCM/AVC转换器302将来自复用数据流216的对于给定话音信道的数据采样组合成一个数据段。每个数据段代表产生数据的话音呼叫(或者传真或调制解调器传输)的一部分,其中该部分具有为达到小的延迟而优化的长度。延迟是从源(例如始发电话202)生成数据段到在目的地(例如VoIP ITG 220)接收到该数据段所测量的流逝的时间。一般而言,由数据段所代表的话音呼叫的部分越小,延迟越短。在一个实施例中,最优长度是1毫秒(ms),但是也可采用其他长度而不偏离本发明的范围。在一个实施例中,数据段包括8个数据采样,其中每个数据采样都是8位的字,导致数据段长度为8个字节,这适合于在AVC分组301中聚合而使得数据段可在8字节边界上对齐。数据段可包括其他数量和大小的数据采样,只要所产生数据段的长度适合于在AVC分组301中聚合而使得数据段可在8字节边界上对齐。将数据段在8字节边界上明确对齐的能力使得AVC系统300能够使用64位处理器来高效操作。
PSTN接口303的PCM/AVC转换器302还将4个数据段和对应的段ID聚合成一个四元段(quad segment)。PCM/AVC转换器302从一个或多个四元段生成一个AVC分组301,这些四元段前置上必要的头部以经过LAN/MAN 232传输到目的节点,例如VoIP使能的ITG 220或媒体服务器228中的一个。一旦被目的地VoIP使能的ITG 220或媒体服务器228接收到,对应的目的地AVC处理器304就处理AVC分组301以提取出话音数据(即数据段),并根据正确的话音信道(即段ID)由VoIP使能的ITG220或媒体服务器228进一步处理。例如,当VoIP使能的ITG 220上的AVC处理器304确定了一个AVC分组301包含必须经过IP网络212发送到远程目的地的话音数据时,VoIP使能的ITG 220上的PCM/AVC转换器302就将话音数据转换成PCM数据,该PCM数据随后可进一步处理成RTP分组226,以经过IP网络212而路由到最终目的地。当媒体服务器228中的一个上的AVC处理器304确定了一个AVC分组301包含属于该媒体服务器228正在处理的话音信道的话音数据时,该AVC处理器304就解析出符合该话音信道的话音数据,并将其发送到媒体服务器228上的合适的(多个)应用(例如语音识别、或其他计算机电话服务)。
在一个实施例中,从IP网络212接收到RTP分组226中的话音数据后,VoIP ITG 220的PCM/AVC转换器302就通过将PCM数据以一种方式组合成数据段和四元段,而将得自RTP分组226的PCM数据转换成AVC分组301,所述方式类似于当话音数据产生自PSTN网络204时将PCM数据转换成AVC分组301的方式。PCM话音数据和相关联的话音信道是得自以RTP分组226传送的已分组的话音数据,而不是从复用数据流中提取PCM话音数据。当然,本领域技术人员将认识到,已经使用不同于PCM的方案所数字化的话音数据可从已分组的话音数据得到,而不偏离本发明的范围。本领域技术人员还应认识到,不同于RTP分组的分组可以是已分组的话音数据的来源,而不偏离本发明的范围。
图4图示了根据图2的AVC系统300的一个实施例的,AVC分组301的分组格式。不同于现有技术的RTP协议的格式(在图1中图示了其的例子),AVC分组301的分组格式是在LAN协议的层上而不是基于IP协议。IP头部是不必要的,因为如前所述地,AVC分组301仅需要传输经过短的距离,例如在跨过“InfiniBand”系统网络的一个建筑物内、或者跨过在诸如LAN/MAN 232的基于以太网的网络的校园。这降低了头部开销,仅留下了MAC头部305和根据LAN协议正确传递AVC分组301所必须的其他头部306。
在一个实施例中,在头部之后,AVC分组301的下40个字节包括一个或多个四元段312,每个四元段312包含多达四个段ID 308,接着四个段ID 308的是其各自的数据段310。数据段310包括从TDM/ATM数据流216或RTP分组226获得的数字化话音数据。段ID 308代表与数据段310中的数字化话音数据相关联的话音信道的标识。例如,段ID 308可代表与给定的话音信道的PCM数据采样相关联的话音信道,该数据采样在复用数据流216中由PSTN 204传输(或者,在从RTP分组产生已分组的话音数据的情况下,给定的话音信道的PCM数据采样在RTP分组226中由IP网络212传输)。段ID 308和数据段310的这种四元布置允许AVC分组301沿8字节的边界对齐,以有助于终端计算设备的高效处理,所述终端计算设备例如图3中图示的VoIP使能的ITG 220或媒体服务器228。
在一个实施例中,段ID 308每个长2个字节,能够存储16位的数据,这足够来明确地为话音信道定义一个唯一目的地号或与该话音信道的目的地相关联的其他唯一标识。明确的目的地话音信道标识提供了性能上的优势,因为其不需要根据数据段310在传输分组(即AVC分组301)中的位置、传输分组标识(即分组头部)、或包含在传输分组中或在其外部的其他数据(即在控制协议分组或其他带外通信(out-of-bandcommunication)中)来得到或查询话音信道,而这对现有技术方法是必须的。
在一个实施例中,明确的话音信道标识还允许当使用中的话音信道的数量随时间波动时进行分组合并。例如,VoIP系统操作环境200可能处理一千个电话呼叫,这些呼叫要求生成10个不同的分组流301,其中每个分组流有100个话音信道。如果一半的呼叫结束了,在VoIP系统操作环境200中仅留下500个活动呼叫,那么使用明确的话音信道标识,剩下的500个话音信道可被动态合并成仅仅5个分组或分组流301,其中每个分组流有100个话音信道。
动态合并分组的能力是一个显著的优点,因为VoIP系统操作环境200中话音流量的量在任何给定的分钟或小时中可能波动很大。通过动态响应来适应不同的操作条件,AVC系统300可以更高效地利用LAN/MAN 232上可用的带宽。相反,传送话音数据的现有技术的方法,例如RTP分组226或VoMPLS分组(未示出)依赖于隐含的话音信道标识,并且不能快速地对变化的操作条件做出响应。例如,在图1所图示的RTP分组100中,在有效负载110中承载的话音呼叫的话音信道标识必须得自UDP头部106中所指明的UDP端口号,因为先前使用一个单独的带外控制分组向每个唯一的话音信道赋予了一个具体的UDP端口号。当呼叫结束时,必须使用带外通信将该UDP端口号重新赋给一个新呼叫。另一方面,AVC分组301不使用带外通信来确定哪个话音信道与特定数据段310相关联。相反,已经在AVC分组301的段ID 308中明确指明了话音信道标识。换言之,通过使用AVC分组301,与其中所包含的话音数据相关联的话音信道是自标识的。
在一个实施例中,AVC/PCM转换器302生成数据段310,该数据段310包括8个以8KHz速率采样的PDM话音数据的采样。每个PCM采样长1个字节,以使8个PCM采样组合形成一个8字节的字,该8字节的字代表来自PSTN 204的1毫秒的话音数据。可以采用其他大小的数据采样而不偏离本发明的原理,只要当聚合成四元段312时所产生的数据段310可沿8字节的边界对齐。更小的采样一般更好,因为其产生更短的延迟,这提高了终端计算机处的诸如语音识别应用等计算机电话应用的性能。
在一个实施例中,四元数据段312是AVC系统300中话音数据传递的最小单元。因为对于一个给定的AVC分组流可能不是所有的数据段都需要,所以AVC/PCM转换器302通过用例如0xFFFF的特殊段ID 308来标记而生成未激活的数据段310。在一个实施例中,AVC/PCM转换器302可将多达148个数据段310或37个四元数据段312聚合到多达1480字节的单个AVC分组301中,这还在基于以太网的网络的1504字节的当前最大允许长度之内。对于支持特大分组长度或其他非传统分组长度(例如“InfiniBand”系统网络的更短的分组大小)的以太网网络,那么AVC分组301可按需要包括更多或更少数量的数据段310和四元数据段312,而不偏离本发明的范围。
现在转到图6,参考一系列流程图按照计算机软件来描述本发明的具体方法。由计算机执行的方法构成了由计算机可执行指令组成的计算机程序。通过参考流程图描述方法,使得本领域技术人员能够开发包括这样指令的这种程序,以在合适配置的计算机(该计算机的处理器执行来自计算机可访问介质的指令)上执行这些方法。计算机可执行的指令可用计算机编程语言来写,或者可以在固件逻辑或微引擎代码等等中实现。如果以遵循公认标准的编程语言来写,这种指令可在多种硬件平台上执行并接口到多种操作系统。此外,本发明未参考任何具体的编程语言来描述。将认识到可用多种编程语言按这里所描述的来实现本发明的教导。另外,本领域通常谈及各种形式的软件(例如程序、进程、过程、应用等等)采取动作或引起结果。这种表达仅仅是简洁地表示由计算机对软件的执行使得计算机的处理器执行动作或产生结果。
图5图示了AVC系统300在分组网络上发送多个话音信道的某些方面。具体而言,图5图示了由计算机运行的一些动作,该计算机执行结合了本发明的一个实施例的AVC系统300。
在一个实施例中,在处理框322,AVC系统300在目的话音信道与用来指定这些目的话音信道的段ID的可能值之间建立起关联,所述话音信道是在来自PSTN网络204的复用数据流216或来自IP网络212的RTP分组226中遇到的。在一个实施例中,AVC系统300在处理话音信道数据之前使用控制协议分组或其他带外通信来建立此关联。处理话音信道数据开始于处理框324,此处AVC/PCM转换器302接收来自代表话音呼叫202一部分的复用数据流216的或经由IP网络212从RTP分组226得到的数字化话音数据。在一个实施例中,复用数据流216包括以8KHz速率采样的PCM话音数据的多个采样。在一个实施例中,RTP分组226包含分组的话音数据,从该分组的话音数据得到以8KHz速率采样的PCM话音数据的多个采样。在处理框326,AVC/PCM转换器302将PCM话音数据的多个采样组合成8字节的数据段310。在处理框328,AVC/PCM转换器302对数据段310中的每个生成对应的段ID 308,此处段ID 308明确地标识与话音呼叫202相关联的目的话音信道号,段ID 308已经由先前在处理框322执行的话音信道/段ID目的地关联建立过程确定了。在处理框330,AVC/PCM转换器302将具有共同目的节点的多达4个的段ID 308聚合成一个8字节的段,还将对应的数据段310聚合成单个四元段312。如果要聚合少于4个的段ID 308和对应的数据段310,那么生成具有非激活段ID的四元段312,以使该四元段312的段ID 308和数据段310仍然能够在8字节的边界上明确对齐。处理在处理框332继续,此处AVC/PCM转换器302通过在一个或多个四元段312上前置一个以太网头部(或“InfiniBand”头部等)来生成AVC分组301。
在一个实施例中,在处理框334,AVC处理器304将AVC分组301经过基于分组的网络232传输到目的节点计算设备,例如VoIP使能的ITG 220或媒体服务器228、或者包括语音识别应用或其他计算机电话服务的其他设备。在处理框336,AVC处理器304接收被传输的AVC分组301,并根据段ID 308和数据段310来将话音数据解析到合适的话音信道中,这里取决于话音信道和呼叫目的地,话音数据被传递到语音识别应用或其他计算机电话服务以进一步处理。
图6图示了一个实施例的装置,其可用于生成、传输或接收、以及处理包含分组网络上多个话音信道的AVC分组301。虽然所描述的实施例使用个人计算机(PC),但是也可使用其他设备,包括网络服务器、网络处理器、或其他网络可访问的设备。本发明的一个实施例可在PC体系结构上实现。但是,对本领域技术人员很清楚,也可采用另外的计算机系统体系结构或其他处理器、可编程或基于电子的设备。
一般而言,如图6所示的这种计算机系统包括处理器402,处理器402通过总线401耦合到随机访问存储器(RAM)403、只读存储器(ROM)404和大容量存储设备407。大容量存储设备407代表一种持久的数据存储设备,例如软盘驱动、固定盘驱动(例如磁、光、磁光等等)或流磁带驱动。处理器402可包括很多种通用处理器或微处理器(例如由Intel公司制造的Pentium处理器)中任一种的一个或多个、专用处理器、或特别编程的逻辑设备,以上的任何一个都可基于32位、64位或其他处理器体系结构。
显示设备405通过总线401耦合到处理器402并为计算机系统400提供图形输出。诸如键盘或鼠标的输入设备406耦合到总线401以向处理器402传送信息和命令选择。还通过总线401耦合到处理器402的有输入/输出接口410,其可用来控制并传递到连接到计算机系统400的电子设备(打印机、其他计算机等等)的数据。计算机系统400包括将计算机系统400连接到网络414的网络设备408,通过网络414可传输和接收AVC分组301,例如从远程设备412。网络设备408可包括以太网设备、电话插头(phone jack)和卫星链路。对本领域技术人员将很清楚也可利用其他网络设备。
本发明的一个实施例可整个存储为大容量存储器407上的软件产品。还应认识到包括软件产品的指令序列不需要在本地存储,而可经由网络/通信接口存储在从远程存储设备接收的传播数据信号上,所述远程存储设备例如网络上的服务器。指令从诸如大容量存储器407的存储设备、或从传播的数据信号被拷贝到存储器子系统403/404中,然后被处理器402访问和执行。在一种实现中,这些软件例程是用C++编程语言编写的。但是应认识到,可用很多种编程语言中的任何一种来实现这些例程。本发明的另一个实施例可嵌入到硬件产品中,例如在印刷电路板、专用处理器、或者网络处理器的微引擎代码中,所述网络处理器是在可通信地耦合到总线401的特别编程的逻辑设备上实现的。本发明的其他实施例可实现为部分软件产品和部分硬件产品。
本发明的实施例可由存储在图7中所示的机器可访问介质(也称为计算机可访问介质、计算机可读介质、处理器可访问介质或处理器可读介质)500上的软件产品来代表。机器可访问介质500可以是任何类型的磁、光或电存储介质,包括磁盘、CD-ROM、存储器设备(易失或非易失的)或类似的存储机构。机器可访问介质500可包含多组指令、代码序列、配置信息或其他数据。还应注意到机器可访问介质500甚至可以包括通信介质,通过该通信介质,包含多组指令、代码序列、配置信息或其他数据的传播数据信号,可被传送到存储器子系统403/404中并随后被处理器402访问和执行,而不偏离本发明的范围。本领域技术人员还将认识到,实现所描述的本发明必要的其他指令和操作也可存储在机器可访问介质500上。
图7图示了机器可访问介质500的一个一般实施例,其包括的指令当被机器执行时使得该机器执行操作,所述操作包括按照本发明的方法和装置在分组网络上发送多个话音信道。其中,这些指令包括话音信道/段ID控制器指令502、数据接收器504指令、四元段聚合器指令506、AVC分组生成器指令508、以及AVC分组传输器510和接收器512指令。
通过比较,在图2和3中图示的VoIP系统操作环境200中的端到端连接中,该连接处理50个话音信道的复用话音数据,比起通过多信道RTP协议发送相同量的复用话音数据,本发明的一个实施例的AVC系统300仅仅需要其所需的每秒十分之一的分组、五分之一的延迟以及仅二分之一的带宽,如下面表1所总结的:
表1 分组类型分组时间单元每信道每秒50个信道所每秒总分组 的分组 需分组多信道RTP 5ms 200 50 10,000聚合话音分组协议300 1ms 1000 1 1000
因此,描述了一种新方法,其使用AVC系统300在分组网络上发送多个话音信道。从以上说明,本领域技术人员将认识到本发明的许多其他变化都是可能的。这样,本发明并不限于所描述的细节。相反,本发明可以实现具有在所附权利要求的精神和范围之内的改进和改变。