  Federated learning (FL) refers to a distributed machine learning framework
involving learning from several decentralized edge clients without sharing
local dataset. This distributed strategy prevents data leakage and enables
on-device training as it updates the global model based on the local model
updates. Despite offering several advantages, including data privacy and
scalability, FL poses challenges such as statistical and system heterogeneity
of data in federated networks, communication bottlenecks, privacy and security
issues. This survey contains a systematic summarization of previous work,
studies, and experiments on FL and presents a list of possibilities for FL
across a range of applications and use cases. Other than that, various
challenges of implementing FL and promising directions revolving around the
corresponding challenges are provided.
