Traffic management systems: A classification, review, challenges, and future perspectives

In cities, where the number of vehicles continuously increases faster than the available traffic infrastructure to support them, congestion is a difficult issue to deal with and it becomes even worse in case of car accidents. This problem affects many aspects of the modern society, including economic development, traffic accidents, increase in greenhouse emissions, time spent, and health damages. In this context, modern societies can rely on traffic management system to minimize traffic congestion and its negative effects. Traffic management systems are composed of a set of application and management tools to improve the overall traffic efficiency and safety of the transportation systems. Furthermore, to overcome such issue, traffic management system gathers information from heterogeneous sources, exploits such information to identify hazards that may potentially degrade the traffic efficiency, and then provides services to control them. With this question in mind, this article presents a classification, review, challenges, and future perspectives to implement a traffic management system.


Introduction
In modern society, quick mobility is one of the most basic needs. Therefore, people are able to use different transportation facilities such as automotive vehicles, subways, and bicycles. However, among all these transportation facilities, automotive vehicles are still the most adopted due to its comfort and practicality. 1 In this way, assuming a continuous population growth, the number of vehicles in large cities will increase as well, but much faster than transportation infrastructure; consequently, traffic congestion will become a pressing issue. It creates several negative concerns for the environment and society such as increasing in number of traffic accidents, economical impacts, and high levels of greenhouse emissions. 2,3 According to the US Department of Transportation (DoT), 4 traffic congestion may have three key sources. The first one is related to traffic-influencing events, such as incidents, working zones, and bad weather conditions. The second one is related to traffic demand, which means fluctuations in normal traffic and special events. The last source is the transportation infrastructure, which represents the traffic control devices and physical bottlenecks. Moreover, these bottlenecks are responsible for 40% of the overall traffic congestion, followed by traffic incidents, such as vehicles accidents with 25%, bad weather conditions with 15%, work zones with 10%, and poor traffic signal timing and special events with 5% each one.
In this way, focusing on preventing traffic congestion and improving the overall traffic efficiency, large cities rely on traffic management systems (TMSs), [1][2][3] which aim to reduce traffic congestion and its related problems. To this end, TMSs are composed of a set of applications and management tools to integrate communication, sensing and processing technologies. 1 In summary, TMSs collect traffic-related data from heterogeneous sources such as vehicles, traffic lights, and in-road and roadside sensors. Furthermore, by aggregating and exploiting such traffic-related data into a cooperative manner (e.g. among vehicles) or into a traffic management center (TMC) concentrated in a cloud or in a data center, several traffic hazards can be identified and consequently controlled improving the overall traffic efficiency and providing a smooth traffic flow.
Within TMS, one building block that composes it is the vehicular ad hoc networks (VANETs), which provides data exchange between vehicles, roadside units (RSU) and TMC. In VANETs, vehicles are mobile nodes with an on-board unit (OBU) that has embedded sensors, processing units, and wireless interfaces in which vehicles can communicate among themselves to create an ad hoc network. 5 To support such communications, VANETs rely on dedicated short-range communication (DSRC) specially designed to this end. 5 However, despite RSUs are not a requirement, they can be used to improve network capacity, providing better management and Internet access, and different communication technologies such as 4G and long-term evolution (LTE).
However, concentrating in dealing with the traffic congestion origin and in addressing its related problems, several TMSs have been proposed focusing on adjusting the speed of the vehicles in order to reduce the time spent in traffic lights, [6][7][8] detect and prevent traffic congestion [9][10][11][12][13][14][15][16][17] and suggest alternative routes to the vehicles. 2,[17][18][19][20][21][22] Succinctly, as traffic congestion is a daily concern, researchers from different areas have been attracted to develop TMS to deal with it. However, there are still challenges to be faced. In this way, this article focuses on presenting a study which can provide detailed information to researchers for understanding the main fundamentals and challenges related to TMS, covering different topics from communication to applications. Therefore, the main contributions of this article include (1) a comprehensive overview of the state of the art in TMS, (2) an in-depth classification, review, and qualitative analysis of some TMS applications, and (3) the main challenges and future perspectives.
The remainder of this article is structured as follows. Section ''TMS'' gives an overview on TMS. In section ''A classification, review, and qualitative analysis of TMSs,'' we present a classification, review, and qualitative analysis of some related TMS. Section ''Challenges and future perspectives'' introduces some open challenges and future perspectives for TMS. Finally, section ''Conclusion'' concludes the article.

