  It was shown recently that CSMA (Carrier Sense Multiple Access)-like
distributed algorithms can achieve the maximal throughput in wireless networks
(and task processing networks) under certain assumptions. One important, but
idealized assumption is that the sensing time is negligible, so that there is
no collision. In this paper, we study more practical CSMA-based scheduling
algorithms with collisions. First, we provide a Markov chain model and give an
explicit throughput formula which takes into account the cost of collisions and
overhead. The formula has a simple form since the Markov chain is "almost"
time-reversible. Second, we propose transmission-length control algorithms to
approach throughput optimality in this case. Sufficient conditions are given to
ensure the convergence and stability of the proposed algorithms. Finally, we
characterize the relationship between the CSMA parameters (such as the maximum
packet lengths) and the achievable capacity region.
