lunes, 30 de abril de 2012

Semana 12

La aportacion de esta semana fue hablar un poco sobre hamachi, que es y como funciona y un poco de su seguridad, cabe destacar que seria una muy buen herramienta para el cluster.

liga:
http://elisa.dyndns-web.com/progra/HamachiApplication

Mis nominaciones son para:
Alejandro Avendaño, Eduardo Triana y Adriana Contreras por la aprotacion:
http://elisa.dyndns-web.com/progra/Hamachi%2BSSH

Communication in distributed systems

The most important difference between a distributed system and a single processor systemis the communication between processes. In a single-processor communication implicitly assumes the existence of shared memory:
• Ex: problem of producers and consumers, where a process writes to a shared buffer and anotherprocess reads from it.
In a distributed system there is no shared memoryand thus the whole nature of communicationbetween processes must be rethought. Processes to communicate, they must adhere to rules known as protocols. For distributed systems over a wide area, these protocols often take the form of several layers and each layer has its own goals and rules. Messages are exchanged in various ways, thereare many design options in this regard, an important option is the "remote procedure call." It is also important to consider the possibilities of communication between groups of processes, not only between two processes. In distributed systems, the absence of physical connection between the different memories of the teams, communication is performed by message transfer.

The standard ISO OSI
To send messages using the standard ISO OSI (Open Systems Interconnection), a layered model for communication of open systems. The layers provide multiple interfaces with different levels of detail, the last being the most general. The OSI standard defines the following seven layers: physical, data link, network, transport, session, presentation and application. The OSI model distinguishes two types of protocols, connection oriented and connectionless protocols. In the first, before any data transmission requires a virtual connection, which must end after sending. Connectionless protocols do not require this step, and messages are sent as datagrams.

Asynchronous transmission mode ATMAsynchronous transfer mode or ATM provides a quick means of transmission. Higher speeds are achieved regardless of the information flow control and error control in the intermediate nodes of the transmission. ATM uses connection-oriented mode, and allows transmission of different types of information such as voice, video, data, etc..
The client-server model of communication based on a simplification of the OSI model. The seven layers that provides produce a waste of the transfer speed of the network, which will be used only three layers: physical, data link and request / reply. Transfers are based on the protocol request / response and eliminates the need for connection.
RPC
 
Group communication
Communication systems that support groups can be divided into two categories: closed groups andopen groups. In the first only allowed communication between group members,while in the latter processes that do not belong to the group can interact with it. Closed groups are often used, in general, parallel processing, where each member has its own objective and does not interact with the `` outside world''. Instead, open groups are intended for application developmentclient / server, where the processes interact with the group to apply for services.

We can also categorize groups of processestaking into account the role played by the membersthat compose them: peer groups and hierarchical groups. If in a group there is nodistinction between the processes that formed anddecisions are taken collectively, is said to be apeer group. However, if relations are establishedhierarchy in a group, where some processes have a greater say than others, we speak of hierarchical groups. Each of these organizations group has its advantages and disadvantages. In hierarchical groups, if they fail the processes that make decisions, can produce a mismatch of the other members for as long as this situation remains. Inthe peer group does not produce this effect, if it fails one of its members can continue working (witha smaller group).


Bibliography:
http://www.iuma.ulpgc.es/users/lhdez/inves/pfcs/memoria-ivan/node2.html#SECTION00240000000000000000

jueves, 19 de abril de 2012

semana 11

La aportacion de esta sema fue un poco de informacion de lo que se puede utilizar en pyMPI. Una complementacion de lo que hizo mi compañero Alejandro Avendaño.


Link:
http://elisa.dyndns-web.com/progra/pyMPI


Mis nominaciones son para:
Osvaldo Hinojosa
Alejandro Avendaño
Jonathan Alvarado

por las aportaciones de esta semana.

lunes, 16 de abril de 2012

Semana 10

El aporte de esta semana son unos programas en c del mergesort




y aqui el merge sort con threads no estoy seguro si esta hecho de una buena forma


Mis nominaciones son para:
Jose Gonzales, Alejandro Avendaño y Eduardo Triana

jueves, 5 de abril de 2012

semana 9

La aportacion de esta semana, hice referencia a los posibles fallos que puede presentar un sistema distribuido ya que como en esta semana se ve lo que es la tolerancia a fallos y en el laboratorio describi de manera general este tema.


El link es el siguiente:
http://elisa.dyndns-web.com/progra/Cluster


Mis nominaciones son a:
Jose Gonzales 
Jonathan Alvarado

Tolerancia a fallos

Tolerancias a fallos (en inglés failover, suele confundírse con el término concurrencia) se determina a la capacidad de un sistema de almacenamiento de acceder a información aún en caso de producirse algún fallo. Esta falla puede deberse a daños físicos (mal funcionamiento) en uno o más componentes de hardware lo que produce la pérdida de información almacenada. La tolerancia a fallos requiere para su implementación que el sistema de almacenamiento guarde la misma información en más de un componente de hardware o en una máquina o dispositivo externos a modo de respaldo. De esta forma, si se produce alguna falla con una consecuente pérdida de datos, el sistema debe ser capaz de acceder a toda la información recuperando los datos faltantes desde algún respaldo disponible.

Los sistemas de almacenamiento con tolerancia a fallos son vitales en ambientes donde se trabaje con información crítica, como el caso de los bancos, entidades gubernamentales, algunas empresas, etc. El nivel de tolerancia a fallos dependerá de la técnica de almacenamiento utilizada y de la cantidad de veces que la información está duplicada, sin embargo, la tolerancia nunca es del 100% puesto que si fallan todos los "mirrors" disponibles, incluyendo el origen, los datos quedan incompletos por lo tanto la información se leerá corrupta.



La tolerancia a fallos es un aspecto crítico para aplicaciones a gran escala, ya que aquellas simulaciones que pueden tardar del orden de varios días o semanas para ofrecer resultados deben tener la posibilidad de manejar cierto tipo de fallos del sistema o de alguna tarea de la aplicación.

Sin la capacidad de detectar fallos y recuperarse de estos, dichas simulaciones pueden no llegar a completarse. Es más, algunos tipos de aplicaciones requieren ser ejecutadas en un entorno tolerante a fallos debido al nivel de seguridad requeridos.

Bibliografias:


http://flanagan.ugr.es/oep/node34.html

http://es.wikipedia.org/wiki/Tolerancia_a_fallos