Quality Of Service Aware Cross-Layer Network Lifetime Maximization In Battery-Constrained Wireless Sensor Networks