WO2001063857A1 - Overload handling in a communications system - Google Patents

Overload handling in a communications system Download PDF

Info

Publication number
WO2001063857A1
WO2001063857A1 PCT/SE2001/000408 SE0100408W WO0163857A1 WO 2001063857 A1 WO2001063857 A1 WO 2001063857A1 SE 0100408 W SE0100408 W SE 0100408W WO 0163857 A1 WO0163857 A1 WO 0163857A1
Authority
WO
WIPO (PCT)
Prior art keywords
entity
buffer
mac
transmitter
new
Prior art date
Application number
PCT/SE2001/000408
Other languages
French (fr)
Inventor
Göran SCHULTZ
Janne Peisa
Toomas Wigell
Reijo Matinmikko
Original Assignee
Telefonaktiebolaget Lm Ericsson (Publ)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telefonaktiebolaget Lm Ericsson (Publ) filed Critical Telefonaktiebolaget Lm Ericsson (Publ)
Priority to EP01908562A priority Critical patent/EP1264447A1/en
Priority to AU2001236304A priority patent/AU2001236304A1/en
Publication of WO2001063857A1 publication Critical patent/WO2001063857A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • H04W28/14Flow control between communication endpoints using intermediate storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0231Traffic management, e.g. flow control or congestion control based on communication conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/04Large scale networks; Deep hierarchical networks

