throbber
(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2007/0263528 A1
`
`(43) Pub. Date: NOV. 15, 2007
`Mukherjee
`
`US 20070263528A1
`
`(54) METHODS AND SYSTEMS FOR
`SCHEDULING OFDM FRAMES
`
`(75)
`
`Inventor:
`
`Biswaroop Mukherjee, Ottawa
`(CA)
`
`Correspondence Address:
`SMART & BIGGAR
`P.O. BOX 2999, STATION D
`900-55 METCALFE STREET
`OTTAWA, ON K1P5Y6
`
`(73) Assignee:
`
`NORTEL NETWORKS
`LIMITED
`
`(21) Appl. No.:
`
`11/540,571
`
`(22)
`
`Filed:
`
`Oct. 2, 2006
`
`Related US. Application Data
`
`(60) Provisional application No. 60/799,314, filed on May
`10, 2006.
`
`Publication Classification
`
`(51)
`
`Int. Cl.
`(2006.01)
`H04J 11/00
`(2006.01)
`H04L 12/56
`(52) use. ..................................... 370/208;370/395.4
`
`(57)
`
`ABSTRACT
`
`System and methods for scheduling OFDM frames are
`provided. Each packet is assigned to a frame bucket, this
`amounting to a temporary decision of when to transmit the
`packet. Each packet is marked with one or more metrics. The
`metrics are used to sort packets and make scheduling
`decisions. Packets are analyzed to determine their suitability
`for MIMO transmission.
`
`Frame30
`
`\‘
`
`
`
`M83
`14
`
`Network
`
`
`
`M84
`26
`
`SAMSUNG 1014
`
`SAMSUNG 1014
`
`1
`
`

`

`Patent Application Publication
`
`Nov. 15, 2007 Sheet 1 0f 8
`
`US 2007/0263528 A1
`
`9102
`
` up]
`
`0195
`
`42::
`
`M81
`
`M82
`
`M33
`
`M34
`26
`
`FIG. 1
`
`2
`
`

`

`Patent Application Publication
`
`Nov. 15, 2007 Sheet 2 0f 8
`
`US 2007/0263528 A1
`
`2—1
`
`Receive incoming packet
`
`2—2
`
`
`Classify each packet
`according to connection
`
`
`
`
`2-3
`
`Mark packet with one or
`more scheduling metrics
`
`FIG. 2
`
`-Earliest time for departure
`—Deadline for departure
`—Userloperator priority
`—Link connection
`(eg. RSSI, CINR, Clli
`
`—Power save mode
`considerations
`—Frame iitability.
`
`3
`
`

`

`Patent Application Publication
`
`Nov. 15, 2007 Sheet 3 0f 8
`
`US 2007/0263528 A1
`
`Classifier
`& Marker
`
`
`
`Frame
`Buckets
`
`
`
`
`
`Frame bucket
`wide parameter
`indexes
`
`
`
`wide parameter
`Indexes
`
`All packets wide
`parameter indexes
`
`4
`
`

`

`Patent Application Publication
`
`Nov. 15, 2007 Sheet 4 0f 8
`
`US 2007/0263528 A1
`
`Traffic Descriptor
`
`120
`
`
` Pointer to next packet in
`
`Location of
`Packet
`framezflucket
`
`22
`
`
`
`
`FIG. 4A
`
`Frame Bucket 1
`
`Last Frame Bucket
`
`
`
`FIG. 4B
`
`
`
`FIG. 4C
`
`5
`
`

`

`Patent Application Publication
`
`Nov. 15, 2007 Sheet 5 0f 8
`
`US 2007/0263528 A1
`
`188
`
`FIG. 4D
`
`186
`
`FIG. 4E
`
`6
`
`

`

`//__J/
`/
`
`=
`
`M” ZEDJIIIIEI1IIIIIIIM4m3IIIIIIIIII
`
`PriorityofI am4IIIIIIIM1mm2IIIIIIIIII
`
`
`
`7/////////
`M“
`
`FIG.5‘
`
`
`
`II
`1:
`-
`>.
`E
`-
`E‘.
`*5
`-
`E
`>
`=
`‘5
`'5
`-
`é /°=_le
`
`8/
`202
`
`7
`
`

`

