Before revision:  Although the celebrated back-pressure algorithm maximizes throughput, it requires per-flow or per-destination information (which may be difficult to obtain and maintain ), maintains complex data structure at each node, relies on constant exchange of queue length information among neighboring nodes, and  results in poor delay performance in certain scenarios.
After revision:  Although the celebrated back-pressure algorithm maximizes throughput, it requires per-flow or per-destination information (which may be difficult to obtain and maintain ), maintains complex data structure at each node, keeps exchanging queue length information among neighboring nodes, and results in poor delay performance in certain scenarios.