THROUGHPUT AND DELAY OPTIMIZATION FOR A CHANNEL IN A COMMUNICATION SYSTEM

Abstract: The present invention provides a method and system of statistical estimation of uplink traffic using a retry count (102). A unique spread factor is used for spreading retransmission evenly among backlogged subscriber units, thereby providing dynamic control of the retransmission spread based on the estimated uplink traffic (106).

Description: THROUGHPUT AND DELAY OPTIMIZATION FOR A CHANNEL IN A COMMUNICATION SYSTEM Field of the Invention The present invention relates generally to access control in a communication system, and more particularly to optimization of access control in a communication system with respect to throughput and delay. Background Increasing use of data communications has furthered techniques that provide more cost-effective means of utilizing existing channels of communication networks. One such technique is packetization of traffic information and transmission of the packets between end users in an efficient manner. In known systems all subscriber units share one physical channel. There is a need for efficient contention for the physical channel. Mobile data communications users, e.g., users of notebook computers, palmtop computers, and personal digital assistant devices, have needs similar to those of data communications users of stationary communication systems. However, hardware systems for providing the needed data transfer capabilities for the mobile data communications are generally circuit in nature, and thus are too expensive for an end user to implement, or alternatively, may often have very limited data rates and/or system capabilities. Thus, mobile data communications users have a need for efficient data throughput. Thus, as more and more people utilize both stationary and mobile data communications devices, there is a need for developing a method and system for providing more efficient data throughput and minimizing delay in data communications. Brief Descriptions of the Drawings FIG. 1 is a flow chart showing one embodiment of steps in accordance with the method of the present invention. FIG. 2 is a flow chart showing one embodiment of steps for determining the spreading factor N in accordance with the present invention. FIG. 3 is a flow chart showing with greater particularity, one embodiment of the steps of FIG. 2 for determining, by the base site, the spreading factor N in accordance with the present invention. FIG. 4 is a flow chart showing another embodiment of steps in accordance with the method of the present invention. FIG. 5 is a diagram showing an embodiment of a mobile communication system in accordance with the present invention. Detailed Description of a Preferred Embodiment The present invention implements a novel method of statistical estimation of uplink traffic using a retry count. In addition, broadcasting the channel bitmap on the downlink allows the subscriber unit to calculate his retransmission delay time accurately, enabling the subscriber unit to wake up at exactly the right time, thereby optimizing the amount of "sleep time". The present invention further uses a unique spread factor determination for spreading retransmission evenly among backlogged subscriber units by dynamically controlling the retransmission spread based on the estimated uplink traffic. Thus, the present invention provides advantages over other techniques for scheduling channel use. FIG. 1 , numeral 100, is a flow chart showing one embodiment of steps in accordance with the method of the present invention. The method dynamically controls a retransmission time spread of transmission data based on estimated uplink traffic transmissions by a plurality of subscriber units (SUs) on a channel in a communication system utilizing a retry count-based novel scheme. The method includes the steps of: A) transmitting, by each of a plurality of subscriber units, a retry count in a packet (102); B) detecting, by the subscriber units, whether a collision between the subscriber unit's transmitted packet and another packet has occurred (104); C) waiting, by the subscriber unit, upon unsuccessful transmission of the packet and recycling immediately where the packet was successfully transmitted, to step A (108); and in parallel with steps A-C, D) transmitting, by a base site, to all of the subscriber units, a spreading factor N determined using the retry count-based novel scheme (106). In addition, step C may be selected to include broadcasting, by the base site, a bitmap indicating the status of the time slots of the frame. As shown in the flow chart of FIG. 2, numeral 200, the novel scheme to determine the spreading factor N typically includes the steps of: A) storing, by each subscriber unit, in a packet for transmission, the retry count (202); B) determining, by the base site, the spreading factor N, wherein the spreading factor N is a maximum number of packet time slots which a subscriber unit is to wait before retrying transmission (204); C) broadcasting, by the base site, a packet having the spreader factor N in a superframe header together with a channel bitmap that indicates which time slots in a frame are packet timeslots (206); and D) randomly selecting, by each subscriber unit, an integer number between 1 and N and converting it to a number of physical timeslots to skip before sending another packet, and recycling to step A (208), where the steps of the subscriber unit and the base site are performed in parallel. In one embodiment, shown in FIG. 3, numeral 300, the step of determining, by the base site, the spreading factor N further includes the steps of: A) initializing, by the base site, the spreading factor N to a predetermined value (302); B) determining, by the base site, an average number of retry counts by the plurality of subscriber units over a predetermined interval (304); C) updating, by the base site, the average retry count, to provide a current average retry count (306); D) comparing, by the base site, the current average retry count with a predetermined threshold value and, D1 ) where the current average retry count is within a range of plus or minus a predetermined percentage of a predetermined target value, maintaining a current spreading factor N (308), and D2) where the current average retry count is greater than a value equal to the predetermined target value N plus the predetermined percentage of the predetermined target value (310), and one of D2a-D2b: D2a) where the current average retry count is less than or equal to an immediately previous average retry count, incrementing the spreading factor N by a predetermined step value (312) and, D2b) where the current average retry count is greater than an immediately previous average retry count, incrementing the spreading factor N by two times the predetermined step value (314); D3) where the current average retry count is less than a value equal to the predetermined target value N minus the predetermined percentage of the predetermined target value N, decrementing the spreading factor N by the predetermined step value (316); and E) where a number of packets received during a predetermined time interval is less than a predetermined number of packets, automatically increasing, by the base site, the spreading factor by the predetermined step value (318). The method of the present invention may be selected to utilize a time division multiplex system. Typically, the time division multiplex system includes a selection scheme for determining active and inactive time slots and the novel scheme for determining the spreading factor N is based on a number of active time slots. FIG. 4, numeral 400, is a flow chart showing another embodiment of steps in accordance with the method of the present invention. The method of FIG. 4 provides stability and efficiently optimizes throughput and minimizing delay for transmission of data by a subscriber unit on a channel in a communication system utilizing a contention-based access scheme. The method of the present invention includes: A) transmitting, by each of a plurality of subscriber units, a retry count in a packet (402); B) detecting, by the subscriber units, whether a collision between the subscriber unit's transmitted packet and another packet has occurred (404); C) determining, by the subscriber unit, where the packet was unsuccessfully transmitted, a random period of time between one and N, and waiting, by the subscriber unit, the random period of time and recycling to step A (410); D) recycling immediately, by the subscriber unit, where the packet was successfully transmitted, to step A (412), and in parallel with steps A-D performed by the subscriber units, E) using, by a base site, where the packet was transmitted successfully, the retry counts from the plurality of subscriber units in a novel scheme to determine a spreading factor N (406); and F) broadcasting, by the base site, the spreading factor N to a plurality of subscriber units (408). As described further above, the method may utilize a time division multiplex system. Also, step C, may be selected to include broadcasting, by the base site, a bitmap indicating the status of the time slots of the frame. FIG. 5, numeral 500, is a block diagram of a system in accordance with the present invention. The system is used for providing stability and efficiently optimizing throughput and minimizing delay for transmission of data by a subscriber unit on a channel in a communication system utilizing a contention- based access scheme. The system includes a plurality of subscriber units (502, 504, 506, ...) each having a first packet processor (508, 510, 512, ...) that includes a retry count inserter (514, 516, 518, ...) and a collision detector (520, 522, 524, ...), for transmitting a retry count in each packet of data, detecting whether a collision between the subscriber unit's transmitted packet and another packet has occurred, determining, where the packet was unsuccessfully transmitted, a random period of time between one and N, and waiting the random period of time and recycling to transmitting a retry count in each packet of data, and a base site (526) having a second packet processor (528) with a novel spreader factor determiner (530) for, where the packet was transmitted successfully, utilizing the retry counts from the plurality of subscriber units in a novel scheme to determine a spreading factor N, and broadcasting the spreading factor N to a plurality of subscriber units. The spreader factor determiner (530) typically utilizes a novel scheme to determine the spreading factor N that includes: storing, by each subscriber unit, in a packet for transmission, the retry count, determining, by the base site, the spreading factor N, wherein the spreading factor N is a maximum number of packet time slots which a subscriber unit is to wait before retrying transmission, broadcasting, by the base site, a packet having the spreader factor N in a superframe header together with a channel bitmap that indicates which time slots in a frame are packet timeslots, and randomly selecting, by each subscriber unit, an integer number between 1 and N and converting it to a number of physical timeslots to skip before sending another packet, and recycling to the beginning of this scheme. More particularly, in a first embodiment, the base site (526) of the system (500) determines the spreading factor N by: initializing, by the base site, the spreading factor N to a predetermined value, determining, by the base site, an average number of retry counts by the plurality of subscriber units over a predetermined interval, updating, by the base site, the average retry count, to provide a current average retry count, comparing, by the base site, the current average retry count with a predetermined threshold value and, where the current average retry count is within a range of plus or minus a predetermined percentage of a predetermined target value, maintaining a current spreading factor N, and where the current average retry count is greater than a value equal to the predetermined target value N plus the predetermined percentage of the predetermined target value, and one of a-b: a) where the current average retry count is less than or equal to an immediately previous average retry count, incrementing the spreading factor N by a predetermined step value and, b) where the current average retry count is greater than an immediately previous average retry count, incrementing the spreading factor N by two times the predetermined step value, and then, where the current average retry count is less than a value equal to the predetermined target value N minus the predetermined percentage of the predetermined target value N, decrementing the spreading factor N by the predetermined step value, and where a number of packets received during a predetermined time interval is less than a predetermined number of packets, automatically increasing, by the base site, the spreading factor by the predetermined step value. The system may be selected to employ a time division multiplex system and may include a selection scheme for determining active and inactive time slots and the novel scheme for determining the spreading factor N is based on a number of active time slots. After determining a status of the time slots of a frame, the base site may be selected to broadcast a bitmap indicating the status of the time slots of the frame. Although exemplary embodiments are described above, it will be obvious to those skilled in the art that many alterations and modifications may be made without departing from the invention. Accordingly, it is intended that all such alterations and modifications be included within the spirit and scope of the invention as defined in the appended claims. We claim:

