Survey on Protocols addressing Head of
Line Blocking Problem in Wireless Ad Hoc
Networks using Directional Antennas
P. SAI KIRAN
Department of Computer Science and Engineering, Lakireddy Bali Reddy College of Engineering, Mylavaram, India
DR.L.S.S.REDDY
Director,
Lakireddy Bali Reddy College of Engineering, Mylavaram, India
Abstract: Head ofLine blocking phenomenon is common in First in First Out (FIFO) nature queues. Head of line blocking problem becomes significant in wireless ad hoc networks using directional antennas as it uses FIFO queue which consists of packets intended for different directions. A packet on the top of the queue may block the remaining packets if it finds the medium busy in its intended direction, where as the packets in the queue intended for other directions may find the medium to be idle. Very few of the MAC protocols for ad hoc networks using directional antennas have addressed this problem. In this paper we will exploit the Head of Line Blocking problem and review the protocols that have addressed the head of Line Blocking Problem.
Key words: Head of Line Blocking, Directional Antennas, Medium Access Control, Wireless Ad hoc networks.
1. Introduction
Wireless Ad Hoc network is a network composed solely with the stations that are within mutual communication range of each other. Medium Access Control is one of the major factors affecting the performance of the network as it does not have any central coordinator to control the medium access. Traditional MAC protocols use omnidirectional transmission where the signal is transmitted equally in all the directions without concern about the direction of the node wasting large portion of network capacity. Using Directional Antennas for Ad Hoc networks can improve spatial reuse as they transmit signal only in the intended direction of the destination node.
Traditionally at each node MAC layer maintains a queue to store the packets to be transmitted to its neighbors. The queue is based on First In First Out Phenomenon where the packet on the top of the queue will be considered for transmission and checks if the medium is busy or idle, if the medium is found to be busy then the node takes up random backoff timer and waits for the medium to be idle. The node would transmit the packet once the medium is found to be idle. When using omnidirectional antennas and omnidirectional transmission this phenomenon will not create any problem but while using directional antennas and directional transmission this may lead to a problem called as Head of Line (HOL) blocking. When using directional antennas, if the packet on the top of the queue finds the medium to be busy in the intended direction will select a random backoff timer and waits for the medium to be idle. But there may be other packets in the queue intended for other directions for which the medium may be free; these packets will be blocked unnecessarily by the packet on the top of the queue. This phenomenon is called as Head of Line Blocking and significant while using directional antennas for wireless Ad Hoc networks.
This paper is organized as follows. Section Investigates the Head of Line Blocking problem with its performance effects. In Section III we review some of the protocols addressing Head of Line Blocking problem. In Section IV we have summarized the protocols with their qualitative analysis while we conclude in section V.
2. Head of Line Blocking in Ad Hoc Networks with Directional Antennas
respective protocol. If the medium is found idle then the communication will be initiated after handshake. This process works well and will not have any problem while using omnidirectional transmission as we cannot transmit once the medium is found to be busy. But this is not the case for Directional Transmission.
Using the FIFO queue processing in directional transmission will lead to head of Line Blocking problem. In a MAC queue there will be packets that are intended for different nodes in different directions. The First In First Out queue processing only considers the first packet in the queue for transmission. The direction to which the first packet is to be transmitted will be sensed and if the medium is found busy, the protocol will wait till the medium is idle. But there may be packets in the MAC queue which are intended for different directions and the medium is idle in those directions. These packets will be blocked due to the blocking of the first packet in the queue. This is called as Head of Line Blocking problem in FIFO queues. Head of Line blocking will reduce the efficiency of protocol and minimizes the advantage of directional transmission to a great extent.
Consider a scenario as shown in Figure-1 to explain Head of Line Blocking problem. System A has packets to be transmitted to System B, C and D and the First packet is intended for system B. In the scenario System B is in communication with E thus the medium from system A to B is found to be busy. The medium in the directions of system C and D are idle. System A cannot transmit the data to C and D and waits for the medium in the direction of system B to be idle for transmission. Thus the system A will not transmit the packets to C and D even though the medium in the respective directions is idle because of the Head of Line Blocking by the first packet intended for system B.
Head of Line blocking problem reduces the performance of the protocol to a great extent. Let us consider a simple scenario to explain the effect of Head of Line Blocking problem. Let us consider the requirements for communication between system A, B, C and D as shown in Table 1. Consider system A wants to transmit 4 packets to B and takes 2 seconds to finish transmission. Similarly A wants to transmit 10 packets to C taking 4 seconds and 8 packets to D taking 4 seconds. Consider the scenario where the medium is busy as indicated by DNAV in the directions as shown in the table 2. Medium in the direction of A and B will be busy for the first 5 seconds where as the medium in the directions A to C and A to D will be busy for the next 10 seconds and 5 seconds in sequence. Consider that the packets from A to B are first in the queue followed by A to C and A to D.
Packet in MAC Queue Number of Packets Approximate Duration
A to B 4 2 Seconds
A to C 10 5 Seconds
A to D 8 4 Seconds
Table 1: packets in MAC queue of system A
Node Direction Duration Start and End Time
A to B 5 Seconds 0 Sec – 5 Sec
A to C 10 Seconds 5 Sec – 15 Sec
A to D 5 Seconds 20 Sec – 25 Sec
Table 2: DNAV at System A.
A B F
C
D
E
G
On going
Transmission
Waiting for Medium
to be idle
idle
idle
If we apply FIFO queue processing for the MAC Queue then the finishing times for the communications will be as shown in the table 3. Communication between A and B starts only after the medium if idle in that direction thus will wait for 5 seconds before initiating communication. Thus the communication between A and B completes at 7 Seconds. Communication between A and C cannot start until 15 seconds as the medium in the direction is busy thus the communication between A and C will be completed at 20 Seconds. Similarly communication between A and D will End at 29 Seconds. The scenario we have considered is the worst case example for FIFO queue processing.
Head of Line blocking can be avoided by considering the other packets for transmission in the queue when the head of queue packet is blocked. If we consider to over come the head of line blocking problem to the Scenario, then the transmission between A and C will be initiated first as the medium between A and C is idle while the medium between A and B is Busy. The End times for the communication between A to B, A to C and A to D are given in table 3 along with the performance improvement. First the communication between A to C will be completed at 5 Seconds. By the end of 5 seconds since the medium between A and B is idle communication between A and B is initiated and will be completed by 7 seconds. Finally the communication between A and D will be initiated as the medium is idle and will be completed by 11 Seconds.
Communication Start Time - End Time for FIFO Queue
processing
Start Time – End Time if we avoid Head of Line
Blocking
Performance improvement
A to B 5 Sec – 7 Sec 5 Sec - 7 Sec -
A to C 15 Sec – 20 Sec 0 Sec – 5 Sec 400%
A to D 25 Sec – 29 Sec 7 Sec – 11 Sec 263%
Table 3: Need for avoiding Head of Line Blocking problem.
Head of Line blocking problem has to be addressed by the MAC protocols while using directional transmission.
3. Protocols addressing head of line blocking problem
In this section we will Survey some of the proposed protocols dealing with head of Line Blocking problem.
3.1 Protocol for avoiding Head of Line Blocking problem
One of the first protocols to address the Head of Line Blocking problem is by Kolar [3]. This protocol proposes modification to the Directional MAC (DMAC) protocol to avoid Head of Line Blocking problem. MAC layer dequeues the packets from the interlinking queue and maintains a separate MAC Queue with limited buffer space compared to interlinking queue. MAC queue is implemented by Linked Lists with pointer to packet to transmit, next hop ID, angle of transmission, DNAV expiry time and priority of the packet. Packets from interlinking queue will be buffered to MAC queue based on the priority of the packets. Omnidirectional packets are transmitted only when all the directional packets from the MAC queue are transmitted. One of the modifications made to the DMAC protocol is in maintaining the angle of arrival. Angle of arrival will not be updates when any one of the antenna is locked to a sector for transmission. Angle of arrival will be updated only when the node can sense the channel in omnidirectional mode while DNAV is updated.
A packet is selected for transmission based on the information present in the DNAV. Each node maintains a directional NAV (DNAV) table. Based on the information in DNAV table protocol will examine each packet in the queue interms of remaining waiting time for the packet to be transmitted in a particular direction. The packet queue is examined to determine the packet with the least wait time. This wait time can be determined by examining the DNAV table and checking the wait time for the packet's angle of transmission. Thus a packet with the least waiting time will always be transmitted.
This protocol proposes modification to DMAC to avoid the Head of Line blocking problem using the modified DNAV.
3.3 Opportunistic Mechanisms for IEEE 802.11 Networks using Directional Antennas
This protocol[4] proposed couple of enhancements to the IEEE 802.11. The first enhancement is to augment the MAC protocol with additional information (e.g., locations of the sender and the receiver) that gives a station the flexibility to transmit data in the presence of ongoing transmissions in its vicinity.
In this protocol, a station does not maintain a distinct queue for every direction. Instead, it maintains a single queue which can be accessed as list where the station can iterate through the items of the list, and insert and delete an item in the list. A station checks if the direction of transmission of the topmost item in the queue is blocked. If it is blocked and the remaining blocking time (obtained from DNAV table) is greater than certain threshold, the station checks the transmission direction of the next item. If it is not blocked, the station sends this item, deletes it from the queue, and goes back to the top of the queue. If it is blocked and the remaining time of block is less than a threshold time, the station waits for this time, then transmits the data, and goes back to the top of the queue. If it is blocked and the remaining blocking time is greater than threshold time, the station checks the transmission direction of the next item.
This protocol assumes that the checking time and the send times take a very small time with respect to threshold time. This guarantees that all packets will be delivered in order. If a station is sending items to some destination d and the first item of these items is blocked, the subsequent items to d will not be sent as their remaining time is still greater than threshold time. Another way to handle this case is, once transmission of an item to station d is blocked, all subsequent items are marked as blocked.
A station maintains Service time denoting the total time spent in servicing an item, that is, the sum of the total time spent in checking whether or not to transmit this item, time to delete the item from the queue, and time spent in transmitting this item. A station also maintains Starvation time which is the total time that the transmission of an item is delayed due to servicing the items that come afterwards in the queue. If the starvation timeis greater than some threshold value, then the protocoldoes not check any item beyond the current item. This ensures that altering the order of transmission of the queue does not jeopardize the fairness of the transmission.
3.3 Angular MAC
Angular MAC (ANMAC) [5] framework includes the node architecture, MAC protocol, location based scheduler to be implemented in mesh nodes that employ directional antennas. One of ANMAC’s key features is self-configuration. With the help of the node structure and modified RTS/CTS messages, the indexes of current and best beams of the imminent communication are determined by making use of selection diversity over multiple directional antennas. The other properties of ANMAC protocol that differentiates itself from existing directional MAC protocols are complete deafness solution during SDMA and enhancements on contention resolution.
ANMAC introduced crucial improvements on existing schemes. First of all, in ANMAC, the node locations are not known beforehand; ANMAC determines and exchanges the location information of all nodes in the network by making use of multiple antenna ANMAC node structure, directional carrier sensing and modified Request To Send/Clear To Send (RTS/ CTS) messages (Angular RTS/CTS). Second, the hidden terminal problem is alleviated, since each node maintains and marks the relative location as well as activity of neighbor nodes. Third, the deafness problem is completely prevented by the proposed Network Activity Notification (NAN) procedure. Fourth, the ANMAC framework is employed with a location-based scheduler that enables Space Division Multiple Access (SDMA) with random access while addressing Head of Line Blocking Problem.
With ANMAC framework, the medium is divided into separate diagonals so that activity in one does not affect transmission in another diagonal. If packets to all destinations are enqueued together, a packet destined to a busy node or diagonal may block packets to free destinations or diagonals. In ANMAC packets are enqueued in a first in first out fashion, if the packet at the head of the queue is destined to a busy node or diagonal, the next packet and destination is considered for transmission. ANMAC frame exchange is started if the next destination is available as indicated by the ANMAC table. An awaiting packet is to be served as soon as its destination medium becomes accessible.
3.4 Increasing throughput using directional antennas
In paper [2] author proposed a method for MAC protocols using Antenna Array for Directional Transmission. It uses multiple backoff Queues each intended for a Particular Antenna in an Array. If an Antenna Array consisting of six Directional Antennas requires six queues each intended for a particular directional antenna.
If the packet is not intended to the same direction as that of previous one that is waiting in the back_off queue, the packet will be allowed to sense the medium to be idle in the intended direction. If the carrier is sensed to be idle then the packet is allowed to be transmitted, If the medium is found busy then the packet will be stored in a new queue that is created for the direction of the packet destination. If the queue for that direction already exists it will be store in that queue.
The packets placed in the back_off queues will be given chance after every successful transmission or failure attempt of the packet in the main queue. when a packet in the main queue sense the channel to be busy then it will be placed in the back_off queue as stated above. The next packets in the queue are also place in the same back_off queue until the packet is not intended for the same direction. After packets is successfully transmitted in its intended direction, the next packet in the queue is considered and if the direction of the packet is similar to the packet successfully transmitted then the next packet will be transmitted immediately. This process is repeated until a packet intended to different direction is found.
Before proceeding to the next packet of different direction a chance will be given to the packets in the back_off queues.
A packet in the back_off queue will be given control either from the main queue or from another backoff queue. Once the control is received to the back_off queue, the channel in the intended direction is sensed for the channel to be idle. If the channel is found busy in the intended direction then the control will be transmitted to the next back_off queue in another direction or to the main queue if no back_off queue is there. If the channel is idle then all the packets in the back_off queue will be transmitted before giving the control to the next back_off queue or to the main queue.
4. Summary and Future Work
In this section we discuss the qualitative performance of the protocols addressing the Head of Line Blocking problem.
Protocol proposed by Kolar was one of the initial protocols to address the Head of line blocking problem and had provided a solution based on the remaining wait time of the packets in the queue. This protocol does not consider transmitting back to back packets in a direction when the medium is found to be idle. It simple rechecks the complete MAC queue to see the packets with the least waiting time and the packet with the least waiting time will be considered for transmission. Similarly when an omnidirectional packet is found in the interlinking queue then the remaining packets in the queue after the omnidirectional packets will not be considered to be buffered in MAC queue. Omnidirectional packet will be transmitted only when all the directional packets are transmitted.
Opportunistic enhancement to IEEE 802.11 was proposed in similar lines to that of the Kolar method to avoid Head of Line Blocking problem. This protocol also uses single queue for maintaining the packets to be transmitted. This protocol also checks the remaining packets for waiting time or blocking time and the packet with the blocking time less than a threshold will be considered for transmission. Another enhancement to this protocol compared to Kolar is that it maintains a starvation time to avoid stations or long waiting stations. This will give change to the packets which have the starvation time greater than or equal to a particular threshold value. This protocol also did not consider transmitting back to back packets in a particular direction when the direction is found to be idle.
Angular MAC is a protocol that have specified the Head of line blocking problem and indicated that the next packets in the queue will be considered for transmission when the head of the queue packet is blocked. But this protocol did not mention any criteria for transmitting packets. This protocol had simple said that the waiting packets will be transmitted once the intended direction is free, but failed to clarify further.
Increasing throughput using directional antennas used multiple queues for buffering the packets intended for multiple directions. These backoff queues will be considered after every successful transmission of packets or when ever a direction is found to be busy. This protocol uses back to back transmission of packets once the medium is found to be idle. This protocol does not consider waiting time or starvation time but continue with the next packet by placing the packets in the backoff queue once it finds the medium to be busy.
5. Conclusion
References
[1] P. Sai Kiran, “A survey on mobility support by MAC protocols using directional antennas for wireless ad hoc networks”, in Proc, IEEE International Symposium on Ad hoc and Ubiquitous Computing 2006, pp-148-153.
[2] P. Sai Kiran, Dr. L.S.S. Reddy, “ Increasing Throughput using directional antennas for Wireless Ad Hoc Networks”, in proc IEEE International Conference on Future Information Technology(ICFIT 2010) pp- V2-213 – V2-217.
[3] V.Kolar, T.S., and N.B. Abu-Ghazaleh, ”Avoiding Head of Line Blocking in Directional Antennas”, in proc of 29th
IEEE Conference on Local Computer Networks (LCN) 2004.
[4] T.Nadeem, “Opportunistic mechanisms for IEEE 802.11 networks using directional Antennas”, in proc IEEE International Performance Computing and Communications Conference (IPCCC), 2009.
[5] Erdem Ulukan and Ozgur Gurbuz, ”Angular MAC: a framework for directional antennas in wireless mesh networks” Wireless Netw (2008) Vol 14 pp :259–275
[6] Vivek Jain, Anurag Gupta, Dharma P. Agarwal, “On- Demand Medium Access in Multihop Wireless networks with Multiple Beam Smart Antennas”, IEEE Transactions on Parallel and Distributed Systems, Vol 19 No.4 April 2009, pp 489 – 502.
[7] C. Siva Ram Murthy & B. Manoj; “Ad Hoc Wireless Networks , Architectures and Protocols”, Prentice Hall, 2004
[8] Ajay Chandra V. Gummalla and John O.Limb , “Wireless Medium Access Control Protocols”, IEEE Communications Surveys and Tutorials, Second Quarter 2000
[9] Masanori Takata, Masaki Bandai and Takashi Watanabe, “Performance Analysis of a Directional MAC for Location Information Staleness in Ad Hoc Networks”, ICMU 2005 pp.82-87 April 2005.