TMS
Thanks to VANETs; two communication types are enabled in TMS. The first one is vehicle-to-vehicle (V2V) communications, used when the vehicles communicate among themselves without the need for any infrastructure. The second one is vehicle-toinfrastructure (V2I) communications, used when a vehicle needs to send its information or request some information to a central entity and also when a vehicle needs to access some content in the Internet. In addition, different communication technologies can be used to each communication type. The two most commonly used are DSRC for short-range communications and V2V communications using the IEEE 802.11p protocol stack, and the other one is the LTE for long-range communications and V2I communications. 1,3 Figure 1 shows the overall architecture of a TMS, which is composed by vehicles that can collect trafficrelated data through their OBU and send such data to nearby vehicles using V2V communication or they can use V2I communications to send such data to an RSU or a central entity (e.g. TMC concentrated in a cloud) through an access network. Like vehicles, RSUs, as well as in-road and roadside sensors, can collect trafficrelated data and send to the cloud to be exploited. To this, the core network connects the access network to the cloud, providing many important functions, such as aggregation, authentication, switching, and routing. In addition, many different sources can provide its data to the cloud through the core network, improving the services delivered by the TMS.
Exploiting traffic-related data, TMSs can provide services that may potentially improve traffic efficiency and safety, as well as decreases traffic incident response time. In order to provide such services, the TMSs rely on three main phases: (1) information gathering, which is responsible for collecting traffic-related data from heterogeneous sources; (2) information processing, which relies on aggregating and processing the received traffic data to further identify traffic hazards which may potentially degrade the traffic efficiency; and (3) service delivery, which provides services to control traffic hazards and related problems improving the overall traffic efficiency. Figure 2 describes these three main phases and how each one interacts with each other. In summary, the information gathering phase collects traffic-related data and forward such data to the information processing phase, in which it is exploited focusing on identifying traffic hazards. Finally, based on the traffic hazards identified, the service delivery phase is responsible for providing services to control them.
Information gathering is responsible for collecting traffic-related data from different sources including vehicles, in-road and roadside sensors, traffic lights, RSUs, publicly available web sources, and participatory networks. Regarding vehicles, traffic-related data are collected from different built-in sensors, such as GPS, speedometer, and odometer. Thereafter, these traffic-related data are aggregated in vehicles' OBU to posteriorly be sent to the TMC or shared among its neighbors to be exploited. Moreover, for in-road sensors, as well as roadside sensors and RSUs, the trafficrelated data rely on traffic history, traffic-light phase and timing, road occupancy, traffic incidents, and weather conditions. Meanwhile, publicly available web sources and participatory sensing networks can be useful to improve the accuracy of the services delivered by the TMSs, since the traffic-related data gathered from these sources can be associated with the traffic to identify population habits and city characteristics. 1 For instance, using data provided by the citizens' everyday life such as check-ins and publications in social medias such as Facebook, Twitter, Instagram, and Foursquare combined to traffic characteristics, congested areas can be forecasted according to the time and the day of the week. Furthermore, the phase transitions of the traffic congestion in those areas can be characterized in order to prevent vehicles to enter those areas or suggest them to start the trip later when the traffic becomes normal.
Information processing: after the traffic-related data collection in information gathering phase, it needs to be exploited in order to identify or forecast some traffic hazards. In this way, due to TMS characteristics, the information processing can be done in infrastructurefree or infrastructure-based manner. The infrastructurefree information processing relies on fully distributed services, in which all vehicles share their traffic-related data with nearby vehicles only using V2V communication where each vehicle can locally or cooperatively identify traffic hazards and provide services to control them with low overhead. However, in the infrastructure-based, the vehicles and other entities rely on a central server (TMC or any other infrastructure with processing capabilities) to exploit the traffic-related data in order to identify traffic hazards and deliver services to control them. To this, vehicles can use not only short-range communications but also long-range communications to achieve some infrastructure. Although the infrastructure-based presents higher overhead when compared to infrastructure-free, it can provide a better traffic management and deliver enhanced services due to the large amount of data that the TMC can combine and exploit.
By the way, due to non-existing standard in data representation, different sources such as vehicles, RSUs, sensors, web sources, social medias, and participatory networks may have different types, meta-data, formats, levels of granularity, and time scales. In this context, the information processing phase needs to aggregate and fuse these wide variety of data to improve data quality, as well as provide concise information to several different services according to its own requirements. [23][24][25] For instance, processing the traffic-related data collected from vehicles is possible to detect congestion areas using fuzzy logic systems, neural networks, or classifiers. 9,10,12,20,21 However, processing weather data provided by wireless sensor networks (WSNs) and fusing with traffic-related data is a possible forecast traffic congestion in some areas caused by flooding or snow. Moreover, processing data from participatory networks and social medias is possible to identify events data can directly influence the traffic efficiency, for example, social protests, large shows, world events, and stadium games.
Service delivery provides services based on the traffic hazards identified in the previous phase in order to control them and improve the overall traffic efficiency. It is important to stress that services can be delivered in both manners, infrastructure-free and infrastructurebased, according to the TMS architecture.
Furthermore, examples of services include cooperative congestion detection, 9 congestion avoidance, 10,[12][13][14][15] and accident warning, [13][14][15] which rely on infrastructurefree services due to its delay constraint and safety in which the longer is the response time, the greater is the amount of vehicles affected. However, services such as speed adjustment, 6-8 congestion detection, and route suggestion 17-22 rely on infrastructure-based services due to its better traffic management.
TMSs are described in the following sections. Section ''Infrastructure-free TMS'' presents the fully distributed TMSs including cooperative congestion detection, congestion avoidance, and accident detection and warning. Section ''Infrastructure-based TMS'' introduces the infrastructure-based TMSs including traffic light management, congestion detection, route suggestion, and speed adjustment. Finally, section ''Qualitative analysis of traffic management systems'' presents a qualitative classification of the TMSs described in this section.

