An Algorithm to reduce End to End Delay AND Enhance the Quality of Service in Mobile Adhoc Network

A mobile adhoc network (MANET) is formed by a group of wireless mobile hosts or nodes without any fixed infrastructure. As there is no inner control in a MANET, a mobile node itself acts as a router. Undoubtedly, MANETs plays a critical job in situations where a wired infrastructure is neither available nor easy to install. Wireless mesh networks have large round trip time variations and these variations are dependent on the number of hops. The end-to-end throughput degrades rapidly with increase in number of hops. This is one of the biggest problems in MANET. In this paper we introduce an algorithm for avoiding congestion in MANETs. The algorithm demonstrates fast response and superior stability with the controlled packet dropping rate, and reduces end-to-end delay in MANETs, while still fully utilizing the network resources. Analysis and simulation show the strength and robustness of the algorithm. This method is simple and easy to use. We also illustrate the advantages of our proposed approach by comparing its results with standard AODV with recommended parameter settings.


INTRODUCTION
The mobile adhoc network is achieved by forming a temporary network, without the require of a central administration or standard support devices available in a conventional network, thus making an infrastructure less network. The mobile adhoc networks establish the network everywhere. These networks do not depend on the inappropriate hardware. These networks build, operate and maintain with the help of essential mobile nodes. Since these nodes have only a limited transmission range. It depends on its neigh boring nodes to forward packets [1].
Obstruction control is a main problem in mobile adhoc networks. The TCP congestion control mechanism is not able to handle the unique properties of a shared wireless channel as well. In particular the frequent changes of the network topology and the shared nature of the wireless channel pose significant challenges.
Many approaches have been proposed to overcome these difficulties [7] Adhoc network is a wireless and with no fixed apparatus (such as base stations), distributed network which is composed of mobile terminals [10], each mobile terminal is not only host computer but also a router. As power and bandwidth restrictions, adhoc network routing protocols should allocate routing tasks literally in the mobile nodes. At present, AODV routing protocol is often used in adhoc network. But its biggest failing is delay.
In routing discovery and continuance, a large number of data is transmitted through a small no. of nodes is hop to lead to network congestion and bottleneck, thus in order to balance the network load and maintain the network continuous, efficient and stable performance, it is necessary to take into account the routing nodes load and congestion in network [4]. Therefore we have proposed an algorithm to solve the adhoc network congestion problem. In these networks, shared wireless channel and dynamic topology leads to interference and loss during packet transmission. Packet victims and bandwidth deterioration are caused due to congestion and therefore, time and energy is wasted during its recovery. Congestion can be prevented using congestion aware protocol through bypassing the affected links [3]. Severe throughput degradation and massive fairness problems are some of the identified congestion related problems are generated from MAC, and protocol routing and transport layers [7].Congestion control is the main problem in adhoc networks.
Packet failure in MANETs is primarily caused due to obstruction. The packet loss can be considered by involving congestion control over a mobility failure adaptive routing protocol at the network layer. The congestion non adaptive routing, leads to the following difficulties.
Long delay: The congestion control mechanisms takes much time for detecting congestion. Usage of new routes in some critical situation is advisable. In an on demand routing protocol the main problem is delay moving for router searching.
High overhead: It takes effort in new routes for processing and communication for discovering it. It also takes effort in multi path routing for maintaining the multi-paths though there is another protocol.
Many packet losses: The packet may be lost when the congestion is detected. To decrease the traffic load, a congestion control solution is applied either by decreasing the sending rate at the transmitter, or dropping packets at the intermediate nodes or by both methods. But high packet loss rate or a small throughput occurs at the receiver [13].

