# Federated Learning for Edge Computing: A Survey
## 3 Federated Learning
### Communication  
The architecture design is shown in Figure 3, where three important parts of the FL are shown: FL server, FL clients, and communication-computation framework [40].  
The FL server, sometimes called a manager, is usually a powerful computing device. The role of this server is to create a global machine learning model while managing the communication between clients and the server. In this case, the server should be reliable and stable to avoid deviations in creating the global model. If the server is unstable and unreliable, it may create an incorrect model. One possible solution may be to decentralize the federated server [41]. The use of blockchain can be used to solve these problems.  
Blockchain technology [42] has a promising future. It can help business, government, logistics, and financial systems become more reliable, credible, and secure. Because it can help achieve these goals in various systems, this technology has many advantages. Of course, blockchain technology has some drawbacks, most of which are related to the cost and implementation process. Blockchain is constantly working to improve efficiency and reduce the cost of operation.  
Nowadays, these two technologies are mentioned more often. For example, this paper [43] proposes the implementation of a coordination server for the FL algorithm to share information to improve prediction while ensuring data transparency and consents to its use. In parallel, the authors illustrate this approach using a prediction decision-support tool applied to a diabetes dataset. The authors present distributed K-means clustering based on differential privacy and homomorphic encryption, distributed random forest with differential privacy, and distributed AdaBoost with homomorphic encryption methods to enable multiple data protection in data sharing and model sharing. These techniques combine blockchain and FL to provide a comprehensive security assessment. The challenge may be finding a trusted server or party to serve as the administrator. Then, a fully decentralized environment where the parties communicate directly with each other and  
Figure 2: Architecture design of FL.  
contribute almost equally to the global training of the machine learning model seems to be the right choice.  
In the case of FL clients, the clients are the owners of the data on which the ML model is built. All clients, also known as parties or data sources, have their own data and train their own local ML model. This local model is sent to the server, creating a global model. For clients, we need to consider their hardware capacity and storage. Client, i.e., an organization with significant computing power and servers involved in training a robust model, or also some small edge device whose performance may not be so sufficient. The same rules apply to mobile phones, which do not have much power and cannot train complex models.  
In FL systems, computations are performed on clients, with clients and servers communicating. In most cases, communication and computation have the same goals: training the model and exchanging model parameters. While the clients are in charge of computing and creating the local model, the server is in charge of computing and creating the global model, which is then shared among the clients. Federated Averaging (FedAvg) [44] is a fundamental framework. The server first delivers the current global model to the chosen parties on each cycle. The chosen parties then update the global model using their local data. After that, the server receives the updated models once again. In order to obtain the new global model, the server averages every local model it has received. Until the set number of iterations has been reached, FedAvg repeats the process described above. The result is the server's global model.