Abstract:
A transmitter is capable of transmitting protocol data units (PDUs). Each PDU has an n-bit sequence number. A polling determination method is provided that determines if polling should be performed according to a parameter S that is an n-bit sequence number. Polling is then triggered if a PDU that is next to be transmitted is not a re-transmitted PDU and the polling determination method indicates that polling is to be triggered according to the sequence number of the PDU. The polling determination method uses the equation: t=((2 n +1+S VT(A)) mod 2 n )/VT(WS) to determine if polling should be triggered, where S is the sequence number of the next outgoing PDU.

Description:
BACKGROUND OF INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    The present invention relates to a wireless communications protocol. More specifically, the present invention discloses a method and system that properly triggers a polling operation for a transmitter to request a receiving status of a receiver.  
           [0003]    2. Description of the Prior Art  
           [0004]    Many communications protocols typically utilize a three-layered approach to communications. Please refer to FIG. 1. FIG. 1 is a block diagram of the three layers in such a communications protocol. In a typical wireless environment, a first station  10  is in wireless communications with one or more second stations  20 . An application  13  on the first station  10  composes a message  11  and has it delivered to the second station  20  by handing the message  11  to a layer  3  interface  12 . The layer  3  interface  12  may also generate layer  3  signaling messages  12   a  for the purpose of controlling layer  3  operations between the first station  10  and the second station  20 . An example of such a layer  3  signaling message is a request for ciphering key changes, which are generated by the layer  3  interfaces  12  and  22  of both the first and the second stations, respectively. The layer  3  interface  12  delivers either the message  11  or the layer  3  signaling message  12   a  to a layer  2  interface  16  in the form of layer  2  service data units (SDUs)  14 . The layer  2  SDUs  14  may be of any length. The layer  2  interface  16  composes the SDUs  14  into one or more layer  2  protocol data units (PDUs)  18 . Each layer  2  PDU  18  is of a fixed length, and is delivered to a layer  1  interface  19 . The layer  1  interface  19  is the physical layer, transmitting data to the second station  20 . The transmitted data is received by the layer  1  interface  29  of the second station  20  and reconstructed into one or more PDUs  28 , which are passed up to the layer  2  interface  26 . The layer  2  interface  26  receives the PDUs  28  and from them assembles one or more layer  2  SDUs  24 . The layer  2  SDUs  24  are passed up to the layer  3  interface  22 . The layer  3  interface  22 , in turn, converts the layer  2  SDUs  24  back into either a message  21 , which should be identical to the original message  11  that was generated by the application  13  on the first station  10 , or a layer  3  signaling message  22   a,  which should be identical to the original signaling message  12   a  generated by the layer  3  interface  12  and which is then processed by the layer  3  interface  22 . The received message  21  is passed to an application  23  on the second station  20 .  
           [0005]    Of particular interest is the layer  2  interface, which acts as a buffer between the relatively high-end data transmission and reception requests of the applications, and the low-level requirements of the physical transmission and reception process. In the following, the term “PDU” is used to indicate layer  2  PDUs; the term “SDU” is used to indicate layer  2  SDUs. Please refer to FIG. 2. FIG. 2 is a diagram of a transmission/reception process from a layer  2  perspective. A layer  2  interface  32  of a transmitter  30 , which may be either a base station or a mobile unit, receives a string of SDUs  34  from a layer  3  interface  33 . The SDUs  34  are sequentially ordered from 1 to 5, and are of unequal lengths. The layer  2  interface  32  converts the string of SDUs  34  into a string of PDUs  36 . The layer  2  PDUs  36  are sequentially ordered from 1 to 4, and are all of an equal length. The string of PDUs  36  is then sent off to the layer  1  interface  31  for transmission. A reverse process occurs at the receiver end  40 , which may also be either a base station or a mobile unit, with a receiver layer  2  interface  42  assembling a received string of layer  2  PDUs  46  into a received string of layer  2  SDUs  44 . Under certain transport modes, the multi-layered protocol insists that the receiver layer  2  interface  42  present the SDUs  44  to the layer  3  interface  43  in order. That is, the layer  2  interface  42  must present the SDUs  44  to the layer  3  interface  43  in the sequential order of the SDUs  44 , beginning with SDU  1  and ending with SDU  5 . The ordering of the SDUs  44  may not be scrambled, nor may a subsequent SDU be delivered to layer  3  until all of the prior SDUs have been delivered.  
           [0006]    In line transmissions, such a requirement is relatively easy to fulfill. In the noisy environment of wireless transmissions, however, the receiver  40 , be it a base station or a mobile unit, often misses data. Some layer  2  PDUs in the received string of PDUs  46  will therefore be missing. Thus, ensuring that the layer  2  SDUs  44  are presented in order can pose a significant challenge. Wireless protocols are carefully designed to address such problems. Generally speaking, there are two broad modes for transmitting and receiving data: acknowledged mode (AM) transport, and unacknowledged mode (UM) transport. For acknowledged mode data, the receiver  40  sends a special layer  2  acknowledging signal to the transmitter  30  to indicate successfully received layer  2  PDUs  46 . No such signaling is performed for UM data. For purposes of the present invention, only acknowledged mode data is considered. Please refer to FIG. 3 with reference to FIG. 1. FIG. 3 is a simplified block diagram of an acknowledged mode data PDU  50 , as defined in the 3GPP™ TS 25.322 specification, which is included herein by reference. In general, there are two types of PDUs: a control PDU or a data PDU. Control PDUs are used by the layer  2  interfaces  16  and  26  to control data transmission and reception protocols, such as the above-mentioned layer  2  acknowledging signal that is used to acknowledge received data. This is somewhat analogous to the exchange of the signaling messages  12   a  and  22   a  of the layer  3  interfaces  12  and  22 . However, the layer  2  interfaces  16  and  26  do not interpret or recognize the layer  3  signaling messages  12   a  and  22   a,  whereas the layer  2  interfaces  16  and  26  do recognize layer  2  control PDUs, and do not hand layer  2  control PDUs up to the layer  3  interfaces  12  and  22 . Data PDUs are used to transmit acknowledged mode data, which is then reassembled and presented to layer  3 . The example PDU  50  is a data PDU, and is divided into several fields, as defined by the layer  2  protocol. The first field  51  is a single bit indicating that the PDU  50  is either a data or a control PDU. As the data/control bit  51  is set (i.e., equal to 1), the PDU  50  is marked as an acknowledged mode data PDU. The second field  52  is a sequence number field  52 , and is twelve bits long. Successive PDUs  18 ,  28  have successively higher sequence numbers  52 , and in this way the second station  20  can properly reassembled layer  2  PDUs  28  to form layer  2  SDUs  24 . For example, if a first PDU  18  is transmitted with a sequence number  52  equal to 536, a sequentially next PDU  18  would be transmitted with a sequence number  52  equal to 537, and so forth. By assembling received data PDUs  50  in their proper sequential order according to their respective sequence numbers  52 , the correct reconstruction of data is ensured. Note that the sequence number  52  enables re-transmitted PDUs  50  to be inserted into their proper sequential position with respect to other received PDUs  50 . In this manner, the re-transmission of data is supported. A single polling bit  53  follows the sequence number field  52 , and when set indicates that the receiver (i.e., the second station  20 ) should respond with an acknowledgment status PDU, which is one kind of control PDU, and which will be introduced later. The first station  10  sets the polling bit  53  to 1 to request the second station  20  to send an acknowledgment status control PDU. Bit  54  is reserved and is set to zero. The next bit  55   a  is an extension bit, and when set indicates the presence of a following length indicator (LI). An LI may be either 7 bits long or 15 bits long, and is used to indicate the ending position of a layer  2  SDU within the layer  2  PDU  50 . If a single SDU completely fills the data region  58  of the PDU  50 , then the bit  55   a  would be zero, thereby indicating that no LI is present. In the example PDU  50 , however, there are two layer  2  SDUs ending in the layer  2  PDU  50 : SDU — 1  57   a  and SDU — 2  57   b.  There must, therefore, be two LIs to indicate the respective ends of the SDU — 1  57   a  and the SDU — 2  57   b.  A PDU following the PDU  50  (i.e., sequentially after, as indicated by the sequence number  52 ) would hold the LI for SDU — 3  57   c.  The first LI, LI 1 , is in field  56   a  following the extension bit field  55   a,  and marks the end of the SDU — 1  57   a.  LI 1    56   a  has an extension bit  55   b  that is set, indicating the presence of another LI, LI 2  in field  56   b.  LI 2    56   b  indicates the ending position of the SDU — 2  57   b,  and has an extension bit  55   c  that is cleared, signifying that there are no more LIs, and that the data region  58  is thus beginning. The data region  58  is used to hold the actual SDU data.  
           [0007]    Please refer to FIG. 4 with reference to FIG. 3. FIG. 4 is a simplified block diagram of a receiver  64  and a transmitter  65  in a wireless communications system  60 . Both the receiver  64  and the transmitter  65  have windows within which they expect to receive the PDUs  50  and transmit the PDUs  50 , respectively. The receiver  64  has a receiving window  61  that is delimited by two state variables: VR(R)  62 , and VR(MR)  63 . VR(R)  62  marks the beginning of the receiving window  61 , and VR(MR)  63  marks the end of the receiving window  61 . The receiver  64  will only accept PDUs  50  that have sequence numbers  52  that are sequentially on or after VR(R)  62  and sequentially before VR(MR)  63 . The sequence number value held in VR(MR)  63  is not considered to be within the receiving window  61 . Similarly, the transmitter  65  has a transmitting window  66  that is delimited by two state variables: VT(A)  67  and VT(MS)  68 . VT(A)  67  marks the beginning of the transmitting window  66 , and VT(MS)  68  marks the end of the transmitting window  66 . The transmitter  65  will only transmit PDUs  50  that have sequence numbers  52  that are within the range of the transmitting window  66 , i.e., that are sequentially on or after VT(A)  67 , and sequentially before VT(MS)  68 .  
           [0008]    The receiving window  61  has a fixed receiving window size. The receiving window size is simply the number of sequence number values spanned by the state variables VR(R)  62  and VR(MR)  63 . That is, VR(MR)  63  is always kept a fixed sequence number value distance away from VR(R)  62 , which may be represented mathematically as:  
             VR ( MR )= VR ( R )+receiving window size   (1)  
           [0009]    Note that, as the sequence number  52  is a 12-bit number, equation (1) is a true 12-bit addition, and thus will suffer from rollover on overflow. Consequently, VR(MR)  63  does not always contain a value that is numerically larger than VR(R)  62 . Similarly, the transmitting window  66  has a transmitting window size state variable VT(WS)  66   a,  which indicates the number of sequence number values spanned by the state variables VT(A)  67  and VT(MS)  68 . The state variable VT(WS)  66   a  has an initial value that is set to a configured transmitting window size, which is supplied by layer  3 . As above, this may be represented mathematically as:  
             VT ( MS )= VT ( A )+ VT ( WS )   (2)  
           [0010]    And again, the result from equation (2) may suffer from rollover due to overflow. The receiver  64  may explicitly request the transmitter  65  to change the value of VT (WS)  66   a.  The requested value of VT(WS)  66   a,  however, cannot be greater than the originally configured transmitting window size, i.e., the size indicated by the transmitter&#39;s layer  3 .  
           [0011]    As the receiver  64  receives PDUs  50  from the transmitter  65 , the receiver  64  will update that value of the state variable VR(R)  62  to reflect the sequentially earliest sequence number  52  before which all preceding PDUs  50  have been successfully received. Put another way, VR(R)  62  always holds the sequence number  52  of the sequentially earliest PDU  50  that the receiver  64  is waiting to receive. Upon the successful reception of this PDU  50 , the receiver  64  advances the state variable VR(R)  62  to the sequence number value  52  of the next PDU  50  that needs to be received, and the state variable VR(MR)  63  is updated using equation (1) accordingly. In this manner, the receiving window  61  is advanced by the receiver  64  as the PDUs  50  stream in from the transmitter  65 . It should also be noted that the transmitter  65  may explicitly request the receiver  64  to advance the receiving window  61  with a layer  2  signaling PDU, but this has no bearing on the present invention.  
           [0012]    The transmitting window  66  is advanced when the transmitter  65  receives a layer  2  acknowledgment status PDU from the receiver  64 . The layer  2  acknowledgment status PDU holds the most current value of the state variable VR(R)  62 , and is sent at periodic intervals by the receiver  24 , or in response to an explicit request from the transmitter  65 . The acknowledgement status PDU may also indicate PDUs within the receiving window  61  that are known to have been missed (because, for example, sequentially later PDUs have already been received) and which must consequently be re-transmitted. The transmitter  65  will then set the state variable VT(A)  67  equal to the value held in the acknowledgment status PDU, which in effect sets VT(A)  67  equal to VR(R)  62 . The transmitter  65  updates the state variable VT(MS)  68  using equation (2) accordingly. In this manner, the transmitting window  66  and the receiving window  61  move forward with each other in lock step, with the transmitting window  66  tending to lag just a bit behind the receiving window  61 .  
           [0013]    The transmitter  65  has an additional state variable VT(S)  69 . When the transmitter  65  begins transmitting the PDUs  50  that lie within the transmitting window  66 , the transmitter  65  begins with a PDU  50  having a sequence number  52  given by the state variable VT(A)  67 , and works sequentially forward until it reaches a PDU  50  having a sequence number  52  that is just prior to VT(MS)  68 . That is, the transmitter  65  transmits the PDUs  50  in sequence, beginning at VT(A)  67  and ending at VT(MS)  1 . The state variable VT(S)  69  holds the sequence number  52  of the next PDU  50  to be transmitted. Thus, the PDUs  50  with sequence numbers  52  on or sequentially after VT (A)  67 , and on or sequentially before VT(S)-1 have been transmitted at least one time, and are stored in a retransmission buffer  66   b  until they are acknowledged by the receiver  64  by way of an acknowledgment status PDU. Note that if a PDU  50  with a sequence number  52  equal to VT(A)  67  is acknowledged, VT(A)  67  is updated to the next sequentially earliest sequence number value within the retransmission buffer  66   b.  PDUs  50  with sequence numbers  52  on or after VT(S)  69  have not yet been transmitted by the transmitter  69 .  
           [0014]    To insure that the transmitting window  66  advances, the transmitter  65  must, at intervals, request the receiver  64  to send an acknowledgment status PDU. This is termed polling, and is implemented by way of the polling bit  53 . When the transmitter  65  determines that it is time to poll the receiver  64 , the transmitter  65  will send the next outgoing PDU  50 , i.e., the PDU  50  indicated by the state variable VT(S)  69 , or a PDU  50  in the retransmission buffer  66 b, with the polling bit  53  set to one. Upon reception of any PDU  50  with the polling bit  53  set, the receiver  64  responds by sending an acknowledgment status PDU. The acknowledgment status PDU will contain the most recent value of the state variable VR(R)  62 , which the transmitter  65  will subsequently use for the state variable VT(A)  67  to advance the transmitting window  66 . Various methods may be used by the transmitter  65  to determine when to poll the receiver  64 . The transmitter  65  may, for example, use timer-based polling, in which polling is performed at regular, periodic intervals. Alternatively, the transmitter  65  may use window-based polling, in which the transmitter  65  polls the receiver  64  when a certain percentage of the transmitting window  66  has been transmitted.  
           [0015]    For window-based polling, a polling function that utilizes VT(S)  69  is used to obtain a polling test value “t”:  
             t =PollingFunction( VT ( S ))   (3)  
           [0016]    A polling value is given, which is simply a percentage of the transmitting window  66  that has been sent at least once. For example, one may set the polling value to 60%, indicating that polling is to be performed if 60% or more of the transmitting window  66  has been sent at least once. Polling is triggered if “t” from the above equation (3) exceeds the polling value. When polling is triggered due to “t”, the polling bit  53  is set for the next outgoing PDU  50 . Triggering polling by setting the polling bit  53  does not tie up any radio resources, as the polling bit  53  is always transmitted anyway, regardless of whether it is set or cleared. However, responding to the polling bit  53  by way of the acknowledgement status PDU does tie up radio resources. Hence, the polling bit  53  should not be set capriciously.  
           [0017]    However, after VT(S)  69  has reached a sufficiently advanced value with respect to VT(A)  67  such that polling is triggered, for those cases that VT(A)  67  has not advanced, any re-transmitted PDU in the retransmission buffer  66   b  will trigger a poll because the state variables VT(S)  69  and VT(WS)  66   a  have not changed. This kind of triggering of polling can lead to degradation of the efficient utilization of radio resources (to the subsequent acknowledgement status PDUs in response to the set polling bit  53 ), and is therefore undesired. Additionally, the exact timing of the updating of the state variable VT(S)  69  can be somewhat ambiguous. For some implementations, VT(S)  69  is updated (i.e., incremented) when the associated PDU  50  is constructed. In other implementations, VT(S)  69  is not updated until the associated PDU  50  is transmitted, or sent to the layer  1  interface. This can lead to difficulties in conformance testing.  
         SUMMARY OF INVENTION  
         [0018]    It is therefore a primary objective of this invention to provide a method for determining triggering of a polling request in a wireless communications protocol for a transmitter that avoids unnecessary polls, and which is consistent across all implementations.  
           [0019]    Briefly summarized, the preferred embodiment of the present invention discloses a method for determining triggering of a polling request in a wireless communications protocol for a transmitter. The transmitter is capable of transmitting protocol data units (PDUs). Each PDU has an n-bit sequence number. A polling determination method is provided that determines if polling should be performed according to a parameter S that is an n-bit sequence number. Polling is then triggered if a PDU that is next to be transmitted is not a re-transmitted PDU and the polling determination method indicates that polling is to be triggered according to the sequence number of the PDU. The polling determination method uses the equation: t=((2 n +1+S VT(A)) mod 2 n )/VT(WS) to determine if polling should be triggered, where S is the sequence number of the next outgoing PDU.  
           [0020]    It is an advantage of the present invention that the test value accurately returns the percentage of the transmitting window that has been transmitted, and causes the polling bit of a PDU to be properly set regardless of how VT(S) may change from implementation to implementation. Additionally, by ensuring that the polling bit is set only for PDUs that are being transmitted for the first time, unnecessary polling and response procedures are eliminated, thus ensuring a more efficient use of radio resources.  
           [0021]    These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment, which is illustrated in the various figures and drawings. 
       
    
    
     BRIEF DESCRIPTION  0 F DRAWINGS  
       [0022]    [0022]FIG. 1 is a block diagram of a three-layer communications protocol.  
         [0023]    [0023]FIG. 2 is a simplified diagram of a transmission/reception process from a layer  2  perspective.  
         [0024]    [0024]FIG. 3 is a block diagram of an acknowledged mode data (AMD) protocol data unit (PDU).  
         [0025]    [0025]FIG. 4 is a simplified block diagram of a receiver and a transmitter in a wireless communications system.  
         [0026]    [0026]FIG. 5 is a simplified block diagram of a wireless communications system according to the present invention.  
         [0027]    [0027]FIG. 6 is a flow chart of the method of the present invention. 
     
    
     DETAILED DESCRIPTION  
       [0028]    In the following description, a communications protocol as disclosed in the 3GPP™ specification TS 25.322 is used by way of example. However, it should be clear to one in the art that any wireless communications protocol that requires polling to acknowledge the reception of transmitted data may utilize the poll-triggering method of the present invention. It should be further noted that transmitters and receivers in the following detailed description can include cellular telephones, personal data assistants (PDAs), personal computers (PCs), or any other devices that utilize a wireless communications protocol.  
         [0029]    It is the method of the present invention to determine triggering of a polling request for a transmitter only for PDUs that are not being re-transmitted, and by using the following equation:  
           t ={(2 n +1+ S VT ( A ))  mod  2 n   }/VT ( WS )   (4)  
         [0030]    Retransmitted PDUs may be transmitted with their associated polling bits  53  set to one by other polling triggers, such as a “Last PDU in retransmission buffer” event. However, re-transmitted PDUs never trigger a polling operation by the present invention. The term “S” within equation (4) is the sequence number of a PDU whose polling bit  53  is to be set or cleared based upon “t”. The term “n” is the bit-size of the sequence number “S”. In the preferred embodiment, the sequence number “S” is a 12-bit value, and hence the term “n” is 12.  
         [0031]    To better understand equation (4), please refer to FIG. 5. FIG. 5 is a simplified block diagram of a wireless communications system  70  that utilizes the method of the present invention. The wireless communication system  70  includes a receiver  80  and a transmitter  90 . Both the transmitter  90  and the receiver  80  utilize a 3-tiered communications protocol. In the transmitter  90 , a layer  3  interface  93  passes layer  2  service data units (SDUs)  93   a  to a layer  2  interface  92  for transmission. The layer  2  interface  92  composes the SDUs  93   a  into layer  2  protocol data units (PDUs)  92   a  that are passed to the layer  1  interface  91  for transmission. The PDUs  92   a  have a format that is identical to that discussed in the Description of the Prior Art, and thus need not be detailed any further here. In particular, though, each PDU  92   a  has an n-bit sequence number  52  that identifies the sequential order of the PDU  92   a  in a stream of transmitted PDUs  92   a.  For the preferred embodiment, n is 12, and thus the sequence numbers for the PDUs  92   a  have a cyclical range from zero to  4095 . Each PDU  92   a  also has a polling bit  53  that may be set by the transmitter  90  to poll the receiver  80 . As discussed in the prior art, the receiver  80  responds to a set polling bit  53  with an acknowledgment status PDU so that the transmitter  90  may advance its transmitting window  94 .  
         [0032]    The transmitting window  94  is defined by state variables VT(A)  95 , VT(WS)  96  and VT(MS)  97 . The transmitter  90  will only transmit PDUs  92   a  with sequence numbers  52  that are within the transmitting window  94 . The state variable VT(A)  95  marks the beginning value of the transmitting window  94 . The state variable VT(WS)  96  marks the size of the transmitting window  94 , which is simply the number of sequence number values  52  spanned by the transmitting window  94 . The state variable VT(MS)  97  marks the end of the transmitting window  94 , and is thus just the sum of VT(A)  95  and VT(WS)  96 . Due to overflow, the value held within VT(MS)  97  need not be greater than a value held within VT(A)  95 . Finally, a state variable VT(S)  98  holds the sequence number  52  of a PDU  92   a  that is next in line to be transmitted. VT(S)  98  will always be sequentially on or after VT(A)  95 , and sequentially on or before VT(MS)  97 . The state variables VT(A)  95 , VT(WS)  96 , VT(MS)  97  and VT(S)  98  are identical in function to those discussed in the Description of the Prior Art.  
         [0033]    The transmitter  90  also includes a calculation unit  99  that is used to calculate a test value t  99   a.  The value of t  99   a  is compared against a polling value  93   b,  that is supplied by the layer  3  interface  93 , to determine if the transmitter  90  should poll the receiver  80 . The polling bit  53  is set in a subsequently generated and transmitted PDU  98   p  if polling is to be performed. The test value t  99   a  is used for window-based polling, and to generate a value for t  99   a  the calculation unit utilizes the state variables VT(A)  95 , VT(WS)  96 , the sequence number S  98   s  held within the PDU  98   p,  and equation (4). The polling value  93   b  indicates a transmission percentage of the transmitting window  94 , i.e., the polling value  93   b  indicates the percentage of PDUs  92   a  in the transmitting window  94  that have been transmitted by the transmitter  90 . If the value of t  99   a  exceeds or equals the polling value  93   b,  and the PDU  98   p  is not a re-transmitted PDU  92   a,  then a polling request is triggered by setting the polling bit  53  of the PDU  98   p  to one. That is:  
         [0034]    1)If the PDU  98   p  is a re-transmitted PDU  92   a,  then the polling bit  53  for the PDU  98   p  is not required to be set to one by the present invention. If the PDU  98   p  is being transmitted for the first time, then the polling bit  53  is set according to the test value t  99   a  and the polling value  93   b.    
         [0035]    2)If required, the test value t  99   a  is generated using equation (4) above. The parameters for equation (4) are obtained from the state variables VT(A)  95 , VT(WS)  96 , the sequence number S  98   s  of the PDU  98   p  under consideration, and the bit-size n of the sequence number S  98   s.    
         [0036]    3)Only if the test value t  99   a  equals or exceeds the polling value  93   b,  and the PDU  98   p  is not a re-transmitted PDU  92   a,  should the polling bit  53  for the PDU  98   p  be set to one to trigger polling.  
         [0037]    Please refer to FIG. 6 with reference to FIG. 5. FIG. 6 is a flow chart of the method of the present invention, which is implemented by the calculation unit  99  to determine if polling should be triggered by the transmitter  90 . The steps are explained below:  
         [0038]    100:Obtain a PDU  98   p  for which the polling bit  53  is to be set or cleared.  
         [0039]    110:If the PDU  98   p  obtained in step  100  is a re-transmitted PDU  98   p,  then go to step  180 . Otherwise, proceed to step  120 .  
         [0040]    120:Obtain the current values for the transmitting window  94 , which include the values from the state variables VT(A)  95  and VT(WS)  96 , and additionally extract the sequence number S  98   s  from the PDU  98   p  obtained from step  100 .  
         [0041]    130:A first value x is computed. The value x is (2 n +1) added to the difference of the sequence number S  98   s  and the state variable VT(A)  95 . The value of n is the bit size of the sequence number S  98   s,  and thus in the preferred embodiment is 12. Consequently, 4097 is added to (S VT(A)).  
         [0042]    140:A second value y is computed. The value of y is the modulus of the first value x with 2 n . The second value y is thus x mod 4096.  
         [0043]    150:The test value t  99   a  is obtained by dividing the second value y by the state variable VT(WS)  96 . The test value t  99   a  indicates the current transmission percentage of the transmitting window  94  in fractional form with respect to the PDU  98   p.    
         [0044]    160:Compare the test value t  99   a  to the polling value  93   b  . As the polling value is stored as a percentage in the form of zero to 100, the value of t  99   a  is multiplied by 100 to perform this comparison.  
         [0045]    170:If the transmission percentage as represented by t  99   a  is greater than or equal to the polling value  93   b,  then polling is triggered for the transmitter  90 . The polling bit  53  for the PDU  98   p  is set to one.  
         [0046]    180:If the transmission percentage as represented by t  99   a  is less than the polling value  93   b,  or the PDU  98   p  is a re-transmitted PDU  98   p,  then no polling is required.  
         [0047]    190:End of polling determination method. For a next PDU  98   p,  the process is repeated from step  100 .  
         [0048]    In contrast to the prior art, the present invention utilizes a calculation unit to compute a test value t according to the equation:  
           t ={(2 n +1+ S VT ( A ))  mod  2 n   }/VT ( WS )  
         [0049]    The above formula accurately yields the transmission percentage of the transmitting window of the transmitter with respect to the PDU being considered so that the transmitter will accurately trigger a polling request. However, polling is only performed if the PDU under consideration in the above equations is not a re-transmitted PDU. Polling is not triggered with re-transmitted PDUs. In this manner, unnecessary usage of radio resources is avoided. A more efficient wireless transmission system is thereby ensured. By using the actual sequence number S  98   s  embedded within the PDU  98   p,  rather than the current value of the state variable VT(S)  98 , implementation ambiguities of the value of VT(S)  98  are avoided. Conformance testing is consequently made easier.  
         [0050]    Those skilled in the art will readily observe that numerous modifications and alterations of the device may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.