`Patent Application Publication
`
`Nov. 15, 2007 Sheet 7 0f 8
`
`US 2007/0263528 A1
`
`6-1
`
`Find connection ID to get an index into the table
`of all the properties of this connection (like 008
`parameters);
`
`
`
`
`
`
`
`Using the connection parameters calculate STATIC
`and COMPULSARY metrics (e.g. earliest time of
`
`departure, deadline time). For the remaining
`metrics mark with default values;
`
`6-2
`
`
`
`For each metric place add the packet descriptor to 6—3
`the corresponding indexes or groups (e.g. a frame
`
`
`bucket index based on earliest time of departure);
`
`Repeat from Step 6-] for the next arriving
`,
`packet
`
`6—4
`
`FIG. 6
`
`8
`
`

`

`Patent Application Publication
`
`Nov. 15, 2007 Sheet 8 0f 8
`
`US 2007/0263528 A1
`
`
`Using the already created indexs leg. earliest departure time
`index) and groups, get a set of packets that may be sent in the
`
`current frame;
`
`
`
`
`
`
` 7-1
`
`Calculate compulsory dynamic indexes for packets in the group
`above (e.g. link condition index, which in this case would be frame
`
`bucket wide);
`
`
`
`Read existing conditions (like current system load, percent of
`frame filled etc.) and pick appropriate objective function;
`
`Calculate the rank of the packets based on the objective function;
`
`7_2
`
`7-3
`
`7-4
`
`For the next highest ranked packet, convert the packet into a
`burst and find the most appropriate place for the same;
`
`7—5
`
` If collaborative MlMU is possible regions of the frame with
`existing bursts as well as empty regions are checked to find best 7—6
`
`placement. Using the link condition index, existing bursts that are
`c ec e ;
`likely to have an orthogonal cganfleljto the burst being placed are
`
`
`
`
`
`If no suitable MIMO pair is found or if collaborative MIMO is not 7_7
`applicable: the burst is placed in a part of the frame that is
`
`currently unoccupied;
`
`
`Repeat until next packet doesn't fit because either there are no
`more packets or frame is full. Save result;
`
`7—8
`
`
`
`
`If frame is full- for all packets in the frame calculate non—
`compulsory metrics as well as intraframe-indexes (like sleep
`index) that allow better packing of frame, if not available already;
`
`
`
`
`7-9
`
`Perform multipass fitter using until there is enough room for a
`new packet. If so repeat from Step 7-3
`
`7-10
`
`FIG. 7
`
`CHIE-
`
`9
`
`

