Vol.:(0123456789)
Wireless Personal Communications
https://doi.org/10.1007/s11277-019-06781-5
1 3
A Novel Network Coding Algorithm to Improve TCP
in Wireless Networks
Azam Jannesari
1
· Mehdi Agha Sarram
1
· Razieh Sheikhpour
2
© Springer Science+Business Media, LLC, part of Springer Nature 2019
Abstract
This paper proposed a novel algorithm called Efciency Network Coding (ENC) for wire-
less mesh networks. The ENC algorithm is based on COPE protocol and consists of two
parts: In the frst part, ENC codes the packets which have a smaller diference in size than
other packets and so uses less bandwidth to code and send packets. In the second part, the
nodes which their packets are in front of virtual queue and the ones which their packets are
in front of output queue participate in coding. Therefore, ENC increases coding opportuni-
ties and takes less time for sending packets. The proposed ENC is implemented in NS2.34
with TCP-New Reno on COPE framework and compared with the throughput of TCP in
COPE. The results of this paper show that the throughput of the proposed ENC is greater
than that of COPE in most cases. The time complexity of ENC depends on the overhear
packets in the nodes and can be less, equal, or more than COPE in diferent conditions.
Keywords TCP · Network coding · COPE · Wireless networks · Throughput
1 Introduction
Network coding is a new approach for sending information and has been recently pro-
posed as an alternative for routing [1–6]. Routing is a means to fnd the best possible route
between sender and receiver for sending data via the route. In routing algorithms, the inter-
mediate nodes can only copy data packets from input edges and send the packets to the
appropriate output. In other words, the intermediate nodes in routing algorithms are not
allowed to change the data packets. In the network coding method, the intermediate nodes
are permitted to changes the packets. Each node is allowed to send combinations of input
packets to its output edges [7–11].
One of the frst network coding protocols is COPE which has been implemented by
Katti et al. [2] between MAC and LL in a wireless mesh network. Three main techniques
* Mehdi Agha Sarram
mehdi.sarram@yazd.ac.ir
1
Department of Computer Engineering, Faculty of Engineering, Yazd University, Yazd, Iran
2
Department of Computer Engineering, Faculty of Engineering, Ardakan University, P.O. Box 184,
Ardakan, Iran