PDF de programación - Mecanismos de comunicación

Imágen de pdf Mecanismos de comunicación

Mecanismos de comunicacióngráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 11 de Marzo del 2018)
1.319 visualizaciones desde el 11 de Marzo del 2018
1,5 MB
56 paginas
Creado hace 12a (16/01/2012)
Mecanismos de
comunicación


Xavier Vilajosana Guillén
Leandro Navarro Moldes

PID_00184782

© FUOC • PID_00184782

Mecanismos de comunicación

Ninguna parte de esta publicación, incluido el diseño general y la cubierta, puede ser copiada,
reproducida, almacenada o transmitida de ninguna forma, ni por ningún medio, sea éste eléctrico,
químico, mecánico, óptico, grabación, fotocopia, o cualquier otro, sin la previa autorización escrita
de los titulares del copyright.

© FUOC • PID_00184782

Índice

Mecanismos de comunicación


Introducción...............................................................................................

Objetivos.......................................................................................................

1. Paradigmas de comunicación.........................................................
1.1.
Paso de mensajes .........................................................................
1.2. Memoria compartida ...................................................................
1.3.
Invocación remota ......................................................................
1.4.
Publicación suscripción ...............................................................
1.5. Modelo de programación por eventos ........................................

2.2.


2. Mecanismos de comunicación........................................................
2.1. Codificación de datos .................................................................
2.1.1.
La problemática de la codificación de datos .................
Formatos de codificación de datos .............................................
2.2.1. Codificación textual con XML ......................................
2.2.2. Codificación textual con JSON .....................................
2.2.3. Codificación binaria con XDR ......................................
2.2.4. Codificación binaria con ASN.1 ....................................
2.3. Mecanismos de invocación remota ............................................
Servicios de nombres .....................................................
2.3.1.
2.3.2. Conectores (sockets) .......................................................
Protocolos RPC ..............................................................
2.3.3.
Localización de servicios ...............................................
2.3.4.
2.3.5.
REST ...............................................................................


Resumen.......................................................................................................

Bibliografía.................................................................................................

5

6

7
8
11
12
14
17

19
19
19
23
23
25
26
26
28
30
31
34
48
49

53

55

© FUOC • PID_00184782

Introducción

5

Mecanismos de comunicación

Hoy en día no nos podemos plantear la existencia de ninguna aplicación que
no utilice un mecanismo de comunicación, ya sea porque la aplicación ha
sido desarrollada como un conjunto de hilos o procesos que se comunican
entre ellos o bien porque la aplicación está en red y distribuida donde sus
componentes interactúan de una forma ordenada, como por ejemplo con un
modelo cliente-servidor. Desde las aplicaciones web que consultamos a diario
y las aplicaciones que se ejecutan en nuestros dispositivos móviles hasta las
aplicaciones que se ejecutan en los microcontroladores de nuestros electrodo-
mésticos, se usan primitivas de comunicación para sincronizar e intercambiar
información o reproducir contenidos.

El objetivo de este módulo es dar a conocer qué son las técnicas y los paradig-
mas de comunicación de aplicaciones o procesos que rigen el funcionamiento
de la mayoría del software de hoy. Así pues, en este módulo presentamos los
mecanismos de comunicación entre procesos, objetos y aplicaciones que han
surgido de la necesidad de comunicar aplicaciones que se ejecutan de forma
distribuida, paralela o concurrente.

En el módulo veremos los paradigmas fundamentales de comunicación de
aplicaciones, de los cuales destacamos el paso de mensajes y la invocación
remota como máximos exponentes. El módulo presenta seguidamente meca-
nismos de comunicación más ampliamente usados. Los sockets, que son una
implementación del paradigma de paso de mensajes, la invocación remota de
objetos y los procedimientos remotos, que consisten en la ejecución de códi-
go de forma remota. En el módulo se presentan las técnicas de codificación
de datos, que pueden ser binarias o textuales, se introduce la problemática
de la comunicación donde los participantes no son homogéneos, que requie-
re acuerdos en la representación de la información. Finalmente, se presentan
mecanismos de comunicación como RMI, XML-RPC y SOAP extensamente
usados a día de hoy.

© FUOC • PID_00184782

Objetivos

6

Mecanismos de comunicación

Con el estudio de este módulo alcanzaréis los objetivos siguientes:

1. Conocer los diferentes paradigmas de comunicación entre procesos, apli-

caciones u objetos.

2. Conocer la problemática de la transmisión de información de datos y las
diferentes formas de codificar la información. Diferenciar la codificación
binaria de la textual.

3. Conocer el funcionamiento de los mecanismos de comunicación con co-

nectores (sockets).