`

`US 2007/0263528 A1
`
`Nov. 15, 2007
`
`METHODS AND SYSTEMS FOR
`SCHEDULING OFDM FRAMES
`
`RELATED APPLICATION
`
`[0001] This application claims the benefit of prior US.
`Provisional Application No. 60/799,314 filed May 10, 2006.
`
`FIELD OF THE INVENTION
`
`[0002] The invention relates to methods and systems for
`scheduling OFDM frames.
`
`BACKGROUND OF THE INVENTION
`
`[0003] Many schedulers have been defined that are suit-
`able for scheduling sequential transmission of resources on
`a single transmission medium that has common channel
`conditions. These schedulers are not, in general, applicable
`to OFDMA scheduling in which there is a two dimensional
`resource (time and frequency) for use in transmitting to
`multiple users that will experience different channel condi-
`tions at different times, and for different frequencies within
`the available frequency resource.
`
`SUMMARY OF THE INVENTION
`
`[0004] According to one broad aspect, the invention pro-
`vides a method of scheduling OFDM frames, each frame
`comprising at least one OFDM symbol, each OFDM symbol
`comprising a plurality of subcarriers, the method compris-
`ing: for each packet to be scheduled assigning the packet a
`plurality of scheduling metrics; producing at
`least one
`ordering of packets using the metrics; using the at least one
`ordering to select a set of packets to send in a current frame;
`for each OFDM frame, constructing the OFDM frame from
`packets assigned to the frame by placing each packet in a
`respective rectangular
`time-frequency burst within the
`OFDM frame, at least some of the OFDM frames including
`packets for multiple users; transmitting the OFDM frames
`using at least one transmit antenna.
`[0005]
`In some embodiments, the at least one ordering
`comprises: at least one compulsory ordering that is always
`performed; at least one ordering that is performed only some
`of the time.
`
`In some embodiments, the method further com-
`[0006]
`prises: performing at least one partial ordering of the packets
`that treats groups of packets equally in the partial ordering.
`[0007]
`In some embodiments, the method further com-
`prises: determining groups of packets that are more optimal
`than others for transmission in a single frame, and taking
`into account such groups in making scheduling decisions.
`[0008]
`In some embodiments, the method further com-
`prises:
`temporarily assigning each packet to a particular
`frame using a deadline for departure for the packet.
`[0009]
`In some embodiments, the method further com-
`prises: where all packets assigned to a frame to be trans-
`mitted fit in the frame, selecting at least one packet from a
`later frame bucket using one or more of the orderings.
`[0010]
`In some embodiments, the metrics include at least
`one metric selected from a group comprising: earliest time
`of departure, deadline for departure, user/operator priority,
`link condition, power save mode considerations,
`frame
`fitting information.
`[0011]
`In some embodiments, the geometrical restriction
`comprise a list of possible rectangular resource sizes that can
`be used to transmit the packet.
`
`In some embodiments, the method further com-
`[0012]
`prises updating the geographical restriction if there is a
`change in robustness of data transmission to be used for the
`packet.
`the indexes comprise at
`In some embodiments,
`[0013]
`least one: head of line ordering that defines an ordering of a
`most recent packet for each CID; frame bucket wide order-
`ing that defines an ordering of all packets temporarily
`assigned to a given frame; all packets wide ordering that
`defines an ordering of all packets.
`[0014]
`In some embodiments, the method further com-
`prises: for at least some future frames, allocating resources
`for the retransmission of packets that may require multiple
`transmissions.
`
`the amount of resources
`In some embodiments,
`[0015]
`allocated for future transmissions is a function of a statistical
`
`likelihood of retransmission being required.
`[0016]
`In some embodiments, the method further com-
`prises: for a frame to be transmitted, performing multiple
`passes to find improved frame packing of bursts in the
`frame; stopping performing the passes at a time that ensures
`the best frame as of that
`time can be constructed and
`transmitted on time.
`
`In some embodiments, the method further com-
`[0017]
`prises allocating at least some bursts for simultaneous trans-
`mission using MIMO.
`least some
`[0018]
`In some embodiments, allocating at
`bursts for simultaneous transmission using MIMO is per-
`formed for UL collaborative MIMO.
`
`least some
`In some embodiments, allocating at
`[0019]
`bursts for simultaneous transmission using MIMO com-
`prises: determining sets of bursts that are appropriate for
`simultaneous transmission using MIMO.
`[0020]
`In some embodiments, determining sets of bursts
`that are appropriate for simultaneous transmission using
`MIMO comprises: determining sets of wireless stations with
`sufficient orthogonality of channel conditions for MIMO
`and, for such determined sets of wireless stations, determin-
`ing a number of symbols that can be saved by using MIMO
`as opposed to not using MIMO for sets of bursts.
`[0021]
`In some embodiments, the method further com-
`prises: selecting the sets that maximize the savings for UL
`collaborative MIMO.
`
`In some embodiments, the method further com-
`[0022]
`prises: altering modulation and error coding to be more
`robust if there is room in the frame; altering modulation and
`error coding to be less robust if there is less room in the
`frame.
`
`In some embodiments, the method further com-
`[0023]
`prises: receiving packets for transmission; performing the
`scheduling for the packets received for transmission.
`[0024]
`In some embodiments, the method further com-
`prises: receiving requests for uplink transmission resources;
`performing scheduling for the requests for uplink transmis-
`sion resources.
`
`[0025] According to another broad aspect, the invention
`provides an OFDM transmitter for transmitting OFDM
`frames, each frame comprising at least one OFDM symbol,
`each OFDM symbol comprising a plurality of subcarriers,
`the scheduler comprising: at least one transmit antenna; a
`classifier and marker that assigns each packet to be sched-
`uled a plurality of metrics; a multi-parameter frame opti-
`mizer adapted to: a) produce at least one ordering of packets
`using the metrics; b) use the at least one ordering to select
`
`10
`
`10
`
`

