In this tutorial you are going to learn about Architectural Model in Distributed System.
Introduction to Architectural Model
Architectural Model is a type of system model in distributed system which has various hardware and software architectures exist that are usually used for distributed computing. Architectural Model deals with organization of components across the network and their interrelationship.
This architectural model can be discussed at lower level and upper level. At lower level architectural model interconnect multiple CPUs and at upper level it interconnect processes running on those CPUs.
Types of Architectural Model
- Client Server Model
- Peer to Peer Model
Client Server Architectural Model
Client Server Model is the most popular and most widely used distributed system architecture. Client Server architecture is also known as request-response architecture. In this architectural model the client makes a request to the server and the server will fulfill the response. Client and server roles are assigned and changeable.
Advantages of Client Server Model
- Centralized system where all the data can be stored in a single place.
- Requires less maintenance cost and entire system is maintained by the server.
- Increases the speed of the resource sharing.
Disadvantages of Client Server Model
- Prone to attacks like Denial of Service and viruses in the server.
- In case of server failure the entire system will fail.
- Spoofing and modification of data packets can be done during transmission.
Peer to Peer Architectural Model
Unlike client-server model, Peer to Peer Model (P2P) does not distinguish between client and server instead each node can either be a client or server depending on whether the node is requesting or providing the services.
Advantages of P2P Model
- Setup and maintenance of network is easy.
- Cost efficient as each node in this model acts as a server.
- Each node is independent of each other so if one node stops working it won't affect other node.
Disadvantages of P2P Model
- No backup of data can be done as there is no central server.
- Security issues because each node is independent and hence difficult to secure the complete network.
Difference Between Client Server vs Peer to Peer Model
Client Server Model | Peer to Peer Model |
Asymmetric Data Flow | Symmetric Data Flow |
Different network software for client and server | Same network software for client and server |
Client is in active role and server is in passive role | Any node can be active or passive |
This article on Architectural Model in Distributed System is contributed by Rajnish Kumar. If you like TheCode11 and would like to contribute, you can also write your article and mail to thecode11info@gmail.com