Infrastructure-free TMS
Bauza and Goza´lvez 9 propose Cooperative Traffic congestion detECtion (CoTEC), a novel cooperative vehicular system based on V2V communications to detect traffic congestion using fuzzy logic. CoTEC uses cooperative awareness messages (CAM) or beacon messages to periodically broadcast the road traffic condition. In addition, CoTEC uses fuzzy logic to detect a potential road traffic congestion locally at each vehicle. The fuzzy logic system was built based on the level of service (LOS) present in Highway Capacity Manual (HCM). 28 The LOS represents a quality measurement used to describe the operational conditions within a traffic flow. Therefore, when a traffic jam is detected, first, each vehicle broadcasts its own estimation about the traffic jam, and then, with all estimation, vehicles collaboratively detect and characterize the road traffic congestion.
Similar to CoTEC, Araujo et al. 10 propose Cooperative vehiculAR Traffic congestion Identification and Minimization (CARTIM) which is a proposal for collaborative identification and minimization of traffic congestion. Similar to CoTEC, CARTIM uses V2V communications to cooperatively measure the level of traffic congestion. CARTIM collects data from vehicles (speed and density) periodically sent through beacons by all vehicles, and with these information, using a fuzzy logic system, it is able to measure the level of congestion. However, despite CARTIM using a fuzzy logic system, as well as CoTEC, the rules were built using different metrics presented in HCM; thus, CARTIM and CoTEC differ in the fuzzy logic rules and in the mechanism to spread the local traffic measurement through the network. Furthermore, when a traffic congestion is detected, CARTIM proposes a heuristic to change the route of the vehicles to minimize the detected traffic congestion.
Meneguette et al. 12 introduce Urban CONgestion Detection System (UCONDES) which is based on V2V communication to detect and reduce congestion in urban scenarios. Different from CARTIM and CoTEC, UCONDES is based on an artificial neural network (ANN) that is designed to detect and classify the congestion levels on the roads. To identify and classify the traffic congestion, UNCONDES uses the average speed and the density of the current road, in which these are obtained through periodical beacons disseminated by all vehicles in the road. The ANN implemented by UCONDES receives the speed and the density of the current road as input, and then, the output is the congestion level of the current road. UCONDES defines three congestion levels as follows: free (output is lesser than or equal to 0:3), moderate (output is greater than 0:3 and lesser than 0:7), and congested (output is greater or equal to 0:7). Finally, the road classification is sent to the vehicles through beacon messages. Moreover, when a vehicle receives a road classification message, it verifies its classification, and in case of congested classification, the vehicle that receives the message verifies whether it will pass by that road, and if needed, a mechanism is applied to avoid such road. However, UCONDES does not implement any broadcast suppression mechanism, and the network may get overloaded, consequently introducing an undesired overhead in scenarios with high densities, decreasing its efficiency.
Using another approach, De Souza et al. 11 present FASTER, a fully-distributed TMS to improve the overall traffic efficiency. It relies on V2V communication to build a overall precise knowledge about the traffic condition for each vehicle. To this, FASTER organizes the scenario in smaller sectors called districts to first build a knowledge about the traffic in those districts. In this way, to build such knowledge, each vehicle shares its traffic information with its neighbors through beacons in the same district, and in a predefined interval t, each vehicle builds a knowledge about the traffic condition for its district based on beacons received. The district knowledge contains all roads that compose it and their average speed. Moreover, in order to build an overall traffic knowledge about the traffic condition, the knowledge of each district needs to be spread to the other ones. Therefore, FASTER uses an efficient aggregation mechanism and a robust data dissemination protocol which addresses the broadcast storm problem and the synchronization effect introduced by the IEEE 802.11p standard 29 to not to overload the network, consequently not introducing an undesired overhead for the system. Upon receive all knowledge about all districts, each vehicle builds a graph G = (V , E), in which V is the set of intersections and E is the set of roads that connect the intersections to represent the scenario map. In addition, each edge has a weight based on the roads' average speed, and consequently, each vehicle in FASTER will have a precise knowledge about the traffic condition; thus, it can detect congested roads using the metrics provided by HCM and compute an alternative route to itself avoiding congested roads. Finally, it is important to note that each vehicle in FASTER implements a probabilistic k-shortest path algorithm to decrease the chance of arising a congestion in other areas as consequence of its alternative route.
De Souza et al. 13 propose a TMS based on V2V communication to minimize vehicle traffic congestion in highway environment caused by traffic accidents. Moreover, it address the broadcast storm problem present in data dissemination in VANETs. In particular, to address the broadcast storm problem, it uses the DRIFT protocol to disseminate accident warnings on the road. 30 DRIFT is an efficient and robust data dissemination protocol for highway environments that works with different traffic conditions, eliminates the broadcast storm, and maximizes the data dissemination capacity among network partitions with short delays and low overhead. Moreover, when each vehicle receives a road accident warning, it changes its route if it is possible to avoid the congested road, thus reducing the trip time, fuel consumption, and CO 2 emissions.
Later, De Souza et al. 14 propose a TMS to control traffic congestion caused by traffic accident in highly dynamic highway environments. During the data dissemination in highly dynamic scenarios, the IEEE 802.11p standard introduces an undesired synchronization effect once it uses a channel switching to not employ multiple radios. Therefore, it switches from control channel (CCH) to service channel (SCH) in a predefined interval (; 50 ms), but the data transmissions only occur when the SCH channel is active. In this way, when a transmission is scheduled when the CCH channel is active, it will occur as soon as the SCH becomes active, thus introducing a synchronization effect. 29 Additionally, De Souza and Villas 14 use the same idea of De Souza et al. 13 to alert the vehicles when an accident occurs, but to spread the alert through the network, it uses the ADD data dissemination protocol. 29 ADD is a delay-based protocol for highly dynamic highway environments that address the broadcast storm problem and the synchronization effect introduced by the IEEE 802.11p standard. In particular, to address the broadcast storm problem, it uses the concept of preference zone that is defined as an area in which the vehicles are best suited to continue the data dissemination procedure. Vehicles located within the preference zones are more likely to spread the information and reach a higher number of neighbors which could not be reached by the prior transmitter. However, to address the synchronization introduced by the IEEE 802.11p standard, it uses a desynchronization mechanism which is aware of the channel switching implemented by the standard. Therefore, when a transmission is scheduled when the CCH channel is active, an extra time is added to the schedule in order for the transmission to occur in the SCH channel. Finally, when vehicles receive the accident alert message, they verify whether their route will pass through the accident location, and if necessary, a mechanism is applied to compute an alternative route.
De Souza et al. 15 propose Geographical Accident aware to Reduce Urban Congestion (GARUDA), a TMS that focuses on minimizing the congestion caused by traffic accident in urban environments. To this, GARUDA is organized in three main modules: (1) information generation, (2) information dissemination, and (3) making real-time decision. The information generation module is responsible for detecting when an accident occurs and create an alert message that contains the accident location to warn the approaching vehicles about the hazard. The accident detection employed by GARUDA uses the on-board sensor OBD 2 (on-board diagnostic 2) that provides information about the vehicle on-the-fly such as speed and air bag status and motor engine. In this way, GARUDA is able to identify when an accident occurs. Thereafter, it forwards the alert message to the information dissemination module that is responsible for spreading it through the network using the Geographical Data Dissemination of Information and Alert Aware of Network Partition (GEDDAI-NP) protocol. 31 The main goal of the GEDDAI-NP protocol is to address the broadcast storm problem and maximize the data dissemination capability across network partitions with low overhead, short delays, and high coverage by performing data dissemination within an area of interest (AoI). Finally, when a vehicle receives an alert message, it can make a real-time decision using the making realtime decision module, where it can verify whether its current route will pass through the accident location, and if necessary, it computes a new route to avoid the accident location. Therefore, the new route is calculated based on Dijkstra algorithm.

