# Software-Defined Heterogeneous Vehicular Networking: The Architectural Design and Open Challenges
## 4 Towards Software-Defined Heterogeneous Vehicular Networks  
### Architecture Design for SDHVNet  
The SDN paradigm, although primarily conceived for the management and orchestration of conventional data centres, has recently gained the interest of academia and industry. SDN de-couples the data plane and the control plane, and the network intelligence is forwarded to a centralized SDN controller in a move aimed at making simplified, yet intelligent networking decisions. SDN yields a number of benefits to a network's management, including, but not limited to, reprogrammability, agility, scalability, elasticity and flexibility [41]. However, it is also pertinent to mention that unlike traditional networks, which are administered via a _single point of network management_, VANETs tend to possess very high mobilities and are quite distributive in their nature. Since the centralized controller in the SDN-based HetVNets plays a critical coordination role with the highly dynamic vehicles and numerous radio access technologies and should it become unresponsive or unavailable, this may transform into a _single point of network failure_, thereby seriously undermining the benefits of SDN, and could potentially lead to fatal road incidents. Therefore, a distributed networking architecture in addition to centralized governance is indispensable for ensuring the reliability of SDHVNets. A topological architecture of our proposed SDHVNet is depicted in Figure 4.  
It can be observed that vehicles tend to rely primaily on the vehicular clouds 1 or localized intelligence (roadside cloudlets 2), and centralized intelligence 3 is only invoked once the compute and storage resources at the localized level become inadequate. As is evident from Figure 4, vehicles tend to traverse in the form of vehicular clouds. A vehicular cloud (also referred to as a _micro cloud_ or _vehicular platoon_) is a group of vehicles, just like the cluster in wireless sensor networks, wherein only the cluster head is responsible for communicating the entire cluster's status to the localized and/or global management entities. This, in turn, assists in minimizing the excessive network management overhead on the backhaul and ensures that the routing or other similar networking decisions could be carried out in almost real-time with ultra-low end-to-end delay. Furthermore, vehicles that do not wish to become a part of the vehicular cloud traverse independently (although not recommended) and thus directly communicate with the local and/or global management entities. Some of these vehicles possess selfish behaviour, i.e., they do not interact with other vehicles and even do not relay other vehicles' messages with the aim to conserve their resources for satisfying personal objectives. Provided that the number of selfish vehicles in a network increases beyond a particular threshold, localized intelligence ensures introducing certain incentive-based mechanisms that could entice selfish vehicles to participate interactively in the network by becoming a part of the optimal vehicular cloud. Such incentives may include, but are not limited to, enhancing the reputation (i.e., a metric for evaluating the _trust_) of a vehicle within the network, access to higher bandwidths, discounts on certain network services, etc. Nevertheless, such incentives are kept within a reasonable limit so that these vehicles, after enjoying the perks, do not hibernate in the selfish mode once again, but rather strive for more and more incentives over time. Game theory-based approaches are generally utilized for such purposes. Moreover, a proposed logical architecture of SDHVNet is depicted in Figure 5. As can be seen, the network infrastructure plane (i.e., data plane) encompasses both vehicles and vehicular users, roadside infrastructure, i.e., access points and base stations of diverse heterogeneous radio access technologies, traffic lights and vulnerable road pedestrians. V2V, V2I and V2P communication take place at the data plane.