Load Balancing the Network Traffic in the Nth Mode of IPtables

In this paper, we present the network load balancing to optimize the network interfaces that are present in the cluster. We know, everything belongs to internet now a days. With the increase in the popularity of the web, network traffic increases and need for fast access to the internet is also on demand. For smooth services, redundancy of the servers is required. As a result, load balancing has become a very critical job. A single server is not able handle all the traffic which results into a server crash. Network is divided into different paths on which the transmission of packets is done. They are distributed on all the interfaces simultaneously. We investigate the performance of perpacket load balancing in different servers. Simulation results reveal that it is always beneficial to use load balancing and backup of other servers are always present in case of any failure in network.

One of the main issues in the development of network applications is the load balancing.For instance, a social networking site requires so many servers in different areas to fetch the results in order to generate web page.Therefore, it is necessary to balance the load.Load balancing is the ability of the router to distribute the client's request across the number of servers within the cluster to reach the destination address.It is a network service which controls the network servers and network resource utilization.The load is distributed on the network among N paths which have been established between the routers.The request is distributed on the basis of network varibilities such as IP addresses and destination port.
When the client requests, network load balancing transparently distributes the request to servers but from client side of view it acts as a single sever that is answering to its request.Multiple number of servers and ISPs (Internet Service Providers) are connected together to form a cluster and it appears to be a single server to the client.User's request is routed to the best path among several paths that are involved in the network to provide the same service.It also enables the host to remove the server from the cluster when the load goes down and it also has the ability to add host when the load goes up without bringing cluster goes down.It provides high availability.The network is always available without any delay, by detecting host failures and automatically redistributing the network traffic to other working servers.Servers can be positioned anywhere in the network and there is no restriction on the number of servers.In case of network failure, it will only reduce the number of servers available in the network.Load balancing improves the performance of the server and there is proper utilization of the network interfaces present in the cluster, which further increases the bandwidth of the network.It enhances the network performance.