Infrastructure-based TMS
Rakha and Kamalanathsharma 6 introduce an ecodriving model which relies on V2I communications that is built in traffic-light intersections as a traffic light application for intelligent traffic lights (ITLs). It focuses on improving fuel consumption and decreasing CO 2 emissions by reducing the time that the vehicles spend stopping at traffic lights. To this, each vehicle adjusts its speed to maintain an optimum fuel consumption and avoid delays at traffic lights. In this way, the ecodriving model sends information to the vehicles that are entering its coverage area and are approaching the traffic light, in which these information are the current state of the traffic light, the timing to the next phase, and the length of the vehicles' queue at the intersection called Signal Phasing and Timing (SPaT). Finally, upon receiving a SPaT information, the vehicles compute instantaneously an optimum speed using the VT-Micro model. The VT-Micro model estimates the fuel consumption for several alternative speed profiles and determines which is the optimum. 32 Wei-Hsun Lee et al. 7 present Decision-Tree-based Green Driving Suggestion System (DTGDSS), a V2I speed suggestion system to reduce carbon emissions based on a decision-tree, consequently providing the vehicles best, economic route suggestions. Therefore, DTGDSS assumes that all traffic lights have bult-in RSU in which the vehicles send their speed, position, and direction. In addition, upon receiving these information, each RSU calculates the waiting queue length of each direction at the intersection that can be determined by comparing its position with the last stopped vehicle in the queue of each direction. Furthermore, each RSU broadcasts its current traffic-light phase, the time to next phase, and the waiting queue length. Hence, when a vehicle receives a broadcast from the RSU, it can calculate a recommended speed based on a decision tree. The recommended speed is used to minimize the waiting queue length and maximize the average cycle time throughput. Finally, the decision tree is organized as a six-level tree structure in order to determine the recommendation, including free-flow speed, front car speed, maintain speed, brake, free gas pedal, maintain speed or brake to front car speed and free gas pedal or brake to front car speed.
Pan et al. 18 describe three traffic re-routing strategies designed to be incorporated in a cost-effective vehicular traffic guidance system, in order to reduce the traffic congestion and its related problems. To this, the vehicles in the system can collect real-time traffic-related data and change its route in response to newly received guidance. Furthermore, the system is composed of a centralized traffic monitoring and re-routing service and a vehicle software stack for periodic traffic-data reporting (position, speed, and direction) through a V2I communication. However, the traffic guidance system operates in four phases that are executed periodically: (1) data collection and representation, (2) traffic congestion detection, (3) vehicle selection for re-routing, and (4) alternative route calculation. The data collection and representation phase represents the network using a directed graph, where the vertices correspond to intersections, the edges correspond to the road segments, and weights are the average travel time. The traffic congestion detection phase periodically checks all roads segments to detect signs of congestion. In vehicle selection for re-routing phase, when a road segment presents signs of congestion, the system selects the nearby vehicles to be re-routed. The alternative route calculation phase computes alternative routes to the previously selected vehicles. In particular, to compute the alternative routes, three different strategies are proposed. (1) Dynamic Shortest Path (DSP), which is the classical re-routing strategy that computes the route with the lowest travel time; however, this strategy may cause congestion in other areas. (2) Random k Shortest Paths (RkSP), which balances the traffic by selecting randomly a route in a set of k possible routes; this strategy intends to reduce the possibility of creating a congestion in another different area, shortcoming that is presented in DSP; however, as the route selection is made randomly, it can select long routes to the vehicles. (3) Entropy Balanced k Shortest Paths (EBkSP), which is an improvement of RkSP, in which a more intelligent route selection is made by considering the impact that each selection has in the future density of an affected road segment.
Brennand et al. 19 introduce a TMS that relies on V2I communications in order to optimize the traffic flow of the vehicles in urban centers, focusing on minimizing traffic congestion and consequently reducing the travel time, fuel consumption, and CO 2 emissions.
It detects traffic congestion and controls the traffic of vehicles which is distributed over a set of RSUs that covers the entire scenario. Moreover, it is composed of (1) RSU distribution, (2) data collection, and (3) congestion detection and control. The RSU distribution aims to provide the minimum number of the RSUs and their positions to have full scenario coverage, which are based on the communication range of the RSU. The data collection relies on each RSU, gathering the information provided by the vehicles within its coverage. Therefore, the vehicles send their information (ID, position, speed, direction, and the time took to move through each road in their path) to the nearest RSU using single-hop, long-range communications, such as LTE or 3G. Moreover, in congestion detection and control, each RSU builds a directed graph G = (V , E), where V is the set of intersections, and E is the set of road segments within its coverage; beyond that, the weight of each road is represented by the inverse edge's average speed normalized by the edge's maximum speed. Furthermore, periodically, every RSU re-routes all vehicles within its coverage. To re-route the vehicles, first, each RSU gets the current position of the vehicle as source position, and the last edge of the vehicle's route is within its coverage as destination, where the route of the vehicle is splitted, and then, using a k Shortest Paths algorithm, each RSU computes a set of k possible routes. In addition, the route selection is done in order to balance the traffic using the Boltzamann probability distribution. 33 Finally, the remaining of the splitted route is added to the new route calculated and is sent to the vehicle.
Later, De Souza et al. 20,21 introduce SCORPION and CHIMERA, two TMS with real-time congestion detection and route planning to improve traffic efficiency. They rely on V2I communications and consider the scenario as a directed and weighted graph G = (V , E), where V is the set of intersections, E represents the set of road segments, and the weight is inversely related to the traffic condition. Vehicles provide their information (ID, current position, route, and destination) to a central entity through a single-hop, longrange communication such as 4G and LTE. Furthermore, the TMSs are organized in two main modules: (1) congestion detection and traffic classification and (2) route suggestion. The congestion detection and traffic classification module relies on classifying the traffic condition in all road segments and detect which one is congested. To classify the traffic condition, they use the K-Nearest Neighbor (KNN) classifier, which receives as input the average speed and the density of each road, then as output, it informs the classification of the traffic condition, including free-flow, slight congested, moderate congested, and severe congested. It is important to stress that both TMSs use the same method to detect congested roads, which is based on a dataset built from the HCM manual. Finally, SCORPION and CHIMERA differ only in the route suggestion module. In this way, CHIMERA 20 is based on a probabilistic K-Shortest Path which computes alternative routes for the vehicles in order to provide suitable traffic balance. However, SCORPION 21 uses a cooperative algorithm to suggest alternative routes for the vehicles and provide a better traffic balance. Such cooperative route suggestion is a greedy algorithm based on the lowest edge weight with an update function. In other words, when a road is selected to compose the alternative route, its weight is updated considering the impact each vehicle will have in that road.
Additionally, De Souza et al. 2 introduce Improvement of Traffic Condition through an Alerting and Re-routing System (ICARUS), a TMS which receives information about traffic hazards from other systems such as congestion detection, accident warnings, congestion prediction, and bad weather conditions. Upon receiving these information, a vehicle can identify traffic hazards and critical areas which potentially will be affected by the traffic hazard; thus, it can create an alert message and spread through an efficient data dissemination protocol which is based on V2V communications, in order to warn vehicles that will approach within those areas. Thereafter, to each critical area, an AoI is defined warning just the vehicles within this area in order to prioritize them and do not spread this information to vehicles that have no interest in this area at this moment. Moreover, ICARUS acts in both manners proactively and reactively and vehicles are warned as soon as a traffic hazard occurs; thus, it can control traffic congestion first than other systems. 18,[20][21][22]26,27 Furthermore, when a vehicle receives a warning message, it can verify whether it will pass by critical area, and if necessary, it can request another route to a central server through a V2I communication in order to improve the overall traffic efficiency. In addition, it is important to note that due to the efficient mechanism employed by ICARUS, it does not overload the network.
Younes and Boukerche 17 propose Efficient road Congestion Detection protocol (ECODE), a congestion detection system that relies on both V2V and V2I communications to detect traffic congestion and its direction in each road. In this case, ECODE assumes that having an RSU in every intersection, the vehicles send their own information to the other vehicles in an advertisement message (ADV) containing ID, speed, location, direction, destination, and a timestamp. The ADV messages are sent through a multi-hop data dissemination protocol that uses geocast principles and address the broadcast storm problem. Moreover, when a vehicle receives an advertisement, it aggregates in a neighbor report (NR) table, and then, the nearest vehicle to the RSU sends a traffic monitoring report (TMR) that contains the average road speed, density, and the estimated travel time. Furthermore, upon receiving a TMR, each RSU checks its local database and determines the best direction toward each destination, and then, it replies with a RecomReport message which contains the ID, TMR, best detour, and a timestamp. Finally, when a vehicle receives a RecomReport message, it adjusts its route toward the destination and forwards the message to the one-hop neighbors. Therefore, to forward the message, relay vehicles are chosen to reduce the number of transmissions.
Using a different approach, Pan et al. 26 introduce DIVERT, a distributed congestion avoidance which off-loads the re-routing computation in each vehicle, providing privacy to the drivers and enabling a potentially real-time congestion avoidance. To this end, it relies on a central server to build a global traffic knowledge which is further reported to the vehicles. Moreover, vehicles report their position and deceive the global traffic knowledge through on-board devices (e.g. smartphones) using cellular network such as 3G or 4G. In this way, when the central server detects signs of congestion, it notifies vehicles that are close to the congestion and they notify their neighbors through a limited hop flooding manner, enabling them to verify whether they will pass through the congestion and reroute themselves in a cooperative manner to avoid it and provide a better traffic balance.
Doolan and Muntean 22 introduce EcoTrec, a novel eco-friendly routing algorithm for vehicular traffic that relies on V2V communication. EcoTrec assumes that all vehicles are equipped with a global positioning system (GPS) receiver, tilt sensor, and accelerometer that gather information about position, angle, acceleration of the vehicle, and road surface condition. Moreover, with these information, EcoTrec builds a vehicle model, that is, the vehicle behavior. Furthermore, every vehicle periodically sends beacon messages with its ID, position, and speed, where this beacon is sent to other vehicles. Upon receiving these beacon messages, every vehicle aggregates it with the existing data and builds a traffic model. In addition, the messages are sent using endemic routing, in order to make sure that the vehicles will receive it. Moreover, EcoTrec builds a road model that considers the traffic condition on the road. This road model is stored in a central server and is fed by the traffic model of each vehicle. Finally, EcoTrec computes the recommended routes for each vehicle. Its routing algorithm takes into account two main factors: (1) the road characteristics and (2) traffic condition, which are used to set the weights of each road and build a scenario overview. Thereafter, this scenario overview is sent to the vehicles through the VANET, and the vehicles are then routed according to the Dijkstra lowest edge weight algorithm. Each time that a vehicle receives new scenario overview, it re-computes the utility function updating the optimum route.
Barba et al. 8 propose an ITL application, built-in traffic lights, where these ITLs collect real-time trafficrelated data from the vehicles within its communication range and calculate traffic statistics such as traffic density, weather conditions, and traffic hazards in their adjacent roads. Thereafter, these traffic statistics are sent to the vehicles. Moreover, the ITLs also form a sub-network to share its information and compute the traffic information about the whole city. Every vehicle sends a message to the nearest ITL every 2 s containing its ID, current position, current number of neighbors, the current time, and identification of the ITL destination. The messages are sent using the Ad hoc On-Demand Distance Vector (AODV) data dissemination protocol. 34 Regarding weather condition, the data can be collected by a WSN that periodically transmits the weather conditions to the nearest ITL. Therefore, when a ITL receives a message, it updates its traffic statistics using exponentially weighted moving average (EWMA) to measure current and historical values, and then, the updated statistics are shared to other ITLs. However, before warning the vehicles about the traffic statistics, it first classifies the traffic condition in its adjacent roads; thus, it uses three classifications: (1) free, (2) semi-congested, and (3) very congested. Finally, these traffic statistics are sent to the vehicles. Upon receiving these warn messages, the vehicles can act according to the road classification and the weather conditions. Wang et al. 27 introduce a-NRR, an adaptive next road re-routing system for unexpected urban traffic congestion avoidance. Different from DIVERT and EcoTrec, it saves the cost for obtaining global traffic condition knowledge by just using local information available on RSU employed in each intersection to select the best next road rather than the whole route. Seeking to build the local information in each RSU, each vehicle broadcasts its status through beacon messages reported at least every 0:1 s and to detect unexpected congestion, a-NRR relies on a traffic operation center (TOC) that sends a notification to the RSU close to the congestion which broadcasts it to vehicles within its coverage. Upon receiving this notification, each vehicle can verify whether it will pass through the congested road, and if necessary, it request a detour for the RSU that uses the latest traffic information to compute the next route.
A qualitative analysis of TMSs Table 1 presents a qualitative classification of the TMS previously described. In particular, some authors, 6-8 use a speed adjustment mechanism to provide a smooth traffic flow and improve the overall fuel consumption, consequently decreasing greenhouse emissions. The de Souza et al.
main idea of the speed adjustment mechanism is to reduce the constant accelerations, breakdowns, and idle engine to reach a better fuel consumption. However, these TMS only use data provided by the traffic lights (phase and timing), where in case of some accident or a traffic congestion, the vehicles will not know about these traffic events and will adjust its speed only based on the traffic light and consequently will get stuck in the congestion.
With this issue in mind, De Souza and colleagues, 13-15 focus on detecting an accident and warn the approaching vehicles to enable that they avoid the accident area. Therefore, to warn the approaching vehicles, a data dissemination protocol is used. In this case, De Souza et al., 13 address only the broadcast storm and does not have a good performance in highly dynamic environments, because it does not address the synchronization problem introduced by the IEEE 802.11p standard. However, De Souza et al., 14 address the broadcast storm problem and the synchronization introduced by the IEEE 802.11p standard. Finally, De Souza et al., 15 address the broadcast storm and network partitions. However, the proposed congestion avoidance mechanism only uses the shortest path, and they are not aware of the traffic condition, potentially creating congestion in other areas. Furthermore, these TMSs only control congestion caused by traffic accidents.
Regardless of congestion origin, the TMSs 9-12 can detect it. In particular, Bauza and Goza´lvez, 9 propose a congestion detection mechanism that works in a cooperative manner. However, the employed mechanism to identify the traffic condition can cause an overload in the network, because it uses periodic beacon messages and the local estimation disseminated by all vehicles without employing any broadcast suppression method. Furthermore, despite being able to detect a congestion, no mechanism to minimize or control the traffic congestion is presented in their work. In addition, Bauza and Goza´lvez, 9 was proposed to operate exclusively on highway scenarios. Different from Bauza and Goza´lvez, 9 the TMSs 10-12 detect the congestion and implement a congestion avoidance mechanism to control it. But, as well as, 9 the 10 can cause an overload in the network and like [13][14][15] the congestion avoidance proposed in Araujo et al. 10 and Meneguette et al. 12 only use the shortest path based on the distance and do not take into account the traffic condition in each road. However, De Souza and Villas 11 provide a overall precise traffic knowledge to all vehicles with low overhead because it implements an efficient aggregation mechanism to reduce the number of transmissions and a broadcast suppression mechanism to not to overload the network; consequently, it can compute better routes. 10,[12][13][14]16   The main shortcoming presented in literature 10,[12][13][14][15] is that they do not have information about the traffic condition of the entire scenario, thus making it difficult to compute efficient routes to avoid congested areas. In this context, some studies 2,17-22 rely on gathering data from the vehicles and compute alternative routes for them in a centralized way. Therefore, they have a better guidance during computing alternative routes. However, Doolan and Muntean, 22 still use the shortest path to compute alternative routes, despite considering the traffic condition; in dense scenarios where several vehicles have the same destination, it still can create congestion in other areas.
In order to overcome this problem, some studies 2,18-21 employ a mechanism to provide a traffic balance and have a better traffic distribution. Although these TMSs 18,19 focus on reducing the traffic congestion, they rely on periodic vehicles re-routing (re-routing interval), in which the traffic congestion is detected. Therefore, if they have a big re-routing interval, many vehicles can get stuck in the congestion due to the absence of the re-routing. However, if they have a small re-routing interval, the vehicles can enter a route loop because of the dynamicity of the traffic condition (weights). Differently, De Souza et al. 20,21 classify the traffic condition in the entire scenario and use a real-time congestion detection mechanism, in which they can detect a traffic congestion as soon it occurs and compute alternative routes just to vehicles that will pass through the congestion, overcoming the problem of periodical re-routing. However, similar to some studies, 18,19,22 in De Souza et al., 20,21 no mechanism to reduce the number of transmissions is used; thus, in dense scenarios, they can overload the network. However, De Souza et al. 2 employ an efficient data dissemination protocol which implements a broadcast suppression mechanism to not to overload the network and to not to introduce an undesired overhead which can degrade the performance of the TMS. In addition, it relies on other systems to provide information about traffic hazards to detect or forecast critical events that may potentially decrease the overall traffic efficiency; therefore, it employs a better traffic management than the other systems, [18][19][20][21][22] providing a smooth traffic flow.
Finally, DIVERT 26 differs from some studies 2,18-22,27 because it off-loads the route computation in each vehicle, which improves the privacy of the drives, once they do not have to report their route and destination to another entity. Furthermore, it reduces the overhead to avoid congested areas, once the routes are computed locally in each vehicle being different from some studies, 2,[18][19][20][21][22]27 , thus does not depending on the density of vehicles to provide a suitable solution. However, to alert vehicles to compute an alternative route, it uses a broadcast mechanism, but no suppression mechanism to reduce redundant transmissions is employed, thereby it can also overload the network. [18][19][20][21][22] Challenges and future perspectives This section presents the main open challenges in TMS and the future perspectives.

