In network routing, CoDel (pronounced "") for controlled delay is a scheduling algorithm for the network scheduler developed by Van Jacobson and Kathleen Nichols. It is designed to overcome bufferbloat in network links (such as routers) by setting limits on the delay network packets suffer due to passing through the buffer being managed by CoDel.
CoDel aims at improving on the overall performance of the RED algorithm by addressing some fundamental misconceptions in the algorithm (as perceived by Jacobson) and by being easier to manage (since, unlike RED, CoDel does not require manual configuration).
An implementation of CoDel was written by Dave Täht and Eric Dumazet for the Linux kernel and dual licensed under the GNU General Public License and the 3-clause BSD license. Dave Täht back-ported CoDel to Linux kernel 3.3 for project CeroWrt, which concerns itself among other things with bufferbloat, where it was exhaustively tested. It was then pushed into OpenWrt. Dumazet's variant of CoDel is called fq_codel, standing for "fair queuing controlled delay"; in 2012 it was adopted as the standard active queue management (AQM) and packet scheduling solution in the OpenWrt "Barrier Breaker". From there, CoDel and fq_codel have migrated into various downstream projects such as Tomato (firmware), dd-wrt, IPFire, and technologies like StreamBoost.