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