Heterogeneous data integration
Despite the TMS enabling the data integration with different sources to improve its overall performance, this is still an open issue. The main challenge is how to do this integration, since we have lots of different systems and sources with no integration among them, providing a huge amount of data with no standardization. Furthermore, as emerging technologies such as Internet of Things (IoT) will provide data exchange and communication to a plethora of everyday life devices, it is important to use these devices to turn the data collection paradigm into a new one. However, with this integration, many other challenges will arise including tracking and managing the high number of devices that will be involved in such integration. Current open problems are as follows: how to define novel approaches for device identification and the generation of unique identifiers, how to use these identifiers as addresses to forward and route information, and how to employ an IoT-based identifier for TMS. Finally, the information collected from these devices may carry private information about the owners, and as this transmissions may suffer attacks, a secure mechanism to protect this information is desired.

Data management and big data issues
TMSs need to handle a huge amount of data. Therefore, a standardization in data representation needs to be employed, once many problems may arise if each source employ an independent measurement and formatting. Moreover, many sources may report its data asynchronously; thus, a big challenge is how to manage such issue. Furthermore, data correlation is another challenge due to non-integration among different systems and sources, in which the same source may provide data in different systems. In other words, as different systems are independent, the data accounting can incur in false positives. However, the challenge is how to correlate such data to a common source. In addition, TMSs need to provide sophisticated mechanisms to fuse, aggregate, and exploit data to deal with different data types provided from heterogeneous sources. However, the major challenge is how to exploit these big data issues in a vehicular environment, once the current models and algorithms used in big data are physically and logically decentralized, but virtually centralized. 1