Claims: CLAIMS : 1 . A method for dynamically controlling a retransmission time spread of transmission data based on estimated uplink traffic transmissions by a plurality of subscriber units on a channel in a communication system utilizing a retry count- based novel scheme, comprising the steps of: 1 A) transmitting, by each of a plurality of subscriber units, a retry count in a packet, 1 B) detecting, by the subscriber units, whether a collision between the subscriber unit's transmitted packet and another packet has occurred, 1 D) waiting, by the subscriber unit, upon unsuccessful transmission of the packet and recycling immediately where the packet was successfully transmitted, to step 1A; and in parallel with steps 1A-1 C, 1 C) transmitting, by a base site, to all of the subscriber units, a spreading factor N determined using the retry count-based novel scheme. 2. The method of claim 1 wherein the novel sc determine the spreading factor N comprises the 2A) storing, by each subscriber unit, in a packet for transmission, the retry count, 2B) determining, by the base site, the spreading factor N, wherein the spreading factor N is a maximum number of packet time slots which a subscriber unit is to wait before retrying transmission, 2C) broadcasting, by the base site, a packet having the spreader factor N in a superframe header together with a channel bitmap that indicates which time slots in a frame are packet timeslots, 2D) randomly selecting, by each subscriber unit, an integer number between 1 and N and converting it to a number of physical timeslots to skip before sending another packet, and recycling to step 2A; and where selected: wherein the step of determining, by the base site, the spreading factor N comprises the steps of: 2E) initializing, by the base site, the spreading factor N to a predetermined value, 2F) determining, by the base site, an average number of retry counts by the plurality of subscriber units over a predetermined interval, 2G) updating, by the base site, the average retry count, to provide a current average retry count, 2H) comparing, by the base site, the current average retry count with a predetermined threshold value and, 2H1 ) where the current average retry count is within a range of plus or minus a predetermined percentage of a predetermined target value, maintaining a current spreading factor N, and 2H2) where the current average retry count is greater than a value equal to the predetermined target value N plus the predetermined percentage of the predetc value, and one of 2H2a-2H2b: 2H2a) where the current average retry count is less than or equal to an immediately previous average retry count, incrementing the spreading factor N by a predetermined step value and, 2H2b) where the current average retry count is greater than an immediately previous average retry count, incrementing the spreading factor N by two times the predetermined step value, 2H3) where the current average retry count is less than a value equal to the predetermined target value N minus the predetermined percentage of the predetermined target value N, decrementing the spreading factor N by the predetermined step value, and 21) where a number of packets received during a predetermined time interval is less than a predetermined number of packets, automatically increasing, by the base site, the spreading factor by the predetermined step value; and where further selected: wherein the time division multiplex system includes a selection scheme for determining active and inactive time slots and the novel scheme for determining the spreading factor N is based on a number of active time slots. 3. The method of claim 1 wherein at least one of 3A-3B: 3A) the method utilizes a time division multiplex system; and 3B) in step 1 E, broadcasting, by the base site, a bitmap indicating the status of the time slots of the frame. 4. A method for providing stability and effici optimizing throughput and minimizing delay for of data by a subscriber unit on a channel in a communication system utilizing a contention-based access scheme, comprising the steps of: 4A) transmitting, by each of a plurality of subscriber units, a retry count in a packet, 4B) detecting, by the subscriber units, whether a collision between the subscriber unit's transmitted packet and another packet has occurred, 4C) determining, by the subscriber unit, where the packet was unsuccessfully transmitted, a random period of time between zero and N, and waiting, by the subscriber unit, the random period of time and recycling to step A, 4D) recycling immediately, by the subscriber unit, where the packet was successfully transmitted, to step 8A, and in parallel with the steps performed by the subscriber units, 4E) using, by a base site, where the packet was transmitted successfully, the retry counts from the plurality of subscriber units in a novel scheme to determine a spreading factor N, and 4F) broadcasting, by the base site, the spreading factor N to a plurality of subscriber units. . 5. The method of claim 4 wherein the novel s( determine the spreading factor N comprises the 5A) storing, by each subscriber unit, in a packet for transmission, the retry count, 5B) determining, by the base site, the spreading factor N, wherein the spreading factor N is a maximum number of packet time slots which a subscriber unit is to wait before retrying transmission, 5C) broadcasting, by the base site, a packet having the spreader factor N in a superframe header together with a channel bitmap that indicates which time slots in a frame are packet timeslots, 5D) randomly selecting, by each subscriber unit, an integer number between 1 and N and converting it to a number of physical timeslots to skip before sending another packet, and recycling to step 5A; and where selected: wherein the step of determining, by the base site, the spreading factor N comprises the steps of: 5E) initializing, by the base site, the spreading factor N to a predetermined value, 5F) determining, by the base site, an average number of retry counts by the plurality of subscriber units over a predetermined interval, 5G) updating, by the base site, the average retry count, to provide a current average retry count, 5H) comparing, by the base site, the current average retry count with a predetermined threshold value and, 5H1 ) where the current average retry count is within a range of plus or minus a predetermined percentage of a predetermined target value, maintaining a current spreading factor N, and 5H2) where the current average retry count is greater than a value equal to the predetermined target value N plus the predetermined percentage of the predeti value, and one of 5H2a-5H2b: 5H2a) where the current average retry count is less than or equal to an immediately previous average retry count, incrementing the spreading factor N by a predetermined step value and, 5H2b) where the current average retry count is greater than an immediately previous average retry count, incrementing the spreading factor N by two times the predetermined step value, 5H3) where the current average retry count is less than a value equal to the predetermined target value N minus the predetermined percentage of the predetermined target value N, decrementing the spreading factor N by the predetermined step value, and 51) where a number of packets received during a predetermined time interval is less than a predetermined number of packets, automatically increasing, by the base site, the spreading factor by the predetermined step value. 6. The method of claim 5 wherein the method utilizes a time division multiplex system; and where selected: wherein the time division multiplex system includes a selection scheme for determining active and inactive time slots and the novel scheme for determining the spreading factor N is based on a number of active time slots. 7. The method of claim 4 including, in step 4E, broadcasting, by the base site, a bitmap indicating the status of the time slots of the frame. 8. A system for providing stability and effici optimizing throughput and minimizing delay for of data by a subscriber unit on a channel in a communication system utilizing a contention-based access scheme, comprising: 8A) a plurality of subscriber units having a packet processor that includes a retry count inserter and a collision detector, for transmitting a retry count in each packet of data, detecting whether a collision between the subscriber unit's transmitted packet and another packet has occurred, determining, where the packet was unsuccessfully transmitted, a random period of time between zero and N, and waiting the random period of time and recycling to transmitting a retry count in each packet of data, and 8B) a base site having a packet processor with a novel spreader factor determiner for, where the packet was transmitted successfully, utilizing the retry counts from the plurality of subscriber units in a novel scheme to determine a spreading factor N, and broadcasting the spreading factor N to a plurality of subscriber units. 9. The system of claim 8 wherein the base sit factor determiner utilizes a novel scheme to determine the spreading factor N that includes: storing, by each subscriber unit, in a packet for transmission, the retry count, determining, by the base site, the spreading factor N, wherein the spreading factor N is a maximum number of packet time slots which a subscriber unit is to wait before retrying transmission, broadcasting, by the base site, a packet having the spreader factor N in a superframe header together with a channel bitmap that indicates which time slots in a frame are packet timeslots, and randomly selecting, by each subscriber unit, an integer number between 1 and N and converting it to a number of physical timeslots to skip before sending another packet, and recycling to the beginning of this scheme; and where selected: wherein the base site determines the spreading factor N by: initializing, by the base site, the spreading factor N to a predetermined value, determining, by the base site, an average number of retry counts by the plurality of subscriber units over a predetermined interval, updating, by the base site, the average retry count, to provide a current average retry count, comparing, by the base site, the current average retry count with a predetermined threshold value and, where the current average retry count is within a range of plus or minus a predetermined percentage of a predetermined target value, maintaining a current spreading factor N, and where the current average retry count is greater than a value equal to the predetermined target value N plus the predetermined percentage of the predetermined target value, and one of a-b: a) where the current average retry count is less than or equal to an immediately previous average retry count, incrementing the spreading factor N by a predetermined step value and, b) where the current average retry count is greater than an immediately previous average retry count, incrementing the spreading factor N by two times the predetermine and then, where the current average retry count value equal to the predetermined target value N minus the predetermined percentage of the predetermined target value N, decrementing the spreading factor N by the predetermined step value, and where a number of packets received during a predetermined time interval is less than a predetermined number of packets, automatically increasing, by the base site, the spreading factor by the predetermined step value. 10. The system of claim 8 wherein at least one of 10A-10B: 1 0A) the system employs a time division multiplex system, and where selected, wherein the time division multiplex system includes a selection scheme for determining active and inactive time slots and the novel scheme for determining the spreading factor N is based on a number of active time slots; and 1 0B) further including that, after determining a status of the time slots of a frame, the base site broadcasts a bitmap indicating the status of the time slots of the frame.

Inventors: SCHEIBEL ROBERT C JR, SMOLINSKE JEFFREY C, TRAN PHIEU MOC, SCHEIBEL, ROBERT, C., JR., SMOLINSKE, JEFFREY, C., TRAN, PHIEU, MOC
Applicants: MOTOROLA INC, MOTOROLA INC.
Application year: 1995
Main classification: H04J3
IPC codes: H04L12