# Software-Defined Vehicular Cloud Networks: Architecture, Applications and Virtual Machine Migration
## 3 The Architecture of Software-Defined Vehicular Cloud
### The Components of SDVC
#### 3.1.3 Components of the Multi-Access Edge Cloud-Enabled SDN for VM Migration  
Figure 6 shows the components of the multi-access edge (MEC) cloud assisted by SDN for supporting VM migration over SDVC. The SDN concept envisions an architecture of three layers: data plane, control plane, and application plane. In SDVC, the MEC cloud is assisted by a control layer that includes the SDN controllers and applications on top of the control plane to allow programmable functions to assist the SDN controller to greatly manage the SDVC network. The data plane includes the forwarding devices considered as SDN devices. The vehicle has physical hardware that hosts VMs through hypervisor software. The OBU equipped in the vehicle has wireless interface for communication. The OBU in vehicle communicates with the MEC infrastructure when the routing rules are configured in their SDN device's flow tables; otherwise, the unmatched packets are directly forwarded to the SDN controller or dropped according the actions field in SDN devices' flow tables. As the vehicle moves out of the radio coverage offered by the MEC nodes, the latter should be able to keep data and running services on the OBU through VM migration. The VM migration and routing paths among MEC nodes are managed and controlled by the control plane in SDVC. In SDVC, vehicle mobility and heterogeneity of wireless technologies equipped in vehicles introduce further challenges during VM migration process. The updated information about the topology changes, vehicle mobility, network interfaces, and information on different active VM (ready to be migrated) are primordial to the control layer since the coordination and management are subjected to the SDN controller and applications involved in supporting the SDN controller. To efficiently migrate VM from one MEC micro-data center, the SDN control has a communication infrastructure controller to manage the topology and network preferences wireless interface equipped with vehicle node that hosts the dedicated VM. The latter migrates and resumes its computation to the next adjacent MEC micro-data center. On the other hand, the active VM controller performs a significant role regarding control of the VM migration process of VM services on vehicles. Based on the data collected from the SDN communication infrastructure controller, the VM migration of active VM controller is decided. The decision is about whether an active VM controller should be migrated or not along with the vehicle. Therefore, the SDN controller should minimize the overall network cost of VM migration. As shown in Figure 6, the control plane includes the MEC server. The MEC servers implements the features adopted by the ETSI [39]. The MEC server hosts applications designed to provide latency and high bandwidth as well as real-time access to radio network information. In the context of VM migration assisted by the SDN controller, imperatives applications modules such as V2X collaborative sharing and SDN overlay VM migration management are responsible for resources sharing and VM migration, respectively. These two applications would be added among other validated applications of the MEC application platform. In the application plane, existing applications such as quality of services, mobility management, load balancing, and content-based routing are designed to provide applications programming interfaces to manage efficiency quality of services, mobility, load balancing, and routing based on the data content requested by the vehicular user. The application plane interacts with the control plane through northbound API, while the southbound API implements control policies between the control plane and the data plane. The OpenFlow protocol maintains a secure communication between the control plane and data plane. In general, SDN control in SDVC has the responsibility to harmonize the centralization concept of the SDN control with the native VC. A hierarchical control solution with a communication infrastructure controller and the active VM controller can be considered.