Traffic condition representation and hazards identification
After data exploitation, the knowledge acquired from it needs to be represented in a correct way to represent the real traffic condition, otherwise it may incur in false positives or in wrong information. In this way, the key challenge is how to converge many different information into a single traffic condition representation. In other words, which information have more or less importance to the traffic and how each one will impact in the traffic. Providing such representation still is a big issue. In addition, many TMSs have been proposed to deal with such representation in order to detect traffic hazards. 2,[18][19][20][21][22]26 However, many of them are inefficient or they cannot identify such hazards as soon as it occurs. Thereby, it uses predefined intervals to try to identify these hazards. However, how is the best predefined interval to try this identification; since with small interval, the TMS may not receive enough information to its identification. Otherwise, with a great interval, the TMS may identify the hazard much later than its occurrence. Another issue with regard to the hazards identification process: which one is better to provide the result in appropriate time and which information are used in this process are still a big issue.

Alternative route guidance
Suggesting and computing alternative routes to avoid traffic hazards are the better ways to improve the overall traffic efficiency. However, the main challenge is how to do this in an acceptable time to not to introduce an undesired overhead, consequently avoiding the vehicles stuck in some congestion. Although relying on central entities (centralized approach) to compute and suggest alternative routes to all vehicles is more efficient due to its better management and scenario overview, depending on the number of vehicles to be re-routed and the complexity of the algorithm used in the alternative route computation may introduce high overhead, degrading its performance. With this problem in mind, one solution is to enable each vehicle to compute its own alternative route. However, the key challenge is how to provide a full scenario overview about the traffic condition to every vehicle to enable them to compute an efficient route without overloading the network. Another concern is how to compute an efficient alternative route without incurring in traffic congestion in other areas in the nearby future, providing a better traffic balance and management. In this way, to have a good alternative route guidance, a trade-off between efficiency and complexity is essential.

