International Journal of Electrical and Computer Engineering (IJECE)
Vol. 5, No. 2, April 2015, pp. 289~296
ISSN: 2088-8708 289
Journal homepage: http://iaesjournal.com/online/index.php/IJECE
The Extended Dijkstra’s-based Load Balancing for OpenFlow
Network
Widhi Yahya
1
, Achmad Basuki
2
, Jehn-Ruey Jiang
3
1,2
Department of Electrical Engineering, University of Brawijaya, Malang, Indonesia
1,3
Department of Computer Science and Information Engineering, National Central University, Taoyuan City, Taiwan
Article Info ABSTRACT
Article history:
Received Dec 26, 2014
Revised Feb 9, 2015
Accepted Feb 20, 2015
This paper proposes load-balancing algorithm on the basis of the Extended
Dijkstra’s shortest path algorithm for Software Defined Networking (SDN).
The Extended Dijkstra’s algorithm considers not only the edge weights, but
also the node weights to find the nearest server for a requesting client. The
proposed algorithm also considers the link load in order to avoid congestion.
We use Pyretic to implement the proposed algorithm and compare it with
related ones under the Abilene network topology with the Mininet emulation
tool. As shown by the comparisons, the proposed algorithm outperforms the
others in term of the network end-to-end latency, and throughput.
Keyword:
Dijkstra’s algorithm
Load-balancing
Shortest path
Software defined networking
Copyright © 2015 Institute of Advanced Engineering and Science.
All rights reserved.
Corresponding Author:
Widhi Yahya,
Department of Electrical Engineering,
University of Brawijaya,
Jl. Veteran, Malang 65145,East Java, Indonesia.
Email: widhi.yahya.ub@gmail.com
1. INTRODUCTION
The emergence of the SDN technology brings many new network applications realized by
programming the SDN controller. Typical examples include load-balancing, multimedia multicast, intrusion
detection, and so on. Load-balancing is an important concept in networking. The purpose of the load-
balancing application is to distribute the loads into multiple servers in order to get the best performance [1].
Online services, such as e-commerce, e-government, web sites, and social networks, often use multiple
servers to achieve reliability and high availability. Those service systems can use a load balancer in the front-
end to map requests from clients to servers. Using hardware load balancers can be a solution, but it suffers
from the expensive cost, and the rigid policy imposed by the vendor. The SDN technology enables users to
design their own flexible and cost-efficient load balancer that is suitable for their system.
Some load-balancing method using SDN technology are recently proposed. LABERIO [1] and
LOBUS [2] consider the path and link utilization as a method to optimize the system throughput. The other
method is the service-based load-balancing algorithm [3]. Service-based means consider the flow that related
to specific services. The purpose of the service-based load-balancing algorithm is specified resources
(switches, links, and servers) with particular services to increase reliability and availability of the system.
Both methods consider the path as the important thing in order to reach best performance, but maintaining the
path must be clearly defined. In this paper, we proposed load-balancing algorithm that is extended by shortest
path algorithm as a method to choose the best path.
In 2014, J.R. Jiang, et.al, extends the well-known Dijkstra’s shortest path algorithm [4] to consider
not only the edge weights, but also the node weights for a graph derived from the underlying SDN topology.
As shown by the simulation results in [4], the extended Dijkstra’s algorithm outperforms the Dijkstra’s
algorithm and the non-weighted Dijkstra’s algorithm under the Abilene network [5] in terms of end-to-end