1. A method comprising the steps of: initializing a transmitting frequency timer with a transmitting period; checking number of incoming traffic congestion packets received at a first vehicle during the transmitting period; adjusting the transmitting period according to the number of incoming traffic congestion packets received at the first vehicle such that the transmitting period increases as the number of traffic congestion packets received increases; transmitting an outgoing traffic congestion packet at a rate of once per the transmitting period; estimating traffic flow based on the incoming traffic congestion packets, a traffic database, a map database and a current position of the first vehicle; and computing an alternate route from the current position of the first vehicle to a destination based on the estimated traffic flow, wherein the outgoing traffic congestion packet comprises: a beacon service table that comprises real-time and historical data about the first vehicle; and a vehicle service table that comprises real-time and historical data about one or more other vehicles, the real-time and historical data about one or more other vehicles having been received in one or more of the incoming traffic congestion packets.