`

`US 2007/0263528 A1
`
`Nov. 15, 2007
`
`a set of packets to send in a current frame over the at least
`one transmit antenna, at least some frames containing pack-
`ets of multiple users.
`[0026]
`In some embodiments, a base station comprises:
`the OFDM transmitter as summarized above.
`
`In some embodiments, said at least one transmit
`[0027]
`antenna comprises at least two transmit antennas.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`[0028] Embodiments of the invention will now be
`described with reference to the attached drawings in which:
`[0029]
`FIG. 1 is a block diagram of an OFDM commu-
`nications system;
`[0030]
`FIG. 2 is a flowchart of a method of classifying and
`marking packets in accordance with an embodiment of the
`invention;
`[0031]
`FIG. 3 is a schematic diagram of a scheduler
`provided by an embodiment of the invention;
`[0032]
`FIGS. 4A through 4E are data structure diagrams
`for various data structures used to perform traflic classifi-
`cation and sorting;
`[0033]
`FIG. 5 is a schematic diagram showing reprioriti-
`zation of indexes as a frame fills up;
`[0034]
`FIG. 6 is a flowchart of a method of processing
`packets prior to scheduling; and
`[0035]
`FIG. 7 is a flowchart of a method of scheduling
`packets processed using the method of FIG. 6.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENTS
`
`FIG. 1 is a simplified block diagram of an example
`[0036]
`of an OFDM communications system. In some embodi-
`ments, this might be compliant with one or more iterations
`of one IEEE 802.16 e,
`the mobile wireless broadband
`standard established by the IEEE and utilized by the
`WiMAX forum. Shown is a base station 10 having a
`scheduler 12. The base station has a set of antennas 14,16.
`In the illustrated example, two antennas are shown; more
`generally, for SISO applications, there is one antenna, and
`for MIMO applications, there is more than one antenna. The
`BTS 10 is shown connected to a network 18. The network
`
`18 can be considered to include any network from which/
`over which packets 19 are delivered to/from the BTS 10.
`Also shown is a plurality of mobile stations M81 20, M82
`22, M83 24, M84 26. Given that these stations are mobile,
`the set of mobile stations that will be in the coverage area of
`BTS 10 will change over time and will vary in number.
`Alternatively, nomadic or fixed wireless devices may be
`used. Each mobile station 20,22,24,26 communicates with
`the BTS 10 in respect of at least one logical connection
`identified by a CID (connection identifier). In a particular
`instance illustrated, M81 20 is shown having logical con-
`nections with CID1 36, CID2 38. M82 22 is shown with
`logical connection having CID3 40. M83 24 is shown with
`logical connection 42 having CID4. Finally, MS4 26 is
`shown with logical connection 44 having CID5. More
`generally, any appropriate number of logical connections for
`each of the mobile stations within the coverage area of the
`BTS 10 may be established. Multi-access OFDM systems
`such as shown in FIG. 1 are also referred to as OFDMA
`
`systems. In such systems, frames are transmitted that include
`content for multiple receivers.
`
`[0037] The BTS 10 transmits using an OFDM transmis-
`sion format. With OFDM, there is a set of OFDM sub-
`carriers that are closely spaced in frequency. A single OFDM
`symbol includes the contents of all of these OFDM sub-
`carriers over a symbol transmission duration. The format of
`an OFDM signal
`transmitted by the first antenna 14 is
`generally indicated by 26. This is shown to consist of a
`sequence of frames 30,32,34 where frequency is shown in
`the vertical direction and time is shown in the horizontal
`
`direction. Each small circle in frame 30 represents what is
`transmitted on a single sub-carrier for a single symbol
`duration. Each frame includes k OFDM symbols, where
`kiZ. A similar OFDM format is shown for the second
`antenna 16 generally indicated at 28 with the first frame
`indicated at 31. More generally, a similar format is employed
`for each antenna of the BTS 10. The OFDM frames repre-
`sent the two-dimensional resource that can be allocated for
`
`transmission to mobile stations (downlink transmission). A
`similar frame format may be used to uplink transmission. In
`that case, each mobile station is allocated a burst, and
`multiple mobile stations transmit their bursts so as to fill up
`the frame. In some embodiments, detailed below, there is
`overlap between the bursts transmitted by two or more
`mobile stations in certain circumstances, this being referred
`to as collaborative MIMO. It is assumed that any transmis-
`sion for a given mobile station is to be allocated a rectan-
`gular portion of a frame, hereinafter referred to as a burst. In
`other words, the contents for a given mobile station will be
`within a frame, and will be contained within an N by M
`resource where N is a number of sub-carriers and M is a
`
`number of OFDM symbol durations. Example allocations
`during the first frame 30,31 transmitted by two antennas
`14,16 shows allocations 43,44,45,46 for M81 20, M82 22,
`M83 24 and M84 26 respectively.
`
`Classification and Marking
`
`FIG. 2 is a flowchart of a method of packet
`[0038]
`classification and marking that is executed for each packet
`19 that is received by the BTS 10. An incoming packet is
`received at step 2-1. The packet is classified according to
`connection at step 2-2. This might for example involve
`examining a CID (connection identifier) within a packet.
`The CID can be used an index to a table that acts as a virtual
`
`repository of information pertaining to a connection and all
`packets associated to it.
`It can be used as key to the
`information that
`the BTS has for all connections. For
`
`instance it might contain QoS (quality of service) parameters
`such as maximum and minimum committed rates and/or
`
`channel quality measurements such as CINR (carrier to
`interference and noise ratio) the receiver reports about the
`state of the physical conditions in the radio path to the
`mobile station. Each packet is marked with one or more
`scheduling metrics in step 2-3. Note that the scheduling
`metrics that can be applied for different connections can be
`different. Various examples of scheduling metrics are shown
`generally indicated at 48 and include: earliest
`time of
`departure, this indicating the earliest frame that a packet may
`be sent to meet certain QoS or functional requirement;
`deadline for departure,
`this indicating a latest frame by
`which the packet needs to be transmitted to meet QoS
`requirements; user/operator priorities,
`this representing a
`priority that can be used to rank certain users above certain
`other users and/or certain operators above certain other
`operators; link conditionithis can be used to store one or
`
`11
`
`11
`
`

`

`US 2007/0263528 A1
`
`Nov. 15, 2007
`
`more parameters that represent the link over which that
`particular packet will be transmitted, particular examples
`including RSSI
`(received signals
`strength indication),
`CINR, and C/I (carrier to interference ratio); power save
`mode considerationsithis can be used to store parameters
`that represent whether a particular packet is being transmit-
`ted to a mobile station that has power save mode; frame
`fitting metricithis is a parameter that captures geometrical
`restrictions the frame may impose on how the packets are
`packed in. Details of many of these metrics are provided
`below.
`
`Frame fitting is a term to describe how suitable a
`[0039]
`packet is to be put in a frame when considering its dimen-
`sions, assuming each packet
`is to occupy a rectangular
`resource. In some embodiments, a packet is tagged with a set
`of possible rectangular resource sites that can be used to
`transmit the packet, and these tags constitute frame fitting
`metric.
`
`For example, in a 2-dimensional resource a packet
`[0040]
`of size 32 can be placed as 2x16 rectangle or a 4x8
`rectangle. A packet that needs 32 symbols is tagged at this
`time with its possible dimensions ((2,16), (4,8)). At some
`later point the number of symbols may be changed (e.g.
`when the radio conditions worsen a decision may be made
`to use more symbols to send the same amount of data for
`more robustness or if two packets are to be combined and
`sent together in a burst) the set of possible dimensions is
`updated as well. The use of the frame fitting metric in
`packing a frame is detailed below.
`[0041]
`In some embodiments scheduling using the meth-
`ods described herein is only performed in the downlink
`direction. The actual packets to be scheduled are available in
`this case. In some embodiments, scheduling using the meth-
`ods described herein is performed in the uplink direction,
`and in further embodiments scheduling using the methods
`described herein is performed in both the uplink and down-
`link directions.
`
`For embodiments in which uplink scheduling is to
`[0042]
`be performed, the scheduler deals with grant-requests which
`are sent to the scheduler requesting space in the UL frame to
`send a packet in the UL direction. The scheduler can process
`the grant requests much like they are actual packets, by
`using its CID to retrieve the connection parameters and
`calculating the appropriate metrics.
`[0043]
`In some embodiments, scheduling the transmission
`of signalling information for the uplink and/or downlink) is
`treated in the same way. In case of signalling however a real
`connection ID may not available or applicable. In some
`embodiments, non-data, signalling specific keys are used in
`the same fashion as the CIDs used for data connections.
`
`Furthermore, some traffic metrics that are applicable to data
`traffic may not be available for signalling. As such special
`parameters for signalling such as earliest frame to send, and
`last frame to send may be substituted. Other parameters like
`position in the frame and priority relative to other signalling
`and data are examples that may be specific to signalling.
`[0044] Various implementations may perform the sched-
`uling using the methods described for any combination of
`one or more of downlink packets, uplink grant requests,
`signalling for UL, signalling for DL. References to “pack-
`ets” in the following refer generally to whatever set of
`resources are to be scheduled in this manner.
`
`[0045] Referring now to FIG. 3, shown is a schematic
`diagram of an example implementation of the scheduler 12.
`
`The scheduler can be implemented in hardware, software in
`which case it is deliverable as computer readable medium,
`or a combination of hardware and software, such a combi-
`nation including at least one circuit such as a microproces-
`sor, DSP, ASIC, FPEA to name a few examples. Incoming
`packets 19 are classified and marked with one or more
`scheduling metrics by classifier and marker 50. After clas-
`sification and marking, the packets are assigned to one of a
`plurality of frame buckets. Each frame bucket represents a
`future frame to be scheduled and transmitted. Assigning a
`packet to a frame bucket amounts to a temporary assignment
`of the packet to be transmitted in that frame when the time
`arrives. In the illustrated example there are five frame
`buckets 52,54,56,58,60. The number of frame buckets can
`be arbitrarily selected subject to the limitation that most
`packets will have a deadline for departure and as such cannot
`be scheduled further in the future than this deadline. Note
`
`that assignment to a frame bucket can be logically per-
`formed or physically performed. For example, the packet
`can be physically moved into a memory location associated
`with a frame bucket. In another example, the packet can be
`stored in an arbitrary location, with pointers to the packets
`stored in the frame buckets.
`
`In some embodiments, each incoming packet has a
`[0046]
`packet descriptor, this being a data structure that can travel
`with the packet or be stored separately. The packet descrip-
`tor contains information identifying the physical location of
`the packet and other parameters associated with the packet
`such as the scheduling metrics. In a particular example, the
`frame buckets are implemented by using a linked list of
`pointers between these packet descriptors. An example of
`such a packet descriptor is indicated at 180 in FIG. 4A. This
`particular packet descriptor has a field 82 for the location of
`the packet and a field 84 to point to the next packet in the
`same frame bucket. This is also illustrated in FIG. 3 where
`
`packet descriptors are shown generally at 62. For frame
`bucket 56, there is a pointer to a first packet descriptor 64
`which in turn points to a second packet descriptor 66. In a
`similar manner, the packet descriptors for each frame bucket
`can be identified. The packet descriptor can also include the
`various metrics determined during packet classification and
`marking.
`that are
`the packets
`In some embodiments,
`[0047]
`assigned to a given frame bucket are not ordered, but rather
`are all considered equal.
`[0048] Having determined a frame bucket for each packet
`and one or more metrics, packets are now ordered according
`to their rank on these metrics. Various types of ordering can
`be performed, and examples of each of these will be given
`below. Some orderings are performed across all packets that
`have been received and are awaiting transmission, also
`referred to as “all packets wide”. Some orderings take place
`only for the oldest packets for each CID (also referred as
`“head of line”). Some orderings take place on the basis of all
`packets temporarily assigned to a given frame, also referred
`to as “frame bucket wide”.
`
`[0049] Referring now to FIG. 3 again, frame bucket wide
`parameter indexes that might be used to establish frame
`bucket wide ordering are shown at 72,74,76,78,80 for frame
`buckets 52,54,56,58,60 respectively. Each frame bucket
`wide parameter index has a form shown by way of example
`in FIG. 4B generally indicated at 182. This shows pointers
`PD], PDZ,
`.
`.
`. PDK to all of the packet descriptors for the
`packets stored in each frame bucket where PD 1 points to the
`
`12
`
`

