From Vehicular Ad-hoc Networks to Internet of Vehicles