Literature review
Baldine et al (1998) studied the dynamic load balancing problem in broadcast WDN networks.The tunable transceivers take a non-negotiable amount of time to switch between wavelengths so as to check which part of network is unavailable for normal operation.Their main contribution is a new approximation algorithm for load balancing problem that provides for trade off selection between two conflicting goals using two parameters 1 .Kashem et al (2000) explained that the reconfiguration of the network for load balancing determined the switching options for particular set of loads relieved overloads on distributed system and improves load balancing.The test results showed that the proposed method can be identified as the most effective branch-exchange operations for load balancing with less computational efforts and time.In the proposed method, the number of load flow solutions has been reduced to a greater extent 2 .
Du et al (2003) investigated a novel distributed load balancing scheme for cellular networks that changes the cellular coverage in real time according to geographical distribution.In this paper, a cooperative negotiation approach for cellular network coverage with semi-smart antennas is described.Optimum local coverage agreements can be reached by the use of the negotiations between adjacent base stations 3 .
Hoang et al (2006) expected that future ITS (Intelligent transport system) network will consists of a lot of mobile equipments and a complex network is formed.In this paper, source node performed the load balancing on the probe packets sent by the destination node.So the number of probe packets will reduce to half.They also represented a new formula for available bandwidth estimation of 802.11 ad hoc networks 4 .
Hayian et al (2009) proposed multi-ISP load balancing optimization model based on BP neural networks in order to solve the problem of manual strategy choice when they use the campus network of multiple internet service provider (ISP).The establishment of network topology structure was discussed in this paper and a detailed description about the data and processing were given.The effectiveness of the model was verified by the experimental results 5 .Zhang (2011) presented an algorithm on an exponentially hard problem that is load balancing.To improve the performance of wiredwireless networks they presented this algorithm.This algorithm identifies the pair of access point for load balancing and pair of access points are divided into segments, so that the required search space is reduced.Average throughput and packet delivery ratio were shown after load balancing is performed 6 .
Saxena et al (2012) explained that tremendous growth has been witnessed in the present era and different applications are supported by it.There is an enormous pressure on Internet Service Providers (ISPs) to make available adequate services for the traffics like VoIP and video on demand.Since the resources like computing power, bandwidth etc. are limited, the traffic needs to be engineered to properly exploit them 7 .
Wang et al (2013) described that due to the current number of domestic Internet access provider (ISP), backbone operators are distributed in different regions which slows down the access speed between them.So, various colleges and universities have to adapt network access environment and use of simulations access cernet and ChinaNet and other ways to enhance the campus network users of the cernet and public network access speed 8 .
Bautista et al (2014) explained that the next generation long term evaluation advanced consists of a favorable solution to withstand the exponential growth of cellular connects as compared to user equipment devices (UTs) and their increasing bandwidth demand.A distributed algorithm is presented in which MRNs acted as intermediate relays between underloaded eNodesBs and UEs attached to other overloaded cell by dynamically assigning them a portion of resource blocks initially scheduled for corresponding intermediate MRN 9 .
Kayamak et al (2015) evaluated the performance of per packet load balancing in data cellular networks (DCN's).Though load balancing benefits the performance networks but it also causes out of order packet delivery.They investigated the effects of out of delivery of packets on throughput and flow completion time of long and short flows respectively.The presence of out of order packets in a DCN using per-packet load balancing also confirmed in their simulations.Inspite of the presence of out of packet delivery simulations should be such that the per packet load balancing may yield smaller average flow completion time for short 10 .The selection of an interface for an incoming packet is done by using round robin algorithm.Multiple equal-cost paths to the destination are available.One of them is randomly selected and the packet is transmitted to specific node.This technique also requires the calculation of best path, so that the per-packet load balancing is able to distribute the traffic among them.Fig.1. shows the implementation flow chart.Fig. 2 shows the network layout of 9 routers through which the traffic has to be distributed equally.Node labeled as R1 acts as a client server and node labeled as R4 acts a host server.In  between there are multiple paths through which the network traffic is distributed to reach the host machine.
A buffer size of 1000 packets is selected.Every interface has bandwidth of 100Mb/s and delay of 50µs, 100µs.Point to point links is created and per-packet load balancing at each router is enabled.We also established the best routes by calculating the metrics such as bandwidth and delay.Now, how this load balancing works.R1node is taken as a client and R4 works as Host server and all other servers acts as workers.All the packets will flow from the loopback address of 1.0.0.0 network that is build on R1 to 3.0.0.0 network of loopback address which is build on R4 and vice versa.First packet is randomly transmitted on one of the best route and then second packet on second route, third one on third route.Then again it send packet on the route that we used first and hence, it follows round robin algorithm.
This figure shows the equal distribution of packets on all the interfaces and the packets are in order as they are distributed from the client to reach the host as its destination.
For smooth services, redundancy is required.Such as if there is a network failure in the first interface, there is always a backup of another  balanced.All the nodes are equally utilized and the bandwidth usage of all the nodes is also equal.This shows the load is balanced on all the ports.None of the port is overloaded and none of the port is underloaded.It is improving the performance of all the servers that are balancing the load and there is proper utilization of the network interfaces present in the cluster, which further improving the bandwidth utilization of the network.
Fig. 8. shows the comparison of the bandwidth usage on all the ports for incoming traffic while fig.9. shows the comparison of the bandwidth usage on all the ports for the outgoing traffic.These graphs demonstrate that the network traffic going through port 1 and port 3.No traffic is going and coming through port 2 because of the node down on that link.So, there is no loss of data.Fig. 10 and 11 shows the comparison of the average bandwidth usage of incoming and outgoing traffic of the two scenarios of the simulation.In case of load balancing, the average bandwidth usage is more effectively utilized on comparing it with the average bandwidth usage when there is no load balancing.The network traffic will be reduced by distributing it on all the links.

CONCLUSION
It is concluded that when the load is balanced, it improves the network performance which results into the effective utilization of the bandwidth.Performance of the network is degraded and utilization of bandwidth on some links is low in case of no load balancing.Simulation results show that it is always beneficial to use load balancing.It also shows the recovery of the network traffic transmission in case of failure of a server on other paths and it again achieves to load balance on other links.This study can further be conducted by using different parameters and by varying the different parametric values.

Figure 6 &
Figure 6 & 7 shows the comparison of all the three ports.It shows when is packets are send from client to the server they are equally distributed on all the interfaces for the incoming and outgoing traffic.There is per-packet transmission on all the ports which makes load of the network traffic

Table 1 : parameters Used In Simulation
Networks.