Mobile Ad Hoc networks are a sort of communication networks that do not have any infrastructure or controlling center and are usually set up for specific purposes temporarily and quickly. Their ability to be set up rapidly and also their independence from infrastructure has made them being increasingly used in a variety of different areas like municipal, military and rescue fields. In such networks, nodes are moving and can easily join or leave the network; therefore the network’s topology is changing continuously. Two nodes in this type of networks can communicate directly only if they are in the transmission range of each other, otherwise they have to communicate through a route consisting of intermediate nodes. When two nodes get out of their common region of radio transmission range, the wireless link between them breaks. If one of the links making up the route breaks, the whole path will become useless. In this case, the broken link should be replaced or a new route should be constructed. Most of the routing protocols intend to find the shortest-path route while studies show that the shortest path in MANET can be very unstable and easily broken with a slight move in nodes. With a broken route, there is a decrease in packet delivery ratio while the average end-to-end delays and jitter of receiving packets increase. On the other hand, the increased overhead of repairing or finding a new route cuts the overall performance of the network and increases the whole energy consumed by mobile nodes. In this thesis, the distance between mobile nodes in a MANET has been estimated using the round trip time of data packets and the corresponding ack. in the MAC layer and stability of links has been evaluated dynamically. Then a new routing algorithm has been proposed that selects more stable routes based on link stability. This algorithm predicts when a route is about to break based on link state information and before any link breaks, replaces it or tries to find a new route. The proposed protocol is simulated using OMNET++ and the results indicate an improved performance compared to AODV routing protocol in different conditions.