Edge Computing: Classification, Applications, and Challenges