For many years industrial groups wrestled with a major problem -- the provision of broadband services to customers. But the provision of broadband services while addressing the "last mile" problem can now be fulfilled by using wireless networks. To improve the efficiency of broadband wireless networks, great importance has been given to QoS. Industrial groups use QoS metrics to measure loss, throughput, latency, jitter, sequencing, and total errors of networks such as ATM and Frame Relay.
The real challenge for wireless networks was provision of real time service. To achieve it some vendors integrated ATM technology into their systems (which was an expensive option) while others focused on Ethernet or IP packet transport with prioritized delivery over wireless. They also faced hurdles as there were only two classes available -- high priority class and low priority class -- to support services.
This standard has a polling-based MAC layer that is either unicast polling or multicast polling, and so it is more deterministic than the contention-based MAC used by 802.11. 802.16's MAC layer classifies application flows as QoS and non-QoS dependant and maps them to connections with distinct scheduling services, enabling both guaranteed handling and traffic enforcement.
2. QoS Prerequisite
BS requires configuration and registration functions so that it can configure and register service flows that will be used by both BS and SS. Similarly, signaling function is required so that both BS and SS can communicate with each other for creation, admission, activation, modification and deletion of service flows. QoS parameter set is required for service flows. Service classes are also required but they are optional.
2.1. QoS Parameter Set
QoS parameter set of service flow defines maximum sustained rate (MSR), minimum reserved rate (MRR), maximum latency, tolerated jitter, maximum traffic burst and traffic priority.
Maximum latency is used to specify maximum information retrieval over network interface by either SS or BS.
Traffic priority is used to specify priority of service flow. If two service flows have the same QoS parameter set except for traffic priority, then it is considered -- otherwise other parameters are preferred.
Maximum traffic burst is used to specify burst size of service flow in bytes.
Tolerated jitter defines the maximum delay variation for the connection.
MRR is used to specify the minimum rate reserved for service flow and measured in bits per second. It specifies minimum amount of payload associated with service flow when averaged over time.
MSR is the maximum rate reserved for the service and is measured in bits per second. If the user transmits data within the MRR, then there is a guarantee of throughput, latency and jitter; however, if the user increases the data rate then it can only be increased up to the MSR. This increase will be considered as Best Effort, which means that if resources are available and bandwidth is free, then the increase will be permitted; otherwise, it has no guarantee. But if the user increases data rate above MSR then it will not be allowed.
3. Service Class
Service class consists of the QoS parameter set. It is defined as BS and its name is an ASCII string. Service class is used so that instead of defining each QoS parameter of service flow, the higher layers and external applications use the service class name. It is also used so that the configuration burden of service flow resides with BS.
Service flow can have each QoS parameter explicitly defined, or may indirectly use a service class which defines the QoS parameter set, or it may indirectly use a service class with a modified QoS parameter set.
Once service flow is established then there is no need of service class as each QoS parameter of service flow is explicitly specified.
The expansion of service class name is initiated by BS in one of the DSA-REQ, DSC-REQ, DSA-REP, DSC-REP sent to SS. If the SS uses service class as well as modified QoS parameter set then BS has to give response with regard to modified QoS parameter set as well.
The response of BS to SS admitted or active service flow request using service class name can be different based on which SS is requesting as reservation of resources my differ with different subscriber stations.
3.1. Types of Services
Four types of services are provided by 802.16.
3.1.1. Unsolicited Grant Services (UGS)
It provides Constant Bit Rate (CBR) services that require strict scheduling and guarantee on throughput, latency, jitters. It is used in services like Voice Over IP (VoIP) without silence suppression.
3.1.2. Real-Time Polling Services (rtPS)
It also provides guarantee on throughput but little less emphasis on latency. It supports real time services such as video conferencing and VoIP with silent suppression. The packet size of data can be variable.
3.1.3. Non-Real-Time Polling Services (nrtPS)
It only provides a guarantee on throughput, and therefore is used for non real time services that have variable data size, such as e-mail.
3.1.4. Best Effort (BE) Services
It provides no guarantee, but the user can use maximum data rate. It supports non real time services, such as web surfing.
4. Service Flow
Service flow is one of the most important components of the MAC layer. It is used as a transport service to deliver packets. One service flow can be used by many packets. It is a unidirectional, which can be used by BS intended for SS or SS intended for the BS. It has a 32 bit identifier known as SFID. To provide QoS to packets, service flow is used. Each service flow has a defined QoS parameter set.
Service flow is of three types: provisioned, admitted and active service flow. Service flow contains optional parameters depending on the type of service flow. It contains parameter connection ID (CID) which is non null if it is an admitted or active service flow. Service flow has ProvisionedQoSParameterSet parameter non null if it is provisioned service flow where provisioning is carried out by the network management system. Service flow has AdmittedQoSParamterSet parameter non null if it is admitted service flow. Base station reserves resources for this kind of service flow. Service flow has ActiveQoSParamterSet parameter non null if it is active service flow and data packets can be transmitted using active service flow.
Each data packet has associated service flow, which means that one packet has exactly one SFID as a parameter. It may contain service class name. If it contains service class name than the QoS parameter set of service flow is defined in service class. If service flow is admitted service flow or is active service flow, then it has CID.
Each connection has exactly one associated service flow. It contains 16 bit Connection ID identifier. It also has QoS parameter Set. Similarly each service class has exactly one associated service flow. It contains Service Class Name as an identifier and a parameter called QoS parameter Set.
BS contains an authorization module that is a logical function. When the SS sends DSC message of provisioned, admitted or active service flow to BS, it is responsible for accepting or denying it. It provides limit of change for active and admitted service flows.
4.1. Service flow types
As mentioned above there are three types of service flows.
4.1.1. Provisioned Service Flow
It is provisioned through the network management system. BS assigns SFID to it. BS does not reserve resources for it, nor can data packets be associated with it.
SS can use DSC message to change provisioned service flow to admitted service flow or active service flow. Similarly BS can send DSC message to SS to change provisioned service flow to admitted service flow or active service flow. For this purpose BS maps the SFID on CID and sends it to SS in DSC-REQ if DSC message is initiated by it or sends DSC-RSP to SS if DSC message is initiated by SS.
4.1.2. Admitted Service Flow
Admitted service flow can be created by using two types of authorization models: provisioned authorization model and dynamic authorization model. It can be created either by BS or by SS.
Provisioned authorization model supports two phase activation model. BS first admits resources for a service flow in response to SS's DSC-REQ message. By doing so it ensures that resources required by service flow are available, once admitted service flow is established. QoS parameter set of admitted service flow should always be subset of provisioned service flow.
In dynamic authorization model service flow can be created dynamically by using DSA message which will be discussed later on.
4.1.3. Active Service Flow
Active service flows can be created by using provisioned authorization model or dynamic authorization model. It can be created by either BS or SS. BS reserves resources for active service flow. QoS parameter set of active service flow should be a subset of admitted service flow.
In tow phase activation model, as discussed earlier, BS reserves resources for admitted service flow, then SS sends active QoS parameter set to base station in DSC message.
In the dynamic authorization model, SS can dynamically create active service flow by using DSA message that contains active QoS parameter set. Once active service flow is authorized and established BS can transmit data over connection if it is downlink active service flow or SS can transmit data over connection if it is uplink service flow.
5. Authorization Model
BS uses authorization module that accepts or deny any new service flow or modifies QoS parameter set of service flow or changes service flow type. Authorization module supports two types of authorization models that are provisioned (static) authorization model and dynamic authorization model.
5.1. Provisioned Authorization Model
In the provisioned authorization model, BS keeps all the provisioned QoS parameter sets of service flows. When the SS uses the DSC message to admit service flow or to activate service flow, the authorization module ensures that it is the subset of provisioned service flow in first case and it is subset of admitted service flow in second case. Similarly SS is not allowed to create provisioned service flow.
Provisioning of service flow is carried out by network management system . BS configures and registers service flow and assigns SFID to it. BS sends service flow to SS through DSA-REQ. SS sends DSA-RSP after accepting it and BS sends DSA-ACK to complete the transaction.
5.2. Dynamic Authorization Model
In the dynamic authorization model, the authorization module communicates with the policy server. Policy server informs the authorization module about action to be taken of incoming admission or activation request sent by SS. Policy server sends parameter set to authorization module for each upcoming request, therefore parameter set sent by SS should always be subset of parameter set sent by policy server. If policy server has not sent information about any incoming request, then it is up to the authorization module to accept it or deny it.
Whenever BS or SS want to create a service flow, or change a service flow, or delete a service flow, they use transactions. Each transaction has a unique identifier. To differentiate between transactions initiated by BS and SS, SS uses numbers from 0000 to 7FFF for transaction identifier and BS uses numbers from 8000 to FFFF for transaction identifier.
6.1. Types of Transaction
There is a total of six transactions, of which three are initiated locally and three are initiated remotely. Following are the transactions that can be either initiated locally or remotely.
Transaction used for DSA message contains unique transaction ID. This type of transaction consists of request, response and acknowledge sequence.
Transaction used for DSC message contains unique transaction ID. This type of transaction consists of request, response and acknowledge sequence.
Transaction used for DSD message contains of unique transaction ID. This type of transaction consist of request and response sequence.
6.2. States of Transaction
There are typically three states of a transaction: pending, holding and deleting. In the pending state, the transaction waits for a reply. In the holding state, the transaction has received a reply and keeps the message so that in the case of a lost message it can be retransmitted. In the deleting state, it deletes the service flow that is being processed.
Dynamic service flow state transition diagram takes inputs of add, change and delete from the upper layer.
Dynamic service flow state transition diagram can send one of the following inputs to DSx transaction state transition diagram they are SF Add, SF Change, SF Delete, SF Abort Add, SF Change-Remote, SF Delete-Local ,SF Delete-Remote, SF DSA-ACK Lost, DSA-REQ Lost, DSC-ACK Lost and DSC-REQ Lost message.
Similarly, in response to input from Dynamic service flow state transition diagram and the result of the process that has been carried out in DSx Transaction state transition diagram DSx Transaction state transition diagram sends back one of the following messages: DSA Succeed, DSA Failed, DSA ACK Lost, DSA Erred, DSA Ended, DSC Succeeded DSC Failed, DSC ACK Lost, DSC Erred, DSC Ended, DSD Succeeded, DSD Erred, DSD Ended messages.
7. Dynamic Service Flow
Dynamic service flow has either null state or normal state. In null state no service flow exits that matches the SFID or transaction ID of transaction message. To move service flow from null state to normal state a DSA message is used. Service flow has an assigned SFID once service flow exits. In normal state it can be changed many times using DSC messages. Service flow goes back to null state when DSD message is used.
7.1. Dynamic Service Flow Creation
It can be initiated by either BS or SS. They send QoS parameter set(s) for new service flow(s), one for uplink and/or one for downlink service flow(s) in DSA message.
7.1.1. SS initiated
SS first checks resources for new service flow are available than sends DSA-REQ with service flow reference(s) and QoS parameter set(s) to BS. SS than sets timer T7 and timer T14. BS checks the integrity of message and sends DSA-RVD message to SS, SS than stops timer T14. BS checks whether SS is authorized for service(s), then it checks resources availability. BS creates SFID(s). BS then maps service flow to CID if it is an uplink admission request and if it is an uplink activation request then it enables reception of data over new service flow. BS sends DSA-RSP message to SS. SS stops timer T7. If it is activation request then SS enables transmission/reception of data over new uplink/downlink service flow(s). SS sends DSA-ACK message to BS. BS enables transmission of data over new downlink service flow(s) if it is an activation request.
7.1.2. BS initiated
BS can create one uplink and one downlink service flow or one of them in DSA-REQ message. It sends QoS parameter set(s) of service flow(s) and SFID in message. BS first checks whether SS needs new service flow(s) or not then it checks whether SS is authorized for service flow(s). BS checks availability of resources for service(s).BS creates SFID(s). BS maps the service flow on CID if it is an admission request. BS sends DSA-REQ and set timer T7. SS checks whether it can support service(s). SS enables reception of data over new service flow(s) if it is activation request. SS sends DSA-RSP to BS. BS stops timer T7 and enables transmission of data over new service flow if it is downlink activation request or enables reception of data over new service flow if it is uplink activation request. BS sends DSA-ACK to SS. SS enables transmission of data over new service flow if it is uplink activation request.
7.2. Dynamic Service Flow Change
It is used to change provisioned service flow into admitted service flow and admitted service flow to active service flow. It is also used to change the QoS parameter set of admitted service flow and active service flow.
If DSC message contains no QoS parameter set then the admitted and active QoS parameter set for a service flow are set to null and service flow is deadmitted. If DSC message contains only admitted QoS parameter set then service flow's admitted QoS parameter set is modified and it is deactivated. If DSC message contains admitted and active QoS parameter set than first admitted QoS parameter set of service flow are modified than it is checked whether active QoS parameter set is subset of admitted QoS parameter set of service flow, if it is then the active QoS parameter set of service flow is replaced with active QoS parameter set present in DSC message.
DSC message can be initiated either by BS or SS. If BS has initiated a DSC message and SS has also initiated DSC message then SS has to abort its DSC message. Similarly if SS has initiated DSC message and BS has also initiated DSC message then BS aborts the DSC message of SS.
8.2.1. SS initiated
If SS need to change the service flow it sends modified QoS parameter set in DSC-REQ to BS and set timer T7 and T14. BS checks the integrity of message and sends DSC-RVD to SS. SS stops timer T14. BS then checks availability of resources and modifies the service flow. BS then increases the bandwidth of channel if necessary and sends DSC-RSP to SS. SS stop timer T7 and modifies the service flow. SS changes the bandwidth of payload and sends DSC-ACK to BS. BS decreases the bandwidth of channel if necessary.
Dynamic service change diagram is similar to figure 3 in which instead of DSA we have DSC sequence.
7.2.2. BS initiated
If BS wants to modify the service flow then first it checks whether it can support the modification. BS sends DSC-REQ to SS and sets timer T7. SS after receiving message checks availability of resources then modifies the service flow. SS decreases the bandwidth of the payload if necessary. SS sends DSC-RSP to BS. BS changes channel bandwidth and sends DSC-ACK to SS. SS increases the bandwidth of payload if necessary.
Dynamic service change diagram is similar to figure 4 in which instead of DSA we have DSC sequence.
7.3. Dynamic Service Deletion
To delete a service flow DSD message is used. At a time only one service flow can be deleted using message. Resources reserved for service flow are released after deletion. SS has to reregister itself if management related service flow is deleted and if provisioned service flow is deleted then it can only be used by SS if it reregister itself.
7.3.1. SS initiated
If SS does not need a service flow then it deletes it and sends DSD-REQ to BS. BS first verifies that SS is owner of service flow then deletes it and sends DSD-RSP message to SS.
7.3.2. BS initiated
If BS doesn't need service flow anymore then it deletes the service flow and checks which SS is associated with service flow, then BS sends DSD-REQ to it. SS deletes the service flow and sends DSD-RSP to BS.
The 802.16 2001 standard has substantially improved the QoS metric. It provides complex scheduling techniques to maximize use of air interface, and it meets challenges of real time services through UGS and rtPS services. By using two phase activation it limits theft of resources. It has been implemented in a number of areas, and industrial groups that are part of the WiMAX Forum are working hard to make its future a success.
 IEEE 802.16-2001. IEEE Standard for Local and Metropolitan area networks Part 16: Air Interface for Fixed Wireless Access Systems.
 Intel Technology Journal "IEEE 802.16 Medium Access Control and Service Provisioning".
 "802.16 Tackles Broadband Wireless QoS Issues" by Mario Pidutti
 MAC and PHY MIB for WirelessMAN and WirelessHUMAN BS and SS
About the Authors
Bashir Hayat recently completed a four-year program of study at the university of Peshawar, Pakistan; he has written a research report on PLMN (Public Land Mobile Network).
Raheel Mansoor completed his BCS from the same university, and has produced a research report on UMTS.
Abdul Nasir has been working as Telecom Engineer ZTE in China, and has written a research report on Route Optimization and Security Issues in Mobile IPV6; he has lectured in computer science at several universities in Pakistan, including the University of Peshawar.