RELATED WORK
Yao-Nan Lien et al [6] proposed a new TCP congestion control mechanism by router-assisted approach. Their proposed TCP protocol, called TCP Muzha uses the assistance provided by routers to achieve better congestion control. To use TCP Muzha, routers are required to provide some information allowing the sender to estimate more accurately the remaining capacity over the bottleneck node with respect to the path from the sender to the receiver. With this information TCP Muzha will be able to enhance the performance of both TCP network.
Yung Yi et al [17] have developed a fair hop-by-hop congestion control algorithm with the MAC constraint being imposed in the form of a channel access time limitation, using an optimization based framework. In the absence of delay, next, in the presence of delay, they have shown that the hop-by-hop control algorithm has the property of spatial propagation.
S.Karunakaran et al [5] have presented a Cluster Based Congestion Control (CBCC) protocol that consists of scalable and distributed cluster-based mechanisms for supporting congestion control in mobile ad hoc networks. The distinctive feature of their approach is that it is based on the self-organization of the network into clusters. The clusters autonomously and productively monitor congestion within its localized scope.
R.Mynuddin Sulthani et al [11] proposed a joint design of reliable QoS architecture for mobile adhoc networks. In the reliable multipath routing protocol, dispersion and ensure code techniques are utilized for producing replicated fragments for each packet, to enhance reliability. Then message with good delivery probability are identified and transmitted through the paths with high average node delivery index. While it receives an assured number of fragments, destination can recover the original packet. Next, a call admission control (CAC) scheme has been developed, in which, the calls are admitted based on the bandwidth availability of the path. Once congestion occurs, the best effort traffic is rate controlled, to free bandwidth for the real-time flows.
S.Venkatasubramanian et al [14] proposed the QoS architecture for Bandwidth Management and Rate Control in MANETs. The bandwidth information in the architecture can be used for QoS capable routing protocols to provide support D e c 1 7 , 2 0 1 3 to admission control. The traffic is balanced and the network capacity is improved as the weight value assists the routing protocol to evade routing traffic through congested area. The source node then performs call admission control for different priority of flows based on the bandwidth information provided by the QoS routing. In addition to this, a rate control mechanism is used to regulate best-effort traffic, whenever network congestion is noticed. In this mechanism, the packet generation rate of the low-priority traffic is adjusted to incorporate the high-priority traffic.
Xuyang Wang et al [16] proposed a cross layer hop by hop congestion control scheme to improve TCP performance in multihop wireless networks which coordinates the congestion response across the transport, network, and transport layer protocols.The congestion control efforts are invoke at all intermediate and source node along the upstream paths directed from the wireless link experiencing the congestion induced packet drop. P.K.suri et al [12] proposed a bandwidth-efficient power aware routing protocol -QEPAR‖. The routing protocol is presented to minimize the bandwidth consumption as well as delay QEPAR will help in increasing the throughput by decreasing the packet loss due to non availability of node having enough battery power to retransmit the data packet to next node. Bhadauria, Sharma [2] proposed the information about network congestion is collected and distributed by mobile agents (MA). The mobile agent measures the queue length of the various traffic classes and the channel contention and estimates the total congestion metric to find the minimum congestion level in the network.
Kazuya Nishimura et al [9] proposed a routing protocol that reduces network congestion for MANET using multiagents. They use two kinds of agents: Routing Agents to collect information about congestion and to update the routing table at each node, and Message Agents to move using this information. In the future, they will investigate a better evaluation function and discuss the limits of its effectiveness. The evaluation function itself may change depending on the environment. Incorporating learning into the function is also an interesting issue.

PROPOSED WORK
Drop tail queue management is one of the popular configurations used due to its simplicity. Drop tail set a maximum length for each queue on the router and accepts every packet until the maximum queue size is reached. Once the maximum queue size is reached, the algorithm drops the packet until the queue size is again below the maximum. This technique results in some severe drawbacks. First of all, drop tail queues are not suited to interactive network applications because the drop-tail queues are always full or close to full for long periods of time and packets are continuously dropped when the queue reaches its maximum length. In today's world the number of interactive applications such as voice-video sessions and web transfers is growing. Also another well-known fact is that such applications require low end-to-end delay. When the queue size is almost full for long interval of time, the delay will of course be large which makes such applications untenable. The conclusion to the full queues problem is not waiting to drop packets until the queue gets full, but rather to drop the packets before the queues becomes full so that sources slow down because of this congestion notification, thus preventing the queue from overflowing. This method is called Active Queue Management, AQM, and is highly recommended for today's routers. Queue can be managed on different way, to improve the network performance by reducing the sensitivity of queue parameter setting. Proposed algorithm is based on combined feature of Random Early Detection (RED) and AODV protocol to congestion control. AODV protocol search route which is based on optimal condition such as less number of hopes to travel from source to destination but not based on congestion status of route. Source can search a route which is congested even there is available non congested route from other node with some little more overhead. In proposed mechanism consideration is taken based on congestion status of nodes in the route by receiving of route request packet (RReq) On reception of RReq, each node calculate average queue size (average) of node, and compared with the Minimum and Maximum threshold parameters. If average is less than minimum threshold then RReq is forward instantly, if average is between the minimum threshold and maximum threshold the delay is applied based on avg. if average is greater than Max threshold then RReq message is dropped without further forwarding of RReq.

Delay factor calculation
Delay factor is calculated by increasing delay from minimum threshold (Minth) to maximum threshold (Maxth), if average (avg) is greater than and near Minth then less delayed on RReq packet. If avg is near Maxth then larger delay will be applied on RReq, purpose of this mechanism is to find the non congested route. This can be done by monitoring the traffic generation and consumption, traffic generation is based on source generating packet average size of packet and no number of packets generating per second, this will be actual traffic on bytes/second from one source. Network traffic will depend on number of sources and their aggregate packet generation. Now the load on link can be evaluated on based traffic passing from the particular link, if link is shared by different sources then aggregate traffic on link will be addition of packets passing to the link from different sources.
On each node queue of fixed length is maintained to store the packet which is not instantly transferred till there is available queue space, on monitoring of queue will be based on the incoming packets and outgoing packets per unit of time. If packets are exceeding the certain threshold then some packets will be dropped by node to indicate the initial congestion and source on receiving the notification slow down the packet transmission rate. Threshold will be decided based on size of queue and packet stored within the queue and difference between incoming and outgoing packet from the queue. D e c 1 7 , 2 0 1 3

Where DF stands for Delay Factor
The above formula is used to calculate the delay; here the queue size is the size of queue which means that the number of packets stored within the queue each queue has a limit on the number of packets that the router can place onto the queue. This queue limit is a user configured limit so that we have taken the value of queue limit is 50 in our simulation. During periods of high traffic a queue fills with packets waiting for transmission, when queue reaches its queue limit and becomes full then router sends notification to the sender that the queue is full. This queue limit is a static value for the entire simulation period. The value of q_min and q_max are dynamically changes during the entire simulation. The maximum delay (max_delay) is a predefine value which is 100 we have taken in our simulation, this is static value; it will not change during the entire simulation. So, these are the parameters which we have used to calculate the delay factor.

Queue Length Estimation
Our goal is to acquire network statistics, we compute the traffic rate as follows; let the value Lo represents the offered load at the queue of node i and it is defined as (1) Where ARi is the aggregate arrival rate of the packets produced and forwarded at node i while Sri is the service rate at node i , i.e., SRi =1/T where T is the computed exponentially weighted moving average of the packets' waiting time at the head of the service queue. The distribution of the queue length PR (Q1) (essentially this is the probability that there are Q1 packets in the queue) at the node is computed as For N distinct queues, the joint distribution is the product

Channel Contention Estimation
IEEE 802.11 MAC with the distributed coordination function (DCF). It has the packet sequence as request-to-send (RTS), clear-to-send (CTS), data and acknowledgement (ACK). The amount of time between the receipt of one packet and the transmission of the next is called a short inter frame space (SIFS). Then the channel occupation due to MAC contention will be Where tRTS and tCTS are the time consumed on RTS and CTS, respectively and tSIFS is the SIFS period. tacc is the time taken due to access contention.
The channel occupation is mainly dependent upon the medium access contention, and the number of packet collisions. That is, Cocc is strongly related to the congestion around a given node. D e c 1 7 , 2 0 1 3

Figure 1 Flow graph for our Approach
Here we create flow graph for our algorithm, first we have initialized the node when sender broadcast routing packet to its all neighbor and when this packet is received by a router then the router checks the status of queue, If the router queue is empty then calculate the average queue length if average is less than the minimum threshold then no delay is applied on the packet but if average is between the Minth and Maxth then delay factor is applied on the request with the help of formula we have mentioned as above and if the average queue size is greater than the Maxth then the packet is dropped without further forwarding.If the router queue is not empty then the notification is sent to the sender that the queue is full so, that the sender will understand that the queue is overflow. The purpose of this mechanism is to find the non congested route.

Proposed Algorithm
We propose an algorithm to reduce an End-to-End delay and enhance the throughput in MANETs. As we know the computational capacity of mobile nodes are not very high so we should apply a less complex scheme with less computational overhead, our scheme is a light weight one. To maintain or enhance the Quality of Service (QoS) of any MANET, we propose an algorithm by applying which any network can improve its quality when it is in degradable cases. Our algorithm is flexible and easy to use.
Our algorithm is based on the following assumptions: 1. Network is planner 2. Nodes are connected and each node is aware of the whole network 3. Each node is aware of the total number of other nodes in the network

nodes can move bidirectionally
The algorithmic steps are: Step 1:

Initialize input type which is input stream
If input type = input stream Then initialize input stream =0; D e c 1 7 , 2 0 1 3 Step 5: else send notification to the sender that queue is full Step 6: end the simulation The result show in the form of graphs and tables, throughput, packet drop rate, packet sending rate and end-to-end delay in MANET.In our scheme we have simulate the result by calculating the average queue length of the packet at every node, and we have obtained the result of different parameters that gives improve result than the previous standard AODV. These parameter shown results in the form of graphs and tables.

Performance Metrics
The performance of proposed technique is considered mainly, according to the following metrics.
Packet Delivery Fraction: the ratio of the number of delivered data packet to the destination, this represents the level of delivered data to the end host. The greater value of packet delivery ratio means the better performance.
Throughput: It is the number of data packets received successfully at the recipient node.
Average end-to-end delay: the average time consumed by a data packet to reach the destination, it is also includes the delay caused by route discovery process and the queue in the data packet transmission.

Throughput Analysis
This metric represents the total number of packets forwarded to higher layers per minute. It is measured in bps. It can also be defined as the total amount of data a receiver actually receives from sender divided by the time taken by the receiver to obtain the last packet.
In our simulation we use an algorithm and find out that our approach gives better result on the basis of throughput that manage the traffic by calculating the average queue size of packet. So our result is very good. In the table 2. We show the throughput analysis in discrete event of time and we get our algorithm gives the better throughput at each point as compare to previous AODV-STD mechanism.

Packet Delivery Fraction:
The ratio of the number of delivered data packet to the destination, this represents the level of delivered data to the end host. The greater value of packet delivery ratio means the better performance.  fig. 3, we can see that the packet delivery fraction for proposed algorithm is more, when compared to AODV-STD mechanism.

Average End-to-End-Delay of Data Packets
Average end-to-end delay: the average time consumed by a data packet to reach the destination, it is also includes the delay caused by route discovery process and the queue in the data packet transmission.
From figure 4, we can see that the average (avg) End-to-End Delay of proposed algorithm is less when compared to the AODV standard algorithm.
. D e c 1 7 , 2 0 1 3  Table 4 End-to-End Delay Calculation Table   CONCLUSION In this paper, we have proposed an algorithm to adapt to network congestion in mobile adhoc networks. The existing MANET protocols are not adaptive to network congestion and can not handle the heavy traffic load while offering services to multimedia applications. The proposed algorithm reduces packet losses and also reduces the end-to-end delay than the existing routing protocol in real time transmission. The non congested route concept in the proposed method help next node that may go congested, whenever a node receives a route request (RReq) , it calculates the average queue size of the packet and compare with the threshold values and take an action according to that avg queue size value. Delay factor is applied on that packet, thus congestion can be avoided it offers high packet delivery, and the average end-to-end delay is also reduced. Thus the proposed algorithm in mobile adhoc networks is especially designed for real time applications. Results we presented considering various situations to show the effectiveness of our proposed algorithm. It is clear that our proposed algorithm can provide good performance comparable to AODV protocol.