On the Joint Optimization of Function Assignment and Communication Scheduling toward Performance Efficient Serverless Edge Computing