具体实施方式
通常,本发明被用来提供各种支持从网络到远程无线终端的因特网协议通信的系统和方法。同样地,各种协议栈和信息流在这里被提供用来实现基于端到端因特网协议的通信的过渡解决方案。然而,本领域的一个技术人员将认识到,本发明对于各种有线线路和光纤通信系统(例如使用报头压缩的有线线路VoIP电话和系统)也可以是有用的。
在因特网和各种电信系统逐渐集成为一体的时候,用于所有应用的端到端因特网协议(IP)是下一代计算机和通信系统的目标。然而,用来转换目前的电路交换网络所需的成本和时间是巨大的,特别是对于电信系统和对于使用因特网协议来传送音频信息而言。当使用因特网协议发送音频信息时会发生各种服务质量问题。服务质量问题正在花费时间来解决。因此,从部署的观点来看,建立过渡的解决方案看起来是谨慎的,该过渡解决方案将更及时地实现和将在系统成本中提供一个逐渐增加的步骤。
在实现完全的端到端因特网协议通信之前,本发明提供各种要在传输周期期间实现的基于终端和基于网络的解决方案。这些终端可以使用常规硬件和软件构建,并且对于特定应用(特别是包括音频信息的应用)提供对因特网连接的受限访问。无线终端的设计是特别具有挑战性的,并且由网络实体(例如基站和相关处理装置)提供对这些种类的终端的支持是很重要的,所述网络实体通常是考虑对未来的完全因特网协议的想象而设计的。同样地,所述网络实体应该包括通常的因特网连接配置,而对这些过渡网络实体用在下一代端到端因特网协议通信系统中的能力没有任何重大的影响。
当通信系统更接近兼容端到端因特网协议时,无线终端将变成为基于因特网协议的,而且所有的服务将根据因特网协议模型提供,包括音频信息和服务(即因特网协议承载的语音(VoIP))的传输。在一个示例性端到端因特网协议通信系统中,音频业务可以如图1所示处理,图1中具有终端侧105和网络侧110,两者都包括完整的用于音频信息处理的因特网协议栈。该完整的因特网协议栈可以包括因特网协议层135以及包括在链路层120中的报头压缩模块125和报头解压缩模块130。因特网协议层135可以是例如IPv4或IPv6(因特网协议版本4或6)。在无线移动电话的情况下,链路层120可以是一组打算针对无线介质上的连接的协议,它可以包括诸如差错保护、差错检测和重传等机制。终端侧105也可以包括VoIP应用层145、传输层140和物理层115。例如,VoIP应用层145可以由任何实时传输协议(RTP)应用组成并且可以使用音频编码器/解码器(编解码器)。传输层140可以包括例如用于VoIP的用户数据报协议(UDP)或者传输控制协议(TCP)。物理层115可以是无线介质。网络侧110的正常因特网协议栈可以包括因特网协议层165和链路层150,而链路层150包括报头压缩模块160和报头解压缩模块155。网络侧110也可以包括物理层115。
图1中的协议配置可以用于任何基于因特网协议的应用,包括VoIP应用。如图所示,源自终端侧105(例如,无线终端)的音频信息170(例如,数字化的话音或语音)被从VoIP应用层145通过传输层140送到因特网协议层135,其中数字化的音频信息在因特网协议层135被放到具有报头信息(例如,源信息、路由信息和次序信息等)的因特网协议分组中。接着,该因特网协议分组被送到报头压缩模块125并且报头大小被减小。然后,音频信息170被从链路层120送到物理层115以便使用例如无线电波传输送达网络侧110的物理层115。物理层115的一个实例是终端侧105的无线终端中的收发机及天线和网络侧110的基站中的收发机及天线。在网络侧110,音频信息170被送到链路层150以便由报头解压缩模块155处理,其中因特网协议分组的报头在报头解压缩模块155中被解压缩。然后其报头被解压缩的因特网协议分组被送到网络侧因特网协议层165。然后网络将该因特网协议分组转发到指定的目的地。注意,终端侧105可以不受限制地是许多无线终端中的任何一个,包括移动电话、个人数字助理(PDA)、膝上型或便携式个人计算机(PC)、具有无线连接的桌面计算机和平板PC等。此外,网络侧可以不受限制地包括基站、基站控制器、路由器和服务器等。
源自网络侧110且要被发送到终端侧105的音频信息175如图1所示类似地路由和处理。音频信息175采用因特网协议分组格式并且其报头被网络侧110的报头压缩模块160压缩并被终端侧105的报头解压缩模块130解压缩。
注意,图1所示的特定的协议配置将支持用于数字信息数据传输的任何基于因特网协议的应用,其中所述数字信息包括音频信息、流视频信息和多媒体信息等,并且该特定协议配置对于所有的因特网协议应用,即使是那些包括无线链路的应用,都是优选的协议配置。然而,在较近的时期内,支持无线链路IP语音(VoIPoW)更可能需要一种过渡方法,该过渡方法能在不支持所有的端到端因特网协议应用的情况下解决音频信息的服务质量问题。此外,图1中提供的非常普通的解决方案可能比必需的更复杂,特别是终端侧105可能具有比必需功能还要多的功能来支持音频通信。
图2中提供了一种用于在无线终端和基于因特网协议的网络之间提供音频通信的简化的终端方法。尽管在某些方面它可能是优选的,但是VoIP应用(例如,可以结合音频编码器/解码器实现诸如RTP等应用协议的实体,其中该编码器/解码器取得音频信号、将它转换为数字格式、编码为压缩的数字格式、打包为应用分组并将它传递到传输层)不一定驻留在终端侧105装置内。例如,也有可能在无线终端和末端VoIP主机之间有几个因特网协议跳,其中该末端VoIP主机中驻留传输层和VoIP应用。如图2所示,终端侧105可以通过诸如音频网关245等的网关而互连到因特网协议域中的其它的音频同位体。根据这种方法,在终端侧105中没有因特网协议组件驻留,因为因特网协议格式的分组在网络侧110终止,并且在从音频网关245到终端侧105上的无线终端都使用专用的传输解决方案(例如,GSM、CDMA等)。
终端侧105可以包括例如具有传统装置和传统协议栈的无线终端。终端侧105协议栈可以包括可能是例如无线电波收发机及天线的物理层215。物理层215可以耦合到链路层220。链路层220可以包括例如用于链路上差错数据重传的ARQ机制(自动重发请求)、无线电资源管理功能、无线电测量、切换功能,例如物理介质上任何与无线信道的维护相关的东西。链路层220可以耦合到专用解决方案225。例如,专用解决方案225可以包括到收发机的有线连接。专用解决方案225可以耦合到专用音频应用模块230。专用音频应用230可以包括例如用于GSM、PDC、CDMA和/或WCDMA的编解码器。
在网络侧110,协议栈可以包括耦合到链路层235的物理层215,例如收发机及天线等。链路层235可以耦合到专用解决方案240,而专用解决方案240可以尤其包括音频编解码器(例如GSM、EVRC(增强的可变速率编解码器)、SMV(可选多速率话音编码器)、AMR(自适应多速率))和可能的一些带内应用信令等。专用解决方案240可以耦合到音频网关245,音频网关245将VoIP分组从VoIP格式转换为专用解决方案240所需的多种信号格式的音频信息。网络侧110也可以包括耦合到音频网关245的传输层250和耦合到传输层250的因特网协议层255。
即使基于网关的模型是灵巧的和简单的,并且可以对互连到VoIP同位体的简化或专门的终端提供支持,但它可能有一些部署障碍。例如,一个部署障碍可能是需要在网络侧有较大的增加以便支持具有专用音频应用230的专用终端。当在网络侧110中有音频网关245时,就有两个协议栈,一个包括因特网协议层255和传输层250,一个包括专用解决方案240和链路层235。
因为无论如何都会在此实现(即因特网协议层255和传输层250)中对系统提供了真正的因特网协议承载音频的支持,所以,在对专用终端提供支持时重用网络侧实体中尽可能多的功能可能是有利的。然而,这对于网关解决方案不易实现,因为此解决方案需要网络侧作为基于因特网协议的业务的端点来工作。这意味着因特网协议传输层协议栈(例如,因特网协议层255和传输层250)和音频网关应用层245两者连同与专用终端侧105通信所需的专用连网功能一起都必须在网络侧实现,以便在终端侧105支持非因特网协议终端(例如,电路交换类型的服务)。此外,单独的因特网协议栈将需要被耦合到网络侧110的物理层215,以便在终端侧105严格地支持因特网协议终端(例如,分组交换服务)。这样,使用该网关方案,则在网络侧支持各种类型的非因特网协议终端和因特网协议终端将需要双协议栈。此外,该网关方案不支持在这个范围内用于专用终端的所有合理的业务模型。业务模型可以包括例如电路交换(CS)类型服务(不基于因特网协议)或包括因特网协议的分组交换服务。从装置的观点看,电路交换类型服务通常实现起来更廉价,但是从应用的观点来看它们不那么灵活。分组交换服务为了服务多样化(rich service)以及为了增强/提供更灵活的应用(例如视频电话,RTP被用来为它同步音频/视频)而使用因特网协议。专用终端可以是例如支持单个(或有限的组)编解码器(例如,GSM、AMR、SMV或EVRC编解码器)的终端。该范围可以包括:包含例如话音服务的音频服务,和/或诸如同步音频-视频服务等衍生服务。
可能期望不同的解决方案,在该方案中,网络侧110能够支持真正基于因特网协议的终端以及简化的或专用的终端,而不需要在网络侧110上实现双协议栈和大量的额外功能。虽然并不需要将音频信息业务(例如VoIP)从其它业务中分离出来,但是如果VoIP业务能够从其它应用业务(例如,诸如web浏览器信息等数据业务)中分离出来,那么在物理层上就可以简化解决方案并强化性能、效率和服务质量。以下有两种可行的解决方案,它们具有有简化协议栈的简化的终端和/或网络。这些解决方案可以在过渡期间支持具有专用VoIP应用的终端并在未来端到端因特网协议成为现实时支持通用VoIP终端。
第一种解决方案包括这样一个终端,它可以限于提供到基于因特网协议的网络的音频互连,其中该网络具有用于音频业务和会话控制功能两者的专用解决方案。而第二种解决方案则包括这样一个终端,它具有相同的用于音频业务的专用解决方案,但是它还实现了简化的因特网协议栈以便提供用于某些简单因特网协议应用的平台,并且能被用来在端到端因特网协议上运行会话控制,例如会话发起协议(SIP)。两种解决方案都使用在网络侧110保持基于因特网协议的协议栈的同时去分离音频信息的处理的原理。第一种解决方案处理最简单的终端(在VoIP以其简化的方式被实现的意义上),具体地可以用于主要包括音频信息通信的无线终端,其中所述音频信息使用因特网协议传输。
第二种解决方案用于支持具有多个基于因特网协议的功能的更加增强的终端,并且在这里这些终端将被称为“混合体”。这种VoIP终端的“混合”性质是指这样一个事实,即呼叫建立可以使用因特网协议(诸如SIP等,它可暗示因特网协议栈的存在)处理,以及与之相联合,编解码器可以用作电路交换话音系统,例如,编解码器可以直接依附于物理层。注意,虽然在这里没有详细描述,但是第一种和第二种解决方案都可以包括用于其它类型业务(例如,浏览、电子邮件等)的因特网协议栈,它们与图中显示和这里详细描述的VoIP部分无关。附加的因特网协议栈没有在图中示出,因为它可以被包括或不被包括,而该图只限于实现例如使用修改过的传统无线终端进行音频通信的VoIP业务所必须的配置。
现在参照图3,说明一种用于使用简化的音频终端建立VoIP的示例性协议栈和音频流,建立VoIP要在通信系统的网络侧110使用明显的报头压缩和解压缩协议,而在终端侧105使用具有集成的压缩处理的专用音频应用。在优选实施例中,最简单的终端可能是只支持音频的终端,它不具有任何其它信息通信的能力,诸如其它因特网协议应用(例如,因特网浏览、电子邮件等),这些应用不要求实时业务,但是它们可能需要因特网协议栈。但是,本领域的技术人员将认识到,具有集成的报头压缩和报头解压缩的专用应用可以被应用于诸如多媒体信息通信等的其它应用。类似地,所述终端可以包括带有或者不带有完整的报头压缩和报头解压缩的其它专用应用,例如无线应用协议(WAP)服务等。在这里,专用应用方法将使用因特网协议承载话音(VoIP)的实例来解释。
图3图示了用于在基于因特网协议的网络中与VoIP同位体通信的只支持音频的简单终端的一种可能的结构。在此配置中采用的方案避免了在终端侧105(例如,无线终端)实施或使用具有完全的报头压缩和报头解压缩功能的完整的因特网协议栈。更确切地,终端侧105设备可以具有专用音频应用325,该专用音频应用325包括使用因特网格式的通信信息进行通信所必需的全部功能。终端侧105直接产生要放置在音频有效载荷上的经压缩过的报头。在这种情况下,报头压缩和报头解压缩功能被简化,并且被集成到例如专用音频应用中由音频编解码器处理。该终端可以被配置来仿真因特网协议报头压缩和因特网协议报头解压缩。正如所指出的,在这个实施例中没有单独的报头压缩模块或报头解压缩模块被包括在耦合到专用音频应用325的链路层320中用于处理音频通信。同样地,该终端设备并不使用通常在通用因特网协议栈(如图1所示)中发现的所有协议。此外,终端侧105包括可以包含例如无线电收发机及天线的物理层315。
与在链路层中实现报头压缩功能相比,在此实施例中,令用于处理音频信息的报头压缩(HC)功能被包括在链路层之上的编解码器中可以提供许多优点。例如,保存在存储器中用于压缩/解压缩上下文的数据结构小得多。此外,并不是所有的报头压缩机制都要实现。而且一旦所有的静态信息已经被传输到另一端,那么可以通过递增计数该排序从而以最简单的形式产生经压缩过的报头(CH),因为链路层之上的编解码器具有该报头的动态部分所需的、对该报头的完全的了解和控制。另一方面,在正常情况下,当报头压缩功能包括在链路层中时,会需要许多与报头压缩相关的功能,这是因为不能预测要被压缩的报头,或者不能预先知道它们的特征。但是当报头压缩功能集成在编解码器中并且编解码器随有效载荷直接输出经压缩过的报头时,所有的这些都是已知的,因此,许多机制都不需要。并且,对于建议的配置,也不需要让其它因特网协议栈来对链路层上的音频通信进行某些处理,因此简化了处理需求。
借助于如图3所示的终端侧105的配置,网络侧110可以用将来端到端因特网协议所期望的通用因特网协议栈来配置。用于网络侧110的标准或通用因特网协议栈可以包括因特网协议层345和链路层330。链路层330包括报头压缩模块335和报头解压缩模块340。网络侧110还包括物理层315。
参照图4A,现在将描述使用示例性协议栈和音频流通过图3的信号路径370将音频信息从终端侧发送到网络侧的示例性处理流程。首先,在步骤405,终端侧105确定是否从终端发送音频信息给网络侧110。如果发送,则在步骤410,专用音频应用325将音频信息数字化,并且产生所使用因特网协议(例如,用于VoIP的RTP/UDP/IP)的压缩报头和作为单一应用输出有效载荷的编码的音频信息。接着在步骤415,包含音频信息的所述输出有效载荷通过链路层320和终端侧105的物理层315(例如,收发机及天线)被发送到网络侧110。具有压缩报头的因特网协议分组被通过网络侧110的物理层315发送到链路层330和报头解压缩模块340。然后在步骤420,报头解压缩模块340根据终端侧105用来压缩报头的特定报头压缩方案来解压缩因特网协议分组的报头。然后,在步骤425,网络侧(例如基站或基站控制器)通过因特网协议层345把解压缩过的因特网协议分组发送到它们预定的目的地。
参照图4B,现在将描述使用示例性协议栈和音频流通过如图3提供的信号路径375将音频信息从网络侧110发送到终端侧105的示例性处理流程。首先,在步骤430,网络侧110确定是否从网络发送音频信息给终端侧105。如果发送,则在步骤435,网络侧110的链路层330中的报头压缩模块335压缩要在信号路由375上被发送到终端侧105的因特网协议分组的报头。接着,在步骤440,带有压缩报头的因特网协议分组通过网络侧的物理层315(例如基站或基站控制器)发送到终端侧105。然后,在步骤445,带有压缩因特网协议报头的分组通过链路层320发送到专用音频应用325而并不首先被解压缩。然后,在步骤450,专用音频应用325的解压缩功能解压缩因特网协议报头。专用音频应用325也可以将解压缩的因特网协议分组流从数字音频信息转换为用于根据所发送音频信息产生音频的模拟信号。
如图3所配置,只要只使用终端侧105通信装置支持的应用,该通信装置就将依赖该网络和用户来作为具有完整的因特网协议栈和操作的真正因特网协议终端。例如,可以使用GSM、EVRC、SMV或AMR专用编解码器,并且在简单终端中所述编解码器可以被修改以便作为VoIP编解码器在音频有效载荷上直接输出经压缩过的报头,而同时该用于音频的终端实现就如在目前的第二代终端中一样、被带有很小修改地采用以便支持该专用应用。如果除编解码器中使用的特定GSM、EVRC、SMV或AMR以外的任何应用试图与所述无线终端通信,那么这将导致失败,因为该专用应用只支持音频通信。然而,所述通信装置可以配置有多个应用,每个应用都在需要的地方具有它们自己的报头压缩和报头解压缩功能。应该注意,简化终端的方法可以包括诸如以下任何报头压缩方案中的一种或多种:Van Jacobson的“压缩低速率串行链路的TCP/IP报头(Compressing TCP/IP Headers for Low-Speed Serial Links)”方案(这里称为VJ压缩方案)、Mikael Degermark等人的“IP报头压缩(IP Header Compression)”方案(这里称为IPHC压缩方案)、StevenCasner等人的“压缩低速率串行链路的IP/UDP/RTP报头(CompressingIP/UDP/RTP Headers for Low-Speed Serial Links)”方案(这里称为CRTP压缩方案)、Carsten Borman等人的“鲁棒报头压缩(ROHC)(Robust Header Compression(ROHC))”方案(这里称为ROHC压缩方案);和Lars-Eric Jonsson等人的“用于IP/UDP/RTP的链路层辅助ROHC全貌(A Link-Layer Assisted ROHC Profile for IP/UDP/RTP)”方案(这里称为LLA压缩方案);以及其它零字节报头压缩方案。
参照图5,现在为更鲁棒的终端提供了一种示例性协议栈和音频流,在这里称之为“混合”终端方案。混合终端方案可以集成因特网协议功能的使用(例如,使用诸如SIP等因特网协议)用于呼叫建立,并且可以通过报头解压缩同位体提供因特网协议报头解压缩的初始化,同时,在终端侧105中就像在第二代无线终端中一样为音频编解码器使用电路交换结构,从而获得有VoIP能力的终端。本发明的一个方面是优选地重用现有的报头压缩协议,同时增加一些组件从而使网络侧110的报头压缩在相反方向(网络侧110到终端侧105)相当于报头拆卸器。此外,报头压缩在前向方向(终端侧105到网络侧110)将充当报头产生器。因此,借助于网络侧110的最小增添,所述网络就能支持终端侧105上有真正端到端因特网协议能力的装置,该装置在两个方向都有使用相同报头压缩装置的真正的报头压缩,此外,该网络还支持有音频能力终端的非因特网协议过渡实现。
所述混合方案可以包括在通信系统的网络侧110修改报头压缩配置和在终端侧105包括专用音频应用和报头解压缩同位体。在一个变型中,该混合方案可以包括一些简单的增加以便修改否则不会变化的现有报头压缩协议的行为。可替换地,一些必要功能可以使用独立于报头压缩实现的、不同却更简单的实现来完成。
在一个实施例中,所述配置以分离的方式处理音频信息流而不需要通过终端中的因特网协议栈。为了实现此目标,对普通的因特网协议栈作了许多修改,从而使得音频信息可以作为没有因特网协议分组报头的数字化信息在终端侧105和网络侧110之间往返移动。在终端侧105没有报头压缩模块或报头解压缩模块。更确切地,音频信息作为数字化信息被直接发送到以及发送自音频编解码器,并且能够以具有最小尺寸因特网协议报头或根本就没有因特网协议报头的分组形式发送。此外,终端侧105包括报头解压缩同位体(HDP)530,网络侧110上的报头解压缩模块555使用报头解压缩同位体530为从终端侧105接收到的音频信息启动报头的生成。在网络侧110,报头压缩模块565与其它报头修改功能互相补充,其它报头修改功能允许从因特网协议音频分组中剥离出其因特网协议报头和使因特网协议分组有效载荷中发现的音频信息被正确地按时间排序。这些功能可以结合在报头压缩模块565中或者结合在单独的预报头压缩模块570(预HC)和后报头压缩模块560(后HC)中的一个或多个中。
更具体地,根据此方案的通信系统包括具有音频编解码器520的专用VoIP应用545。音频编解码器520可以是用在例如无线终端中的典型音频编解码器。音频编解码器520可以使用例如GSM、SMV、AMR、EVRC等类型的编码方法对数字化的音频信息进行编码和解码。音频编解码器520可以直接连接到终端侧105的物理层580(例如,收发机及天线)或通过链路层连接,所述链路层从用户业务的观点来看是透明的(没有作用)。由于这个原因,典型的因特网协议报头压缩和解压缩模块在终端侧105上是不需要的,这将在下面进行更详细地描述。另外,任何情况下在终端侧105上专用VoIP应用545都耦合到传输层540,而该传输层耦合到因特网协议层535。因特网协议层535耦合到可能包括报头压缩同位体530(将在下面更详细地讨论)的链路层525。链路层525耦合到物理层515。
网络侧110可以包括耦合到链路层550的物理层515(例如,收发机及天线)。链路层550可以包括报头解压缩模块555和报头压缩模块565。进一步地,在一个实施例中,链路层550可以包括预HC 570和/或后HC 560来修改在因特网协议分组中接收到的音频信息,从而使之与编解码器520兼容。此外,网络侧110可以包括耦合到链路层550的因特网协议层575。
如图5所示,所述混合终端(终端侧105)可以具有因特网协议栈(例如,因特网协议层535),该因特网协议栈在一个实施例中可以简化为具有更少的到更高层的通用接口和具有最少的功能。在这种情况下,音频会话控制信令可以在因特网协议上端到端地处理。报头解压缩同位体530可以随因特网协议栈和功能一起被包括,从而欺骗网络侧报头解压缩模块555以便为编解码器520发送的数字化音频数据产生报头。网络侧110的预HC模块570和后HC模块560可以使报头压缩模块565能够充当报头终端连接器。
在终端侧105中使音频编解码器520直接连接到物理层515的情况下,没有音频业务通过因特网协议栈。因此,在无线终端中不需要报头压缩来处理去往和来自专用VoIP应用545的实时音频业务。尽管报头压缩和报头解压缩模块可以被包括以便处理其它因特网协议应用。但是,在终端侧105上必须有一些实体与网络侧110上的解压缩模块555建立报头压缩关系,从而使得报头解压缩模块555可以像它正在对压缩分组进行解压缩一样地工作。同样地,报头解压缩同位体530控制报头解压缩模块555作为一个用于因特网协议分组的报头生成器而运行,其中该因特网协议分组包含终端侧105上编解码器520所发送的音频信息。报头解压缩同位体530可以由专用VoIP应用545在音频会话开始时启动。例如,报头解压缩同位体530的初始化可以由所述专用VoIP应用的呼叫控制功能来触发,这既可以经外部接口来完成,也可以由通过因特网协议栈和报头解压缩同位体530发送的特定分组来完成。所述因特网协议栈可以被配置为保证所有的VoIP呼叫建立分组都通过它。通常,通过向网络侧110上报头解压缩模块555发送报头压缩初始化分组,报头解压缩同位体530欺骗该报头解压缩模块555,就象它正在对来自终端侧105上相应报头压缩器的分组进行解压缩一样地工作。这样则为编解码器520随后发送的无报头音频信息分组的报头产生建立了压缩上下文。一旦所述压缩上下文被设置,报头解压缩同位体530就不再必须是通信会话的一部分,因为所有的音频分组此后从编解码器520直接发送到物理层515。报头解压缩模块555随后将完成所有创建报头的工作且不知道报头解压缩同位体530对它的欺骗。报头解压缩模块555基于解压缩上下文产生有效的RTP/UDP/IP报头,并通过这个预先挂起(pre-pend)的因特网协议报头将接收到的数字化音频有效载荷打包从而创建因特网协议分组。
所述混合方案还需要对网络侧110作各种修改(可以用简单增加的形式)以便支持要从网络侧110发送到终端侧105的音频信息。具体地,所述音频信息将以因特网协议分组格式到达因特网协议层575,并且需要被修改从而作为音频信息流抵达音频编解码器520,该音频信息流使用例如用于象GSM、PDC、CDMA或WCDMA这些系统的诸多标准传输编码中的一种或多种被封装在通信分组中。例如,经过因特网协议打包的音频信息可能需要按正确的时间次序而顺序地被缓冲,使报头被去掉且任何空时隙被填充。这些处理可以用多种方式实现。图5提供了一种优选的方式,其中,某些必需的附加功能既可以插入到预HC模块570也可以插入到后HC模块560中。另一方面,所述必需的功能也可能仅仅包括在预HC模块570中或者包含在报头压缩模块565自身中。
在报头压缩模块565之前,所述输入分组报头应该被修改从而避免报头信息中不期望的不规则性,否则,该不规则性将迫使报头压缩模块565产生更大的压缩报头,或者在0字节报头压缩的情况下使之不能产生无报头分组。此功能可以类似于以前在其它条件下应用于因特网协议标识(ID)字段以便消除该报头字段中不期望的重大变化的节点破坏(Node Violation)(节点V)。因此,在这种情况下,节点V可以扩展其功能从而避免输入VoIP分组的完整报头信息字段中所有不期望的不规则性。
如果期望在报头压缩模块565之前有多数必需的处理修改,那么,在一个实施例中,后HC模块570可以进一步包括分组缓冲器(用于顺序获取分组)、空时隙填充器和可能的时间同步(作为缓冲的一部分)。从后HC 570输出的音频信息随后将是进入报头压缩模块565的完全规则的分组流,而报头压缩模块565的输出将是具有固定的、最小容量的压缩报头的分组。在由报头压缩模块565进行0字节报头压缩的情况下,所述输出将是无报头分组。
正如早先指出的,有些VoIP分组修改功能可以在发生报头压缩之前或之后应用。例如,在图5所示的实施例中,可以包括一个后HC模块560。因此,该后HC模块560的输出可以是具有无报头分组的完全有序的、规则的分组流,即使报头压缩模块565的输出并不是这样。同样地,该后HC模块560可以对分组正确地按时间排序、填充空时隙和对音频信息分组进行完全的时间同步。此外,所有的初始化报头和可能的反馈消息可以由后HC模块560去除,因为无论如何它们在终端侧105都可能无用。因为分组同步和重新排序很可能在报头压缩之前更易于进行,所以,优选地在预HC模块570中完成这些操作。但是,后HC模块560仍然应该进行最后的操作,并从VoIP分组中剥离报头从而产生具有无报头的分组的规则分组流。
在另一个实施例中,报头压缩可以被修改从而包括预HC模块570和后HC模块560中所有的功能。在又一个实施例中,可能彻底把通用报头压缩模块565去掉,而替换成一个或多个作为VoIP分组同步器、重排序器、时隙填充器和剥离器来运行的模块。对于所述混合情况,这种方法将在某种程度上降低整体实现的复杂度。但是,从通用VoIP方案的观点来看,即:为了替将来的端到端VoIP实现作准备以及支持其它因特网协议应用,最好重用报头压缩模块565和为了修改VoIP分组而增加有限的功能以便支持所述混合终端。
所述混合方案与图2中显示的基于网关的解决方案相比,该混合方案要求更少的修改。它只对图1所示的通用VoIP网络侧110作出一些较小的增加。此外,当比较所述混合方案与图3中显示的简单方法(它让网络侧110完全不受影响)时,混合方案要求对用于网络侧110实体的通用VoIP模型(图1)作出一些增加,以便保证运送到终端侧105的压缩报头的尺寸是最小的,特别是对于0字节报头压缩的情况。一种特别适合的报头压缩方案可以是LLA。结果,只有音频信息以适合接收机的方式(顺序、时间同步等)被输送。但是,这些增加通过许多优点而被证明是正确的,这些优点诸如:在对网络侧只作较小增加的同时使用于向真正的因特网协议终端提供连接的全因特网协议体系结构中所必需的报头压缩组件保持不变、简化的终端装置(例如,在因特网协议栈中没有真正的报头压缩和解压缩功能用于实时流(例如,音频流、音频-视频等))、在因特网协议上端到端地(和有特定限制地)使用会话控制的可能性、以及为在所述终端上运行的其它简单因特网协议应用(例如,电子邮件、web浏览器等)使用开放接口的可能性。应该再一次注意,所述系统和方法不局限于任何特定的报头压缩方案,并且可以使用包括例如VJ、IPHC、CRTP和ROHC的各种压缩方案。不过,诸如LLA等0字节报头压缩方案在用于本发明时特别有利。
参照图6A,它图示了使用图5提供的用于混合方案的示例性协议栈和音频流、从终端侧105向网络侧110发送音频信息的示例性音频信息处理流程。如果音频信息将被发送到网络侧110,如步骤605所示,那么,报头解压缩同位体530将产生报头压缩初始化信息,如步骤610所示。该报头压缩初始化信息与例如因特网协议报头中存在的任何静态字段、因特网协议报头的动态字段的初始值和用来解压缩这些动态字段的功能相关。接着在步骤615,该报头压缩初始化信息从终端侧105通过信号路径580被发送到网络侧110的报头解压缩模块555。然后在步骤620,报头解压缩模块555建立与随后从终端侧105接收到的音频信息相关联的报头解压缩上下文。该报头解压缩上下文包括与例如因特网协议报头中存在的所有静态字段、因特网协议报头的动态字段的最新值和用来解压缩这些动态字段的功能相关的信息。
在步骤625,终端侧105上的编解码器520通过信号路径580开始向网络侧110的报头解压缩模块555发送数字化的音频信息,而并不进行任何的因特网协议处理。该数字化的音频信息可以从编解码器520以任何音频编码格式(诸如EVRC、GSM、SMV、AMR等等)发送。然后在步骤630,报头解压缩模块555产生报头,这些报头看起来就象是解压缩的报头,它们用于和各种要被插入到因特网协议分组有效载荷中的音频信息相结合。当使用RTP/UDP/IP(VoIP)协议时,因特网协议报头可以包含例如因特网协议源地址(静态)、因特网协议目的地址(静态)、UDP源端口号(静态)、UDP目的端口号(静态)、RTP序列号(动态)以及RTP时间戳(动态)。
接下来,在步骤635,报头解压缩模块555产生的报头信息被附加到从编解码器520接收到的音频信息,从而形成因特网协议分组(例如,VoIP分组)流。因特网协议分组是在链路层550通过报头解压缩模块555“恢复”的。然后,在步骤640,因特网协议层575在网络上向预定的目的地(例如,位于不同位置的电话或PC等)发送所述因特网协议分组。例如,VoIP分组可以通过因特网或内部网被发送到另一个无线终端基站,该基站使用因特网协议报头将其传送到另一个无线终端,从而基于该因特网报头中存在的信息(例如,因特网协议目的地地址等)转发分组。在任何情况下,终端侧105通信装置(例如,无线终端)都通过编解码器520分离音频业务,而报头解压缩同位体530通过信号580控制报头解压缩模块555,以通过信号590从编解码器520接受音频信息业务并为这些音频信息业务创建正确的因特网协议报头。
参照图6B,现在将描述使用图5提供的示例性协议栈和音频流从网络侧110向终端侧105发送音频信息的示例性处理流程。如果在步骤650有音频信息要从网络侧110发送到终端侧105,那么在步骤655,因特网协议层575从一个源接收因特网协议格式的音频信息(例如,VoIP),如果存在预HC模块570就将该音频信息转发给它。接着,在步骤660,网络侧110上例如预HC模块570修改接收到的VoIP分组的报头,去除任何不期望的不规则性,从而使得报头压缩模块565不使用例如类似于节点V的方法来创建更大的报头。然后,在步骤665,报头压缩模块565压缩VoIP分组的报头以便使其具有固定的最小尺寸。接着,在步骤670,后HC模块560可以缓冲这些音频信息的分组、填充其空时隙以及对其进行时间同步。如前所述,这些操作当然可以由后HC模块560和/或报头压缩模块565执行。然后,在步骤675,网络侧110,例如后HC模块560可以从该音频信息的分组中去除压缩的报头从而创建音频信息的无报头的数字化分组流。接下来,在步骤680,该音频信息的数字化分组(分组中的音频信息按照例如GSM、SMV、AMR、EVRC等编码)通过物理层515(例如,收发机及天线)经由信号路径585被发送到终端侧的编解码器520。同样地,该网络侧被修改从而将VoIP报头信息转换为非因特网协议格式的、与常用编解码器(例如,GSM、SMV、EVRC、AMR等等)兼容的报头信息。
图3中简单终端方案的示例性实施例和图5中的混合终端方案都可以支持其它基于因特网协议的应用,并且把支持有通用VoIP能力的终端和平滑过渡到端到端VoIP通信系统所必需的功能合并进来。如上所示,网络侧110协议栈包括报头解压缩模块、报头压缩模块和因特网协议层,并且因而可以支持具有如图1所示真正通用VoIP协议栈的无线终端的操作。在所述混合方案的情况下,那些通常并不与端到端因特网协议相关联的功能(例如,修改因特网协议分组报头)可以仅在与混合型终端侧110相关联时被激活,这是通过使用例如该网络所提供的服务类型中的特定选项或可能发生的终端识别过程(例如在网络侧110和终端侧105之间的握手过程期间)而实现的。通过这种方式,预HC模块570和后HC模块560对于真正的通用VoIP终端可能是不能工作的,但报头压缩模块565对于混合型终端和真正的通用VoIP终端都是可以工作的。随着更新的真正的通用终端在将来变得更容易获得,网络侧110将不需要升级来包括图2所示的网关方法所需的硬件和软件。
如上面所指出的,本发明可以使用多种报头压缩方案中的任何一种。对于一些报头压缩方案的具体描述请参看:(1.)IETF网络工作组1990年2月的IETF RFC 1144,Van Jacobson的“压缩用于低速率串行链路的TCP/IP报头(Compressing TCP/IP Headers for Low-SpeedSerial Links)”[VJ];(2.)IETF网络工作组1999年2月的IETF RFC2507,Mikael Degermark、Bjorn Nordgren、Stephen Pink的“IP报头压缩(IP Header Compression)”[IPHC];(3.)IETF网络工作组1999年2月的IETF RFC 2508,Steven Casner、Van Jacobson的“压缩用于低速率串行链路的IP/UDP/RTP报头(Compressing IP/UDP/RTPHeaders for Low-Speed Serial Links)”[CRTP];(4.)2001年4月的IETF RFC 3095,Carsten Borman等人的“鲁棒报头压缩(ROHC)(Robust Header Compression(ROHC))”[ROHC];(5.)Lars-EricJonsson、Ghyslain Pelletier的“用于IP/UDP/RTP的链路层辅助ROHC全貌(A Link-Layer Assisted ROHC Profile for IP/UDP/RTP)”[LLA];以及(6.)1999年9月28号提交的申请号为09/406,950的美国专利申请,Jonsson等人的“用于改善性能的数据报报头字段的控制(Manipulation of Datagram Header Fields for PerformanceImprovements)”[节点V],以上这些都被在此引入用于各种用途。
虽然已经显示和描述了本发明的特定实施例,但是应该理解,这并不意味着将本发明限制为这些优选实施例,而对于本领域那些技术人员而言,显然可以在不偏离本发明的精神和范围的情况下作出各种变化和修改。因此,本发明打算涵盖可以包括在如以下权利要求所定义的本发明的精神和范围之内的替换物、修改和等价物。
例如,本发明是根据终端侧105和网络侧110之间的传统无线电通信无线接口进行描述的。但是,该接口可以包括有线网络(例如LAN或WAN)或许多无线类型通信系统之一,例如红外线、无线LAN和诸如蓝牙等的特种网,并且它可适用于希望使用端到端因特网协议的地方。当端到端VoIP和至少一跳的带宽小于期望值时,这些方法特别适用。
此外,用于终端侧105和网络侧110的协议栈可以为各种应用而被切换。例如,在网络侧不包括完整的因特网协议栈的情况下,如果人们希望提供一种装置用于通过电路交换网络与配置真正的通用VoIP的终端相对连,那么,终端侧105协议栈可以在网络侧110上使用,且网络侧110协议栈也可以在终端侧105上使用。
在这里提及的所有公开文本、专利和专利申请都由此而通过全文引入作为参考而用于各种用途。