Wireless ad hoc network design with cross layer approach has been recently studied considering different layer information. Especially, the design of the optimal transport control protocol has been one of intensive research topics, but the issue is not fully addressed yet. Although researches on end-to-end semantics are prevailed in transport layer issue, relatively smaller scalability than wired networks and unreliable channel state give strong advantages on hop-by-hop approach. We consider the hop-by-hop congestion control algorithm with network utility optimization. We formulate and solve a new transport layer problem based on the hop-by-hop algorithm, which reaches the optimal rate point stably by jointly considering MAC layer and transport layer information. Simulation results show that the hop-by-hop congestion control has better performance on the aspect of the schedulability, stability, convergence speed and optimality.