`

`US 2007/0263528 A1
`
`Nov. 15, 2007
`
`packet descriptor of the highest rank packet according to a
`particular criteria, and PDK points to the packet descriptor of
`the lowest rank packet according to that criteria. Note that
`there can be multiple different frame bucket wide parameter
`indexes. Frame bucket wide indexes are useful
`to find
`
`packets that may be promoted or demoted to an earlier or
`later frame respectively. For example, a radio condition
`index (which specifies the present condition of the link to a
`mobile station) may be used to promote packets that have
`better radio conditions now or demote the packets that have
`poor radio conditions now, the heuristic being that delaying
`a packet with poor conditions may allow it to be sent later
`when the conditions improve. The same heuristic can be
`applied to the case when promoting a packet with good
`current radio conditions. Note that if the radio conditions
`
`vary randomly then sending according to the radio condi-
`tions at their peaks will increase aggregate throughput of the
`system. Other possible frame bucket wide indexes could
`include fitting metrics like possible dimensions that were
`defined earlier.
`
`FIG. 4B is a very specific structure for implement-
`[0050]
`ing the frame bucket wide parameter index. In another
`example, the traffic descriptor of FIG. 4A can be supple-
`mented with another field that allows for an ordering accord-
`ing to frame bucket wide parameter index.
`[0051] With further reference to FIG. 3, an example of a
`connection set wide parameter index that might be used to
`establish connection set wide ordering is indicating gener-
`ally at 90. A connection set wide parameter index allows for
`an ordering of the oldest packets associated with each
`connection identifier.
`
`[0052] An example of such a connection set wide ordering
`is shown in FIG. 4C. This is the same format as the frame
`
`bucket wide parameter index of FIG. 4B, with a set of
`indexes 1 through NALCID (where NALCID this is the number
`of CIDs being indexed) and pointers PDl, .
`.
`.
`, PDALCID to
`respective packet descriptors. There can be multiple such
`connection set wide orderings implemented. In FIG. 3,
`connection set wide parameter index 90 is shown with
`pointers 92 pointing to various packet descriptors according
`to their order as determined by a connection set wide
`parameter ranking.
`[0053]
`Finally, an example of an all packets wide param-
`eter index that might be used to establish an all packets wide
`ordering is indicated at 94. With such an index, all of the
`packets that have been received are indexed together. An
`example of the structure this might take is shown in FIG. 4D
`where the ordering of all the packets 1 through NTOT is
`shown with a pointer to a respective packet descriptor for
`each index. Once again, multiple such orderings can be
`implemented.
`[0054] The above discussed fitting metric, in the form of
`one or more sets of dimensions, can be used to generate an
`index of dimensions, either for all packets, on a frame-wide
`basis, or head of line basis.
`[0055] The frame bucket wide parameter indexes, connec-
`tion set wide parameter indexes, and all packet wide param-
`eter indexes are maintained on an ongoing basis. As packets
`are received,
`they are added to the appropriate indexes.
`Similarly, as packets are transmitted, they are removed from
`
`the appropriate indexes. Other mechanisms of generating
`and maintaining orderings are contemplated.
`
`Partial Ordering
`
`in addition to the above
`In some embodiments,
`[0056]
`indexing, the scheduler also performs partial ordering of
`packets, again based on one or more of the metrics. By
`partial ordering, it is meant that groups of packets are treated
`as equal as opposed to ranking the packets where indexes are
`used. An example of this is the ordering that is done when
`packets are put into respective frame buckets. The deadline
`time for a given packet specifies which frame a packet is to
`go out on (in other words which bucket). Many packets can
`be in the same frame and are therefore equal in this partial
`ordering scheme. Thus, as mentioned above, all packets
`assigned to a given frame bucket are considered equal in this
`partial ordering. The processing cost
`to perform partial
`ordering compared to maintaining an ordered queue for all
`packets is much less. A partial ordering can be maintained in
`a similar manner to the above discussed indexes, the only
`difference being that the order of the packets is not given any
`significance.
`
`Grouping of Packets
`
`Instead of or in addition to trading off one packet
`[0057]
`against another using the above indexing approaches,
`in
`some embodiments groups of packets are traded off against
`each other. In particular, some groupings of packets can be
`determined to be more optimal than others. For example, a
`particular set of packets being packed together in a single
`frame may be more efficient in terms of transmit resource
`utilization than another set of packets. The following are
`three different examples of such packet groupings that can
`be generated:
`[0058]
`a) packets that fit perfectly (or more perfectly) in a
`burst within a frame, are more efficient than such a packet
`that leave holes. For example a packet of 100 bytes when
`modulated may need 20 symbols (depending upon the
`modulation chosen). These 20 symbols are allocated into a
`frame. The region that these 20 symbols occupy is called the
`burst that corresponds to the original packet. The scheduler
`creates bursts for all packets in the frame and tags them
`appropriately. The modem takes the bits in the packets and
`modulates them to fit them in the burst inside the frame.
`
`b) bursts destined for a set of mobile stations that
`[0059]
`have higher orthogonality in terms of radio conditions are
`better for simultaneous transmission on multiple antennas.
`For example, in a MIMO BTS having two antennas, if a
`BLAST transmission format
`is employed,
`then the best
`performance is realized if the two antennas are used to
`transmit to mobile stations that are physically spaced as far
`apart as possible;
`[0060]
`c) sets of bursts that satisfy certain modulation
`conditions may allow for better power spread over the
`frame;
`in one embodiment, all packets having the same
`modulation type are grouped together in a common frame;
`in other embodiments, a range of different modulation types
`within each frame can result in better performance. The
`particular combination of modulation type or types that will
`produce the best performance is an implementation specific
`detail.
`
`[0061] The scheduler’s primary function is to find “suit-
`able packets” under various conditions. At any time the
`
`13
`
`13
`
`

`

`US 2007/0263528 A1
`
`Nov. 15, 2007
`
`suitability of the packet depends upon various factors that
`are represented by its metrics. For example a packet P that
`may be more suitable to be sent in the next frame than
`another packet Q because it is higher on an increasing index
`of deadlines may not be suitable because of its dimensions
`(indicated by the dimension index). In this case the sched-
`uler may decide to search the index of dimensions to find
`packets that fit the available space and then pick the packet
`with the earliest deadline among them. Depending upon the
`conditions and the configuration provided to the scheduler,
`the scheduler will use various partial orderings and indexes
`to pick packets. For example, given indexes {I_1, I_2, .
`.
`.
`} and Partial Orderings {P_l, P_2,}, the scheduler may start
`with P_l to pick the first set of packets and then remove
`packets which are above a certain value in the index I_1,
`then pick all packets in P_3 and so on. Which partial
`ordering or index to pick will depend upon the trade-off or
`optimization the scheduler is trying to make at a particular
`point.
`In some embodiments, there is

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket