There has been much recent interest in protocol design for wireless networks based on maximizing a network utility function. A significant advance in recent years is the observation that a decomposition of the Lagrangian suggests an approach where transmissions are scheduled to minimize backpressure. However, a satisfactory Medium Access Control (MAC) protocol that can realize such a scheduling algorithm is notably missing, and that is the goal of this paper. We present a candidate random access MAC protocol that extends an existing algorithm to calculate the access probabilities. We also consider the online adaptation of access probabilities using local information about queue lengths and active links. In addition, we also modify the backpressure algorithm itself, by incorporating a minimum hop bias to alleviate the inherent problem of routing loops. We have implemented a general purpose simulation framework to study the comparative performance of network management protocols for congestion control, routing, MAC, and their cross-layer interaction. Using this, we compare the performance of our scheme with the leading schemes.