Over the past decade, there is a pressing need for the network applications to be connected with peers in the variety of operating conditions such as unreliable networks, frequent node mobility, and resource constraints. Owing to these heterogeneous environments, the network devices face various challenges such as link disruptions, extensive propagation delays and unexpected dropping of packets. Such networks which are marked by the presence of disrupted end-to-end connections are termed as Delay Tolerant Networks (DTNs). As traditional routing protocols assume seamless connectivity, meager propagation delays and packet loss, their applicability to the delay tolerant networks are limited. Motivated to mitigate the challenges of DTNs, a plethora of routing protocols has been developed to specifically suit the extreme operating environment. The DTNs routing protocols estimate the likelihood of delivery of a message on each hop to select the most applicable relay nodes using various metrics such as frequency of contact, encounter history or duration of contact. The seminal objective of these protocols is to ensure decent reliability with less overhead in connection-disruptive and resource deficit networks. This article aims to begin with the general discussion of routing protocols which employs time-based utility measures and then diving in depth covering various aspects such as relay selection, energy requirements, message replication strategy and buffer management.