4. Conocer la invocación remota de procesos y objetos. Saber los principales
protocolos que la implementan así como las características principales de
los servicios web.

© FUOC • PID_00184782

7

Mecanismos de comunicación

1. Paradigmas de comunicación

Desde el momento en que existe la posibilidad de ejecutar procesos de forma
paralela, concurrente o distribuida, surge la necesidad de establecer comuni-
cación entre estos procesos. La comunicación se puede llevar a cabo haciendo
uso de diferentes metodologías y técnicas que se conocen como paradigmas
de comunicación.

La comunicación entre procesos puede ser síncrona o bien asíncrona:

• Comunicación￿síncrona (o sincrónica): es el intercambio de información

entre procesos en tiempo real y requiere simultaneidad de los procesos.

Ejemplo de comunicación síncrona

Un ejemplo de comunicación￿síncrona es la telefonía, en la que emisor y receptor coin-
ciden en el espacio temporal en cuanto al hecho de transmitir la información, es decir,
hablar por teléfono.

• Comunicación￿asíncrona (o asincrónica): es aquella comunicación que
se establece entre dos o más procesos de manera diferida en el tiempo, es
decir, cuando no existe simultaneidad.

Ejemplo de comunicación asíncrona

Un ejemplo muy antiguo de comunicación￿asíncrona es la carta postal, en la que emi-
sor y receptor no coinciden en el espacio temporal en cuanto al hecho de transmitir la
información, es decir, enviar la carta. Ejemplos actuales de la comunicación asíncrona
son el mail o correo electrónico y foros.

Todo mecanismo de comunicación tiene que considerar aspectos como la fia-
bilidad en el envío, es decir, que el mecanismo nos asegurará que cualquier
información que se envía llegará, o en caso contrario, el mecanismo nos no-
tificará que no ha podido enviar la información. Un mecanismo de comuni-
cación también puede garantizar la remisión en orden de la información que
se envía y definir la topología del proceso de comunicación, es decir, si los
mensajes se envían uno a uno (unicast o de igual a igual), uno a muchos (mul-
ticasting o broadcasting) o muchos a uno (cliente-servidor).

© FUOC • PID_00184782

Figura 1

8

Mecanismos de comunicación

Los paradigmas de comunicación comparten un mismo objetivo pero su ám-
bito de aplicación es diverso, dado que depende directamente de la aplicación,
del hardware, de la interconexión entre procesos y de las características de la
Red. Hay paradigmas que sólo sirven para establecer conexiones síncronas,
mientras que otros solo permiten conexiones asíncronas. También hay para-
digmas que pueden ser usados tanto síncronamente como asíncronamente.

Seguidamente veremos los paradigmas de comunicación más relevantes y que
engloban la mayoría de formas de comunicación entre procesos, programas
u objetos, ya sean en una misma máquina o en máquinas remotas. Hay que
remarcar que los paradigmas que se presentan no representan siempre un mis-
mo escenario ni son adecuados para cualquier situación. Algunos de ellos son
más adecuados para la comunicación de procesos a bajo nivel o incluso para
escenarios caracterizados por muchas restricciones, como es el caso de la co-
municación entre microcontroladores; otros son más adecuados para estruc-
turar la comunicación en programas complejos y a alto nivel. Veámoslos.

1.1. Paso de mensajes

El paso de mensajes es un paradigma de comunicación usado en programación
orientada a objetos, computación concurrente y paralela y computación dis-
tribuida. En este modelo los procesos u objetos pueden enviar mensajes a los
otros procesos y recibirlos, e incluso sincronizarse en espera de algún mensaje.

© FUOC • PID_00184782

9

Mecanismos de comunicación

(1)En inglés, one-sided.

En este paradigma, los programadores organizan sus programas como
una colección de tareas con variables locales privadas y la habilidad de
enviar y recibir datos entre tareas por medio del intercambio de men-
sajes. Se caracteriza por tener un espacio de direcciones distribuido y
conocido que permite la comunicación entre tareas u objetos.

Los mensajes pueden ser enviados vía red o usar memoria compartida, si está
disponible. Las comunicaciones entre dos tareas ocurren a dos bandas, donde
los dos participantes tienen que invocar una operación (enviar, por parte del
emisor, y recibir, por parte del receptor). Podemos denominar a estas comuni-
caciones operaciones cooperativas, puesto que tienen que ser realizadas por cada
proceso: el proceso que tiene los datos y el proceso que quiere acceder a los
datos. También en algunas implementaciones, puede haber comunicaciones
de tipo unilateral1, si es un único proceso el que invoca la operación, colo-
cando tod
  • Links de descarga
http://lwp-l.com/pdf9434

Comentarios de: Mecanismos de comunicación (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad