Abstract
In this paper, we evaluate the performance of two Wireless Mesh Networks (WMNs) architectures considering throughput, delay, jitter and fairness index metrics. For simulations, we used ns-3, Distributed Coordination Function (DCF) and Optimized Link State Routing (OLSR). We compare the performance of WMN for different Transmission Control Protocol (TCP): Tahoe, Reno and NewReno considering normal and uniform distributions of mesh clients by sending multiple Constant Bit Rate (CBR) flows in the network. The simulation results show that for normal and uniform distributions and both WMN architectures, the PDR values are almost the same. For Hybrid WMN, the throughput of TCP NewReno is good, but for I/B WMN, the throughput of TCP Tahoe is higher than other algorithms. For normal distribution, the delay and jitter of I/B WMN are lower compared with Hybrid WMN, while for uniform distribution, the delay and jitter of TCP NewReno are a little bit lower compared with other algorithms. The fairness index of normal distribution is higher than uniform distribution.
Keywords
Introduction
Wireless Mesh Networks (WMNs) [1] are important networking infrastructures. These networks are made up of wireless nodes, organized in a mesh topology, where mesh routers are interconnected by wireless links and provide Internet connectivity to mesh clients.
WMNs distinguish for their low cost nature that makes them attractive for providing wireless Internet connectivity [22]. Moreover, such infrastructure can be used to deploy community networks, metropolitan area networks, municipal and, corporative networks, and to support applications for urban areas, medical, transport and surveillance systems.
The main issue of WMNs is to achieve network connectivity and stability as well as QoS in terms of user coverage. This problem is very closely related to the family of node placement problems in WMNs [6,15,25,27], among them, the mesh router mesh nodes placement. We consider the version of the mesh router nodes placement problem in which we are given a grid area where to deploy a number of mesh router nodes and a number of mesh client nodes of fixed positions (of an arbitrary distribution) in the grid area. The objective is to find a location assignment for the mesh routers to the cells of the grid area that maximizes the network connectivity and client coverage.
As node placement problems are known to be computationally hard to solve for most of the formulations [14,28], Genetic Algorithms (GAs) has been recently investigated as effective resolution method.
In our previous work [10,19,20], we used WMN simulation system which is based on Genetic Algorithms (GAs) (we call this system WMN-GA) to find an optimal location assignment for mesh routers in the grid area in order to maximize the network connectivity and client coverage.
In this work, we use the topology generated by WMN-GA system and evaluate by simulations the performance of normal and uniform distributions of mesh clients considering different TCP congestion-avoidance algorithms and two WMN architectures by sending multiple Constant Bit Rate (CBR) flows in the network. For simulations, we use ns-3 and Optimized Link State Routing (OLSR). As evaluation metrics we considered packet delivery ratio (PDR), throughput, delay, jitter and fairness.
The rest of the paper is organized as follows. Architectures of WMNs are presented in Section 2. In Section 3, we show the description and design of the simulation system. In Section 4, we discuss the simulation results. Finally, conclusions and future work are given in Section 5.
Architectures of WMNs
In this section, we describe the architectures of WMN. The architecture of the nodes in WMNs [17,18,21,29] can be classified according to the functionalities they offer as follows:
Simulation system description and design
GUI of WMN-GA system
The WMN-GA system can generate instances of the problem using different distributions of client and mesh routers.
The GUI interface of WMN-GA is shown in Fig. 1. The left site of the interface shows the GA parameters configuration and on the right side are shown the network configuration parameters.
For the network configuration, we use: distribution, number of clients, number of mesh routers, grid size, radius of transmission distance and the size of subgrid.

GUI tool for WMN-GA system.
For the GA parameter configuration, we use: number of independent runs, GA evolution steps, population size, population intermediate size, crossover probability, mutation probability, initial methods, select method.
We use WMN-GA system for node placement problem in WMNs. A bi-objective optimization is used to solve this problem by first maximizing the number of connected routers in the network and then the client coverage. Network connectivity is measured by the Size of Giant Component (SGC) of the resulting WMN graph, while the user coverage is simply the Number of Covered Mesh Clients (NCMC) that fall within the radio coverage of at least one mesh router node. The input parameters of WMN-GA system are shown in Table 1. In Fig. 2 and Fig. 3, we show the location of mesh routers and clients for first generations and the optimized topologies generated by WMN-GA system for normal and uniform distributions, respectively.
In Fig. 4 and Fig. 5 are shown the simulation results of SGC and NCMC vs. number of generations. After few generations, all routers are connected with each other.
Then, we optimize the position of routers in order to cover as many mesh clients as possible. We consider normal and uniform distributions of mesh clients. The simulation results of SGC and NCMC are shown in Table 2.
Input parameters of WMN-GA system
Input parameters of WMN-GA system

Location of mesh routers

Location of mesh routers
We conduct simulations using ns-3 simulator. The simulations in ns-3 are done for number of generations 1 and 200. The area size is considered

SGC and NCMC vs. number of generations for normal distribution.

SGC and NCMC vs. number of generations for uniform distribution.
Evaluation of WMN-GA system
Simulation parameters for ns-3
The ns-3 simulator [16] is developed and distributed completely in the
In order to achieve scalability of a very large number of simulated network elements, the ns-3 simulation tools also support distributed simulation. The ns-3 support standardized output formats for trace data, such as the pcap format used by network packet analyzing tools such as tcpdump, and a standardized input format such as importing mobility trace files from ns-2 [26].
The ns-3 simulator is equipped with Pyviz visualizer, which has been integrated into mainline ns-3, starting with version 3.10. It can be most useful for debugging purposes, i.e. to figure out if mobility models are what you expect, where packets are being dropped. It is mostly written in Python and it works both with Python and pure
The ns-3 simulator has models for all network elements that comprise a computer network. For example, network devices represent the physical device that connects a node to the communication channel. This might be a simple Ethernet network interface card or a more complex wireless IEEE 802.11 device.
The ns-3 is intended as an eventual replacement for popular ns-2 simulator. The ns-3’s wifi models a wireless network interface controller based on the IEEE 802.11 standard [8]. The ns-3 provides models for these aspects of 802.11:
Basic 802.11 DCF with infrastructure and ad hoc modes. 802.11a, 802.11b, 802.11g and 802.11s physical layers. QoS-based EDCA and queueing extensions of 802.11e. Various propagation loss models including Nakagami, Rayleigh, Friis, LogDistance, FixedRss, and so on. Two propagation delay models, a distance-based and random model. Various rate control algorithms including Aarf, Arf, Cara, Onoe, Rraa, ConstantRate, and Minstrel.
Overview of DCF protocol
DCF is a random access scheme based on the Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA) scheme. A legacy DCF station with a packet to send will first sense the medium for activity. If the channel is idle for a Distributed Inter-Frame Space (DIFS), the station will attempt to transmit after a random back-off period. This period is referred as the Contention Window (
If the ACK is not received within a Short Inter-Frame Space (SIFS), it assumes that the frame was lost due to collision or being damaged. The
Overview of OLSR routing protocol
The OLSR protocol [4] is a pro-active routing protocol, which builds up a route for data transmission by maintaining a routing table inside every node of the network. The routing table is computed upon the knowledge of topology information, which is exchanged by means of Topology Control (TC) packets.
OLSR makes use of HELLO messages to find its one hop neighbours and its two hop neighbours through their responses. The sender can then select its Multi Point Relays (MPR) based on the one hop node which offer the best routes to the two hop nodes. By this way, the amount of control traffic can be reduced. Each node has also an MPR selector set which enumerates nodes that have selected it as an MPR node. OLSR uses TC messages along with MPR forwarding to disseminate neighbour information throughout the network. Host Network Address (HNA) messages are used by OLSR to disseminate network route advertisements in the same way TC messages advertise host routes.
Overview of TCP congestion-avoidance algorithms
TCP is transport layer is the reliable connection orientated protocol that provides reliable transfer of data between the nodes [13]. It ensures that the data is reached the destination correctly without any loss or damage. The data is transmitted in the form of continuous stream of octets. The reliable transfer of octets is achieved through the use of a sequence number to each octet. Another aspect of TCP is the tree way handshakes mechanism to establish a connection between the nodes [5]. Furthermore, TCP uses the port assignment as an addressing mechanism to differentiate each connection for the cases of more TCP connection between nodes are required. After the introduction of first version of TCP several different TCP variants exist. The most famous implementation of TCP are Tahoe, Reno and NewReno.
Modern TCP implementations contain a number of algorithms aimed at controlling network congestion while maintaining good user throughput. Early TCP implementations followed a go-back model using cumulative positive acknowledgment and requiring a retransmission timer expiration to re-send data lost during transport. These TCPs did little to minimize network congestion. In our study we concentrate on three TCP congestion-avoidance algorithms [5]: TCP Tahoe [11], TCP Reno [2] and TCP NewReno [7].
TCP Tahoe
The Tahoe TCP implementation added a number of new algorithms and refinements to earlier implementations. The new algorithms include Slow-Start, Congestion Avoidance, and Fast Retransmit [11]. The refinements include a modification to the round-trip time estimator used to set retransmission timeout values. All modifications have been described elsewhere [11,23]. The Fast Retransmit algorithm is modified in subsequent versions of TCP. With Fast Retransmit, after receiving a small number of duplicate acknowledgments for the same TCP segment (dup ACKs), the data sender infers that a packet has been lost and retransmits the packet without waiting for a retransmission timer to expire, leading to higher channel utilization and connection throughput.
TCP Reno
TCP Reno retains the basic principle of Tahoe, such as slow starts and the coarse grain retransmit timer. However it adds some intelligence over it so that lost packets are detected earlier and the pipeline is not emptied every time a packet is lost [24] Reno requires that we receive immediate acknowledgement whenever a segment is received. The logic behind this is that whenever we receive a duplicate acknowledgment, then his duplicate acknowledgment could have been received if the next segment in sequence expected, has been delayed in the network and the segments reached there out of order or else that the packet is lost. If we receive a number of duplicate acknowledgements then that means that sufficient time have passed and even if the segment had taken a longer path, it should have gotten to the receiver by now [3]. There is a very high probability that it was lost. So Reno suggests an algorithm called “Fast Retransmit” [12].
TCP NewReno
NewReno is a slight modification over TCP Reno. It is able to detect multiple packet losses and thus is much more efficient that Reno in the event of multiple packet losses. Like Reno, NewReno also enters into fast-retransmit when it receives multiple duplicate packets, however it differs from Reno in that it does not exit fast-recovery until all the data which was out standing at the time it entered fast recovery is acknowledged. Thus it overcomes the problem faced by Reno of reducing the cwnd multiples times. The fast-transmit phase is the same as in Reno. The difference in the fast recovery phase which allows for multiple re-transmissions in NewReno. Whenever NewReno enters fast recovery it notes the maximums segment which is outstanding. The fast-recovery phase proceeds as in Reno, however when a fresh ACK is received then there are two cases: If it ACK’s all the segments which were outstanding when we entered fast recovery then it exits fast recovery and sets cwnd to ssthresh and continues congestion avoidance like Tahoe. If the ACK is a partial ACK then it deduces that the next segment in line was lost and it re-transmits that segment and sets the number of duplicate ACKS received to zero. It exits fast recovery when all the data in the window are acknowledged [7].
Simulation results
For simulations, we used the PDR, throughput, delay, jitter, fairness metrics to evaluate the performance of WMNs for two architectures considering TCP congestion-avoidance algorithms, normal and uniform distributions of mesh clients. As fairness index, we use Jain’s Fairness Index. For a given a set of n data
The fairness index is the square of the ratio of two power means of the
In Fig. 6, we show the simulation results of PDR. For normal and uniform distributions, both WMN architectures, the PDR values of TCP congestion-avoidance algorithms are almost the same.
In Fig. 7, we show the simulation results of throughput. For normal distribution and I/B WMN architecture, the throughput of TCP congestion-avoidance algorithms is almost the same. However, for Hybrid WMN, the throughput of TCP NewReno is higher than other algorithms. For uniform distribution and Hybrid WMN architecture, the throughput of TCP Reno is better than other algorithms. However, for I/B WMN, the throughput of TCP Tahoe is higher than other algorithms.

Results of average PDR.

Results of average throughput.
In Fig. 8 and Fig. 9, for normal distribution, the delay and jitter of I/B WMN are lower compared with Hybrid WMN. For uniform distribution, the delay and jitter of TCP NewReno are a little bit lower compared with other algorithms.
In Fig. 10, we show the fairness index. For normal distribution, the fairness index of Hybrid WMN is higher than I/B WMN. However, in the case of TCP NewReno, the fairness index of I/B WMN is higher than Hybrid WMN. For uniform distribution and I/B WMN architecture, the fairness index of TCP congestion-avoidance algorithms is almost the same. However, for Hybrid WMN, the fairness index of TCP NewReno is higher than other algorithms.

Results of average delay.

Results of average jitter.

Results of fairness index.
In this work, we presented WMN-GA system and applied it for node placement problem in WMNs. We evaluated the performance of WMN-GA system for normal and uniform distributions of mesh clients considering OLSR and different TCP congestion-avoidance algorithms.
From the simulations we found that:
For normal and uniform distributions, both WMN architectures, the PDR values of TCP congestion-avoidance algorithms are almost the same.
For normal distribution and I/B WMN architecture, the throughput of TCP congestion-avoidance algorithms is almost the same. However, for Hybrid WMN, the throughput of TCP NewReno is higher than other algorithms. For uniform distribution and Hybrid WMN architecture, the throughput of TCP Reno is better than other algorithms. However, for I/B WMN, the throughput of TCP Tahoe is higher than other algorithms.
For normal distribution, the delay and jitter of I/B WMN are lower compared with Hybrid WMN. For uniform distribution, the delay and jitter of TCP NewReno are a little bit lower compared with other algorithms.
For normal distribution, the fairness index of Hybrid WMN is higher than I/B WMN. However, in the case of TCP NewReno, the fairness index of I/B WMN is higher than Hybrid WMN. For uniform distribution and I/B WMN architecture, the fairness index of TCP congestion-avoidance algorithms is almost the same. However, for Hybrid WMN, the fairness index of TCP NewReno is higher than other algorithms.
In the future work, we would like to implement other intelligent systems and compare the performance with the proposed system.
