Edge Computing: Vision and Challenges