A congestion control system. In particular implementations, a method includes receiving packets into one or more queues and monitoring the one or more queues for congestion. The method also includes, if a number of packets in the one or more queues exceeds a first threshold, determining a congestion control mode. The method also includes generating a congestion control message indicating the congestion control mode and transmitting the congestion control message to one or more neighboring mesh nodes.