A Convex-based Computation Offloading Mechanism in Vehicular Edge Computing