Efficient Routing from Multiple Sources to Multiple Sinks in Wireless Sensor Networks