Abstract:
A call connection is supported by first receiving a call connection request. After the call connection request is received, the loads supported by a plurality of packet processors are compared. The call connection is then assigned to the packet processor having a load that is no larger than the load supported by any other of the plurality of packet processors.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a method for assigning a data service call of a wireless local loop (WLL) system and, more particularly, to a method for assigning packet resources of the WLL system supporting the data service call in consideration of the load amount of a packet processing apparatus. 
     2. Background of the Related Art 
     A data transmission method of a wireless communication system is divided into a circuit method and a packet method. In the circuit method, when a base station receives the call connection request of terminals and assigns the call to an empty channel, the assigned channel is exclusively used by the call until contact is cut off 
     In the packet method, the exclusive occupation of a channel is eliminated. When the base station receives the call connection request of terminals and assigns the call to an arbitrary packet processing processor, the assigned call monopolizes a channel only when there is data to be transmitted. When the data transmission is completed, the channel is changed to be idle and is allowed to be occupied by the call that approaches first. 
     The call transmitted from the terminal is speech (or character) data. The data is divided into a plurality of data items, each having a uniform length, so that they may be easily transmitted. Additionally, the data items are formed into a packet that is a data transmission unit. The packet includes the speech (character) information, transmission information, control information, and the address of a destination. These information elements are required for a wireless communication. 
       FIG. 1  shows the process of assigning the call in the circuit method. First, it is assumed that terminals  10 ,  20 , and  30  are sequentially connected to a base station  80 . When the terminal  10  tries to connect the call to the base station  80 , a call assignment processor  40  detects an empty channel in a modem card  50  of the base station  80  and assigns the call to the empty channel. The calls of the terminal  10 , which are sequentially tried to be connected to the remaining terminals  20  and  30 , are assigned to the empty channels of the modem card  50  in the base station  80 . At this time, the channels assigned to the respective terminals  10 ,  20 , and  30  are monopolized until the connection of the calls is cut off by the corresponding terminal. The setting of the calls is maintained without the transmission of actual data. 
       FIG. 2  shows the process of sequentially assigning calls in a packet method. It is assumed that terminals  110 ,  120 , and  130  are sequentially connected to a base station  180 , that the load amount of a packet processing processor  160  is larger than the load amount of a packet processing processor  170 , that a terminal is connected to the packet processing processor  160 , and that two terminals are connected to the packet processing processor  170 . 
     A call assignment processor  140  alternately and sequentially assigns the calls of the connected terminals  110 ,  120 , and  130  to the respective packet processing processors  160  and  170  of packet board  150 . The above assumed conditions, such as the current load amount of the packet processing processors  160  and  170  and the number of connected terminals, do not affect the performance of the present method. 
     When terminal  110  connects the call, which is assigned to the packet processing processor  160 , the call of terminal  120 , which is connected next in time, is assigned to the packet processing processor  170 . The call of terminal  130 , which is connected next in time, is assigned to the packet processing processor  160 . When the number of packet processing processors is two, the calls are alternately assigned. When a plurality of packet processing processors operate, the calls are sequentially assigned. 
     “Sequentially” means that the call assignment processor  140  gives an equal call processing chance to the packet processing processor  160 , according to the position of the packet processing processor as hardware or in the operation order of the packet processing processor as software. 
       FIG. 3  shows the process of assigning the calls according to the number of connected terminals in the packet method. It is assumed that terminals  210 ,  220 , and  230  are sequentially connected to a base station  280 , that the load amount of a packet processing processor  260  is larger than the load amount of the packet processing processor  270 , two terminals are connected to the packet processing processor  260 , and one terminal is connected to the packet processing processor  270 . 
     In the method of assigning the calls according to the number of connected terminals, the number of terminals assigned to the packet processing processor  260  is compared with the number of terminals assigned to the packet processing processor  270 , by call assignment processor  240 , and a new call is assigned to the packet processor having a smaller number of terminals assigned to it. Because only the number of connected terminals is considered in the present method, it matters when a small number of calls are processed by the packet processing processor because the load amount of the packet processing process is large. In an embodiment according to the assumed conditions, a new call is assigned to the packet processing processor  260 . Then, the number of terminals connected to the packet processing processor  260  is equal to the number of terminals connected to the packet processing processor  270 . However, the load amount of the packet processing processor  260  is significantly different from the load amount of the packet processing processor  270 . 
     When the number of terminals connected to the packet processing processor  260  is equal to the number of terminals connected to the packet processing processor  270 , the calls of a newly connected terminal  220  are assigned by the method of sequentially assigning the calls. Therefore, the calls are assigned to the packet processing processor  260 . The calls of the terminal  230  connected next in time are assigned to the packet processing processor  270 , to which a smaller number of terminals are connected. 
     The methods of sequentially assigning the calls and of assigning the calls according to the number of connected terminals have the following problems. 
     In the case of the method of sequentially assigning the calls, because the two packet processing processors  160  and  170  sequentially receive the calls, the calls are appropriately assigned. However, if the load amount of the packet processing processor  160  is small because most of the calls assigned to the packet processing processor  160  are cut off and the load amount of the packet processing processor  170  increases because most of the calls assigned to the packet processing processor  170  still transmit and receive data, the method of sequentially assigning the calls imposes a heavier burden on the packet processing processor  170 . This deteriorates the efficiency of the system. 
     In the case of the method of assigning the calls according to the number of connected terminals, the number of terminals connected to the packet processing processor  260  and the load amount of the packet processing processor  260  are not equal to the number of terminals connected to the packet processing processor  270  and the load amount of the packet processing processor  270 . For example, let&#39;s assume that five terminals are connected to the packet processing processor  260  and three terminals are connected to the packet processing processor  270 . At this time, even though most of the calls of the packet processing processor  260  are connected, assume little data is transmitted and received. Also, assume the load amount of the packet processing processor  270  is large because data is actively transmitted and received. Further assume a newly connected call is assigned to the packet processing processor  270 , whose load amount is large. In this example, the packet processing load is not evenly distributed, causing packet processing processor  270  to support a disproportionate share of the load. 
     Because each packet processing processor must process a large number of calls in the packet data system, it is important to appropriately assign the calls so that the calls are concentrated to a packet processing processor. 
     In the circuit method, because each call occupies a channel even though data is not transmitted and received, the efficiency and flexibility in using a circuit is low. In the method of sequentially assigning the calls, the calls are assigned without considering the load amount of the packet processing processor and the number of connected terminals. In the method of assigning the calls according to the number of connected terminals, the calls are assigned to the packet processing processor without considering the load amount of the packet processing processor. 
     The above references are incorporated by reference herein where appropriate for appropriate teachings of additional or alternative details, features and/or technical background. 
     SUMMARY OF THE INVENTION 
     An object of the invention is to solve at least the above problems and/or disadvantages and to provide at least the advantages described hereinafter. 
     Another object of the present invention is to provide a method for assigning packet resources of a wireless local loop (WLL) system, which is capable of assigning calls on the basis of the load amount of each packet processing processor. 
     A further object of the present invention is to periodically measure the load amount of the packet processing processors to better distribute the call assignments. 
     To achieve these and other advantages and in accordance with the purpose of the present invention, as embodied and broadly described herein, there is provided a method for assigning packet resources of a wireless local loop (WLL). The method includes receiving a call connection request from a terminal, comparing the load amounts of a plurality of packet processing processors with each other when the call connection request is received, and assigning the call requested to be connected to the packet processing processor whose load amount is smallest among the plurality of packet processing processors. 
     The objects of the invention may be further achieved in whole or in part by a packet processing device, including a plurality of packet processing means for processing packet data of a communication and a call assignment means for assigning a resource of a particular packet processing means to support the communication. The call assignment means assigns the resource from the particular packet processing means based on a relative resource utilization of the plurality of packet processing means. 
     The objects of the invention may be further achieved in whole or in part by a communication system, including multiple terminals that each communicate packet data in a call, a plurality of packet processing means for processing the packet data, and a call assignment means for assigning a resource of a particular packet processing means to support the call. The call assignment means assigns the resource from the particular packet processing means having a resource utilization no greater than that of any other of the plurality of packet processing means to support the call. 
     The objects of the invention may be further achieved in whole or in part by a communication method, including determining a resource utilization of each of multiple packet processing functions, selecting a particular packet processing function based on a relative resource utilization of the packet processing functions, and assigning a resource of the particular packet processing function to support a packet data communication. 
     Additional advantages, objects, and features of the invention will be set forth in part in the description which follows and in part will become apparent to those having ordinary skill in the art upon examination of the following or may be learned from practice of the invention. The objects and advantages of the invention may be realized and attained as particularly pointed out in the appended claims. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The invention will be described in detail with reference to the following drawings in which like reference numerals refer to like elements wherein: 
         FIG. 1  illustrates the process of assigning calls according to a circuit method; 
         FIG. 2  illustrates the process of sequentially assigning calls according to a packet method; 
         FIG. 3  illustrates the process of assigning calls according to the number of terminals connected in the packet method; 
         FIG. 4  illustrates the process of assigning calls according to a preferred embodiment of the present invention; 
         FIG. 5A  is a flowchart illustrating the process of measuring and reporting packet holding times according to a preferred embodiment of the present invention; 
         FIG. 5B  is a timing diagram illustrating the packet holding times and the busy/idle statuses of the packet processing processor; and 
         FIG. 6  is a flowchart illustrating the process of assigning the calls according to a preferred embodiment of the present invention. 
     
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
       FIG. 4  shows the process of assigning calls according to a preferred embodiment of the present invention. It is assumed that terminals  310 ,  320 , and  330  are sequentially connected to a base station  380 , that the load amount of the packet processing processor  360  is larger than the load amount of the packet processing processor  370 , that a terminal is connected to the packet processing processor  360 , and that two terminals are connected to the packet processing processor  370 . 
     The calls of the newly connected terminal  310  are assigned to the packet processing processor  370  whose load amount is small. The load amount of the packet processing processor  360  is compared with the load amount of the packet processing processor  370 . The calls of the terminal  320  connected next time are assigned to the packet processing processor whose load amount is smaller than the load amount of the other packet processing processor. The calls of the terminal  330  connected next time are assigned to the packet processing processor whose load amount is smaller than the load amount of the other packet processing processor. 
     Therefore, the packet processing processors  360  and  370  of packet board  350  measure and accumulate the packet holding time at regular intervals and periodically report the accumulated packet holding time to a call assignment processor  340 . The call assignment processor  340  calculates the load amount from the reported accumulated packet holding time of the packet processing processors  360  and  370  and controls the assignment of the calls so that the calls are not concentrated to a packet processor. 
       FIG. 5A  is a flowchart showing the process of measuring and reporting the packet holding times according to a preferred embodiment of the present invention. The packet processing processors  360  and  370  initialize the packet holding times and the accumulated packet holding time, determine a report period as set by a user (S 10 ), and measure the packet holding times (S 20 ). The packet processing processors  360  and  370  repeat step S 20  at regular intervals and accumulate the measured packet holding times. The packet processing processors  360  and  370  check whether it is time to report the packet holding times (S 30 ). 
     When it is time to report the packet holding times, the packet processing processors  360  and  370  report the accumulated packet holding time to the call assignment processor  340  (S 40 ). The above processes (S 10 , S 20 , S 30 , and S 40 ) are repeated periodically or occasionally. The call assignment processor  340  calculates the load amounts of the packet processing processors  360  and  370  through the reported accumulated packet holding time. 
       FIG. 5B  is a timing diagram showing the packet holding times and the busy/idle statuses of the packet processing processor. The packet holding time begins when the transmission of the packet data starts, that is, when the packet processing processors  360  and  370  become busy, and ends when the transmission of the packet data is terminated, that is, when the packet processing processors  360  and  370  become idle. The accumulated packet holding time is obtained by adding the packet holding times, which is expressed as follows.
         Packet holding times (P n )=idle state starting times (I n )−busy state starting times (B n ) (n=1, 2, and 3 . . . )   Accumulated packet holding time=Σpacket holding times ( ) (n=1, 2, and 3 . . . )   Load amount=accumulated packet holding time/report period (ΔT)       
     The packet holding time means the time during which the packet processing processor is busy. The accumulated packet holding time is obtained by adding the times during which the packet processing processor  360 ,  370  is busy and is measured during the report period. The load amounts of the respective packet processing processors are the times during which the packet processing processors are busy, which are measured for a predetermined unit time (report period). The report period can be set differently by a user. 
       FIG. 6  is a flowchart showing the process of assigning the calls according to a preferred embodiment of the present invention. When the call assignment processor  340  is requested to connect a new call to a terminal from the terminal (S 100 ), the call assignment processor compares the load amounts of the respective packet processing processors with each other. It is assumed that the number of packet processing processors is  3  (packet processing processors A, B, and C). 
     The call assignment processor  340  compares the load amount of packet processing processor A with the load amount of packet processing processor B (S 110 ). When the load amount of packet processing processor A is larger than the load amount of packet processing processor B, the call assignment processor  340  compares the load amount of packet processing processor B with the load amount of packet processing processor C (S 120 ). As a result of the step S 120 , when it is determined that the load amount of packet processing processor B is larger than the load amount of packet processing processor C, a new call is assigned to packet processing processor C (S 130 ). When the load amount of packet processing processor B is smaller than or equal to the load amount of packet processing processor C, the new call is assigned to packet processing processor B (S 140 ). 
     As a result of step S 110 , when the load amount of packet processing processor A is smaller than or equal to the load amount of packet processing processor B, the load amount of packet processing processor A is compared with the load amount of packet processing processor C (S 150 ). As a result of step S 150 , when the load amount of packet processing processor A is larger than the load amount of packet processing processor C, the new call is assigned to packet processing processor C (S 160 ). When the load amount of packet processing processor A is smaller than or equal to the load amount of packet processing processor C, the new call is assigned to packet processing processor A (S 170 ). 
     Alternatively, when the load amount of packet processing processor A is equal to the load amount of packet processing processor C, the calls of a newly connected terminal  220  are assigned to packet processing processors A, B, and C in the order used in the method of sequentially assigning the calls. 
     The number of apparatuses and the processing scale described herein are used to simplify the description of the invention. The number of apparatuses used in actual communication service circumstances and the processing scale in the actual communication service circumstances are generally larger and more various than in the described embodiment. The application, the modification, and the change of the method for assigning the packet resources according to the present invention are apparent to anyone skilled in the art. 
     As mentioned above, according to the present invention, because the processing is based on the load amount, it is possible to prevent the efficiency of the system from deteriorating due to the imbalance of the assignment of calls. Because the call processing processor periodically checks the load amounts of the respective packet processing processors, it is possible to maintain the quality and the speed of the data transmission service, optimally. 
     The foregoing embodiments and advantages are merely exemplary and are not to be construed as limiting the present invention. The present teaching can be readily applied to other types of apparatuses. The description of the present invention is intended to be illustrative, and not to limit the scope of the claims. Many alternatives, modifications, and variations will be apparent to those skilled in the art. In the claims, means-plus-function clauses are intended to cover the structures described herein as performing the recited function and not only structural equivalents but also equivalent structures.