Professional Documents
Culture Documents
Sistemas distribuidos
Matricula: 090180
14/07/2013
1. Introduction
In order to easily describe the design of distributed systems, they have been separated into different kinds of descriptive models which are as follows: Physical models Architectural models Fundamental models
2. Physical Models
The physical model describes the hardware elements of the distributed systems. Considering the physical model as a set of computer nodes connected by the means of a network, we can identify three generations of distributed systems based on this model: Early distributed systems (1970s-1980s): This systems consisted of a LAN connecting about 10 or 100 nodes, with simple services and an even simpler quality of service. Internet scale distributed systems (1900s): The infrastructure of this systems comprised a large number of nodes interconnected by the internet, which allowed the incorporation of a greater number of services and the standardization of the technology used in such systems. Contemporary distributed systems (2000s): Due to the emergence of mobile devices, internet of things and cloud computing there has been an increment of the level of heterogeneity and the nodes in the systems. Distributed systems of systems: Reports about the complexity of some modern systems has led to classify them as systems of systems since the subsystems within the system are able to perform particular tasks on their own.
3. Architectural Models
The structure of the components of a system and their relationship between each other are called the architecture model. This model determines the design of the system and also offer a reference frame for future demands on it.
3.1.2 Communication paradigms There are some communication paradigms in the communication between entities, which are: Inter-process communication: low-level support for communication between processes. Remote invocation: based on a communication resulting in a remote operation. Request-reply protocols: patterns imposed by services for client-server computing. Remote procedure calls: remote processes can be called as if they were local processes. Remote method invocation: like procedure calls, but aimed to distributed objects. Group communication: concerned with communications of the one-to-many type. Publish-subscribe systems: distribution of items of interest by publishers to consumers. Message queues: offers an indirection between producer and consumer processes. Tuple spaces: processes can place arbitrary items of structured data called tuples. Distributed shared memory: provide abstraction for sharing data between processes.
3.1.3 Roles and responsibilities There are interactions between processes in a distributed system in which certain processes take a certain role. This roles are important in establishing the architecture style of the system. Two of this styles are: Client-server: The most important and most widely style employed. In this style the processes can take either the role of a client or a server. Clients request the servers for services or resources and the servers provides them. Peer-to-peer: In this style, all processes take similar roles, without a distinction between client and server. 3.1.4 Placement Placement means how the elements of a system are distributed on the physical infrastructure. There are four main placement strategies that can alter the design of the distributed system: Mapping of services of multiple servers: These are services implemented as several server processes in different computers in order to provide a service to clients.
Caching: is the storage of used data close to the client. If a client request a resource, the caching service checks the cache and supplies the resource if it finds it. Mobile code: The user select an applet from a browser where is stored on a web server and the code runs there. Mobile agent: is a running program that travels from one computer to another in a network carrying a task.
4 Fundamental models
Are models based on the fundamental properties that allow us to be more specific about their characteristics and the failures and security risks they might exhibit. The most important aspects of distributed systems that fundamental models are intended to help us with are: Interaction model Failure model
Security model
5 Conclusion
Distributed systems are increasing their level of complexity as the technology development advances. For this reason, the design of descriptive models gives an easier understanding of such systems.
6 Bibliography
Colouris, G. (2012) Distributed systems concepts and design. Boston, Massachusetts: Adison-Wesley