Supporting Quality of Service (QoS) in WSNs is still a largely unexplored research field. The commonly accepted QoS metrics include bandwidth, delay, delay jitter and reliability. Besides, whereas the majority of developed applications for WSNs are event-critical applications, achieving reliable data transfer as the main factor of dependability and quality of service seems vital. In this paper, we focus on building a tree-based routing protocol called TBRR which routes packets towards the destination node in a highly reliable manner in two stages. Using a nearly complete set of reliability metrics, TBRR tries to find the best nodes satisfying the level of reliability required by data in order to forward packets to them as the next nodes of reliable paths towards the sink.