Definitions

  • the present invention relates in general to the field of communications systems, and in particular, by way of example but not limitation, to handling potential buffer overflows resulting from new users overloading a communications system.
  • Description of Related Art Access to and use of wireless networks is becoming increasingly important and popular for business, social, and recreational purposes. Users of wireless networks now rely on them for both voice and data communications. Furthermore, an ever increasing number of users demand both an increasing array of services and capabilities as well as greater bandwidth for activities such as Internet surfing. To address and meet the demands for new services and greater bandwidth, the wireless communications industry constantly strives to improve the number of services and the throughput of their wireless networks. Expanding and improving the infrastructure necessary to provide additional services and higher bandwidth is an expensive and manpower-intensive undertaking.
  • the wireless communications industry intends to continue to improve the capabilities of the technology upon which it relies and that it makes available to its customers by deploying next generation system(s).
  • Protocols for a next-generation standard that is designed to meet the developing needs of wireless customers is being standardized by the 3 rd Generation Partnership Project (3GPP).
  • 3GPP 3 rd Generation Partnership Project
  • the set of protocols is known collectively as the Universal Mobile Telecommunications System (UMTS).
  • UMTS Universal Mobile Telecommunications System
  • FIG. 1 an exemplary wireless communications system with which the present invention may be advantageously employed is illustrated generally at 100.
  • the network 100 includes a core network 120 and a UMTS Terrestrial Radio Access Network (UTRAN) 130.
  • the UTRAN 130 is composed of, at least partially, a number of Radio Network Controllers (RNCs) 140, each of which may be coupled to one or more neighboring Node Bs 150.
  • RNCs Radio Network Controllers
  • the UMTS network 100 also includes multiple user equipments (UEs) 110.
  • UE may include, for example, mobile stations, mobile terminals, laptops/personal digital assistants (PDAs) with wireless links, etc.
  • Methods, systems, and arrangements in accordance with the present invention enable the prevention of common channel overload in a wireless communications network.
  • UMTS Universal Mobile Telecommunications System
  • new Medium Access Control-dedicated (MAC-d) entities are permitted to transmit data segments in an amount equivalent to their initial credit to a MAC-common (MAC-c) entity.
  • MAC-c MAC-common
  • MAC-d entities in UMTS networks are always permitted to transmit at least their initial credit, the buffer in the MAC-c entity may become overloaded, thus preventing the use of the MAC-c entity by any MAC-d entity.
  • the MAC-c entity if the buffer fill level of the MAC-c buffer reaches a predefined fill level, the MAC-c entity is empowered to discard incoming data segments from MAC-d entities of new users.
  • the credits value of each pre-existing, or old, MAC-d entity may also optionally be set equal to zero.
  • the predefined buffer fill level at which, when reached, the MAC-c entity becomes empowered to reject new incoming data segments may be established responsive to the maximum fill level of the buffer of the MAC-c entity, the maximum guaranteed transmission rate of the common channel, and the maximum allowed additional delay.
  • FIG. 1 illustrates an exemplary wireless communications system with which the present invention may be advantageously employed
  • FIG. 2 illustrates a protocol model for an exemplary next-generation system with which the present invention may be advantageously employed;
  • FIG. 3 illustrates a view of an exemplary second layer architecture of an exemplary next-generation system in accordance with the present invention
  • FIG. 4 illustrates an exemplary method in flowchart form for allocating bandwidth resources to data flow streams between entities in the exemplary second layer architecture of FIG. 3;
  • FIG. 5 illustrates another view of the exemplary second layer architecture of an exemplary next-generation system in accordance with the present invention
  • FIG. 6 illustrates yet another view of the exemplary second layer architecture of an exemplary next-generation system in accordance with the present invention
  • FIG. 7 illustrates an exemplary buffer for an entity of an exemplary next- generation system in accordance with the present invention.
  • FIG. 8 illustrates an exemplary method in flowchart form for modulating a fill level of the exemplary buffer of FIG. 7 in accordance with the present invention.
  • a protocol model for an exemplary next-generation system with which the present invention may be advantageously employed is illustrated generally at 200.
  • the "Uu" indicates the interface between
  • Radio Access Bearers RABs
  • a UE 110 is allocated one or more RABs, each of which is capable of carrying a flow of user or signaling data. RABs are mapped onto respective logical channels.
  • MAC Media Access Control
  • MAC-c Media Access Control
  • MAC-d Media Access Control
  • FACH Primary Common Control Physical CHannel
  • RNC 140 acts at least initially as both the serving and the controlling RNC 140 for the UE 110.
  • the serving RNC 140 may subsequently differ from the controlling RNC 140 in a UMTS network 100, but the presence or absence of this condition is not particularly relevant here.
  • the RNC 140 both controls the air interface radio resources and terminates the layer 3 intelligence (e.g., the Radio Resource Control (RRC) protocol), thus routing data associated with the UE 110 directly to and from the core network 120.
  • RRC Radio Resource Control
  • the MAC-c entity in the RNC 140 transfers MAC- c Packet Data Units (PDUs) to the peer MAC-c entity at the UE 110 using the services of the FACH Frame Protocol (FACH FP) entity between the RNC 140 and the Node B 150.
  • the FACH FP entity adds header information to the MAC-c PDUs to form FACH FP PDUs which are transported to the Node B 150 over an AAL2 (or other transport mechanism) connection.
  • An interworking function at the Node B 150 interworks the FACH frame received by the FACH FP entity into the PHY entity.
  • an important task of the MAC-c entity is the scheduling of packets (MAC PDUs) for transmission over the air interface. If it were the case that all packets received by the MAC-c entity were of equal priority (and of the same size), then scheduling would be a simple matter of queuing the received packets and sending them on a first come first served basis (e.g., first-in, first-out (FIFO)).
  • FIFO first-in, first-out
  • UMTS defines a framework in which different Quality of Services (QoSs) may be assigned to different RABs.
  • Packets corresponding to a RAB that has been allocated a high QoS should be transmitted over the air interface at a high priority whilst packets corresponding to a RAB that has been allocated a low QoS should be transmitted over the air interface at a lower priority.
  • Priorities may be determined at the MAC entity (e.g., MAC-c or MAC-d) on the basis of RAB parameters.
  • UMTS deals with the question of priority by providing at the controlling RNC 140 a set of queues for each FACH.
  • the queues may be associated with respective priority levels.
  • TFC includes a transmission time interval, a packet size, and a total transmission size (indicating the number of packets in the transmission) for each FACH.
  • the algorithm should select for the FACHs a TFC which matches one of those present in the TFC set in accordance with UMTS protocols.
  • a packet received at the controlling RNC 140 is placed in a queue
  • the queue corresponds to the priority level attached to the packet as well as to the size of the packet.
  • the FACH is mapped onto a S-CCPCH at a Node B 150 or other corresponding node of the UTRAN 130.
  • the packets for transmission on the FACH are associated with either a Dedicated Control CHannel (DCCH) or to a Dedicated Traffic CHannel
  • each FACH is arranged to carry only one size of packets. However, this is not necessary, and it may be that the packet size that can be carried by a given FACH varies from one transmission time interval to another.
  • the UE 110 may communicate with the core network 120 of the UMTS system 100 via separate serving and controlling (or drift)
  • RNCs 140 within the UTRAN 130 e.g., when the UE 110 moves from an area covered by the original serving RNC 140 into a new area covered by a controlling/drift RNC 140 (not specifically shown).
  • Signaling and user data packets destined for the UE 110 are received at the MAC-d entity of the serving RNC 140 from the core network 120 and are "mapped" onto logical channels, namely a Dedicated Control
  • the MAC- d entity constructs MAC Service Data Units (SDUs), which include a payload section containing logical channel data and a MAC header containing, inter alia, a logical channel identifier.
  • SDUs MAC Service Data Units
  • the MAC-d entity passes the MAC SDUs to the FACH FP entity.
  • This FACH FP entity adds a further FACH FP header to each MAC SDU, where the FACH FP header includes a priority level that has been allocated to the MAC SDU by an RRC entity.
  • the RRC is notified of available priority levels, together with an identification of one or more accepted packet sizes for each priority level, following the entry of a UE 110 into the coverage area of the drift RNC 140.
  • the FACH FP packets are sent to a peer FACH FP entity at the drift RNC 140 over an AAL2 (or other) connection.
  • the peer FACH FP entity decapsulates the
  • each SDU is placed in a queue corresponding to its priority and size. For example, if there are 16 priority levels, there will be 16 queue sets for each FACH, with the number of queues in each of the 16 queue sets depending upon the number of packet sizes accepted for the associated priority. As described hereinabove, SDUs are selected from the queues for a given FACH in accordance with some predefined algorithm (e.g., so as to satisfy the TFC requirements of the physical channel).
  • the scheme described hereinbelow with reference to FIGS. 3 and 4 relates to data transmission in a telecommunications network and in particular, though not necessarily, to data transmission in a UMTS.
  • the 3GPP is currently in the process of standardizing a new set of protocols for mobile telecommunications systems.
  • the set of protocols is known collectively as the UMTS.
  • FIG. 3 a view of an exemplary second layer architecture of an exemplary next-generation system in accordance with the present invention is illustrated generally at 300.
  • the exemplary second layer architecture 300 illustrates a simplified UMTS layer 2 protocol structure which is involved in the communication between mobile stations
  • the RNCs 140 are analogous to the Base Station Controllers (BSCs) of existing GSM mobile telecommunications networks, communicating with the mobile stations via Node Bs 150.
  • BSCs Base Station Controllers
  • the layer 2 structure of the exemplary second layer architecture 300 includes a set of Radio Access Bearers (RABs) 305 that make available radio resources (and services) to user applications. For each mobile station there may be one or several RABs 305. Data flows (e.g., in the form of segments) from the RABs 305 are passed to respective Radio Link Control (RLC) entities 310, which amongst other tasks buffer the received data segments. There is one RLC entity 310 for each RAB 305. In the RLC layer, RABs 305 are mapped onto respective logical channels 315.
  • RLC Radio Link Control
  • MAC entity 320 receives data transmitted in the logical channels 315 and further maps the data from the logical channels 315 onto a set of transport channels 325.
  • the transport channels 325 are finally mapped to a single physical transport channel 330, which has a total bandwidth (e.g., of ⁇ 2Mbits/sec) allocated to it by the network.
  • a physical channel is used exclusively by one mobile station or is shared between many mobile stations, it is referred to as either a "dedicated physical channel" or a "common channel”.
  • a MAC entity connected to a dedicated physical channel is known as MAC-d; there is preferably one MAC-d entity for each mobile station.
  • a MAC entity connected to a common channel is known as MAC-c; there is preferably one MAC-c entity for each cell.
  • the bandwidth of a transport channel 325 is not directly restricted by the capabilities of the physical layer 330, but is rather configured by a Radio Resource Controller (RRC) entity 335 using Transport Formats (TFs).
  • RRC Radio Resource Controller
  • TFs Transport Formats
  • the RRC entity 335 defines one or several Transport Block (TB) sizes.
  • Transport Block size directly corresponds to an allowed MAC Protocol Data
  • TBS Transport Block Set
  • TTI transmission time interval
  • the RRC entity 335 also informs the MAC entity of all possible TFs for a given transport channel.
  • This combination of TFs is called a Transport Format Combination (TFC).
  • TFC Transport Format Combination
  • the MAC entity can choose to transmit one or two PDUs in one TTI on the particular transport channel in question; in both cases, the PDUs have a size of 80 bits.
  • the MAC entity 320 has to decide how much data to transmit on each transport channel 325 connected to it.
  • These transport channels 325 are not independent of one another, and are later multiplexed onto a single physical channel
  • the RRC entity 335 has to ensure that the total transmission capability on all transport channels 325 does not exceed the transmission capability of the underlying physical channel 330. This is accomplished by giving the MAC entity 320 a Transport Format Combination Set (TFCS), which contains the allowed Transport Format Combinations for all transport channels.
  • TFCS Transport Format Combination Set
  • a MAC entity 320 which has two transport channels 325 that are further multiplexed onto a single physical channel 330, which has a transport capacity of 160 bits per transmission time interval (It should be understood that, in practice, the capacity will be much greater than 160).
  • the MAC entity 320 cannot choose to transmit on both transport channels 325 at the same time using TF3 as this would result in the need to transmit 320 bits on the physical channel 330, which has only a capability to transmit 160 bits.
  • the RRC entity 335 has to restrict the total transmission rate by not allowing all combinations of the TFs.
  • An example of this would be a TFCS as follows [ ⁇ (80, 0), (80, 0) ⁇ , ⁇ (80, 0), (80, 80) ⁇ , ⁇ (80, 0), (80, 160) ⁇ , ⁇ (80, 80), (80, 0) ⁇ , ⁇ (80, 80), (80, 80) ⁇ , ⁇ (80, 160), (80, 0) ⁇ ], where the transport format of transport channel "1" is given as the first element of each element pair, and the transport format of transport channel "2" is given as the second element.
  • the MAC entity 320 can only choose one of these allowed transport format combinations from the transport format combination set, it is not possible to exceed the capability of the physical channel 330.
  • TFCI Transport Format Combination Indicator
  • TFCI Transport Format Combination Indicator
  • Asynchronous Transfer Mode (ATM) networks provision is made for allocating resources on a single output channel to multiple input flows.
  • ATM Asynchronous Transfer Mode
  • the algorithms used to share out the resources in such systems are not directly applicable to UMTS where multiple input flows are transmitted on respective logical output channels. Sharing resources between multiple input data flows is referred to as
  • GPS Generalized Processor Sharing
  • WFQ Weighted Fair Queuing
  • GPS involves calculating a GPS weight for each input flow on the basis of certain parameters associated with the flow. The weights calculated for all of the input flows are added together, and the total available output bandwidth is divided amongst the input flows depending upon the weight of each flow as a fraction of the total weight.
  • GPS could be applied to the MAC entity in UMTS, with the weighting for each input flow being determined (by the RRC entity) on the basis of certain RAB parameters, which are allocated to the corresponding RAB by the network.
  • an RAB parameter may equate to a Quality of Service (QoS) or Guaranteed rate allocated to a user for a particular network service.
  • QoS Quality of Service
  • Guaranteed rate allocated to a user for a particular network service.
  • a backlog of unsent data may build up for the input flow. It is an object of the scheme described herein with reference to FIGS. 3 and 4 to overcome, or at least mitigate, the disadvantage noted in the preceding paragraph. This and other objects are achieved at least in part by maintaining a backlog counter which keeps track of the backlog of unsent data for a given input flow to the MAC entity. The backlog is taken into account when determining an appropriate TFC for that input flow for a subsequent frame.
  • MAC Media Access Control
  • UMTS Universal Mobile Telecommunications System
  • TFC TFC from a TFC Set (TFCS) on the basis of the bandwidth share computed for the input flows, where the TFC includes a Transport Format allocated to each input flow; and for each input flow, if the allocated TF results in a data transmission rate which is less than the determined fair distribution, adding the difference to a backlog counter for the input flow, where the value of the backlog counter(s) is taken into account when selecting a TFC for the subsequent frame of the output data flow.
  • Embodiments of this scheme allow the TFC selection process for a subsequent frame to take into account any backlogs which exists for the input flows. The tendency is to adjust the selected TFC to reduce the backlogs. Such a backlog may exist due to the finite number of data transmission possibilities provided for by the TFCS.
  • Nodes at which the method of this scheme may be employed include mobile stations (such as mobile telephones and communicator type devices) (or more generally UEs) and Radio Network Controllers (RNCs).
  • RNCs Radio Network Controllers
  • the input flows to the MAC entity are provided by respective Radio Link Control (RLC) entities.
  • each RLC entity provides buffering for the associated data flow.
  • the step of computing a fair share of resources for an input flow is carried out by a Radio Resource Control (RRC) entity.
  • the step of computing a fair share of resources for an input flow includes the step of determining the weighting given to that flow as a fraction of the sum of the weights given to all of the input flows. The fair share may then be determined by multiplying the total output bandwidth by the determined fraction.
  • this step may involve using the Generalised Processor Sharing (GPS) mechanism.
  • the weighting for a data flow may be defined by one or more Radio Access Bearer (RAB) parameters allocated to a RAB by the UMTS network, where the RAB is associated with each MAC input flow.
  • RAB Radio Access Bearer
  • the method further includes the step of adding the value of the backlog counter to the computed fair share for that flow and selecting a TFC on the basis of the resulting sums for all of the input flows.
  • the difference may be subtracted frora the backlog counter for the input flow.
  • a node of a Universal Mobile Telecommunications System including: a Media Access Control (MAC) entity for receiving a plurality of input data flows; first processor means for computing for each input flow to the MAC entity a fair share of the available output bandwidth of the MAC entity and for selecting a Transport Format Combination (TFC), from a TFC Set (TFCS), on the basis of the bandwidth share computed for the input flows, where the TFC includes a Transport Format allocated to each input flow; second processor means for adding to a backlog counter associated with each input flow the difference between the data transmission rate for the flow resulting from the selected TFC and the determined fair share, if the data transmission rate is less than the determined fair share, where the first processor means is arranged to take into account the value of the backlog counters when selecting a TFC for the subsequent frame of the output data flow.
  • the first and second processor means are provided by a Radio Resource Control (RRC) entity.
  • RRC Radio Resource Control
  • a simplified UMTS layer 2 includes one Radio Resource Control (RRC) entity, a Medium Access Control (MAC) entity for each mobile station, and a Radio Link Control (RLC) entity for each Radio Access Bearer (RAB).
  • RRC Radio Resource Control
  • the MAC entity performs scheduling of outgoing data packets, while the RLC entities provide buffers for respective input flows.
  • the RRC entity sets a limit on the maximum amount of data that can be transmitted from each flow by assigning a set of allowed Transport Format Combinations (TFC) to each MAC (referred to as a TFC Set or TFCS), but each MAC must independently decide how much data is transmitted from each flow by choosing the best available Transport Format Combination (TFC) from the TFCS.
  • TFC Transport Format Combinations
  • the flowchart 400 is a flow diagram of a method of allocating bandwidth resources to, for example, the input flow streams of a MAC entity of the layer 2 of FIG 3.
  • an exemplary method in accordance with the flowchart 400 may follow the following steps. First, input flows are received at RLCs and the data is buffered (step 405). Information on buffer fill levels is passed to the MAC entity (step 410). After the information on buffer fill levels is passed, the fair MAC bandwidth share for each input flow is computed (step 415). The computed fair share of each is then adjusted by adding the contents of an associated backlog counter to the respective computed fair share (step
  • a TFC is selected from the TFC set to most closely match the adjusted fair shares (step 425).
  • the RLC is next instructed to deliver packets to the MAC entity according to the selected TFC (step 430).
  • the MAC entity may also schedule packets in accordance with the selected TFC (step 435).
  • the traffic channels may be transported on the physical channel(s) (step 440). Once packet traffic has been transported, the backlog counters should be updated (step 445). The process may continue (via arrow 450) when new input flows are received at the RLCs, which buffer the data (at step 405).
  • certain embodiment(s) of the scheme operate by calculating at the MAC entity, on a per Transmission Time Interval (TTI) basis, the optimal distribution of available bandwidth using the Generalised Processor Sharing (GPS) approach (See, e.g., the article by A. K. Parekh et al. referenced hereinabove.) and by keeping track of how far behind each flow is from the optimal bandwidth allocation using respective backlog counters.
  • GPS Generalised Processor Sharing
  • the available bandwidth is distributed to flows by using the standard GPS weights, which may be calculated by the RRC using the RAB parameters.
  • the method may first calculate the GPS distribution for the input flows and add to the GPS values the current respective backlogs. This is performed once for each 10ms TTI and results in a fair transmission rate for each flow. However, this rate may not be optimal as it may happen that there is not enough data to be sent in all buffers. In order to achieve optimal throughput as well as fairness, the fair GPS distribution is reduced so as to not exceed the current buffer fill level or the maximum allowed rate for any logical channel. A two step rating process is then carried out.
  • the set of fair rates computed for all of the input flows is compared against possible Transport Format Combinations (TFCs) in turn, with each TFC being scored according to how close it comes to sending out the optimal rate.
  • TFCs Transport Format Combinations
  • this is done by simply counting how much of the fair configuration a TFC fails to send (if a given TFC can send all packets at the fair rate, it is given a score of zero) and then considering only the TFCs which have the lowest scores. The closest match is chosen and used to determine the amount of packets sent from each queue.
  • TFCs having an equal score are given a bonus score according to how many extra bits they can send
  • the final selection is based on a two-level scoring: the TFC with the lowest score is taken. If there are several TFCs with an equal score, the one with the highest bonus score is chosen. This ensures that the rate for each TTI is maximized. Fairness is achieved by checking that if the chosen TFC does not give all flows at least their determined fair rate, the missing bits are added to a backlog counter of the corresponding flow and the selection is repeated for the next TTI. If any of the flows has nothing to transmit, the backlog is set to zero. This algorithm can be shown to provide bandwidth (and, under certain assumptions, delay bounds) that is close to that of GPS.
  • int maxrate int i ; int tfc, tfci, qf, rate, trch; int tfc_to_use;
  • the exemplary second layer architecture 500 includes additional details regarding elements of, and interrelationships between, various aspects of the second layer architecture of, for example, the Universal Mobile Telecommunications System (UMTS).
  • UMTS Universal Mobile Telecommunications System
  • RRC element 505 is connected to one or more Radio Link Controllers (RLCs) 510.
  • RLCs 510 includes at least one RLC Packet Data Unit (PDU) Buffer 515.
  • the RLCs 510 are connected to respective common channel Medium Access Control (MAC-c) element(s)/layer 520 or dedicated channel Medium Access Control (MAC-d) element(s)/layer 525.
  • MAC-c Medium Access Control
  • MAC-d Medium Access Control
  • the MAC-c, MAC-d, and RLC layers of UMTS may be located, for example, in a Radio Network Controller (RNC) 140 (of FIG. 1) of the UTRAN 130.
  • RNC Radio Network Controller
  • MAC-d 525) When a user (MAC-d 525) becomes active (e.g., new data arrives into an RLC buffer 515 that was previously empty), it sends a number of packets to MAC-c 520 (common channels) according to the user's current initial credit.
  • MAC-d 525 When a user (MAC-d 525) becomes active (e.g., new data arrives into an RLC buffer 515 that was previously empty), it sends a number of packets to MAC-c 520 (common channels) according to the user's current initial credit.
  • MAC-c PDU Buffer 530 will rise in an amount equal to the initial credit. Consequently, regardless of how the initial credit is specified, there is always a possibility that the MAC-c PDU Buffer 530 will be overloaded in situations when/where many new users become active at the same time.
  • the number of simultaneous new users e.g., subscribers
  • This significant number of subscribers may disturb the normal operation of the MAC-c node 520. If all of these new users are permitted to subscribe to this MAC-c node 520, then the resulting congestion will prevent everyone from using the MAC-c entity 520.
  • the MAC-c entity 520 rejects connections from MAC-d entities 525 because all MAC-d entities 525 are allowed to transmit at least their initial credit.
  • the present invention advantageously avoids such congestion in the MAC-c node 520 by implementing and utilizing a predefined buffer fill level "Qcrej", which is described in greater detail hereinbelow with reference to FIG. 7. If the MAC-c PDU Buffer 530 reaches this predefined fill level, the MAC-c node 520 discards the incoming packets from new
  • the present invention provides an additional benefit inasmuch as once new MAC-d entities 525 have transmitted their initial credit, they do not transmit new packets until the MAC-c node 520 activates them by sending to them new credit.
  • the UMTS layer 2 protocol structure
  • a UE 110 e.g., a mobile station, a mobile terminal, a mobile telephone, a wireless data communicator such as a PDA, a portable computer with a wireless link, etc.
  • RNCs 140 are analogous to the Base Station Controllers (BSCs) of existing GSM mobile telecommunications networks, so they communicate with UEs
  • BSCs Base Station Controllers
  • FIG. 6 yet another view of the exemplary second layer architecture of an exemplary next-generation system in accordance with the present invention is illustrated generally at 600.
  • the exemplary second layer architecture 600 may be considered as a subset of the exemplary second layer architecture 500 where the focus is on one common channel.
  • the result for the exemplary second layer architecture 600 is a typical star configuration with a number of RLC-d buffers 515 transmitting data towards one MAC-c buffer 530.
  • the data flow between the RLC-d buffers 515 and the MAC-c buffer 530 is controlled by a flow control function/module 605.
  • the layer 2 structures 500 and 600 include a set of Radio Bearers (RBs) 535 that make available radio resources (and services) to user applications.
  • RBs Radio Bearers
  • each UE there may be one or more RBs 535.
  • Data flows, in the form of packets (or more generally segments), from the RBs 535 are passed to respective RLC entities 510, which buffer the received data segments, among other tasks.
  • RLC entities 510 There is preferably one RLC entity 510 for each RB 535.
  • RBs 535 are mapped onto respective logical channels.
  • a MAC entity receives data transmitted in the logical channels and further maps logical channels onto a set of transport channels.
  • Transport channels are further mapped to a single physical channel that has a total bandwidth (e.g., ⁇ 2 Mbits/sec) allocated to it by the network.
  • a physical channel is referred to as either a "dedicated channel” or a “common channel”, respectively.
  • common transport channels may be considered as Forward Access CHannel (FACH) transport channels.
  • FACH Forward Access CHannel
  • a MAC entity connected to a dedicated channel (DCH) is known as "MAC-d" ; there is preferably one
  • MAC-d entity for each UE.
  • a MAC entity connected to a common channel is known as "MAC-c"; there is preferably one MAC-c entity for each cell.
  • the RRC-d 505 When the dedicated channels of a UE are switched on common transport channels, the RRC-d 505 sends a Common Transport Channel Resources Request message to the RRC-c 505. The RRC-c 505 responds with a Common Transport Channel Request message to the RRC-c 505.
  • the Common Transport Channel Resources Response message includes a list of provided common channel characteristics, including: channel priorities, Initial credits, and data frame sizes. Consequently, all dedicated logical channels of different UEs with the same mapping result are routed to the same common channel.
  • the potential overloading of the common channel e.g., the MAC-c PDU Buffer 530
  • the MAC-c PDU Buffer 530 may be avoided by establishing an extra MAC-c PDU Buffer 530 (fill level) threshold.
  • This buffer fill level threshold may cause the rejection of all new users (e.g., the discarding of the data of new users).
  • all new user packets may be dropped and their initial credits may be set to zero.
  • an exemplary buffer for an entity of an exemplary next-generation system in accordance with the present invention is illustrated generally at 700.
  • the exemplary buffer 700 corresponds to, for example, a MAC-c PDU Buffer 530 (of FIGS. 5 and 6).
  • various levels are defined to the left of the MAC-c PDU Buffer 530 and that these levels, at least in part, demarcate various zones as indicated to the right of the MAC-c PDU Buffer 530. Each zone delineates the relevant credit situation given the fill level of the MAC-c PDU Buffer 530.
  • the exemplary buffer 700 includes a "Qcmin” 705 level and a “Qcmax” 710 level.
  • the "Qc” 715 level reflects the current fill level of the exemplary buffer 700.
  • a “Qcopt” 720 level stands for the, e.g., MAC-c buffer 530 optimum level with regard to delay and throughput requirements.
  • the buffer available space, or "Qcdiff ' 725, is shared between users so that each user is allotted a certain number of credits.
  • new credits may be calculated according to the Qcdiff 725 value and the RLC-d 510 buffer fill level.
  • the Qcdiff 725 may be defined to equal Qcopt 720 - Qc 715 (not shown in FIG. 7) in this instance.
  • the number of control messages may be decreased by introducing the Qcmax 710 threshold level.
  • Qcdiff 725 Qcmax 710 - Qc 715, and no new credits are granted when the buffer fill level Qc 715 falls between Qcopt 720 and Qcmax 710.
  • the level(s) below Qcmin 705 may optionally be used to set credits equal to 'unlimited', which implies that an unlimited number of packets from an RLC buffer 515 may be transferred without any control signals.
  • the buffer level rises above Qcmax 710 but is still below Qcrej 730, no new credits are granted except for initial credits.
  • the credits are cleared by the sending of a 'zero' credits to appropriate MAC-d entities 525.
  • a user becomes active (e.g. , new data arrives into an RLC buffer 515 that was previously empty)
  • the corresponding MAC-d entity sends a number of packets to the MAC-c entity according to the initial credit.
  • the MAC-c buffer 530 fill level rises in accordance with this initial credit. If 'n' new users become active before the next Transmission Time Interval (TTI) (when more data may be moved out from the MAC-c buffer 530), then the MAC-c buffer 530 fill level Qc 715 increases by: n*Initial_credits*Packet_size .
  • TTI Transmission Time Interval
  • This additional threshold is termed "Qcrej" 730 in FIG. 7.
  • Qcrej 730 This additional threshold is termed "Qcrej" 730 in FIG. 7.
  • the exceeding of this threshold value Qcrej 730 precipitates the rejection of all new users that try to gain access.
  • the packets (or, more generally, the segments) of these users are discarded, and their associated credits are set to zero.
  • the channel switching function can identify and switch them towards appropriate dedicated transport channels.
  • the threshold level Qcrej 730 may be specified as follows:
  • Qcrej Qcmax + Re * Tad where Tad represents the maximum allowed additional delay, and Re represents the expected mean transmission rate of the common channel (e.g., the rate at which the packets are emptied from the MAC-c buffer 530).
  • FIG. 8 an exemplary method in flowchart form for modulating a fill level of the exemplary buffer of FIG. 7 in accordance with the present invention is illustrated generally at 800.
  • the flowchart 800 illustrates steps involved in certain embodiments of the present invention for ensuring that multiple new users do not overload a telecommunications network with too many data segments from their initial credits by rejecting such new users in certain situation(s).
  • a MAC-d entity determines that a MAC-d entity buffer holds new data for transmission (step 805).
  • the MAC-d entity transmits a number of segments that equate to the value prescribed for initial credit (step 810).
  • the MAC-c entity receives the segments transmitted by the MAC-d entity (step 815).
  • the MAC-c entity may either hold these new segments in another memory (e.g., a cache memory (not specifically shown) for the MAC-c buffer 530 (of FIG. 7)) or initially store them directly into the MAC-c buffer.
  • another memory e.g.,
  • the MAC-c entity After receiving the new segments, the MAC-c entity inspects the MAC-c buffer (step 820) (e.g., the MAC-c buffer fill level is determined). It is next ascertained whether or not the fill level of the MAC-c buffer is greater than a predetermined rejection buffer fill level threshold (step 825). If not, then the MAC-c entity either accepts or keeps (depending on whether the new data segments were initially stored in a cache memory or directly in the MAC-c buffer, respectively) the data segments either into or at the MAC-c buffer of the MAC-c entity (step 830).
  • the MAC-c entity inspects the MAC-c buffer (step 820) (e.g., the MAC-c buffer fill level is determined). It is next ascertained whether or not the fill level of the MAC-c buffer is greater than a predetermined rejection buffer fill level threshold (step 825). If not, then the MAC-c entity either accepts or keeps (depending on whether the new data segments were initially stored

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Methods, systems, and arrangements enable the prevention of common channel overload in a wireless communications network. In a Universal Mobile Telecommunications system (UMTS) network environment (100), for example, new Medium Access Control-dedicated (MAC-d) entities (525) are always permitted to transmit data segments in an amount equivalent to their initial credit to a MAC-common (MAC-c) (520) entity. Consequently, the buffer (530) in the MAC-c entity may become overloaded if many new MAC-d entities transmit data segments simultaneously, thus preventing the use of the MAC-c entity (520) by any MAC-d entity (525). In accordance with certain embodiments of the present invention, if the buffer fill level of the MAC-c buffer reaches a predefined fill level, the MAC-c entity (520) is empowered to reject MAC-d entities (525) of new users by discarding incoming data segments therefrom.

Description

OVERLOAD HANDLING IN A COMMUNICATIONS SYSTEM
CROSS-REFERENCES TO RELATED APPLICATIONS
This Non-provisional Application for Patent claims the benefit of priority from, and hereby incorporates by reference the entire disclosure of, co-pending U.S.
Provisional Application for Patent Serial No. 60/185,003, (Attorney Docket No. 34646-00460USPL) filed February 25, 2000. Co-pending U.S. Provisional Applications for Patent Serial Nos. 60/184,975 (Attorney Docket No. 34646- 00458USPL) and 60/185,005 (Attorney Docket No. 34646-00459USPL), both filed on February 25, 2000, are also hereby incorporated by reference in their entirety herein.
This Non-provisional Application for Patent is related by subject matter to U.S.
Non-provisional Applications for PatentNos.09/698786 (Attorney Docket No.34646-
00458USPT) and 09/698785 (Attorney Docket No. 34646-00459USPT), both of which are filed on even date herewith. These two U.S. Non-provisional Applications for Patent are also hereby incorporated by reference in their entirety herein.
BACKGROUND OF THE INVENTION Technical Field of the Invention The present invention relates in general to the field of communications systems, and in particular, by way of example but not limitation, to handling potential buffer overflows resulting from new users overloading a communications system. Description of Related Art Access to and use of wireless networks is becoming increasingly important and popular for business, social, and recreational purposes. Users of wireless networks now rely on them for both voice and data communications. Furthermore, an ever increasing number of users demand both an increasing array of services and capabilities as well as greater bandwidth for activities such as Internet surfing. To address and meet the demands for new services and greater bandwidth, the wireless communications industry constantly strives to improve the number of services and the throughput of their wireless networks. Expanding and improving the infrastructure necessary to provide additional services and higher bandwidth is an expensive and manpower-intensive undertaking. Moreover, high-bandwidth data streams will eventually be demanded by consumers to support features such as real-time audiovisual downloads and live audio-visual communication between two or more people. In the future, it will therefore become necessary and/or more cost-effective to introduce next generation wireless system(s) instead of attempting to upgrade existing system(s).
To that end, the wireless communications industry intends to continue to improve the capabilities of the technology upon which it relies and that it makes available to its customers by deploying next generation system(s). Protocols for a next-generation standard that is designed to meet the developing needs of wireless customers is being standardized by the 3rd Generation Partnership Project (3GPP). The set of protocols is known collectively as the Universal Mobile Telecommunications System (UMTS). Referring now to FIG. 1 , an exemplary wireless communications system with which the present invention may be advantageously employed is illustrated generally at 100. In a UMTS network 100, the network 100 includes a core network 120 and a UMTS Terrestrial Radio Access Network (UTRAN) 130. The UTRAN 130 is composed of, at least partially, a number of Radio Network Controllers (RNCs) 140, each of which may be coupled to one or more neighboring Node Bs 150. Each Node
B 150 is responsible for a given geographical cell and the controlling RNC 140 is responsible for routing user and signaling data between that Node B 150 and the core network 120. All of the RNCs 140 may be directly or indirectly coupled to one another. A general outline of the UTRAN 130 is given in Technical Specification TS 25.401 V2.0.0 (1999-09) of the 3rd Generation Partnership Project, 3GPP, which is hereby incorporated by reference in its entirety herein. The UMTS network 100 also includes multiple user equipments (UEs) 110. UE may include, for example, mobile stations, mobile terminals, laptops/personal digital assistants (PDAs) with wireless links, etc. In conventional wireless systems, mobile stations acquire access to a network using some type of request (e.g., a message) prior to sending information. If the requesting mobile station does not receive an affirmative answer in response to its request, then the requesting mobile station does not send any information and merely repeats its request. Conversely, in a UMTS network initial access to a network is established differently from a conventional wireless system. The difference creates a possible danger of overloading the UMTS network when too many UEs attempt to access the UMTS network simultaneously (e.g., due to a system restart or some other unexpected event). There is therefore a need to ensure that this potential overload situation does not occur.
SUMMARY OF THE INVENTION
The above-identified deficiencies, as well as others, that are associated with existing schemes are remedied by the methods, systems, and arrangements of the present invention. For example, as heretofore unrecognized, it would be beneficial to be able to handle situations in which numerous user equipments simultaneously attempt to access a communications network. In fact, it would be beneficial if new connections could be rejected when a buffer reaches a predefined fill level.
Methods, systems, and arrangements in accordance with the present invention enable the prevention of common channel overload in a wireless communications network. In a Universal Mobile Telecommunications System (UMTS) network environment, for example, new Medium Access Control-dedicated (MAC-d) entities are permitted to transmit data segments in an amount equivalent to their initial credit to a MAC-common (MAC-c) entity. Because MAC-d entities in UMTS networks are always permitted to transmit at least their initial credit, the buffer in the MAC-c entity may become overloaded, thus preventing the use of the MAC-c entity by any MAC-d entity. In accordance with certain embodiments of the present invention, if the buffer fill level of the MAC-c buffer reaches a predefined fill level, the MAC-c entity is empowered to discard incoming data segments from MAC-d entities of new users. The credits value of each pre-existing, or old, MAC-d entity may also optionally be set equal to zero. The predefined buffer fill level at which, when reached, the MAC-c entity becomes empowered to reject new incoming data segments may be established responsive to the maximum fill level of the buffer of the MAC-c entity, the maximum guaranteed transmission rate of the common channel, and the maximum allowed additional delay.
The above-described and other features of the present invention are explained in detail hereinafter with reference to the illustrative examples shown in the accompanying drawings. Those skilled in the art will appreciate that the described embodiments are provided for purposes of illustration and understanding and that numerous equivalent embodiments are contemplated herein.
BRIEF DESCRIPTION OF THE DRAWINGS A more complete understanding of the methods, systems, and arrangements of the present invention may be had by reference to the following detailed description when taken in conjunction with the accompanying drawings wherein:
FIG. 1 illustrates an exemplary wireless communications system with which the present invention may be advantageously employed; FIG. 2 illustrates a protocol model for an exemplary next-generation system with which the present invention may be advantageously employed;
FIG. 3 illustrates a view of an exemplary second layer architecture of an exemplary next-generation system in accordance with the present invention;
FIG. 4 illustrates an exemplary method in flowchart form for allocating bandwidth resources to data flow streams between entities in the exemplary second layer architecture of FIG. 3;
FIG. 5 illustrates another view of the exemplary second layer architecture of an exemplary next-generation system in accordance with the present invention;
FIG. 6 illustrates yet another view of the exemplary second layer architecture of an exemplary next-generation system in accordance with the present invention;
FIG. 7 illustrates an exemplary buffer for an entity of an exemplary next- generation system in accordance with the present invention; and
FIG. 8 illustrates an exemplary method in flowchart form for modulating a fill level of the exemplary buffer of FIG. 7 in accordance with the present invention.
DETAILED DESCRIPTION OF THE DRAWINGS In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular circuits, logic modules (implemented in, for example, software, hardware, firmware, some combination thereof, etc.), techniques, etc. in order to provide a thorough understanding of the invention. However, it will be apparent to one of ordinary skill in the art that the present invention may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known methods, devices, logical code (e.g., hardware, software, firmware, etc.), etc. are omitted so as not to obscure the description of the present invention with unnecessary detail. A preferred embodiment of the present invention and its advantages are best understood by referring to FIGS. 1 -8 of the drawings, like numerals being used for like and corresponding parts of the various drawings. Aspects of the UMTS are used to describe a preferred embodiment of the present invention. However, it should be understood that the principles of the present invention are applicable to other wireless communication standards (or systems), especially those in which communication is packet-based.
Referring now to FIG. 2, a protocol model for an exemplary next-generation system with which the present invention may be advantageously employed is illustrated generally at 200. In the protocol model 200 (e.g., for a Forward Access CHannel (FACH) transport channel type), the "Uu" indicates the interface between
UTRAN 130 and the UE 110, and "Iub" indicates the interface between the RNC 140 and a Node B 150 (where "Node B" is a generalization of, for example, a Base Transceiver Station (BTS)). User and signaling data may be carried between an RNC 140 and a UE 110 using Radio Access Bearers (RABs) (as illustrated hereinbelow with reference to FIG. 3). Typically, a UE 110 is allocated one or more RABs, each of which is capable of carrying a flow of user or signaling data. RABs are mapped onto respective logical channels. At the Media Access Control (MAC) layer, a set of logical channels is mapped in turn onto a transport channel, of which there are two types: a "common" transport channel which is shared by different UEs 110 and a "dedicated" transport channel which is allocated to a single UE 110 (thus leading to the terms "MAC-c" and "MAC-d"). One type of common channel is the FACH. A basic characteristic of a FACH is that it is possible to send one or more fixed size packets per transmission time interval (e.g., 10, 20, 40, or 80 ms). Several transport channels (e.g., FACHs) are in turn mapped at the physical layer onto a Secondary Common Control Physical CHannel (S-CCPCH) for transmission over the air interface between a Node B 150 and a UE 110.
When a UE 110 registers with an RNC 140 via a Node B 150, that RNC 140 acts at least initially as both the serving and the controlling RNC 140 for the UE 110. (The serving RNC 140 may subsequently differ from the controlling RNC 140 in a UMTS network 100, but the presence or absence of this condition is not particularly relevant here.) The RNC 140 both controls the air interface radio resources and terminates the layer 3 intelligence (e.g., the Radio Resource Control (RRC) protocol), thus routing data associated with the UE 110 directly to and from the core network 120.
It should be understood that the MAC-c entity in the RNC 140 transfers MAC- c Packet Data Units (PDUs) to the peer MAC-c entity at the UE 110 using the services of the FACH Frame Protocol (FACH FP) entity between the RNC 140 and the Node B 150. The FACH FP entity adds header information to the MAC-c PDUs to form FACH FP PDUs which are transported to the Node B 150 over an AAL2 (or other transport mechanism) connection. An interworking function at the Node B 150 interworks the FACH frame received by the FACH FP entity into the PHY entity.
In an exemplary aspect of the scenario illustrated in FIG. 2, an important task of the MAC-c entity is the scheduling of packets (MAC PDUs) for transmission over the air interface. If it were the case that all packets received by the MAC-c entity were of equal priority (and of the same size), then scheduling would be a simple matter of queuing the received packets and sending them on a first come first served basis (e.g., first-in, first-out (FIFO)). However, UMTS defines a framework in which different Quality of Services (QoSs) may be assigned to different RABs. Packets corresponding to a RAB that has been allocated a high QoS should be transmitted over the air interface at a high priority whilst packets corresponding to a RAB that has been allocated a low QoS should be transmitted over the air interface at a lower priority. Priorities may be determined at the MAC entity (e.g., MAC-c or MAC-d) on the basis of RAB parameters.
UMTS deals with the question of priority by providing at the controlling RNC 140 a set of queues for each FACH. The queues may be associated with respective priority levels. An algorithm, which is defined for selecting packets from the queues in such a way that packets in the higher priority queues are (on average) dealt with more quickly than packets in the lower priority queues, is implemented. The nature of this algorithm is complicated by the fact that the FACHs that are sent on the same physical channel are not independent of one another. More particularly, a set of Transport Format Combinations (TFCs) is defined for each S-CCPCH, where each
TFC includes a transmission time interval, a packet size, and a total transmission size (indicating the number of packets in the transmission) for each FACH. The algorithm should select for the FACHs a TFC which matches one of those present in the TFC set in accordance with UMTS protocols. Preferably, a packet received at the controlling RNC 140 is placed in a queue
(for transmission on a FACH), where the queue corresponds to the priority level attached to the packet as well as to the size of the packet. The FACH is mapped onto a S-CCPCH at a Node B 150 or other corresponding node of the UTRAN 130. In an alternative preference, the packets for transmission on the FACH are associated with either a Dedicated Control CHannel (DCCH) or to a Dedicated Traffic CHannel
(DTCH). It should be noted that, preferably, each FACH is arranged to carry only one size of packets. However, this is not necessary, and it may be that the packet size that can be carried by a given FACH varies from one transmission time interval to another.
As alluded to hereinabove, the UE 110 may communicate with the core network 120 of the UMTS system 100 via separate serving and controlling (or drift)
RNCs 140 within the UTRAN 130 (e.g., when the UE 110 moves from an area covered by the original serving RNC 140 into a new area covered by a controlling/drift RNC 140) (not specifically shown). Signaling and user data packets destined for the UE 110 are received at the MAC-d entity of the serving RNC 140 from the core network 120 and are "mapped" onto logical channels, namely a Dedicated Control
CHannel (DCCH) and a Dedicated traffic CHannel (DTCH), for example. The MAC- d entity constructs MAC Service Data Units (SDUs), which include a payload section containing logical channel data and a MAC header containing, inter alia, a logical channel identifier. The MAC-d entity passes the MAC SDUs to the FACH FP entity. This FACH FP entity adds a further FACH FP header to each MAC SDU, where the FACH FP header includes a priority level that has been allocated to the MAC SDU by an RRC entity. The RRC is notified of available priority levels, together with an identification of one or more accepted packet sizes for each priority level, following the entry of a UE 110 into the coverage area of the drift RNC 140.
The FACH FP packets are sent to a peer FACH FP entity at the drift RNC 140 over an AAL2 (or other) connection. The peer FACH FP entity decapsulates the
MAC-d SDU and identifies the priority contained in the FRAME FP header. The SDU and associated priority are passed to the MAC-c entity at the controlling RNC 140. The MAC-c layer is responsible for scheduling SDUs for transmission on the FACHs. More particularly, each SDU is placed in a queue corresponding to its priority and size. For example, if there are 16 priority levels, there will be 16 queue sets for each FACH, with the number of queues in each of the 16 queue sets depending upon the number of packet sizes accepted for the associated priority. As described hereinabove, SDUs are selected from the queues for a given FACH in accordance with some predefined algorithm (e.g., so as to satisfy the TFC requirements of the physical channel).
The scheme described hereinbelow with reference to FIGS. 3 and 4 relates to data transmission in a telecommunications network and in particular, though not necessarily, to data transmission in a UMTS.
As noted hereinabove, the 3GPP is currently in the process of standardizing a new set of protocols for mobile telecommunications systems. The set of protocols is known collectively as the UMTS. With reference to FIG. 3, a view of an exemplary second layer architecture of an exemplary next-generation system in accordance with the present invention is illustrated generally at 300. Specifically, by way of example only, the exemplary second layer architecture 300 illustrates a simplified UMTS layer 2 protocol structure which is involved in the communication between mobile stations
(e.g. mobile telephones), or more broadly UEs 110, and Radio Network Controllers (RNCs) 140 of a UMTS network 100. The RNCs 140 are analogous to the Base Station Controllers (BSCs) of existing GSM mobile telecommunications networks, communicating with the mobile stations via Node Bs 150.
The layer 2 structure of the exemplary second layer architecture 300 includes a set of Radio Access Bearers (RABs) 305 that make available radio resources (and services) to user applications. For each mobile station there may be one or several RABs 305. Data flows (e.g., in the form of segments) from the RABs 305 are passed to respective Radio Link Control (RLC) entities 310, which amongst other tasks buffer the received data segments. There is one RLC entity 310 for each RAB 305. In the RLC layer, RABs 305 are mapped onto respective logical channels 315. A Medium
Access Control (MAC) entity 320 receives data transmitted in the logical channels 315 and further maps the data from the logical channels 315 onto a set of transport channels 325. The transport channels 325 are finally mapped to a single physical transport channel 330, which has a total bandwidth (e.g., of <2Mbits/sec) allocated to it by the network. Depending whether a physical channel is used exclusively by one mobile station or is shared between many mobile stations, it is referred to as either a "dedicated physical channel" or a "common channel". A MAC entity connected to a dedicated physical channel is known as MAC-d; there is preferably one MAC-d entity for each mobile station. A MAC entity connected to a common channel is known as MAC-c; there is preferably one MAC-c entity for each cell.
The bandwidth of a transport channel 325 is not directly restricted by the capabilities of the physical layer 330, but is rather configured by a Radio Resource Controller (RRC) entity 335 using Transport Formats (TFs). For each transport channel 325, the RRC entity 335 defines one or several Transport Block (TB) sizes. Each Transport Block size directly corresponds to an allowed MAC Protocol Data
Unit (PDU) and tells the MAC entity what packet sizes it can use to transmit data to the physical layer. In addition to block size, the RRC entity 335 informs the MAC entity 320 of a Transport Block Set (TBS) size, which is the total number of bits the MAC entity can transmit to the physical layer in a single transmission time interval (TTI). The TB size and TBS size, together with some additional information relating to the allowed physical layer configuration, form a TF. An example of a TF is (TB=80 bits, TBS=160 bits), which means that the MAC entity 320 can transmit two 80 bit packets in a single TTI. Thus, this TF can be written as TF=(80, 160). The RRC entity 335 also informs the MAC entity of all possible TFs for a given transport channel. This combination of TFs is called a Transport Format Combination (TFC). An example of a TFC is {TF1=(80, 80), TF2=(80, 160)}. In this example, the MAC entity can choose to transmit one or two PDUs in one TTI on the particular transport channel in question; in both cases, the PDUs have a size of 80 bits.
In each TTI, the MAC entity 320 has to decide how much data to transmit on each transport channel 325 connected to it. These transport channels 325 are not independent of one another, and are later multiplexed onto a single physical channel
330 at the physical layer 330 (as discussed hereinabove). The RRC entity 335 has to ensure that the total transmission capability on all transport channels 325 does not exceed the transmission capability of the underlying physical channel 330. This is accomplished by giving the MAC entity 320 a Transport Format Combination Set (TFCS), which contains the allowed Transport Format Combinations for all transport channels.
By way of example, consider a MAC entity 320 which has two transport channels 325 that are further multiplexed onto a single physical channel 330, which has a transport capacity of 160 bits per transmission time interval (It should be understood that, in practice, the capacity will be much greater than 160). The RRC entity 335 could decide to assign three transport formats TF1=(80, 0), TF2=(80, 80) and TF3=(80, 160) to both transport channels 325. Clearly however, the MAC entity 320 cannot choose to transmit on both transport channels 325 at the same time using TF3 as this would result in the need to transmit 320 bits on the physical channel 330, which has only a capability to transmit 160 bits. The RRC entity 335 has to restrict the total transmission rate by not allowing all combinations of the TFs. An example of this would be a TFCS as follows [{(80, 0), (80, 0)}, {(80, 0), (80, 80)}, {(80, 0), (80, 160)}, {(80, 80), (80, 0)}, {(80, 80), (80, 80)}, {(80, 160), (80, 0)}], where the transport format of transport channel "1" is given as the first element of each element pair, and the transport format of transport channel "2" is given as the second element.
As the MAC entity 320 can only choose one of these allowed transport format combinations from the transport format combination set, it is not possible to exceed the capability of the physical channel 330.
An element of the TFCS is pointed out by a Transport Format Combination Indicator (TFCI), which is the index of the corresponding TFC. For example, in the previous example there are 6 different TFCs, meaning that the TFCI can take any value between 1 and 6. The TFCI=2 would correspond to the second TFC, which is {(80, 0), (80, 80) } , meaning that nothing is transmitted from the first transport channel and a single packet of 80 bits is transmitted from the second transport channel.
It is of course necessary to share the total available bandwidth between the logical channels 315. The decision to distribute the bandwidth to different transport channels is made by the MAC entity 320 for each transmission time interval by choosing a suitable TFCI. This sharing of bandwidth can be done in several ways, for example by giving an absolute preference to flows which are considered to be more important than others. This would be the easiest method to implement, but can result in a very unfair distribution of the bandwidth. Specifically, it is possible that flows that have lower priorities are not allowed to transmit for prolonged periods of time. This can result in extremely poor performance if the flow control mechanism of a lower priority flow reacts to this. A typical example of such a flow control mechanism can be found in the present day Transmission Control Protocol (TCP) protocol used in the Internet. In existing technologies, such as Internet Protocol (IP) and
Asynchronous Transfer Mode (ATM) networks, provision is made for allocating resources on a single output channel to multiple input flows. However, the algorithms used to share out the resources in such systems are not directly applicable to UMTS where multiple input flows are transmitted on respective logical output channels. Sharing resources between multiple input data flows is referred to as
Generalized Processor Sharing (GPS). This GPS, when employed in systems having only a single output channel, is known as Weighted Fair Queuing (WFQ) and is described in a paper entitled "A Generalised Processor Sharing Approach to Flow Control in Integrated Services Networks: The Single Node Case", A. K. Parekh, R. G. Gallager, published in IEEE/ ACM Transactions On Networking, Vol. 1, No. 3, June
1993, Pp. 344-357. Stated simply, GPS involves calculating a GPS weight for each input flow on the basis of certain parameters associated with the flow. The weights calculated for all of the input flows are added together, and the total available output bandwidth is divided amongst the input flows depending upon the weight of each flow as a fraction of the total weight. GPS could be applied to the MAC entity in UMTS, with the weighting for each input flow being determined (by the RRC entity) on the basis of certain RAB parameters, which are allocated to the corresponding RAB by the network. In particular, an RAB parameter may equate to a Quality of Service (QoS) or Guaranteed rate allocated to a user for a particular network service.
Continuing now with the scheme described herein with reference to FIGS. 3 and 4, it was realized that there are difficulties involved in applying GPS directly to bandwidth allocation in a UMTS network, as GPS assumes that data can be sent on the MAC entity logical channels in infinitely small blocks. This is not possible in UMTS, as UMTS relies upon Transport Format Combinations Sets (TFCSs) as the basic mechanism defining how much data can be sent in each TTI. If GPS is to be employed in UMTS, it is necessary to select the TFC (from the TFCS) which most closely matches the bandwidth allocated to an input flow by GPS. The result of this approach is that the actual amount of data sent for an input stream in a given frame either may fall below the optimized rate or may exceed that optimized rate. In the former case, a backlog of unsent data may build up for the input flow. It is an object of the scheme described herein with reference to FIGS. 3 and 4 to overcome, or at least mitigate, the disadvantage noted in the preceding paragraph. This and other objects are achieved at least in part by maintaining a backlog counter which keeps track of the backlog of unsent data for a given input flow to the MAC entity. The backlog is taken into account when determining an appropriate TFC for that input flow for a subsequent frame. According to a first aspect of this scheme, there is provided a method of allocating transmission resources at a Media Access Control (MAC) entity of a node of a Universal Mobile Telecommunications System (UMTS), the method including the following steps for each frame of an output data flow: computing for each input flow to the MAC entity a fair share of the available output bandwidth of the MAC entity; selecting a Transport Format Combination
(TFC) from a TFC Set (TFCS) on the basis of the bandwidth share computed for the input flows, where the TFC includes a Transport Format allocated to each input flow; and for each input flow, if the allocated TF results in a data transmission rate which is less than the determined fair distribution, adding the difference to a backlog counter for the input flow, where the value of the backlog counter(s) is taken into account when selecting a TFC for the subsequent frame of the output data flow. Embodiments of this scheme allow the TFC selection process for a subsequent frame to take into account any backlogs which exists for the input flows. The tendency is to adjust the selected TFC to reduce the backlogs. Such a backlog may exist due to the finite number of data transmission possibilities provided for by the TFCS. Nodes at which the method of this scheme may be employed include mobile stations (such as mobile telephones and communicator type devices) (or more generally UEs) and Radio Network Controllers (RNCs).
Preferably, the input flows to the MAC entity are provided by respective Radio Link Control (RLC) entities. Also preferably, each RLC entity provides buffering for the associated data flow. Also preferably, the step of computing a fair share of resources for an input flow is carried out by a Radio Resource Control (RRC) entity. Also preferably, the step of computing a fair share of resources for an input flow includes the step of determining the weighting given to that flow as a fraction of the sum of the weights given to all of the input flows. The fair share may then be determined by multiplying the total output bandwidth by the determined fraction.
Also preferably, this step may involve using the Generalised Processor Sharing (GPS) mechanism. The weighting for a data flow may be defined by one or more Radio Access Bearer (RAB) parameters allocated to a RAB by the UMTS network, where the RAB is associated with each MAC input flow. Also preferably, in the event that the backlog counter for a given input flow has a positive value, the method further includes the step of adding the value of the backlog counter to the computed fair share for that flow and selecting a TFC on the basis of the resulting sums for all of the input flows.
In certain embodiments of the scheme described herein with reference to FIGS. 3 and 4, where, for a given input flow, the allocated TF results in a data transmission rate that is more than the determined fair distribution, the difference may be subtracted frora the backlog counter for the input flow. According to a second aspect of this scheme, there is provided a node of a Universal Mobile Telecommunications System (UMTS), the node including: a Media Access Control (MAC) entity for receiving a plurality of input data flows; first processor means for computing for each input flow to the MAC entity a fair share of the available output bandwidth of the MAC entity and for selecting a Transport Format Combination (TFC), from a TFC Set (TFCS), on the basis of the bandwidth share computed for the input flows, where the TFC includes a Transport Format allocated to each input flow; second processor means for adding to a backlog counter associated with each input flow the difference between the data transmission rate for the flow resulting from the selected TFC and the determined fair share, if the data transmission rate is less than the determined fair share, where the first processor means is arranged to take into account the value of the backlog counters when selecting a TFC for the subsequent frame of the output data flow. Preferably, the first and second processor means are provided by a Radio Resource Control (RRC) entity.
As is described herein with reference to FIG. 3, a simplified UMTS layer 2 includes one Radio Resource Control (RRC) entity, a Medium Access Control (MAC) entity for each mobile station, and a Radio Link Control (RLC) entity for each Radio Access Bearer (RAB). The MAC entity performs scheduling of outgoing data packets, while the RLC entities provide buffers for respective input flows. The RRC entity sets a limit on the maximum amount of data that can be transmitted from each flow by assigning a set of allowed Transport Format Combinations (TFC) to each MAC (referred to as a TFC Set or TFCS), but each MAC must independently decide how much data is transmitted from each flow by choosing the best available Transport Format Combination (TFC) from the TFCS.
With reference now to FIG. 4, an exemplary method in flowchart form for allocating bandwidth resources to data flow streams between entities in the exemplary second layer architecture of FIG. 3 is illustrated generally at 400. The flowchart 400 is a flow diagram of a method of allocating bandwidth resources to, for example, the input flow streams of a MAC entity of the layer 2 of FIG 3. Generally, an exemplary method in accordance with the flowchart 400 may follow the following steps. First, input flows are received at RLCs and the data is buffered (step 405). Information on buffer fill levels is passed to the MAC entity (step 410). After the information on buffer fill levels is passed, the fair MAC bandwidth share for each input flow is computed (step 415). The computed fair share of each is then adjusted by adding the contents of an associated backlog counter to the respective computed fair share (step
420). Once the computed fair shares have been adjusted, a TFC is selected from the TFC set to most closely match the adjusted fair shares (step 425). The RLC is next instructed to deliver packets to the MAC entity according to the selected TFC (step 430). The MAC entity may also schedule packets in accordance with the selected TFC (step 435). After packet scheduling, the traffic channels may be transported on the physical channel(s) (step 440). Once packet traffic has been transported, the backlog counters should be updated (step 445). The process may continue (via arrow 450) when new input flows are received at the RLCs, which buffer the data (at step 405).
Furthermore, certain embodiment(s) of the scheme operate by calculating at the MAC entity, on a per Transmission Time Interval (TTI) basis, the optimal distribution of available bandwidth using the Generalised Processor Sharing (GPS) approach (See, e.g., the article by A. K. Parekh et al. referenced hereinabove.) and by keeping track of how far behind each flow is from the optimal bandwidth allocation using respective backlog counters. The available bandwidth is distributed to flows by using the standard GPS weights, which may be calculated by the RRC using the RAB parameters.
The method may first calculate the GPS distribution for the input flows and add to the GPS values the current respective backlogs. This is performed once for each 10ms TTI and results in a fair transmission rate for each flow. However, this rate may not be optimal as it may happen that there is not enough data to be sent in all buffers. In order to achieve optimal throughput as well as fairness, the fair GPS distribution is reduced so as to not exceed the current buffer fill level or the maximum allowed rate for any logical channel. A two step rating process is then carried out.
First, the set of fair rates computed for all of the input flows is compared against possible Transport Format Combinations (TFCs) in turn, with each TFC being scored according to how close it comes to sending out the optimal rate. In practice this is done by simply counting how much of the fair configuration a TFC fails to send (if a given TFC can send all packets at the fair rate, it is given a score of zero) and then considering only the TFCs which have the lowest scores. The closest match is chosen and used to determine the amount of packets sent from each queue. TFCs having an equal score are given a bonus score according to how many extra bits they can send
(this can be further weighted by a Quality of Service rating in order to ensure that the excess capacity goes to the bearer with the highest quality class). The final selection is based on a two-level scoring: the TFC with the lowest score is taken. If there are several TFCs with an equal score, the one with the highest bonus score is chosen. This ensures that the rate for each TTI is maximized. Fairness is achieved by checking that if the chosen TFC does not give all flows at least their determined fair rate, the missing bits are added to a backlog counter of the corresponding flow and the selection is repeated for the next TTI. If any of the flows has nothing to transmit, the backlog is set to zero. This algorithm can be shown to provide bandwidth (and, under certain assumptions, delay bounds) that is close to that of GPS. However, it remains fair and maintains isolation between all flows. It is also computationally simpler than Weighted Fair Queuing algorithms because it utilizes the fact that the MAC layer ran transmit on several transport channels at the same time. This results in optimal or close to optimal utilization of the radio interface in the UMTS radio link. The following pseudo-code is an outline of an exemplary algorithm for implementing the scheme described hereinabove with reference to FIGS. 3 and 4:
/* * GPS based TFC selection. Schedules packets by optimizing the throughput
* while still keeping the fairness (i.e. guaranteed rates).
int sched_gps() {
double weight, weight_sum; double score, bonus score; double min_score = HUGE_NUMBER; double max bonus score = 0;
int maxrate; int i ; int tfc, tfci, qf, rate, trch; int tfc_to_use;
double backlog[MAX_TRCH]; double gps_req[MAX_TRCH]; double gps_req_comp[MAX_TRCH];
/* First calculate the sum of the weights of all active queues */
weight_sum=0; for (trch = 0; trch < MAX TRCH; trch++) { if (queue_fill_state[trch] > 0) { weight_sum. += weight_vector[trch];
} }
/* Then calculate the fair distribution of available bandwidth
* using GPS. Modify the GPS scheduling reducing the rate if there
* is not enough data in the buffers or if the scheduled rate is * higher that the maximum rate for a given logical channel
*/
int gps_rate=0; for(trch = 0; trch < MAXJTRCH; trch++) {
if (queue_f ill_state [trch] == 0) { backlog[trch] = 0;
// here we calculate how many bits we should send on each channel // by GPS
gps_req[tτch] = 0; gps_req_comp[trch] = 0; if(queue_fill_state[trch) > 0) { weight = weight_vector[trch] ; gps_req[trch] = weight / weight_sum * maxrate + backlog[trch]; gps_req_comp[trch] = gps_req[trch]; if (gps_req_comp[tτch] > queue_fill_ state[trch]) { gps_req_comp[trch] = queue_fill_state[trch];
} if (gps_req_comp[trch] > trch_max_rate[trch]) { gps_req_comp[trch} = trch_max_rate[trch];
} }
/* Now we have our basis for selecting the TFC. Score all available
* TFCs by calculating how far they are from the modified GPS * result. If there are several TFCs that can send the whole GPS
* result (or are
* equally close) choose the one that maximises the throughput of
* highest QoS class. Note that the TFCIs are assumed to be in
* increasing order regarding the bandwidth usage */ for (tfci = o; tfci < MAX TPCI; tfci++) { rate = score = bonus_score = 0; for (trch = 0; trch < MAXJTRCH; trch+-+) {
int tbs = tfcs [trch] [tfci] [0]; int tbss = tfcs [trch] [tfci] [1]; rate += tbss;
if (tbss < gps_req_comp[trch]) { score += gps_req_comp [trch] - tbss;
} else { if (tbss <= queue_fill_state(trch]) { bonus_score += QoS_vector[trch]*(tbss - gp s_req_comp [trch] ) ; }
}
} if (score < min_score) { tfc_to_use = tfci; min_score = tfcScore; max_bonus_score = bonus score;
} if (score == min_score && bonus_score > max-bonus-score) { tfc_to_use = tfci; min_score = score; max_bonus_score = bonus_score;
} }
/* Now we have chosen the TFC to use. Update the backlog and output the * right TFCI
*/ for (trch = 0; trch < MAXJTRCH; trch++) {
tbss = tfcs [trch] [tfcToUse] [1]; if (tbss < queue_fill_state) { if (gps_req [trch] — gps_req_comp[trch]) { backlog [trch] = gpsReq [trch] - tbss; if (backlog[trch] < 0) backlog[trch] = 0; } else { backlog[trchGl] = 0; }
} return tfc_to_use;
}
Referring now to FIG. 5, another view of the exemplary second layer architecture of an exemplary next-generation system in accordance with the present invention is illustrated generally at 500. The exemplary second layer architecture 500 includes additional details regarding elements of, and interrelationships between, various aspects of the second layer architecture of, for example, the Universal Mobile Telecommunications System (UMTS). Each illustrated Radio Resource Control
(RRC) element 505 is connected to one or more Radio Link Controllers (RLCs) 510. Each illustrated RLC 510 includes at least one RLC Packet Data Unit (PDU) Buffer 515. The RLCs 510 are connected to respective common channel Medium Access Control (MAC-c) element(s)/layer 520 or dedicated channel Medium Access Control (MAC-d) element(s)/layer 525. The MAC-c, MAC-d, and RLC layers of UMTS may be located, for example, in a Radio Network Controller (RNC) 140 (of FIG. 1) of the UTRAN 130.
When a user (MAC-d 525) becomes active (e.g., new data arrives into an RLC buffer 515 that was previously empty), it sends a number of packets to MAC-c 520 (common channels) according to the user's current initial credit. The fill level of the
MAC-c PDU Buffer 530 will rise in an amount equal to the initial credit. Consequently, regardless of how the initial credit is specified, there is always a possibility that the MAC-c PDU Buffer 530 will be overloaded in situations when/where many new users become active at the same time. The number of simultaneous new users (e.g., subscribers) may be significant as a result of a system restart (or some other unexpected event). This significant number of subscribers may disturb the normal operation of the MAC-c node 520. If all of these new users are permitted to subscribe to this MAC-c node 520, then the resulting congestion will prevent everyone from using the MAC-c entity 520.
Presently, there is no mechanism in the UMTS standard for the MAC-c entity 520 to reject connections from MAC-d entities 525 because all MAC-d entities 525 are allowed to transmit at least their initial credit. The present invention advantageously avoids such congestion in the MAC-c node 520 by implementing and utilizing a predefined buffer fill level "Qcrej", which is described in greater detail hereinbelow with reference to FIG. 7. If the MAC-c PDU Buffer 530 reaches this predefined fill level, the MAC-c node 520 discards the incoming packets from new
MAC-d entities 525. The present invention provides an additional benefit inasmuch as once new MAC-d entities 525 have transmitted their initial credit, they do not transmit new packets until the MAC-c node 520 activates them by sending to them new credit. Continuing now with reference to FIG. 5, the UMTS layer 2 protocol structure
500 is involved in the communication between a UE 110 (of FIG. 1) (e.g., a mobile station, a mobile terminal, a mobile telephone, a wireless data communicator such as a PDA, a portable computer with a wireless link, etc.) and RNCs 140. As noted hereinabove, the RNCs are analogous to the Base Station Controllers (BSCs) of existing GSM mobile telecommunications networks, so they communicate with UEs
110 via Node Bs 150.
Referring now to FIG. 6, yet another view of the exemplary second layer architecture of an exemplary next-generation system in accordance with the present invention is illustrated generally at 600. The exemplary second layer architecture 600 may be considered as a subset of the exemplary second layer architecture 500 where the focus is on one common channel. The result for the exemplary second layer architecture 600 is a typical star configuration with a number of RLC-d buffers 515 transmitting data towards one MAC-c buffer 530. The data flow between the RLC-d buffers 515 and the MAC-c buffer 530 is controlled by a flow control function/module 605. Continuing now with FIGS. 5 and 6, the layer 2 structures 500 and 600 include a set of Radio Bearers (RBs) 535 that make available radio resources (and services) to user applications. (See, also, FIG. 3 for an illustration and related text for a description of the interrelationship between/among the various layers and channels of UMTS.) For each UE, there may be one or more RBs 535. Data flows, in the form of packets (or more generally segments), from the RBs 535 are passed to respective RLC entities 510, which buffer the received data segments, among other tasks. There is preferably one RLC entity 510 for each RB 535. In the RLC layer 510, RBs 535 are mapped onto respective logical channels. A MAC entity receives data transmitted in the logical channels and further maps logical channels onto a set of transport channels.
Transport channels are further mapped to a single physical channel that has a total bandwidth (e.g., < 2 Mbits/sec) allocated to it by the network. Depending on whether a physical channel is used exclusively by one UE or is shared among many UEs, the physical channel is referred to as either a "dedicated channel" or a "common channel", respectively. In this description, common transport channels may be considered as Forward Access CHannel (FACH) transport channels. A MAC entity connected to a dedicated channel (DCH) is known as "MAC-d" ; there is preferably one
MAC-d entity for each UE. A MAC entity connected to a common channel is known as "MAC-c"; there is preferably one MAC-c entity for each cell.
When the dedicated channels of a UE are switched on common transport channels, the RRC-d 505 sends a Common Transport Channel Resources Request message to the RRC-c 505. The RRC-c 505 responds with a Common Transport
Channel Resources Response message. The Common Transport Channel Resources Response message includes a list of provided common channel characteristics, including: channel priorities, Initial credits, and data frame sizes. Consequently, all dedicated logical channels of different UEs with the same mapping result are routed to the same common channel. In accordance with certain principles of the present invention, the potential overloading of the common channel (e.g., the MAC-c PDU Buffer 530) may be avoided by establishing an extra MAC-c PDU Buffer 530 (fill level) threshold. The exceeding of this buffer fill level threshold may cause the rejection of all new users (e.g., the discarding of the data of new users). In other words, when a common channel buffer data rejection threshold is exceeded, all new user packets may be dropped and their initial credits may be set to zero. These principles may be implemented in, for example, an RNC node 140 (of FIG. 1) of a UTRAN 130, etc. Referring now to FIG. 7, an exemplary buffer for an entity of an exemplary next-generation system in accordance with the present invention is illustrated generally at 700. The exemplary buffer 700 corresponds to, for example, a MAC-c PDU Buffer 530 (of FIGS. 5 and 6). It should be noted that various levels are defined to the left of the MAC-c PDU Buffer 530 and that these levels, at least in part, demarcate various zones as indicated to the right of the MAC-c PDU Buffer 530. Each zone delineates the relevant credit situation given the fill level of the MAC-c PDU Buffer 530. The exemplary buffer 700 includes a "Qcmin" 705 level and a "Qcmax" 710 level. The "Qc" 715 level reflects the current fill level of the exemplary buffer 700. A "Qcopt" 720 level stands for the, e.g., MAC-c buffer 530 optimum level with regard to delay and throughput requirements. The flow control function 605 (of FIG. 6) tries to keep that level (i.e., tries to keep Qc 715 = Qcopt 720) using feedback information received from MAC-d entities 525. The buffer available space, or "Qcdiff ' 725, is shared between users so that each user is allotted a certain number of credits. In other words, new credits may be calculated according to the Qcdiff 725 value and the RLC-d 510 buffer fill level. The Qcdiff 725 may be defined to equal Qcopt 720 - Qc 715 (not shown in FIG. 7) in this instance.
If, however, the delay requirements are of lesser importance, then the number of control messages may be decreased by introducing the Qcmax 710 threshold level. In this instance, Qcdiff 725 = Qcmax 710 - Qc 715, and no new credits are granted when the buffer fill level Qc 715 falls between Qcopt 720 and Qcmax 710. The level(s) below Qcmin 705 may optionally be used to set credits equal to 'unlimited', which implies that an unlimited number of packets from an RLC buffer 515 may be transferred without any control signals. When the buffer level rises above Qcmax 710 but is still below Qcrej 730, no new credits are granted except for initial credits. If the credits were previously set to 'unlimited', then they are cleared by the sending of a 'zero' credits to appropriate MAC-d entities 525. When a user becomes active (e.g. , new data arrives into an RLC buffer 515 that was previously empty), the corresponding MAC-d entity sends a number of packets to the MAC-c entity according to the initial credit. The MAC-c buffer 530 fill level rises in accordance with this initial credit. If 'n' new users become active before the next Transmission Time Interval (TTI) (when more data may be moved out from the MAC-c buffer 530), then the MAC-c buffer 530 fill level Qc 715 increases by: n*Initial_credits*Packet_size . Consequently, regardless of how the initial credit is specified, there is always a possibility to overload the MAC-c buffer 530 in situation(s) when/where many new users become active at approximately the same time. This potentially causes blockage of the common channel for all users for a certain time (i.e., no new credits are granted until the MAC-c buffer 530 fill level 715 drops below Qcopt 720). A channel switching function (not specifically shown) reacts in this situation, but a problem with relying on such a channel switching function is that all channels are stopped and it is difficult to pick the correct ones. In accordance with certain principles of the present invention, to avoid these kinds of overload situations, an additional threshold value for the MAC-c buffer 530 may be implemented. This additional threshold is termed "Qcrej" 730 in FIG. 7. The exceeding of this threshold value Qcrej 730 precipitates the rejection of all new users that try to gain access. The packets (or, more generally, the segments) of these users are discarded, and their associated credits are set to zero. As a result, the channel switching function can identify and switch them towards appropriate dedicated transport channels. These principle(s) are particularly applicable to channel types such as ARQ and other best effort channels.
The threshold level Qcrej 730 may be specified as follows:
Qcrej = Qcmax + Re * Tad where Tad represents the maximum allowed additional delay, and Re represents the expected mean transmission rate of the common channel (e.g., the rate at which the packets are emptied from the MAC-c buffer 530).
Referring now to FIG. 8, an exemplary method in flowchart form for modulating a fill level of the exemplary buffer of FIG. 7 in accordance with the present invention is illustrated generally at 800. The flowchart 800 illustrates steps involved in certain embodiments of the present invention for ensuring that multiple new users do not overload a telecommunications network with too many data segments from their initial credits by rejecting such new users in certain situation(s). A MAC-d entity determines that a MAC-d entity buffer holds new data for transmission (step 805). The MAC-d entity transmits a number of segments that equate to the value prescribed for initial credit (step 810). The MAC-c entity receives the segments transmitted by the MAC-d entity (step 815). The MAC-c entity may either hold these new segments in another memory (e.g., a cache memory (not specifically shown) for the MAC-c buffer 530 (of FIG. 7)) or initially store them directly into the MAC-c buffer.
After receiving the new segments, the MAC-c entity inspects the MAC-c buffer (step 820) (e.g., the MAC-c buffer fill level is determined). It is next ascertained whether or not the fill level of the MAC-c buffer is greater than a predetermined rejection buffer fill level threshold (step 825). If not, then the MAC-c entity either accepts or keeps (depending on whether the new data segments were initially stored in a cache memory or directly in the MAC-c buffer, respectively) the data segments either into or at the MAC-c buffer of the MAC-c entity (step 830). If, on the other hand, the fill level of the MAC-c buffer is greater than the predetermined rejection buffer fill level threshold (at step 825), then the MAC-c entity discards the received data segments (either from the cache memory or from the MAC-c buffer) (step 835). It should be understood that other equality and/or inequality comparisons (e.g., a greater than or equal to (>=), etc.) may alternatively be used. Additionally, the MAC-c entity may optionally send a message to the MAC-d entity to set the initial credit to zero so as to ensure that no new data segments are sent from that MAC-d entity to the MAC-c entity (optional step 840). Although preferred embodiment(s) of the methods, systems, and arrangements of the present invention have been illustrated in the accompanying Drawings and described in the foregoing Detailed Description, it will be understood that the present invention is not limited to the embodiment(s) disclosed, but is capable of numerous rearrangements, modifications, and substitutions without departing from the spirit and scope of the present invention as set forth and defined by the following claims.

Claims

WHAT IS CLAIMED IS:
1. A method in a wireless communications system for providing flow control, comprising the steps of: providing a receiver entity, said receiver entity having a receiver buffer with a fill level; providing at least one transmitter entity, said at least one transmitter entity transmitting when said at least one transmitter entity has credit from said receiver entity; determining whether said fill level of said receiver buffer has reached a predetermined level; and if so, discarding packets received at said receiver entity from said at least one transmitter entity.
2. The method according to claim 1, wherein said receiver entity comprises a Medium Access Control (MAC)-c entity, said at least one transmitter entity comprises a MAC-d entity, and said wireless communications system comprises a Universal Mobile Telecommunications System (UMTS).
3. The method according to claim 1, wherein said step of discarding is performed with respect to said at least one transmitter entity if and only if said at least one transmitter entity is a new entity.
4. The method according to claim 1, further comprising the steps of: transmitting, by said receiver entity, information equivalent to a zero credit to said at least one transmitter entity; and waiting, by said at least one transmitter entity, to transmit any additional information until receiving new credit from said receiver entity.
5. The method according to claim 4, wherein said at least one transmitter entity comprises a plurality of transmitter entities, and wherein said step of transmitting, by said receiver entity, information equivalent to a zero credit to said at least one transmitter entity comprises the step of transmitting, by said receiver entity, information equivalent to a zero credit to said plurality of transmitter entities, each of said plurality of transmitter entities comprising an old transmitter entity.
6. The method according to claim 1 , wherein said predetermined level is a function of a maximum fill level of said receiver buffer, a maximum permissible additional delay, and an expected mean transmission rate of a common channel.
7. The method according to claim 6, wherein said maximum guaranteed transmission rate of a common channel comprises a rate at which packets are emptied from said receiver buffer of said receiver entity.
8. A method in a wireless communications system for providing flow control, comprising the steps of: providing a receiver entity, said receiver entity having a receiver buffer with a fill level; providing a plurality of transmitter entities, each one of said plurality of transmitter entities transmitting when said each one of said plurality of transmitter entities has been given credit from said receiver entity; determining whether said fill level of said receiver buffer has reached a predetermined level; and if so, rejecting packets received at said receiver entity from said each one of said plurality of transmitter entities if said each one comprises a new transmitter entity.
9. The method according to claim 8 , wherein said step of rej ecting packets comprises the steps of: discarding packets received at said receiver entity from each new transmitter entity of said plurality of transmitter entities; and setting a credits value of each old transmitter entity of said plurality of transmitter entities to zero.
10. The method according to claim 8, wherein a transmitter entity of said plurality of transmitter entities is determined to be a new transmitter entity if a buffer associated with said transmitter entity gains new data after being previously empty.
11. A method for preventing overload in a wireless communications system by rejecting new users, comprising the steps of: determining, by a first entity, that said first entity has at least one new segment and initial credit; transmitting, by said first entity, one or more segments in an amount equivalent to said initial credit, said one or more segments including said at least one new segment; receiving, by a second entity, said one or more segments; ascertaining, by said second entity, a buffer fill level of a buffer of said second entity; determining, by said second entity, whether said buffer fill level exceeds a predetermined threshold level; and if so, discarding, by said second entity, said one or more segments.
12. The method according to claim 11 , wherein said first entity comprises a Medium Access Control (MAC)-d entity, said second entity comprises a MAC-c entity, and said wireless communications system comprises a Universal Mobile Telecommunications System (UMTS).
13. The method according to claim 11 , wherein said first entity corresponds to a new user, and further comprising the steps of: transmitting, by said second entity, information indicating a zero credit to a third entity, said third entity corresponding to an old user; and waiting, by said first entity and said third entity, to transmit any additional segments until after receiving new credit from said second entity.
14. The method according to claim 11, further comprising the step of: determining, by said second entity, said predetermined threshold level responsive to a maximum fill level of said buffer of said second entity, a desired maximum additional delay, and a maximum guaranteed transmission rate of a common channel.
15. The method according to claim 14, wherein said maximum guaranteed transmission rate of a common channel comprises a rate at which segments are emptied from said buffer of said second entity.
16. The method according to claim 11, further comprising the step of: if said buffer fill level does not exceed said predetermined threshold level, accepting or keeping said one or more segments into or at, respectively, said buffer of said second entity.
17. An arrangement for preventing overload in a wireless communications system by rejecting new users, comprising: a transmitting node, said transmitting node having at least one new segment and initial credit, said transmitting node for transmitting one or more segments in an amount equivalent to said initial credit, said one or more segments including said at least one new segment; and a receiving node, said receiving node including a buffer having a buffer fill level, said receiving node for receiving said one or more segments, said receiving node adapted to ascertain a plurality of levels associated with said buffer, said plurality of levels including said buffer fill level and a buffer rejection threshold level, said receiving node configured to discard said one or more segments if said buffer fill level exceeds said buffer rejection threshold level.
18. The arrangement according to claim 17, wherein said transmitting node comprises at least a portion of a user equipment, said receiving node comprises at least a portion of a radio network controller, and said wireless communications system operates in accordance with a Universal Mobile Telecommunications System (UMTS) standard.
19. The arrangement according to claim 17, wherein said transmitting node comprises a Medium Access Control (MAC)-d entity, and said receiving node comprises a MAC-c entity.
20. The arrangement according to claim 17, wherein said transmitting node comprises a new entity with said initial credit.
21. The arrangement according to claim 17, wherein: said transmitting node corresponds to a new user; said receiving node is further configured to transmit information indicating a zero credit to another transmitting node, said another transmitting node corresponding to an old user; and said transmitting node and said another transmitting node are configured to wait to transmit any additional segments until after receiving new credit from said receiving node.
22. The arrangement according to claim 17, wherein said receiving node is further configured to accept or keep said one or more segments into or at, respectively, said buffer if said buffer fill level does not exceed said buffer rejection threshold level.
23. The arrangement according to claim 17, wherein said receiving node is further adapted to ascertain said buffer rejection threshold level responsive to a maximum fill level of said buffer of said receiving node, a desired maximum additional delay, and an expected mean transmission rate of a common channel.
24. The arrangement according to claim 23, wherein said maximum guaranteed transmission rate of a common channel comprises a rate at which segments are emptied from said buffer of said receiving node.
25. A system for preventing overload in a wireless communications system by rejecting new users, comprising: means for determining, by a first entity, that said first entity has at least one new segment and initial credit; means for transmitting, by said first entity, one or more segments in an amount equivalent to said initial credit, said one or more segments including said at least one new segment; means for receiving, by a second entity, said one or more segments; means for ascertaining, by said second entity, a buffer fill level of a buffer of said second entity; means for determining, by said second entity, whether said buffer fill level exceeds a predetermined threshold level; and means for discarding, by said second entity, said one or more segments if said buffer fill level does exceed said predetermined threshold level.
PCT/SE2001/000408 2000-02-25 2001-02-23 Overload handling in a communications system WO2001063857A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP01908562A EP1264447A1 (en) 2000-02-25 2001-02-23 Overload handling in a communications system
AU2001236304A AU2001236304A1 (en) 2000-02-25 2001-02-23 Overload handling in a communications system

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US18500300P 2000-02-25 2000-02-25
US60/185,003 2000-02-25
US69867200A 2000-10-27 2000-10-27
US09/698,672 2000-10-27

Publications (1)

Publication Number Publication Date
WO2001063857A1 true WO2001063857A1 (en) 2001-08-30

Family

ID=26880685

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/SE2001/000408 WO2001063857A1 (en) 2000-02-25 2001-02-23 Overload handling in a communications system

Country Status (3)

Country Link
EP (1) EP1264447A1 (en)
AU (1) AU2001236304A1 (en)
WO (1) WO2001063857A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005022841A1 (en) * 2003-08-22 2005-03-10 Siemens Aktiengesellschaft Method for controlling the processing of data of at least one logical transmission channel, associated radio communication device and network component
WO2005022840A1 (en) * 2003-08-22 2005-03-10 Siemens Aktiengesellschaft Method for adapting the data processing priority of several logical transmission channels, associated communication terminal and radio network
EP1770918A1 (en) * 2005-09-30 2007-04-04 Evolium Sas Data flow control on the interfaces of a radio access network
EP1878147A2 (en) * 2005-04-29 2008-01-16 Interdigital Technology Corporation Mac multiplexing and tfc selection procedure for enhanced uplink
WO2008041032A2 (en) 2006-10-04 2008-04-10 Siemens Aktiengesellschaft Packet scheduling
US7675942B2 (en) 2004-06-14 2010-03-09 Lg Electronics Inc. Reducing overheads of a protocol data unit in a wireless communication system
US7701922B2 (en) 2005-04-29 2010-04-20 Interdigital Technology Corporation MAC multiplexing and TFC selection procedure for enhanced uplink
US8000291B2 (en) 2006-07-06 2011-08-16 Interdigital Technology Corporation Wireless communication method of selecting an enhanced uplink transport format combination by setting a scheduling grant payload to the highest payload that can be transmitted
WO2013167343A1 (en) * 2012-05-11 2013-11-14 Nokia Siemens Networks Oy Delay equalization for fluctuating inter-site multiflow links

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998038770A1 (en) * 1997-02-25 1998-09-03 Nokia Telecommunications Oy Flow control between processors in a distributed multiprocessor enviroment
US5867480A (en) * 1996-09-12 1999-02-02 Cabletron Systems, Inc. Method and apparatus for controlling congestion in a network node
EP0912015A2 (en) * 1997-10-14 1999-04-28 Lucent Technologies Inc. Method for overload control in a multiple access system for communications networks
WO1999052307A1 (en) * 1998-04-03 1999-10-14 Telefonaktiebolaget Lm Ericsson (Publ) Flexible radio access and resource allocation in a universal mobile telephone system (umts)
US5968128A (en) * 1994-07-18 1999-10-19 Cabletron Systems, Inc. Traffic control system having distributed rate calculation and link by link flow control
WO1999066676A1 (en) * 1998-06-12 1999-12-23 Telefonaktiebolaget Lm Ericsson Admission control method and switching node for integrated services packet-switched networks
WO2000042792A1 (en) * 1999-01-15 2000-07-20 Nokia Networks Oy Flow control method in a telecommunications system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5968128A (en) * 1994-07-18 1999-10-19 Cabletron Systems, Inc. Traffic control system having distributed rate calculation and link by link flow control
US5867480A (en) * 1996-09-12 1999-02-02 Cabletron Systems, Inc. Method and apparatus for controlling congestion in a network node
WO1998038770A1 (en) * 1997-02-25 1998-09-03 Nokia Telecommunications Oy Flow control between processors in a distributed multiprocessor enviroment
EP0912015A2 (en) * 1997-10-14 1999-04-28 Lucent Technologies Inc. Method for overload control in a multiple access system for communications networks
WO1999052307A1 (en) * 1998-04-03 1999-10-14 Telefonaktiebolaget Lm Ericsson (Publ) Flexible radio access and resource allocation in a universal mobile telephone system (umts)
WO1999066676A1 (en) * 1998-06-12 1999-12-23 Telefonaktiebolaget Lm Ericsson Admission control method and switching node for integrated services packet-switched networks
WO2000042792A1 (en) * 1999-01-15 2000-07-20 Nokia Networks Oy Flow control method in a telecommunications system

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005022840A1 (en) * 2003-08-22 2005-03-10 Siemens Aktiengesellschaft Method for adapting the data processing priority of several logical transmission channels, associated communication terminal and radio network
WO2005022841A1 (en) * 2003-08-22 2005-03-10 Siemens Aktiengesellschaft Method for controlling the processing of data of at least one logical transmission channel, associated radio communication device and network component
US7675942B2 (en) 2004-06-14 2010-03-09 Lg Electronics Inc. Reducing overheads of a protocol data unit in a wireless communication system
CN103281791B (en) * 2005-04-29 2016-03-16 美商内数位科技公司 For carrying out multiplexing method and WTRU to the data strengthening dedicated channel (E-DCH)
CN103259627A (en) * 2005-04-29 2013-08-21 美商内数位科技公司 Method for transmitting data on enhanced uplink and WTRU
US10342033B2 (en) 2005-04-29 2019-07-02 Interdigital Technology Corporation MAC multiplexing and TFC selection procedure for enhanced uplink
EP3355537A1 (en) * 2005-04-29 2018-08-01 InterDigital Technology Corporation Mac multiplexing and tfc selection procedure for enhanced uplink
EP1878147A4 (en) * 2005-04-29 2010-01-06 Interdigital Tech Corp Mac multiplexing and tfc selection procedure for enhanced uplink
US10015813B2 (en) 2005-04-29 2018-07-03 Interdigital Technology Corporation MAC multiplexing and TFC selection procedure for enhanced uplink
US7701922B2 (en) 2005-04-29 2010-04-20 Interdigital Technology Corporation MAC multiplexing and TFC selection procedure for enhanced uplink
EP2184896A1 (en) * 2005-04-29 2010-05-12 Interdigital Technology Corporation MAC multiplexing and TFC selection procedure for enhanced uplink
US9426822B2 (en) 2005-04-29 2016-08-23 Interdigital Technology Corporation MAC multiplexing and TFC selection procedure for enhanced uplink
US8116292B2 (en) 2005-04-29 2012-02-14 Interdigital Technology Corporation MAC multiplexing and TFC selection procedure for enhanced uplink
EP2418812A1 (en) * 2005-04-29 2012-02-15 InterDigital Technology Corporation Mac multiplexing and tfc selection procedure for enhanced uplink
NO338314B1 (en) * 2005-04-29 2016-08-08 Interdigital Tech Corp MAC multiplexing and TFC selection procedure for improved uplink
EP3018873A1 (en) * 2005-04-29 2016-05-11 InterDigital Technology Corporation Mac multiplexing and tfc selection procedure for enhanced uplink
EP1878147A2 (en) * 2005-04-29 2008-01-16 Interdigital Technology Corporation Mac multiplexing and tfc selection procedure for enhanced uplink
US8553672B2 (en) 2005-04-29 2013-10-08 Interdigital Technology Corporation MAC multiplexing and TFC selection for enhanced uplink
KR101564486B1 (en) 2005-04-29 2015-10-29 인터디지탈 테크날러지 코포레이션 Mac multiplexing and tfc selection procedure for enhanced uplink
EP1770918A1 (en) * 2005-09-30 2007-04-04 Evolium Sas Data flow control on the interfaces of a radio access network
WO2007039551A1 (en) * 2005-09-30 2007-04-12 Alcatel Lucent Data flow control on the interfaces of a radio access network
US8243676B2 (en) 2006-07-06 2012-08-14 Nufront Mobile Communications Technology Co., Ltd. Wireless communication method of selecting an enhanced uplink transport format combination
US8000291B2 (en) 2006-07-06 2011-08-16 Interdigital Technology Corporation Wireless communication method of selecting an enhanced uplink transport format combination by setting a scheduling grant payload to the highest payload that can be transmitted
KR101432792B1 (en) * 2006-10-04 2014-08-21 지멘스 악티엔게젤샤프트 Packet scheduling
US8374084B2 (en) 2006-10-04 2013-02-12 Siemens Aktiengesellschaft Packet scheduling
WO2008041032A3 (en) * 2006-10-04 2008-06-26 Siemens Ag Packet scheduling
WO2008041032A2 (en) 2006-10-04 2008-04-10 Siemens Aktiengesellschaft Packet scheduling
WO2013167343A1 (en) * 2012-05-11 2013-11-14 Nokia Siemens Networks Oy Delay equalization for fluctuating inter-site multiflow links

Also Published As

Publication number Publication date
EP1264447A1 (en) 2002-12-11
AU2001236304A1 (en) 2001-09-03

Similar Documents

Publication Publication Date Title
US6850540B1 (en) Packet scheduling in a communications system
US6826193B1 (en) Data transmission in a telecommunications network
US7039013B2 (en) Packet flow control method and device
EP2080326B1 (en) System and method of load dependent rate control
EP1264446A1 (en) Flow control between transmitter and receiver entities in a communications system
US7031254B2 (en) Rate control system and method for a link within a wireless communications system
US6879561B1 (en) Method and system for wireless packet scheduling with per packet QoS support and link adaptation
AU2004307505B2 (en) Coordinated data flow control and buffer sharing in UMTS
JP3443340B2 (en) Method for granting a new connection based on priority of use in a multiple access system for a communication network
JP3435078B2 (en) Method for controlling access in a multiple access system for a communication network
WO2001063855A1 (en) Packet scheduling in umts using several calculated transfer rates
WO2004047379A2 (en) Method, system and computer program product for managing the transmission of information packets in a telecommunication network
CA2404523C (en) Transmitting packet data
EP1326463A1 (en) Method and apparatus for packet transmission scheduling by performing load control functionality
US20030139145A1 (en) Data transmitting method and apparatus for guaranteeing quality of service in a data communication system
EP2154837A1 (en) Method of reducing the congestion in the Iub interface in UTRAN networks according to user prioritization
WO2001063857A1 (en) Overload handling in a communications system
CN101335922B (en) Data pack communication method and its control device
JP2004080768A (en) Method of utilizing admission control algorithm in radio communication system
Nádas et al. Providing congestion control in the Iub Transport Network for HSDPA
JP2008502245A (en) Transmission control method, network element, base station, radio network control apparatus
US20240049043A1 (en) Prioritizing data packets in wireless communication network

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2001908562

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2001908562

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 2001908562

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase

Ref country code: JP