In conventional networks, routing problem can be modeled as the design of an efficient source-to-destination route based on persistent end-to-end paths. However, in a delay tolerant network (DTN), nodes are intermittently connected and thus, the end-to-end paths will not always exist, in which routing is a challenging issue. Previous DTN routing protocols tend to make routing decision based on the nodes’ contact information. In this paper, we observe that considering both the nodes’ contact information and message property such as the time-to-live (TTL) would help to improve the performance. Embedded this idea, we first propose an expected encounter based routing protocol (EER) which distributes multiple replicas of a message proportionally between two encounters according to their expected encounter values. In case of a single replica of a message, EER makes the routing decision by comparing two encountering nodes’ minimum expected meeting delays to destination. We further propose a community aware routing protocol (CAR) which takes advantages of the high contact frequency property of the nodes within the same community. We also propose the buffer management strategies corresponding for the two protocols. We conduct simulations to evaluate our proposed protocols and some existing ones on three metrics: delivery ratio, latency and goodput. The simulation results illustrate that our proposed EER and CAR protocols outperform other existing ones.