Abstract:
A method for performing rate control for VoIP services using messages to enable the RRC to be aware of activity in the SIP/ARM level and to recommend an AMR rate change according to conditions in a wireless communication network. The messages allow VoIP services to dynamically adjust both rate and voice quality based on network conditions. A method for triggering RRC codec rate control using RRM conditions in the network. A method for coordinating AMR autonomous rate control and RRC commanded rate control using a guard mechanism between messages.

Description:
CROSS REFERENCE TO RELATED APPLICATIONS  
       [0001]     This application claims priority from U.S. Provisional Patent Application No. 60/791,361 filed Apr. 12, 2006 and U.S. Provisional Patent Application No. 60/829,686 filed Oct. 17, 2006 which are incorporated by reference as if fully set forth. 
     
    
     FIELD OF INVENTION  
       [0002]     This invention relates to the field of wireless communications. More specifically, it relates to rate control for voice over IP (VoIP) services in a 3GPP system.  
       BACKGROUND  
       [0003]     In universal mobile telecommunications system (UMTS), there are two ways to provide voice services. One way is to use a traditional circuit switched (CS) voice service. The other way to provide voice services is to use voice over IP (VoIP) in the packet switched (PS) domain. VoIP represents the family of technologies that allow IP networks to be used for voice applications, such as telephony, voice instant messaging, and teleconferencing.  
         [0004]     Adaptive multi-rate (AMR) is a multi-rate codec adopted by 3GPP for speech coding. An AMR speech coder consists of a multi-rate speech coder, a source controlled rate scheme including a voice activity detector and a comfort noise generation system, and an error concealment mechanism to combat the effects of transmission errors and lost packets. The multi-rate speech coder is a single integrated speech codec, with eight source rates ranging from 4.75 kbit/s to 12.2 kbit/s, and a low rate background noise encoding mode. The speech coder is capable of switching its bit-rate every 20 ms speech frame upon command. Table 1 displays the supported rates for the AMR codec.  
                           TABLE 1                                   Codec mode   Source codec bit-rate                           AMR_12.20   12.20 kbit/s (GSM EFR)           AMR_10.20   10.20 kbit/s           AMR_7.95    7.95 kbit/s           AMR_7.40    7.40 kbit/s (IS-641)           AMR_6.70    6.70 kbit/s (PDC-EFR)           AMR_5.90    5.90 kbit/s           AMR_5.15    5.15 kbit/s           AMR_4.75    4.75 kbit/s           AMR_SID    1.80 kbit/s                      
 
         [0005]     An adaptive multi-rate wideband (AMR-WB) speech codec can also be used in 3GPP. AMR-WB speech codec uses the same technology as AMR speech codec with a wider speech bandwidth. Table 2 displays the supported rates for the AMR-WB codec.  
                           TABLE 2                                   Codec mode   Source codec bit-rate                           AMR-WB 23.85   23.85 kbit/s           AMR-WB_23.05   23.05 kbit/s           AMR-WB_19.85   19.85 kbit/s           AMR-WB_18.25   18.25 kbit/s           AMR-WB_15.85   15.85 kbit/s           AMR-WB_14.25   14.25 kbit/s           AMR-WB_12.65   12.65 kbit/s           AMR-WB_8.85    8.85 kbit/s           AMR-WB_6.60    6.60 kbit/s           AMR-WB_SID    1.75 kbit/s                      
 
         [0006]     The prior art discloses two existing AMR rate control operations, a multi-rate operation and a source controlled rate (SCR) operation. The AMR rate control operation is on the user plane.  
         [0007]     In a multi-rate operation, the multi-rate encoding capability of AMR codec and AMR-WB codec is designed for preserving high speech quality for a wide range of transmission conditions. The multi-rate operation permits dynamic adjustment of the speech encoding rate during a communication session so that speech encoding rate continuously adapts to varying transmission conditions.  
         [0008]     The speech encoding rate is dynamically adjusted by dividing the fixed overall bandwidth between speech data and error protective coding to enable the best possible trade-off between speech compression rate and error tolerance. Further, to perform multi-mode adaptation, a decoder at a speech receiver needs to signal a new preferred mode to an encoder at a speech transmitter. This signaling occurs with through in-band signal and is called a codec mode request (CMR).  
         [0009]     In a SCR operation, the SCR operation permits an input signal to be encoded at a lower average rate by accounting for speech inactivity. The codec detects voice activity and reduces the number of transmitted bits and packets to a minimum during silent periods that indicate speech inactivity. The SCR operation is used to save power in user equipment and/or to reduce overall interference and loads in the network. SCR is a mandatory mechanism for AMR speech codec in 3GPP.  
         [0010]      FIG. 1  is an exemplary block diagram of a wireless communication system  100  supporting CS voice services configured to implement AMR rate control. The system  100  includes a wireless transmit/receive unit (WTRU)  102 , a radio network controller (RNC)  106 , and a mobile switching center (MSC)  108 .  
         [0011]     As shown in  FIG. 1 , the WTRU  102  includes an AMR vocoder  110 , a radio resource control (RRC)  114 , and a medium access control/physical (MAC/PHY) layer  116 . The RNC  106  includes a RRC  134  and a user plane/supported mode (UP/SM)  136 . The MSC  108  includes a vocoder  140  and a UP/SM mode  142 .  
         [0012]     In a Universal Mobile Telecommunications System (UMTS) wireless communication system, a RNC  106  initiates an Access Stratum (AS) codec rate change based on observed channel conditions for CS voice services. The observed channels conditions are input from radio resource management (RRM) functions in the system. The RRM functions may include slowing down the input rate when there are bad radio conditions or increasing the input rate when there are good radio conditions. A RNC  106  is configured to trigger an uplink (UL) codec rate change by signaling a Transport Format Combination (TFC) control message to the WTRU  102  (step  150 ). Further, the RNC  106  is configured to trigger a downlink (DL) codec rate change by signaling a rate control message to a MSC (step  152 ). The rate control message may also be used to signal a rate change in the UL between the RNC and the MSC. The actual CS codec rate change occurs at the network access stratum (NAS) level. However, the NAS and AS are coupled using two AS messages, the TFC control message between the RNC and the WTRU and the rate control message between the RNC and the MSC, together thereby permitting the AS to indicate the need for rate changes and to notify the need for rate changes when there is a CS voice call.  
         [0013]      FIG. 2  is an exemplary block diagram of a wireless communication system  200  supporting PS VoIP services configured to implement AMR rate control. The system  200  includes a WTRU  202 , a RNC  206 , and a media gateway (MGW) or peer WTRU  208 .  
         [0014]     As shown in  FIG. 2 , the WTRU  202  includes an AMR vocoder  210 , an AMR framing unit  212 , a RRC  214 , and a MAC/PHY layer  216 . The RNC  206  includes a RRC  234 . The MGW or peer WTRU  208  includes an AMR vocoder  240  and an AMR framing unit  142 .  
         [0015]     In PS VoIP voice services, call and codec control occurs above the network NAS. This level is called the session initiation protocol (SIP)/AMR level. In VoIP architecture, the RRC  234  in the RNC  106  is located in the AS. The RRC  234  is isolated from the call and codec control functionality. As a result, the RRC  123  cannot trigger a codec rate change. Instead, to perform codec rate control there needs to be a mechanism that passes call information from the SIP/AMR level to the RRC  234 .  
         [0016]     Unlike AMR rate control, RRC requested rate control occurs in the AS. Accordingly, there exists a need for the RRC  234  to be able to coordinate the RRC commanded rate control for VoIP services with the AMR autonomous rate control at the application level.  
         [0017]     Prior art has addressed the AMR rate control issue for PS VoIP services. The prior art has proposed three different methods for the RRC to control the AMR rate. In a first method, the RNC controls a WTRU&#39;s codec rate by allowing or forbidding certain transport format combinations (TFCs). In a second method, the RNC inspects all UL and DL VoIP packets and determines whether a current change mode request (CMR) value is appropriate. In a third method, a new RRC message signals a desired AMR codec rate to a WTRU.  
         [0018]     Unfortunately, the third method as previously described fails to solve the issue of passing call information from the SIP/AMR level to the RRC because one message is insufficient. Therefore, a method and apparatus for messaging that enables the RRC to be aware of conditions at the SIP/AMR level is desired to allow a VoIP application to dynamically adjust its rate and voice quality according to network conditions.  
         [0019]     Similar problems exist in any type of protocol where the bandwidth is controlled by the application itself. The AMR rate control issue is used by way of an example in this disclosure but the techniques disclosed herein also apply to other rate control issues.  
       SUMMARY  
       [0020]     The present invention is related to rate control for VoIP services using messages to enable the RRC to be aware of activity in the SIP/ARM level and to recommend an ARM rate change according to conditions in a wireless communications network. The messages allow VoIP services to dynamically adjust rate and voice quality based on network conditions. The present invention is also related to a method for triggering RRC codec rate control using RRM conditions in the network. Further, the present invention is related to coordinating AMR autonomous rate control and RRC commanded rate control using a guard mechanism between messages.  
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0021]      FIG. 1  is an exemplary block diagram of a wireless communication system supporting CS voice services configured to implement AMR rate control;  
         [0022]      FIG. 2  is an exemplary block diagram of a wireless communication system supporting PS VoIP services configured to implement AMR rate control;  
         [0023]      FIG. 3  is an exemplary block diagram of a wireless communication system configured in accordance with the present invention; and  
         [0024]      FIG. 4  is an exemplary block diagram of 3GPP Long Term Evolution (LTE) wireless communication system configured in accordance with the present invention. 
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0025]     Although the features and elements of the present invention are described in the preferred embodiments in particular combinations, each feature or element can be used alone (without the other features and elements of the preferred embodiments) or in various combinations with or without other features and elements of the present invention.  
         [0026]     Hereafter, a wireless transmit/receive unit (WTRU) includes but is not limited to a user equipment (UE), mobile station, fixed or mobile subscriber unit, pager, or any other type of device capable of operating in a wireless environment. When referred to hereafter, a base station includes but is not limited to a Node-B, site controller, access point or any other type of interfacing device in a wireless environment.  
         [0027]      FIG. 3  is an exemplary block diagram of a wireless communication system  300  configured in accordance with the present invention. The system includes a WTRU  302 , a Node B  304 , a RNC  306 , a MGW or peer WTRU  308 . The Node B  304  and the RNC  306  comprise a UMTS Terrestrial Radio Access Network (UTRAN)  350 .  
         [0028]     As shown in  FIG. 3 , the WTRU  302  includes an AMR vocoder  310 , an AMR framing unit  312 , a RRC  314 , and a MAC/PHY layer  316 . The Node B  304  includes a scheduler  320 . The RNC  306  includes a RRM  332  and a RRC  334 . The MGW or peer WTRU  308  includes an AMR vocoder  340  and an AMR framing unit  342 .  
         [0029]     The RRC  314  in the WTRU  302  is configured to send a RRC Codec Report message  360  to the RRC  334  in the RNC  306 . The RRC Codec Report message  360  informs the UTRAN  350  of the AMR codec information in the WTRU  302 . The AMR codec information contains information regarding codec type. The WTRU  102  is aware of the content in the RRC Codec Report message  360  before sending the message to the RRC  334  in the UTRAN  350 .  
         [0030]     Further, the RRC Codec Report message  360  may be internally used within the WTRU  102  to convey AMR codec information between the RRC  314  and the AMR framing unit  312 .  
         [0031]     The content of the RRC Codec Report message  360  includes an application type, a codec type, a current AMR rate, and/or an ARM autonomous rate control scheme. The codec type is either ARM or AMR-WB. The current ARM rate may be the generic codec mode or a more general data date.  
         [0032]     The RRC  314  in the WTRU  302  is configured to transmit the RRC Codec Report message  360  to the RRC  334  in the UTRAN  350  in a new RRC message. In an alternative embodiment, the RRC  314  in the WTRU  302  is configured to incorporate the information contained in the RRC Codec Report message  360  into an existing RRC message and then transmit the existing RRC message to the RRC  334  in the UTRAN  350 .  
         [0033]     For example, the UTRAN  350  may transmit a Measurement Control message to the WTRU  302  requesting that the RRC  314  in the WTRU  302  send measurement control information. The RRC  314  in the WTRU  302  may then add AMR codec information in a Measurement Report message and transmit the Measurement Report message to the RRC  334  in the UTRAN  350 .  
         [0034]     The RRC  314  in the WTRU  302  is configured to report the AMR codec information at configurable intervals. The earliest RRC Codec Report message  360  will be sent from the WTRU  302  to the UTRAN  350  is when the WTRU application layer requests a connection and/or resources for a VoIP application from a core network (CN) and UTRAN. The content of the RRC Codec Report message  360  need not be updated in each transmitted message.  
         [0035]     The RRC  334  in the UTRAN  350  is configured to receive RRM information from the RRM  332 . The RRM information may contain information on link quality and/or cell congestion. Further, the RRC  334  in the UTRAN  350  is configured to send a RRC Codec Rate Control message  362  to the RRC  314  in the WTRU  302  requesting an AMR rate change based on the received RRM information. The RRC  334  in the UTRAN  350  is configured to transmit the RRC Codec Rate Control message  362  when triggering the RRC rate control.  
         [0036]     The content of the RRC Codec Rate Control message  362  includes a requested rate for the UL and/or DL, a time when the requested rate takes effect, and/or a period of time the requested rate remains in effect. The requested rate may be explicitly or implicitly signaled. The time when a requested rate takes effect and the period of time the requested rate remains in effect may be known according to a rule.  
         [0037]     In an alternative embodiment, the RRC  334  in the UTRAN  350  does not directly request a rate change. Instead, the RRC  334  is configured to send RRM information to the RRC  314  in the WTRU  302 . Then, the AMR vocoder  310  in the WTRU  302  is configured to use the received RRM information and determine the rate change.  
         [0038]     The RRC  334  in the UTRAN  350  is configured to transmit the RRC Codec Rate Control message  362  to the RRC  314  in the WTRU  312  in a new RRC message. In an alternative embodiment, the RRC  334  in the UTRAN  350  is configured to incorporate the information contained in the RRC Codec Rate Control message  362  into an existing RRC message and then transmit the existing RRC message to the RRC  314  in the WTRU  302 .  
         [0039]     The RRC  334  is configured to trigger the RRC Codec Rate Control message  362  based on RRM triggering conditions using WTRU  302  and Node B  304  measurements. The triggering conditions may be configurable. The RRM triggering conditions may include a link quality condition, a cell load condition, an interference level condition, and/or other similar information permitting a link quality to be determined. The link quality condition may include a received signal strength indication and/or an error rate. Further, the RRC Codec Rate Control message  362  may be triggered based on the availability of radio resources. The trigger of the RRC Codec Rate Control message  362  may be based on multiple RRM input.  
         [0040]     The RRC  334  in the UTRAN  350  is configured to transmit a Codec Rate Control Request message  364  to the scheduler  320  in the Node B  304  after the RRC  334  in the UTRAN  350  sends a request for AMR codec rate control to the RRC in the WTRU  302 . The Codec Rate Control Request message  364  notifies the Node B  304  of the requested AMR rate change and permits the Node B  304  to change its resource allocation and scheduling accordingly. The Codec Rate Control Request message  364  is transmitted only when the RRC Codec Rate Control message  362  is transmitted.  
         [0041]     The content of the Codec Rate Control Request message  364  includes a requested rate for the UL and/or DL, a time when the requested rate takes effect, and/or a period of time the requested rate remains in effect.  
         [0042]     The RRC  334  in the UTRAN  350  is configured to transmit the Codec Rate Control Request message  364  to the scheduler  320  in the Node B  304  in a new individual Node B Application Part (NBAP) message or in a new individual Radio Network Subsystem Application Part (RNSAP) message as well in case of a drift RNC. In an alternative embodiment, the RRC  334  in the UTRAN  350  is configured to incorporate the information contained in the Codec Rate Control Request message  364  into an existing NBAP message and then transmit the existing NBAP message to the scheduler  320  in the Node B  304 . For example, a radio link reconfiguration procedure may be used for this purpose.  
         [0043]     The scheduler  320  in the Node B  304  is configured to transmit a Codec Rate Control Response message  366  to the RRC  334  in the UTRAN  350  in response to the received Codec Rate Control Request message  364  from the RNC  334 . The Codec Rate Control Response message  366  is transmitted only when the Codec Rate Control Request message  364  is received.  
         [0044]     The content of the Codec Rate Control Response message  366  includes a TFC or PDU size unable to be handled by the scheduler  320 , a suggested data size or rate, and/or an indication that the requested rate has been applied.  
         [0045]     The scheduler  320  in the Node B  304  is configured to transmit the Codec Rate Control Response message  366  to the RRC  334  in the UTRAN  350  in a new individual Node B Application Part (NBAP) message or in a new individual Radio Network Subsystem Application Part (RNSAP) message in case of a drift RNC. In an alternative embodiment, the scheduler  320  in the Node B  304  is configured to incorporate the information contained in the Codec Rate Control Response message  366  into an existing NBAP message and then transmit the existing NBAP message to the RRC  334  in the UTRAN  350 . For example, a radio link reconfiguration procedure may be used for this purpose.  
         [0046]     The messages introduced above allow for the coordination of AMR rate control and RRC commanded rate control. The messages connect the AMR rate control on the user plane with the RRC requested rate control on the control plane. The RRC  314  in the WTRU  302  is informed of the AMR autonomous rate control by a RRC AMR Report message thereby permitting the AS to learn about autonomous NAS rate changes. The RRC AMR Report message reports an AMR user plane rate change in the NAS layer and permits the AS layer to adapt to the rate change. The rate control requested by the RRC  314  is transmitted from the UTRAN  350  to the WTRU  302  in the RRC Codec Rate Control message  362  thereby permitting the NAS to learn about the need of a rate change based on the AS.  
         [0047]     A RRC rate control operation is able to coexist with an autonomous AMR rate control operation because each operation is triggered by different conditions. The RRC rate control operation is triggered by radio qualities while the AMR rate control operation is triggered by a voice application or voice activities.  
         [0048]     In a preferred embodiment, a guard mechanism is introduced to avoid situations in which there are contradictory AMR rate control and RRC rate control requests. When the AMR rate is recently changed by a RRC rate control operation or an AMR rate control operation and then a request for a contradictory operation arrives, no rate control operation occurs. The rate control operation only occurs after a guard period. For example, when a second request for a contradictory operation is received from the same source or a number of frames have been transmitted, whichever happens first. The number of frames may be a configurable parameter or may be set by a rule. When requests for contradictory operations arrive at the same time, no rate control operation occurs. Instead, the AMR rate remains unchanged until receiving a next request. For example, if the NAS autonomously modifies the rate control then the AS requests a rate change, the AMR rate is changed only after the AS again requests a rate change after a guard period. Likewise, if the AS modifies the rate control then a NAS autonomous rate change will not immediately occur.  
         [0049]      FIG. 4  is an exemplary block diagram of 3GPP LTE wireless communication system  400  configured in accordance with the present invention. The system includes a WTRU  402 , an evolved Node B (eNode B)  404 , and a MGW or peer WTRU  408 .  
         [0050]     As shown in  FIG. 4 , the WTRU  402  includes an AMR vocoder  410 , an AMR framing unit  412 , a RRC  414 , and a MAC/PHY layer  416 . The eNode B  404  includes a scheduler  420 , a RRC  434 , and a RRM  432 . The MGW or peer WTRU  408  includes a vocoder  440  and an AMR framing unit  442 . In the LTE architecture, the RRC functions are located in the eNode B  404 . Therefore, the Codec Rate Control Request message  464  and the Codec Rate Control Response message  466  are internal messages within the eNode B  404 .  
         [0051]     The present invention applies to the AMR codec currently used for VoIP services in 3GPP. In addition, the present invention also may be used for AMR-WB codec and other types of multi-rate codecs. The present invention may work within current 3GPP architecture as well as LTE architecture. Further, the present invention applies to high-speed packet access (HSPA) Evolution (HSPA+).  
         [0052]     The features of the present invention may be incorporated into an integrated circuit (IC) or configured in a circuit comprising a multitude of interconnecting components.  
         [0053]     Although the features and elements of the present invention are described in the preferred embodiments in particular combinations, each feature or element can be used alone without the other features and elements of the preferred embodiments or in various combinations with or without other features and elements of the present invention. The methods or flow charts provided in the present invention may be implemented in a computer program, software, or firmware tangibly embodied in a computer-readable storage medium for execution by a general purpose computer or a processor. Examples of computer-readable storage mediums include a read only memory (ROM), a random access memory (RAM), a register, cache memory, semiconductor memory devices, magnetic media such as internal hard disks and removable disks, magneto-optical media, and optical media such as CD-ROM disks, and digital versatile disks (DVDs).  
         [0054]     Suitable processors include, by way of example, a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) circuits, any other type of integrated circuit (IC), and/or a state machine.  
         [0055]     A processor in association with software may be used to implement a radio frequency transceiver for use in a wireless transmit receive unit (WTRU), user equipment (UE), terminal, base station, radio network controller (RNC), or any host computer. The WTRU may be used in conjunction with modules, implemented in hardware and/or software, such as a camera, a video camera module, a videophone, a speakerphone, a vibration device, a speaker, a microphone, a television transceiver, a hands free headset, a keyboard, a Bluetooth® module, a frequency modulated (FM) radio unit, a liquid crystal display (LCD) display unit, an organic light-emitting diode (OLED) display unit, a digital music player, a media player, a video game player module, an Internet browser, and/or any wireless local area network (WLAN) module.