Security and privacy
Ensuring information privacy and security in TMS is essential for all involved people, transit agencies, government, and so on. Since the data may contain personal information and can track people and vehicles, 35 one key challenge is the action of malicious entities which can add or change messages generated by services, generating issues such as fake warning messages. One building block of TMS is the VANET. [36][37][38] According to Parno and Perrig 39 and Raya and Hubaux, 40 for providing security and privacy to the VANETs, several requirements need to be satisfied. Verification of data consistency checks the legality and consistency of messages to avoid messages with malicious data. Availability ensures continuous operation of the system even under attacks (e.g. DoS by jamming). Real-time constraints focus on maintaining communication and efficient computing even with the usage of security techniques. Authentication legitimizes messages. Furthermore, the new trend of using cloud computing with TMS increases the complexity for providing security to the system, because the inherent security problems in cloud computing are also added to TMS. 41 Conclusion Improving transportation efficiency is still an active and challenging research area due to the criticality of the transportation infrastructure being monitored by such systems. This article has provided a comprehensive study of the TMSs, emphasizing the main challenges and shortcomings of the existing systems and suggesting some directions to improve the TMS efficiency. First, we have presented a comprehensive overview of the state of the art in TMS, where the three main TMS phases were described: information gathering, information process, and service delivery. We have also proposed an in-depth classification and review of TMS services organized by their architecture and goals. Furthermore, a qualitative analysis was done based on TMS described. Finally, we presented our vision on improving TMS efficiency and robustness to achieve the desired level of accuracy and traffic control, where this improvement relies on targeting the open challenges. In addition, we have identified and discussed some potential efforts to solve it.