SDN is a new paradigm in computer networks that separates the control plane and data plane. The concept offers better programmability of devices and more efficient network management. In the context of determining the route in the routing mechanism on the SDN network, topology discovery and routing calculations are carried out by the SDN controller only. The mechanism in determining the best route traversed by a packet from the sender to the receiver is determined by a routing algorithm. One of the existing routing algorithms is the link-state routing algorithm. One application of the existing link state routing algorithm is the Dijkstra algorithm. In Dijkstra's Algorithm the focus of this algorithm is only on the route search strategy without defining the weights used. In general, the static distance between two nodes will be weighted without considering the condition factor of the network being passed. Weights based on distance will result in the shortest route but may not be the most optimal. With the programmable SDN technology, weight optimization that considers network density can be implemented. Therefore, in this research, the implementation of Dijkstra's routing algorithm system for finding the shortest path has been carried out by paying attention to packet loss as a weight. From the test results, the results obtained that the system has been able to search for paths by considering the smallest packet loss value on the link. In throughput testing, the system has significantly superior throughput compared to static Dijkstra algorithm. Then based on packet loss testing, this system has packet loss ranging from 0 - 1% compared to Dijkstra's static algorithm which has a significant increase in packet loss when the number of clients is more than 30. In this system the convergence time value obtained is not much different from the static Dijkstra algorithm.