Providing efficient transport services over multi-hop ad hoc networks is a fundamental building block for this wireless technology. The typical approach is modifying transmission control protocol (TCP) to fix one (or a few of) its inefficiency while preserving compatibility with the original protocol. However, a complete solution should include a significant number of modifications, such that the original TCP design is deeply modified. In this paper we explore a different approach. We include the desired modifications to TCP in the design of a new transport protocol [transport protocol for ad-hoc (TPA)]. In this way we are able to blend together these features in a unique design framework, and better control interactions among the different (modified) components. We then compare TCP and TPA through field tests, in terms of throughput and total number of transmitted segments. We consider several possible configurations of the protocol parameters, different routing protocols and various networking scenarios. In all the cases taken into consideration, TPA significantly outperforms TCP. To achieve a more thorough understanding of the TPA behaviour, we compare TPA and TCP also in terms of fairness and scalability (both in static and mobile configurations) over a wide range of representative topologies. To this end, we adopt a simulation approach, which is more suitable to this kind of analysis. Simulation results confirm field tests, and show that TPA is able to outperform TCP with respect to all analysed performance figures.