SlideShare una empresa de Scribd logo
1 de 41
COMUNICACIÓN ENTRE
PROCESOS.
Ing. Luis Jara Obregón, Msc.
1. INTRODUCCIÓN.
2. LA INTERFAZ DE PROGRAMACIÓN DE APLICACIONES PARA LOS PROTOCOLOSDE INTERNET.
3. REPRESENTACIÓN EXTERNA DE DATOS EMPAQUETADO.
4. COMUNICACIÓN CLIENTE-SERVIDOR
5. COMUNICACIÓN EN GRUPO.
6. CASO DE ESTUDIO: COMUNICACIÓN ENTRE PROCESOS EN UNIX.
7. RESUMEN.
COMUNICACIÓN ENTRE PROCESOS.
• La interfaz de programación de aplicaciones (API) de java para la comunicación entre
procesos en internet proporciona comunicación tanto por datagramas como streams.
Los streams son los objetos que se encargan de conectar
el programa con las distintas fuentes o destinos de los
datos que se procesan (teclado, monitor, disco duro,
sockets...).
Un datagrama es un paquete de datos que constituye el
mínimo bloque de información en una red de
conmutación por datagramas.
TCP VS. UDP
} UDP
Este protocolo es orientado a
conexión.
Este protocolo es de conexiones
inferiores.
La conexión TCP es flujo de bytes La conexión UDP es un flujo de
mensajes
Proporciona control de errores y
control de flujo
No se proporciona el control de
errores ni control de flujo.
TCP admite la transmisión full duplex UDP no admite transmisión full duplez
Es un servicio confiable de
transmisión de datos
Este es un servicio poco fiable de
transmisión de datos.
El paquete TCP se llama como
segmento.
El paquete UDP se llama como
datagramas de usuario.
TCP (Transmission Control Protocol
• EL CLIENTE INDICA QUÉ SERVICIO QUIERE, LO HACE CON LA DIRECCIÓN IP DESTINO
Y PUERTO.
• PUERTOS: ENTRE 0 Y 65.535
• DEL 0 AL 1023 ESTAN ESTANDARIZADOS, LOS PUERTO UDP SON LOS MISMOS, PERO
NO SE MEZCLAN LOS DATOS.
• EL CLIENTE SOLICITA EN SU SISTEMA UN NÚMERO DE PUERTO PARA USO PROPIO.
TCP (Transmission Control Protocol
Cliente
Dirección IP
192.168.1.15
¡¡¡OPERADORA¡¡¡
DAME UN PUERTO
PARA REALIZAR
UNA CONEXIÓN
EXTERNA,….¿EL
33580 ESTA LIBRE
Servidor
Dirección
192.168.1.1
PUERTO
80
33580
¡¡¡¡SERVIDOR¡¡¡ ME
QUIERO CONECTAR A TU
PUERTO 80 DESDE MI
PUERTO 33580
OK PIDE
LO QUE
QUIERAS
Conexión establecida
ID único
192.168.1.1:80/192.168.1.15:33580
MECANISMOS DE FIABLILIDAD DEL TCP
Para evitar pérdidas y duplicados y asegurar el orden.
• Numeración y confirmación.
• Todos los bytes tienen su número de secuencia.
• En la cabecera del segmento va el 1er n° de secuencia.
• Se usa una “Confirmación positiva con retransmisión” (El receptor debe mandar
un ACK para confirmar la recepción. Si no lo hace en un plazo, se retransmite.
• Si un ACK llega tarde al emisor, el receptor se puede encontrar con segmentos
duplicados.
MECANISMO DE FIABILIDAD DE TCP (2)
• CAMPOS DE CABECERA DE TCP PARA LOS PUERTOS, NÚMEROS DE SECUENCIA Y
LOS ACK.
• …… LA COMUNICACIÓN FLUYE CON NORMALIDAD
• LO ULTIMO QUE HA OCURRIDO CORRECTAMENTE:
• A------B, segmento con los bytes del 20 al 50 y….
• A ----------B, segmento con los bytes del 80 al 100…
• Vemos como funciona la cabecera de TCP:
PUERTO DE ORIGEN (16) PUERTO DE DESTINO (16)
NÚMERO DE SECUENCIA (32)
NÚMERO DE CONFORMACIÓN (32)
MECANISMO DE FIABILIDAD DE TCP (2)
A
PUERTO
3358
B
PUERTO
80
51…..70 1
1.- A--B, bytes del 51 al 70 ACK del 80
a 100
ORIGEN 3358 80 DESTINO
N° Sec 51
N° Confirm 101
1
Del primer byte ---
enviado
Del Sgte. byte a ---
recibir
101….120
2.- A---B, bytes del 101 al 120 y
ACK (51 A 70)
ORIGEN 80 3358 DESTINO
N° Sec 101
N° Confirm 71
3.- A--B, No hay datos nuevos. ACK
(101-120)
ORIGEN 3358 80 DESTINO
N° Sec 71
N° Confirm 121
ORIGEN 80 3358 DESTINO
N° Sec 121
N° Confirm 71
4.- A---B, bytes del 121 al 150. Se esper
el byte 71
4
2
3
NO
DATA
121….150
5
71…90
5.- A-B, bytes del 71 al 90. ACK (121-150
Características de la Comunicación entre procesos.
EL PASO DE MENSAJES ENTRE UN PAR DE PROCESOS SE PUEDE BASAR EN DOS OPERACIONES; ENVIA Y RECIBE
ENVIA
RECIBE
Se define en función del destino y del
mensaje
Para que se pueda comunicar un proceso con otro, se debe enviar un mensaje ( Secuencia de bytes) a un destino y
otro proceso en el destino recibe el mensaje.
Esto actividad requiere comunicación des datos desde el proceso emisor al proceso receptor y puede implicar
también sincronización de los dos procesos.
COMUNICACIÓN SINCRONA Y ASINCRONA
Mensaje
LOS PROCESOS EMISORES PRODUCEN MENSAJES QUE SERÁN AÑADIDOS A LAS COLAS REMOTAS,
MIENTRAS QUE LOS PROCESOS ELIMINÁN MENSAJES DE LAS COLAS LOCALES.
LA COMUNICACIÓN ENTRE
LOS PROCESOS EMISOR Y
RECEPTOR
SÍNCRONA: Los procesos emisor y
receptor se sincronizan con cada
mensaje. Tanto envía como recibe son
operaciones bloqueantes.
A cada envié producido el proceso
emisor se bloquea hasta que se produce
el correspondiente recibe.
ASÍNCRONA: La utilización de la
operación envía en no bloqueante, de
modo que el proceso emisor puede
continuar tan pronto como el mensaje
haya sido copiado en el búfer local, la
transmisión del mensaje se realiza en
paralelo con el proceso emisor.
DESTINOS DE LOS MENSAJES.
• En los protocolos de internet, los mensajes son enviados a direcciones construidas por pares
(dirección internet, puerto local).
UN
RECEPTOR
Los procesos pueden utilizar múltiples puertos desde los que recibir mensajes. Cualquier proceso que conozca el
número de puerto apropiado puede enviarle mensajes.
Si el cliente utiliza un dirección de internet fija para referirse a un servicio debe ejecutarse
siempre en el mismo computador para que esa dirección se considere valida. esto se evita
usando una de las siguientes aproximaciones que proporcionan transparencia de ubicación.
 Los programas se refieren a los servicios por su nombre y utilizan un servidor de nombres o enlazador
para trasladar esos nombres a ubicaciones del servidor en tiempos de ejecución.
 El sistema operativo, ej; Mach, proporciona identificadores para los destinos de los mensajes
independientes de la localización, haciéndoles corresponder con direcciones de más bajo nivel para
utilizarlas para entregar los mensajes en los puertos, permitiendo la migración como la reubicación de
los servicios.
SOCKETS
• Definición: Un socket es un punto final de enlace de comunicación de dos vías entre
dos programas que se ejecutan a través de la red.
• El cliente y el servidor deben ponerse de acuerdo sobre el protocolo que utilizaran.
Ambas formas de comunicación (UDP y TCP) utilizan la abstracción de sockets, que proporciona los puntos
extremos de la comunicación entre procesos, se origina en UNIX pero ahora están presentes en la mayoría de
sistemas operativos.
PRIMITIVAS DE SOCKETS
Por lo general, los servidores ejecutan primero cuatro primitivas, normalmente en el
orden dado. Cuando se llama a la primitiva socket, el que llama crea un nuevo punto
final de comunicación para un protocolo de transporte especifico. De manera interna,
crea un punto final de comunicación significa que el sistema operativo local reserva
recursos para alojar los mensajes enviados y recibidos por el protocolo especificado.
PROCESO
CLIENTE.
CLIENTE
192.168.1.2
8080
PROCESO
SERVIDOR
192.168.1.3
8080
Estoy escuchando a
que un cliente realice
una petición
Yo conozco la
dirección IP de
ese servidor y su
puerto, voy a
realizar una
petición
SE ESTABLECE UN SOCKET DE
COMUNICACIÒN 8081
COMUNICACIÓN DE DATAGRAMAS UDP
• Un datagrama enviado por UDP se transmite desde un proceso emisor a un proceso receptor
sin acuse de recibo ni reintentos. Si algo falla, el mensaje no puede llegar a su destino, Se
transmite un datagrama, entre procesos, cuando uno lo envía y otro lo recibe.
• Cualquier proceso que necesite enviar o recibir mensajes debe crear, primero un conector
asociado a un dirección IP y aun puerto local. Un servidor enlazará su conector a un puerto
de servidor (conocido por los clientes). Un cliente ligara su conector a cualquier puerto local
libre. El método recibe devolverá, además del mensaje, la dirección de internet y el puerto del
emisor, permitiendo al receptor enviar la correspondiente respuesta.
Velocidad a
costa de
fiabilidad.
No ordena
mensajes.
No controla el
flujo.
ASPECTOS REFERENTES A LA COMUNICACIÓN DE
DATAGRAMAS.
• Tamaño de mensaje: El receptor necesita especificar una cadena de byte de un tamaño
concreto sobre el cual se almacenará el mensaje recibido, si es demasiado grande será
trucado a su llegada, a pesar de que la capa subyacente permite paquetes de hasta 2^16
bytes, incluida la cabecera, en la mayoría de entornos se restringe a 8 kilobytes.
• Bloqueo: La comunicación UDP utiliza operaciones de envió, ENVIA no bloqueantes
recepciones, RECIBE bloqueantes. La operación envía devuelve el control cuando ha dirigido
el mensaje a las capas inferiores UDP e IP, que son las responsables de su entrega.
• El método RECIBE produce un bloqueo hasta que se reciba un datagrama, a menos que se
haya establecido un tiempo limite (timeout) asociado al conector, si el proceso que invoca el
método RECIBE tiene que realizar otras tareas mientras espera el mensaje, deberá realizarlas
en un hilo separado.
• Tiempo limite de espera: El método RECIBE con bloqueo indefinido es adecuado que están
esperando recibir peticiones desde sus clientes. Pero en algunos programas, no resulta
apropiado que un proceso que ha invocado una operación deba esperar indefinidamente.
• Recibe de cualquiera: El método RECIBE no especifica el origen de los mensajes. En su
lugar al invocar RECIBE aceptamos mensajes dirigidos a su conector desde cualquier origen.
El método RECIBE devuelve la dirección de Internet y el puerto del emisor, permitiendo al
receptor comprobar de donde viene el mensaje.
MODELO DE FALLOS
Presenta las siguientes
debilidades.
FALLA DE OMISIÓN:
Los mensajes pueden desecharse
ocasionalmente, ya sea por un error
detectado por la suma de comprobación
porque no queda espacio en el búfer ya
sea en el origen o en el destino.
ORDENACIÓN:
Algunas veces, los mensajes se
entregan en desorden a su origen de
emisión
APLICACIÓN DEL UDP
En algunas aplicaciones resulta aceptable un modelo que sea susceptible a
fallos de omisión ocasionales. Ej: el servidor de nombres de dominio.
UDP suele ser una elección atractiva porque no padecen de sobrecargas
asociadas a la entrega de mensajes garantiza.
Existen tres fuentes principales para esta sobrecarga:
La necesidad de almacenar información de estado en el origen y en el
destino.
La transmisión de mensajes extra.
La latencia del emisor.
UDP
COMUNICACIÓN DE STREAMS TCP
• La API para el protocolo TCP, proporciona la abstracción de un flujo de
bytes(STREAMS) en el que puede escribirse y desde el que pueden leerse
datos. La abstracción de streams oculta las siguientes características de la
red:
• TAMAÑO DE MENSAJES: la aplicación permite elegir la cantidad de datos que requiere escribir o leer
el streams.
• MENSAJES PERDIDOS: El protocolo TCP utiliza un esquema de acuse de recibo de los mensajes. El
extremo emisor almacena un registro de cada paquete IP enviado y el extremo receptor acusa el
recibo de todos los paquetes IP que llegan.
• CONTROL DE FLUJO: el protocolo TCP intenta ajustar las velocidades de los procesos que leen y
escriben en un streams. Si escritor es demasiado rápido para el lector este se bloquea.
• DUPLICACIÓN Y ORDENACIÓN DE LOS MENSAJES: a cada paquete IP se le asocia un
identificador, que hace posible que el receptor pueda detectar y rechazar mensajes duplicados.
• DESTINOS DE LOS MENSAJES: un par de procesos en comunicación establecen una conexión antes
que puedan comunicarse mediante un stream. Una vez que se ha establecido la comunicación, los
procesos simplemente leen o escriben en el stream sin tener que preocuparse de las direcciones de
internet ni de los números de puerto.
• El API para comunicación por streams supone que en el momento de establecer una conexión, uno de
ellos juega el papel de cliente y el otro juega el papel de servidor, aunque después se comuniquen de
igual a igual. El rol del cliente implica la creación de un conector, de tipo stream, sobre cualquier puerto
y la posterior petición de conexión con el servidor en su puerto de servicio.
• El par de conectores, el del cliente y el del servidor, se conectan por un par de streams, uno en cada
dirección, Así cada conector tiene su propio streams de entrada y de salida.
• Cuando una aplicación cierra un conector indica que no va a escribir nada más en su stream de salida.
ASPECTOS IMPORTANTES RELACIONADOS CON LA
COMUNICACIÓN DE STREAMS:
• Concordancia de Ítems de Datos: Los dos procesos que se comunican necesitan estar de
acuerdo en el tipo de datos transmitidos por el stream.
• Bloqueo: Los datos escritos en un streams se almacenan en un búfer en el conector destino.
Cuando un proceso intenta leer datos de un canal de entrada, o bien extraerá los datos de la
cola o bien se bloqueará hasta que existan datos disponibles.
• Hilos: Cuando un servidor acepta conexión, generalmente crea un hilo con el que
comunicarse con el nuevo cliente. La ventaja de utilizar un hilo separado para cada cliente es
que el servidor puede bloquearse a la espera de entradas sin afectar a los otros clientes.
MODELO DE FALLO.
Para satisfacer la propiedad de integridad de una comunicación fiable, los streams TCP utilizan
una suma de comprobación para detectar y rechazar los paquetes corruptos, y utilizan un
numero de secuencia para detectar y eliminar los paquetes duplicados.
Para la propiedad de validez, los streams TCP utilizan timeouts y retransmisión de los
paquetes perdidos.
Pero si la pérdida de paquetes sobrepasa un cierto limite, o la red que conecta a un par de
procesos en comunicación esta severamente congestionada, el software TCP responsable de
enviar los mensajes no recibirá acuses de recibo de los paquetes enviados y después de un
tiempo declarará rota la conexión.
Cuando una
conexión esta
rota, se notificara
al proceso que la
utiliza siempre
que intente leer o
escribir
Los procesos que
utilizan la conexión
no distinguen entre
fallo de red y fallo del
proceso.
UTILIZACIÓN DE TCP
Muchos de los servicios utilizados se ejecutan sobre conexiones TCP, con números de puerto
de puertos reservados. Entre ellos se encuentran los siguientes:
HTTP: El protocolo de transferencia de hipertexto se utilizan en comunicación entre un
navegador y un servicio web.
FTP: El protocolo de transferencia de archivos permite leer los directorios de un computador
remoto y transferir archivos entre los computadores de una conexión.
telnet: la herramienta Telnet proporciona acceso a un terminal de un computador remoto.
SMTP: El protocolo simple de transferencia de correo se utiliza para mandar correos
electrónicos entre computadoras.
API JAVA PARA LOS STREAMS TCP
• La interfaz Java para los streams TCP esta constituida por las clases ServerSocket y
Socket.
• ServerSocket: Esta clase esta diseñada para ser utilizada por un servidor para crear un
conector en el puerto de servidor que escucha las peticiones de conexión de los clientes,
su método “accept” toma una petición “connect” de la cola, o si la cola esta vacia, se
bloquea hasta que llega una petición. El resultado de ejecutar “accept” es una instancia de
Socket, un conector queda acceso a streams para comunicarse con el cliente.
CLASE SOCKET
• Esta clase es utilizada por el par de procesos de una conexión. El cliente utiliza un constructor
para crear un conector, especificando el nombre DNS de host y el puerto del servidor. Este
constructor no solo crea el conector asociado con el puerto local, sino que también se conecta
con el computador remoto especificando el puerto indicado. Puede lanzar una excepción
“UnknownHostException” si el nombre del host no es el correcto, o una exception
“IOException” si se da un error de entrada y salida.
• La clase Socket proporciona los métodos “getInputStream” y “getOutputStream” para acceder
a los dos streams asociados a un conector. El tipo de datos devueltos por esos métodos son
“InputStream” y OutputStream”
REPRESENTACIÓN EXTERNA DE DATOS Y
EMPAQUETADO.
La información almacenada dentro de los programas en ejecución se representa mediante estructuras de
datos (ej: conjuntos de objetos interrelacionados”) mientras que la información transportada en los
mensajes consiste en secuencias de bytes. Independiente de la forma de comunicación utilizada, las
estructuras de datos deben ser aplanadas (convertidas en una secuencia de bytes) antes de su
transmisión y reconstruidas en el destino.
Los tipos de datos primitivos transmitidos en los mensajes pueden tener valores de muchos tipos distintos
y no todos los computadores almacenan valores primitivos. También es diferentes en diferentes
arquitecturas la representación de los números en coma flotante.
Otro problema es el conjunto de códigos utilizados para representar caracteres, ej: UNIX utiliza
la codificación ASCII con un byte por carácter, mientras que el estándar UNICODE permite
representar la mayoría de lenguajes y utiliza dos bytes por carácter.
Existen dos variantes en la ordenación de enteros: la llamada big-endian, en la que el byte más
significativo va primero, y en la llamada little-endian en la que va el ultimo.
Para hacer posible que dos computadores puedan intercambiar datos se puede utilizar uno de
los dos métodos siguientes:
• Los valores se convierten a un formato externo acordado antes de la transmisión y se
revierten al formato local en la recepción; si los dos computadores son del mismo tipo se
puede omitir la transformación al formato externo.
• Los valores se transmiten según el formato del emisor.
a
S
S
Z K
Y Y
REPRESENTACIÓN EXTERNA DE DATOS.
Para soportar RMI o RPC, cualquier tipo de dato que pueda ser pasado como un argumento o
devuelto como resultado debe ser capaz de ser aplanado y cada uno de estos tipos de datos
primitivos representados en una representación de datos acordada. Al estándar acordado para
la representación de estructuras de datos y valores primitivos se le denomina representación
externa de datos.
El empaquetado: consiste en tomar una colección de ítems de datos y ensamblarlos de un modo
adecuado para la transmisión en un mensaje.
El desempaquetado: es el proceso de desensamblado en el destino para producir una colección
equivalente de datos. Por lo tanto empaquetar consiste en traducir las estructuras de datos y los
valores primitivos en una representación externa de datos.
SE TRATARÁN LAS DOS ALTERNATIVAS PARA LA
REPRESENTACIÓN EXTERNADA DE DATOS Y EL
EMPAQUETADO:
La representación común de datos de CORBA, que incumbe a un
representación externa para los datos estructurados y primitivos que puedan
ser pasada como argumento y resultado de la invocación remota de métodos
CORBA. Puede ser utilizada por una gran variedad de lenguajes de
programación.
La serialización de objetos en Java, que está relacionada con el aplanado y la
representación externa de datos de cualquier objeto simple o un árbol de
objetos que tienen que ser transmitidos en un mensaje o almacenados en
disco. Es de uso exclusivo de Java.
En ambos casos, el empaquetado y el desempaquetado son llevados a cabo por
una capa de middleware sin ninguna partición del programador de la aplicación.

Más contenido relacionado

La actualidad más candente

Protocolos de las capas sesion,presentacion y aplicacion
Protocolos de las capas sesion,presentacion y aplicacionProtocolos de las capas sesion,presentacion y aplicacion
Protocolos de las capas sesion,presentacion y aplicacionEduardo J Onofre
 
Dispositvos de entrada y salida
Dispositvos de entrada y salidaDispositvos de entrada y salida
Dispositvos de entrada y salidaitzayana bacilio
 
Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Javier Alvarez
 
Unidad 2 concepto de Programa,Proceso y Procesador
Unidad 2  concepto de Programa,Proceso y ProcesadorUnidad 2  concepto de Programa,Proceso y Procesador
Unidad 2 concepto de Programa,Proceso y ProcesadorMario Alberto Antonio Lopez
 
Control de flujo por hardware o software,
Control de flujo  por hardware o software,Control de flujo  por hardware o software,
Control de flujo por hardware o software,Victor Mijangos
 
Protocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modemProtocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modemMirna L. Torres Garcia
 
X.25 y frame relay
X.25 y frame relayX.25 y frame relay
X.25 y frame relayJLC1988
 
Arquitectura Multiprocesadores
Arquitectura Multiprocesadores Arquitectura Multiprocesadores
Arquitectura Multiprocesadores JUANR1022
 
1.1 Definición y concepto de los S.O
1.1 Definición y concepto de los S.O1.1 Definición y concepto de los S.O
1.1 Definición y concepto de los S.Olupita zume
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidosChristian19121
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesadorFernando Camacho
 
Unidad 1. caracterizacion de los sistemas distribuidos
Unidad 1.  caracterizacion de los sistemas distribuidosUnidad 1.  caracterizacion de los sistemas distribuidos
Unidad 1. caracterizacion de los sistemas distribuidosEManuel Torres
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos TradicionalesSergio Sanchez
 
Modelos de los sistemas distribuidos
Modelos de los sistemas distribuidosModelos de los sistemas distribuidos
Modelos de los sistemas distribuidosMargarita Labastida
 
La capa de aplicación
La capa de aplicaciónLa capa de aplicación
La capa de aplicaciónJuan Alvarez
 
VLSM y CIDR (características, implementación torres gamarra
VLSM y CIDR (características, implementación torres gamarraVLSM y CIDR (características, implementación torres gamarra
VLSM y CIDR (características, implementación torres gamarracesartg65
 

La actualidad más candente (20)

Protocolos de las capas sesion,presentacion y aplicacion
Protocolos de las capas sesion,presentacion y aplicacionProtocolos de las capas sesion,presentacion y aplicacion
Protocolos de las capas sesion,presentacion y aplicacion
 
Dispositvos de entrada y salida
Dispositvos de entrada y salidaDispositvos de entrada y salida
Dispositvos de entrada y salida
 
Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)
 
Unidad 2 concepto de Programa,Proceso y Procesador
Unidad 2  concepto de Programa,Proceso y ProcesadorUnidad 2  concepto de Programa,Proceso y Procesador
Unidad 2 concepto de Programa,Proceso y Procesador
 
Control de flujo por hardware o software,
Control de flujo  por hardware o software,Control de flujo  por hardware o software,
Control de flujo por hardware o software,
 
Protocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modemProtocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modem
 
control de concurrencia
control de concurrenciacontrol de concurrencia
control de concurrencia
 
X.25 y frame relay
X.25 y frame relayX.25 y frame relay
X.25 y frame relay
 
Arquitectura Multiprocesadores
Arquitectura Multiprocesadores Arquitectura Multiprocesadores
Arquitectura Multiprocesadores
 
1.1 Definición y concepto de los S.O
1.1 Definición y concepto de los S.O1.1 Definición y concepto de los S.O
1.1 Definición y concepto de los S.O
 
Traductor y su estructura
Traductor y su estructuraTraductor y su estructura
Traductor y su estructura
 
Modelo paso de mensajes
Modelo paso de mensajesModelo paso de mensajes
Modelo paso de mensajes
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesador
 
Unidad 1. caracterizacion de los sistemas distribuidos
Unidad 1.  caracterizacion de los sistemas distribuidosUnidad 1.  caracterizacion de los sistemas distribuidos
Unidad 1. caracterizacion de los sistemas distribuidos
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
 
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADORUNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
 
Modelos de los sistemas distribuidos
Modelos de los sistemas distribuidosModelos de los sistemas distribuidos
Modelos de los sistemas distribuidos
 
La capa de aplicación
La capa de aplicaciónLa capa de aplicación
La capa de aplicación
 
VLSM y CIDR (características, implementación torres gamarra
VLSM y CIDR (características, implementación torres gamarraVLSM y CIDR (características, implementación torres gamarra
VLSM y CIDR (características, implementación torres gamarra
 

Destacado

comunicacion de sistemas distribuidos
comunicacion de sistemas distribuidoscomunicacion de sistemas distribuidos
comunicacion de sistemas distribuidoscarlosrolo
 
Concurrencia en Java
Concurrencia en JavaConcurrencia en Java
Concurrencia en JavaCristian
 
Comunicación entre Procesos - IPC
Comunicación entre Procesos - IPCComunicación entre Procesos - IPC
Comunicación entre Procesos - IPCmartadans
 
Procesos - Sistemas Operativos
Procesos - Sistemas OperativosProcesos - Sistemas Operativos
Procesos - Sistemas Operativosrichardstalin
 
GESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOSGESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOSomarhcc
 
Etlc charte syndacale européenne sur le tourisme 2009_10_09_fr
Etlc charte syndacale européenne sur le tourisme 2009_10_09_frEtlc charte syndacale européenne sur le tourisme 2009_10_09_fr
Etlc charte syndacale européenne sur le tourisme 2009_10_09_frSAFE HOST PROJECT
 
Redes personajes
Redes personajesRedes personajes
Redes personajesgrupo2ccee
 
España y colombia hermanos que no se
España y colombia hermanos que no seEspaña y colombia hermanos que no se
España y colombia hermanos que no segonzalvo2
 
Informatica1
Informatica1Informatica1
Informatica1Max LV
 
Its me Partnerschaft (Stand Januar 2011)
Its me Partnerschaft (Stand Januar 2011)Its me Partnerschaft (Stand Januar 2011)
Its me Partnerschaft (Stand Januar 2011)itsmecom
 
Catedral de-santiago-de-compostela-milespowerpoints.com
Catedral de-santiago-de-compostela-milespowerpoints.comCatedral de-santiago-de-compostela-milespowerpoints.com
Catedral de-santiago-de-compostela-milespowerpoints.comRosa María Cajade Rodríguez
 
Tecnologico sudamericano
Tecnologico sudamericanoTecnologico sudamericano
Tecnologico sudamericanojhonnysam1
 
Desarrollo local y bienes colectivos lima marzo 2012
Desarrollo local y bienes colectivos lima marzo 2012Desarrollo local y bienes colectivos lima marzo 2012
Desarrollo local y bienes colectivos lima marzo 2012ConectaDEL
 

Destacado (20)

comunicacion de sistemas distribuidos
comunicacion de sistemas distribuidoscomunicacion de sistemas distribuidos
comunicacion de sistemas distribuidos
 
Concurrencia en Java
Concurrencia en JavaConcurrencia en Java
Concurrencia en Java
 
Comunicación entre Procesos - IPC
Comunicación entre Procesos - IPCComunicación entre Procesos - IPC
Comunicación entre Procesos - IPC
 
Procesos - Sistemas Operativos
Procesos - Sistemas OperativosProcesos - Sistemas Operativos
Procesos - Sistemas Operativos
 
Sistemas y Modelos (Teoria)
Sistemas y Modelos (Teoria)Sistemas y Modelos (Teoria)
Sistemas y Modelos (Teoria)
 
GESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOSGESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOS
 
Etlc charte syndacale européenne sur le tourisme 2009_10_09_fr
Etlc charte syndacale européenne sur le tourisme 2009_10_09_frEtlc charte syndacale européenne sur le tourisme 2009_10_09_fr
Etlc charte syndacale européenne sur le tourisme 2009_10_09_fr
 
3ºeso
3ºeso3ºeso
3ºeso
 
Redes personajes
Redes personajesRedes personajes
Redes personajes
 
España y colombia hermanos que no se
España y colombia hermanos que no seEspaña y colombia hermanos que no se
España y colombia hermanos que no se
 
Informatica1
Informatica1Informatica1
Informatica1
 
Le Tocsin Leucatois 4
Le Tocsin Leucatois 4Le Tocsin Leucatois 4
Le Tocsin Leucatois 4
 
Its me Partnerschaft (Stand Januar 2011)
Its me Partnerschaft (Stand Januar 2011)Its me Partnerschaft (Stand Januar 2011)
Its me Partnerschaft (Stand Januar 2011)
 
Catedral de-santiago-de-compostela-milespowerpoints.com
Catedral de-santiago-de-compostela-milespowerpoints.comCatedral de-santiago-de-compostela-milespowerpoints.com
Catedral de-santiago-de-compostela-milespowerpoints.com
 
Trasn. neum
Trasn. neumTrasn. neum
Trasn. neum
 
Trabajo de lupita
Trabajo de lupitaTrabajo de lupita
Trabajo de lupita
 
In02102c
In02102cIn02102c
In02102c
 
Tecnologico sudamericano
Tecnologico sudamericanoTecnologico sudamericano
Tecnologico sudamericano
 
5
5 5
5
 
Desarrollo local y bienes colectivos lima marzo 2012
Desarrollo local y bienes colectivos lima marzo 2012Desarrollo local y bienes colectivos lima marzo 2012
Desarrollo local y bienes colectivos lima marzo 2012
 

Similar a Comunicación entre procesos Sistemas distribuidos

Capa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de ComputadorasCapa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de ComputadorasJesus Jimenez
 
programacion_redes_informaticas_clase_3_19042024.pptx
programacion_redes_informaticas_clase_3_19042024.pptxprogramacion_redes_informaticas_clase_3_19042024.pptx
programacion_redes_informaticas_clase_3_19042024.pptxmviapiano
 
Capa de Transporte del Modelo OSI
Capa de Transporte del Modelo OSICapa de Transporte del Modelo OSI
Capa de Transporte del Modelo OSIangelcgr
 
Taller Sockets TCP UDP Multicast
Taller Sockets TCP UDP MulticastTaller Sockets TCP UDP Multicast
Taller Sockets TCP UDP MulticastHector L
 
Conexion dinamica
Conexion dinamicaConexion dinamica
Conexion dinamicam_aguirre
 
Tema 5 capa de transporte
Tema 5 capa de transporteTema 5 capa de transporte
Tema 5 capa de transportealex sgarcia
 
Tema iv comunicación entre procesos
Tema iv comunicación entre procesosTema iv comunicación entre procesos
Tema iv comunicación entre procesosPablo Hurtado
 
Protocolos De Los 10
Protocolos De Los 10Protocolos De Los 10
Protocolos De Los 10kolbin87
 
P R O T O C O L O S Diaposittivas
P R O T O C O L O S DiaposittivasP R O T O C O L O S Diaposittivas
P R O T O C O L O S Diaposittivasgutierrez2010
 
DIAPOSITIVAS DE PROTOCOLOS
DIAPOSITIVAS DE PROTOCOLOSDIAPOSITIVAS DE PROTOCOLOS
DIAPOSITIVAS DE PROTOCOLOSgutierrez2010
 
Comunicacion intra procesos con socket
Comunicacion intra procesos con socketComunicacion intra procesos con socket
Comunicacion intra procesos con socketRene Guaman-Quinche
 
Expo 4
Expo 4Expo 4
Expo 4jorge
 

Similar a Comunicación entre procesos Sistemas distribuidos (20)

Capa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de ComputadorasCapa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de Computadoras
 
programacion_redes_informaticas_clase_3_19042024.pptx
programacion_redes_informaticas_clase_3_19042024.pptxprogramacion_redes_informaticas_clase_3_19042024.pptx
programacion_redes_informaticas_clase_3_19042024.pptx
 
Capa de transporte
Capa de transporteCapa de transporte
Capa de transporte
 
Capa de transporte (2)
Capa de transporte (2)Capa de transporte (2)
Capa de transporte (2)
 
Capa de Transporte del Modelo OSI
Capa de Transporte del Modelo OSICapa de Transporte del Modelo OSI
Capa de Transporte del Modelo OSI
 
Sockets en JAVA
Sockets en JAVASockets en JAVA
Sockets en JAVA
 
Taller Sockets TCP UDP Multicast
Taller Sockets TCP UDP MulticastTaller Sockets TCP UDP Multicast
Taller Sockets TCP UDP Multicast
 
Bosquejo general
Bosquejo generalBosquejo general
Bosquejo general
 
Proyecto integrado
Proyecto integradoProyecto integrado
Proyecto integrado
 
Conexion dinamica
Conexion dinamicaConexion dinamica
Conexion dinamica
 
Tema 5 capa de transporte
Tema 5 capa de transporteTema 5 capa de transporte
Tema 5 capa de transporte
 
Tema iv comunicación entre procesos
Tema iv comunicación entre procesosTema iv comunicación entre procesos
Tema iv comunicación entre procesos
 
Protocolos De Los 10
Protocolos De Los 10Protocolos De Los 10
Protocolos De Los 10
 
Expo6
Expo6Expo6
Expo6
 
P R O T O C O L O S Diaposittivas
P R O T O C O L O S DiaposittivasP R O T O C O L O S Diaposittivas
P R O T O C O L O S Diaposittivas
 
DIAPOSITIVAS DE PROTOCOLOS
DIAPOSITIVAS DE PROTOCOLOSDIAPOSITIVAS DE PROTOCOLOS
DIAPOSITIVAS DE PROTOCOLOS
 
Comunicacion intra procesos con socket
Comunicacion intra procesos con socketComunicacion intra procesos con socket
Comunicacion intra procesos con socket
 
Capitulo 4
Capitulo 4Capitulo 4
Capitulo 4
 
Final
FinalFinal
Final
 
Expo 4
Expo 4Expo 4
Expo 4
 

Más de Stalin Jara

Mejora en la toma de decisiones
Mejora en la toma de decisionesMejora en la toma de decisiones
Mejora en la toma de decisionesStalin Jara
 
Técnicas de Segmentación de imágenes.
Técnicas de Segmentación de imágenes.Técnicas de Segmentación de imágenes.
Técnicas de Segmentación de imágenes.Stalin Jara
 
Los sistemas de información en los negocios globales contemporaneos
Los sistemas de información en los negocios globales contemporaneosLos sistemas de información en los negocios globales contemporaneos
Los sistemas de información en los negocios globales contemporaneosStalin Jara
 
Directivas de grupo
Directivas de grupoDirectivas de grupo
Directivas de grupoStalin Jara
 
Base de datos Access
Base de datos AccessBase de datos Access
Base de datos AccessStalin Jara
 
La Firma Digital
La Firma DigitalLa Firma Digital
La Firma DigitalStalin Jara
 
Organizaciòn del pensamiento clase 1
Organizaciòn del pensamiento clase 1Organizaciòn del pensamiento clase 1
Organizaciòn del pensamiento clase 1Stalin Jara
 

Más de Stalin Jara (10)

Mejora en la toma de decisiones
Mejora en la toma de decisionesMejora en la toma de decisiones
Mejora en la toma de decisiones
 
Técnicas de Segmentación de imágenes.
Técnicas de Segmentación de imágenes.Técnicas de Segmentación de imágenes.
Técnicas de Segmentación de imágenes.
 
Los sistemas de información en los negocios globales contemporaneos
Los sistemas de información en los negocios globales contemporaneosLos sistemas de información en los negocios globales contemporaneos
Los sistemas de información en los negocios globales contemporaneos
 
Directivas de grupo
Directivas de grupoDirectivas de grupo
Directivas de grupo
 
Base de datos Access
Base de datos AccessBase de datos Access
Base de datos Access
 
La Firma Digital
La Firma DigitalLa Firma Digital
La Firma Digital
 
Sandra
SandraSandra
Sandra
 
Organizaciòn del pensamiento clase 1
Organizaciòn del pensamiento clase 1Organizaciòn del pensamiento clase 1
Organizaciòn del pensamiento clase 1
 
Casodeauditoria
CasodeauditoriaCasodeauditoria
Casodeauditoria
 
Seminario tic
Seminario ticSeminario tic
Seminario tic
 

Último

Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosFicha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosRamiroCruzSalazar
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEduardoBriones22
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesCarlosMeraz16
 
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSIONCALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSIONJuan Carlos Meza Molina
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZgustavoiashalom
 
Gestion de proyectos para el control y seguimiento
Gestion de proyectos para el control  y seguimientoGestion de proyectos para el control  y seguimiento
Gestion de proyectos para el control y seguimientoMaxanMonplesi
 
Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5juanjoelaytegonzales2
 
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOPERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOFritz Rebaza Latoche
 
Clasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxClasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxwilliam801689
 
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfAnálisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfGabrielCayampiGutier
 
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdfJM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdfMiguelArango21
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJOJimyAMoran
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.pptjacnuevarisaralda22
 
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfTIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfssuser202b79
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaAlexanderimanolLencr
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologicaJUDITHYEMELINHUARIPA
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfdanielJAlejosC
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheElisaLen4
 
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptTippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptNombre Apellidos
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTElisaLen4
 

Último (20)

Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosFicha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestaciones
 
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSIONCALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
 
Gestion de proyectos para el control y seguimiento
Gestion de proyectos para el control  y seguimientoGestion de proyectos para el control  y seguimiento
Gestion de proyectos para el control y seguimiento
 
Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5
 
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOPERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
 
Clasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxClasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docx
 
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfAnálisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
 
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdfJM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt
 
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfTIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiología
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdf
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
 
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptTippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 

Comunicación entre procesos Sistemas distribuidos

  • 2. 1. INTRODUCCIÓN. 2. LA INTERFAZ DE PROGRAMACIÓN DE APLICACIONES PARA LOS PROTOCOLOSDE INTERNET. 3. REPRESENTACIÓN EXTERNA DE DATOS EMPAQUETADO. 4. COMUNICACIÓN CLIENTE-SERVIDOR 5. COMUNICACIÓN EN GRUPO. 6. CASO DE ESTUDIO: COMUNICACIÓN ENTRE PROCESOS EN UNIX. 7. RESUMEN.
  • 3.
  • 4. COMUNICACIÓN ENTRE PROCESOS. • La interfaz de programación de aplicaciones (API) de java para la comunicación entre procesos en internet proporciona comunicación tanto por datagramas como streams. Los streams son los objetos que se encargan de conectar el programa con las distintas fuentes o destinos de los datos que se procesan (teclado, monitor, disco duro, sockets...). Un datagrama es un paquete de datos que constituye el mínimo bloque de información en una red de conmutación por datagramas.
  • 5. TCP VS. UDP } UDP Este protocolo es orientado a conexión. Este protocolo es de conexiones inferiores. La conexión TCP es flujo de bytes La conexión UDP es un flujo de mensajes Proporciona control de errores y control de flujo No se proporciona el control de errores ni control de flujo. TCP admite la transmisión full duplex UDP no admite transmisión full duplez Es un servicio confiable de transmisión de datos Este es un servicio poco fiable de transmisión de datos. El paquete TCP se llama como segmento. El paquete UDP se llama como datagramas de usuario.
  • 6. TCP (Transmission Control Protocol • EL CLIENTE INDICA QUÉ SERVICIO QUIERE, LO HACE CON LA DIRECCIÓN IP DESTINO Y PUERTO. • PUERTOS: ENTRE 0 Y 65.535 • DEL 0 AL 1023 ESTAN ESTANDARIZADOS, LOS PUERTO UDP SON LOS MISMOS, PERO NO SE MEZCLAN LOS DATOS. • EL CLIENTE SOLICITA EN SU SISTEMA UN NÚMERO DE PUERTO PARA USO PROPIO.
  • 7. TCP (Transmission Control Protocol Cliente Dirección IP 192.168.1.15 ¡¡¡OPERADORA¡¡¡ DAME UN PUERTO PARA REALIZAR UNA CONEXIÓN EXTERNA,….¿EL 33580 ESTA LIBRE Servidor Dirección 192.168.1.1 PUERTO 80 33580 ¡¡¡¡SERVIDOR¡¡¡ ME QUIERO CONECTAR A TU PUERTO 80 DESDE MI PUERTO 33580 OK PIDE LO QUE QUIERAS Conexión establecida ID único 192.168.1.1:80/192.168.1.15:33580
  • 8. MECANISMOS DE FIABLILIDAD DEL TCP Para evitar pérdidas y duplicados y asegurar el orden. • Numeración y confirmación. • Todos los bytes tienen su número de secuencia. • En la cabecera del segmento va el 1er n° de secuencia. • Se usa una “Confirmación positiva con retransmisión” (El receptor debe mandar un ACK para confirmar la recepción. Si no lo hace en un plazo, se retransmite. • Si un ACK llega tarde al emisor, el receptor se puede encontrar con segmentos duplicados.
  • 9.
  • 10. MECANISMO DE FIABILIDAD DE TCP (2) • CAMPOS DE CABECERA DE TCP PARA LOS PUERTOS, NÚMEROS DE SECUENCIA Y LOS ACK. • …… LA COMUNICACIÓN FLUYE CON NORMALIDAD • LO ULTIMO QUE HA OCURRIDO CORRECTAMENTE: • A------B, segmento con los bytes del 20 al 50 y…. • A ----------B, segmento con los bytes del 80 al 100… • Vemos como funciona la cabecera de TCP: PUERTO DE ORIGEN (16) PUERTO DE DESTINO (16) NÚMERO DE SECUENCIA (32) NÚMERO DE CONFORMACIÓN (32)
  • 11. MECANISMO DE FIABILIDAD DE TCP (2) A PUERTO 3358 B PUERTO 80 51…..70 1 1.- A--B, bytes del 51 al 70 ACK del 80 a 100 ORIGEN 3358 80 DESTINO N° Sec 51 N° Confirm 101 1 Del primer byte --- enviado Del Sgte. byte a --- recibir 101….120 2.- A---B, bytes del 101 al 120 y ACK (51 A 70) ORIGEN 80 3358 DESTINO N° Sec 101 N° Confirm 71 3.- A--B, No hay datos nuevos. ACK (101-120) ORIGEN 3358 80 DESTINO N° Sec 71 N° Confirm 121 ORIGEN 80 3358 DESTINO N° Sec 121 N° Confirm 71 4.- A---B, bytes del 121 al 150. Se esper el byte 71 4 2 3 NO DATA 121….150 5 71…90 5.- A-B, bytes del 71 al 90. ACK (121-150
  • 12. Características de la Comunicación entre procesos. EL PASO DE MENSAJES ENTRE UN PAR DE PROCESOS SE PUEDE BASAR EN DOS OPERACIONES; ENVIA Y RECIBE ENVIA RECIBE Se define en función del destino y del mensaje Para que se pueda comunicar un proceso con otro, se debe enviar un mensaje ( Secuencia de bytes) a un destino y otro proceso en el destino recibe el mensaje. Esto actividad requiere comunicación des datos desde el proceso emisor al proceso receptor y puede implicar también sincronización de los dos procesos.
  • 13. COMUNICACIÓN SINCRONA Y ASINCRONA Mensaje LOS PROCESOS EMISORES PRODUCEN MENSAJES QUE SERÁN AÑADIDOS A LAS COLAS REMOTAS, MIENTRAS QUE LOS PROCESOS ELIMINÁN MENSAJES DE LAS COLAS LOCALES.
  • 14. LA COMUNICACIÓN ENTRE LOS PROCESOS EMISOR Y RECEPTOR SÍNCRONA: Los procesos emisor y receptor se sincronizan con cada mensaje. Tanto envía como recibe son operaciones bloqueantes. A cada envié producido el proceso emisor se bloquea hasta que se produce el correspondiente recibe. ASÍNCRONA: La utilización de la operación envía en no bloqueante, de modo que el proceso emisor puede continuar tan pronto como el mensaje haya sido copiado en el búfer local, la transmisión del mensaje se realiza en paralelo con el proceso emisor.
  • 15.
  • 16. DESTINOS DE LOS MENSAJES. • En los protocolos de internet, los mensajes son enviados a direcciones construidas por pares (dirección internet, puerto local). UN RECEPTOR Los procesos pueden utilizar múltiples puertos desde los que recibir mensajes. Cualquier proceso que conozca el número de puerto apropiado puede enviarle mensajes.
  • 17. Si el cliente utiliza un dirección de internet fija para referirse a un servicio debe ejecutarse siempre en el mismo computador para que esa dirección se considere valida. esto se evita usando una de las siguientes aproximaciones que proporcionan transparencia de ubicación.  Los programas se refieren a los servicios por su nombre y utilizan un servidor de nombres o enlazador para trasladar esos nombres a ubicaciones del servidor en tiempos de ejecución.  El sistema operativo, ej; Mach, proporciona identificadores para los destinos de los mensajes independientes de la localización, haciéndoles corresponder con direcciones de más bajo nivel para utilizarlas para entregar los mensajes en los puertos, permitiendo la migración como la reubicación de los servicios.
  • 18. SOCKETS • Definición: Un socket es un punto final de enlace de comunicación de dos vías entre dos programas que se ejecutan a través de la red. • El cliente y el servidor deben ponerse de acuerdo sobre el protocolo que utilizaran. Ambas formas de comunicación (UDP y TCP) utilizan la abstracción de sockets, que proporciona los puntos extremos de la comunicación entre procesos, se origina en UNIX pero ahora están presentes en la mayoría de sistemas operativos.
  • 19. PRIMITIVAS DE SOCKETS Por lo general, los servidores ejecutan primero cuatro primitivas, normalmente en el orden dado. Cuando se llama a la primitiva socket, el que llama crea un nuevo punto final de comunicación para un protocolo de transporte especifico. De manera interna, crea un punto final de comunicación significa que el sistema operativo local reserva recursos para alojar los mensajes enviados y recibidos por el protocolo especificado.
  • 20.
  • 21.
  • 22. PROCESO CLIENTE. CLIENTE 192.168.1.2 8080 PROCESO SERVIDOR 192.168.1.3 8080 Estoy escuchando a que un cliente realice una petición Yo conozco la dirección IP de ese servidor y su puerto, voy a realizar una petición SE ESTABLECE UN SOCKET DE COMUNICACIÒN 8081
  • 23. COMUNICACIÓN DE DATAGRAMAS UDP • Un datagrama enviado por UDP se transmite desde un proceso emisor a un proceso receptor sin acuse de recibo ni reintentos. Si algo falla, el mensaje no puede llegar a su destino, Se transmite un datagrama, entre procesos, cuando uno lo envía y otro lo recibe. • Cualquier proceso que necesite enviar o recibir mensajes debe crear, primero un conector asociado a un dirección IP y aun puerto local. Un servidor enlazará su conector a un puerto de servidor (conocido por los clientes). Un cliente ligara su conector a cualquier puerto local libre. El método recibe devolverá, además del mensaje, la dirección de internet y el puerto del emisor, permitiendo al receptor enviar la correspondiente respuesta. Velocidad a costa de fiabilidad. No ordena mensajes. No controla el flujo.
  • 24. ASPECTOS REFERENTES A LA COMUNICACIÓN DE DATAGRAMAS. • Tamaño de mensaje: El receptor necesita especificar una cadena de byte de un tamaño concreto sobre el cual se almacenará el mensaje recibido, si es demasiado grande será trucado a su llegada, a pesar de que la capa subyacente permite paquetes de hasta 2^16 bytes, incluida la cabecera, en la mayoría de entornos se restringe a 8 kilobytes. • Bloqueo: La comunicación UDP utiliza operaciones de envió, ENVIA no bloqueantes recepciones, RECIBE bloqueantes. La operación envía devuelve el control cuando ha dirigido el mensaje a las capas inferiores UDP e IP, que son las responsables de su entrega. • El método RECIBE produce un bloqueo hasta que se reciba un datagrama, a menos que se haya establecido un tiempo limite (timeout) asociado al conector, si el proceso que invoca el método RECIBE tiene que realizar otras tareas mientras espera el mensaje, deberá realizarlas en un hilo separado. • Tiempo limite de espera: El método RECIBE con bloqueo indefinido es adecuado que están esperando recibir peticiones desde sus clientes. Pero en algunos programas, no resulta apropiado que un proceso que ha invocado una operación deba esperar indefinidamente.
  • 25. • Recibe de cualquiera: El método RECIBE no especifica el origen de los mensajes. En su lugar al invocar RECIBE aceptamos mensajes dirigidos a su conector desde cualquier origen. El método RECIBE devuelve la dirección de Internet y el puerto del emisor, permitiendo al receptor comprobar de donde viene el mensaje. MODELO DE FALLOS Presenta las siguientes debilidades. FALLA DE OMISIÓN: Los mensajes pueden desecharse ocasionalmente, ya sea por un error detectado por la suma de comprobación porque no queda espacio en el búfer ya sea en el origen o en el destino. ORDENACIÓN: Algunas veces, los mensajes se entregan en desorden a su origen de emisión
  • 26.
  • 27. APLICACIÓN DEL UDP En algunas aplicaciones resulta aceptable un modelo que sea susceptible a fallos de omisión ocasionales. Ej: el servidor de nombres de dominio. UDP suele ser una elección atractiva porque no padecen de sobrecargas asociadas a la entrega de mensajes garantiza. Existen tres fuentes principales para esta sobrecarga: La necesidad de almacenar información de estado en el origen y en el destino. La transmisión de mensajes extra. La latencia del emisor.
  • 28. UDP
  • 29. COMUNICACIÓN DE STREAMS TCP • La API para el protocolo TCP, proporciona la abstracción de un flujo de bytes(STREAMS) en el que puede escribirse y desde el que pueden leerse datos. La abstracción de streams oculta las siguientes características de la red: • TAMAÑO DE MENSAJES: la aplicación permite elegir la cantidad de datos que requiere escribir o leer el streams. • MENSAJES PERDIDOS: El protocolo TCP utiliza un esquema de acuse de recibo de los mensajes. El extremo emisor almacena un registro de cada paquete IP enviado y el extremo receptor acusa el recibo de todos los paquetes IP que llegan. • CONTROL DE FLUJO: el protocolo TCP intenta ajustar las velocidades de los procesos que leen y escriben en un streams. Si escritor es demasiado rápido para el lector este se bloquea. • DUPLICACIÓN Y ORDENACIÓN DE LOS MENSAJES: a cada paquete IP se le asocia un identificador, que hace posible que el receptor pueda detectar y rechazar mensajes duplicados.
  • 30. • DESTINOS DE LOS MENSAJES: un par de procesos en comunicación establecen una conexión antes que puedan comunicarse mediante un stream. Una vez que se ha establecido la comunicación, los procesos simplemente leen o escriben en el stream sin tener que preocuparse de las direcciones de internet ni de los números de puerto. • El API para comunicación por streams supone que en el momento de establecer una conexión, uno de ellos juega el papel de cliente y el otro juega el papel de servidor, aunque después se comuniquen de igual a igual. El rol del cliente implica la creación de un conector, de tipo stream, sobre cualquier puerto y la posterior petición de conexión con el servidor en su puerto de servicio. • El par de conectores, el del cliente y el del servidor, se conectan por un par de streams, uno en cada dirección, Así cada conector tiene su propio streams de entrada y de salida. • Cuando una aplicación cierra un conector indica que no va a escribir nada más en su stream de salida.
  • 31.
  • 32. ASPECTOS IMPORTANTES RELACIONADOS CON LA COMUNICACIÓN DE STREAMS: • Concordancia de Ítems de Datos: Los dos procesos que se comunican necesitan estar de acuerdo en el tipo de datos transmitidos por el stream. • Bloqueo: Los datos escritos en un streams se almacenan en un búfer en el conector destino. Cuando un proceso intenta leer datos de un canal de entrada, o bien extraerá los datos de la cola o bien se bloqueará hasta que existan datos disponibles. • Hilos: Cuando un servidor acepta conexión, generalmente crea un hilo con el que comunicarse con el nuevo cliente. La ventaja de utilizar un hilo separado para cada cliente es que el servidor puede bloquearse a la espera de entradas sin afectar a los otros clientes.
  • 33. MODELO DE FALLO. Para satisfacer la propiedad de integridad de una comunicación fiable, los streams TCP utilizan una suma de comprobación para detectar y rechazar los paquetes corruptos, y utilizan un numero de secuencia para detectar y eliminar los paquetes duplicados. Para la propiedad de validez, los streams TCP utilizan timeouts y retransmisión de los paquetes perdidos. Pero si la pérdida de paquetes sobrepasa un cierto limite, o la red que conecta a un par de procesos en comunicación esta severamente congestionada, el software TCP responsable de enviar los mensajes no recibirá acuses de recibo de los paquetes enviados y después de un tiempo declarará rota la conexión. Cuando una conexión esta rota, se notificara al proceso que la utiliza siempre que intente leer o escribir Los procesos que utilizan la conexión no distinguen entre fallo de red y fallo del proceso.
  • 34. UTILIZACIÓN DE TCP Muchos de los servicios utilizados se ejecutan sobre conexiones TCP, con números de puerto de puertos reservados. Entre ellos se encuentran los siguientes: HTTP: El protocolo de transferencia de hipertexto se utilizan en comunicación entre un navegador y un servicio web. FTP: El protocolo de transferencia de archivos permite leer los directorios de un computador remoto y transferir archivos entre los computadores de una conexión. telnet: la herramienta Telnet proporciona acceso a un terminal de un computador remoto. SMTP: El protocolo simple de transferencia de correo se utiliza para mandar correos electrónicos entre computadoras.
  • 35. API JAVA PARA LOS STREAMS TCP • La interfaz Java para los streams TCP esta constituida por las clases ServerSocket y Socket. • ServerSocket: Esta clase esta diseñada para ser utilizada por un servidor para crear un conector en el puerto de servidor que escucha las peticiones de conexión de los clientes, su método “accept” toma una petición “connect” de la cola, o si la cola esta vacia, se bloquea hasta que llega una petición. El resultado de ejecutar “accept” es una instancia de Socket, un conector queda acceso a streams para comunicarse con el cliente.
  • 36. CLASE SOCKET • Esta clase es utilizada por el par de procesos de una conexión. El cliente utiliza un constructor para crear un conector, especificando el nombre DNS de host y el puerto del servidor. Este constructor no solo crea el conector asociado con el puerto local, sino que también se conecta con el computador remoto especificando el puerto indicado. Puede lanzar una excepción “UnknownHostException” si el nombre del host no es el correcto, o una exception “IOException” si se da un error de entrada y salida. • La clase Socket proporciona los métodos “getInputStream” y “getOutputStream” para acceder a los dos streams asociados a un conector. El tipo de datos devueltos por esos métodos son “InputStream” y OutputStream”
  • 37. REPRESENTACIÓN EXTERNA DE DATOS Y EMPAQUETADO. La información almacenada dentro de los programas en ejecución se representa mediante estructuras de datos (ej: conjuntos de objetos interrelacionados”) mientras que la información transportada en los mensajes consiste en secuencias de bytes. Independiente de la forma de comunicación utilizada, las estructuras de datos deben ser aplanadas (convertidas en una secuencia de bytes) antes de su transmisión y reconstruidas en el destino. Los tipos de datos primitivos transmitidos en los mensajes pueden tener valores de muchos tipos distintos y no todos los computadores almacenan valores primitivos. También es diferentes en diferentes arquitecturas la representación de los números en coma flotante.
  • 38. Otro problema es el conjunto de códigos utilizados para representar caracteres, ej: UNIX utiliza la codificación ASCII con un byte por carácter, mientras que el estándar UNICODE permite representar la mayoría de lenguajes y utiliza dos bytes por carácter.
  • 39. Existen dos variantes en la ordenación de enteros: la llamada big-endian, en la que el byte más significativo va primero, y en la llamada little-endian en la que va el ultimo. Para hacer posible que dos computadores puedan intercambiar datos se puede utilizar uno de los dos métodos siguientes: • Los valores se convierten a un formato externo acordado antes de la transmisión y se revierten al formato local en la recepción; si los dos computadores son del mismo tipo se puede omitir la transformación al formato externo. • Los valores se transmiten según el formato del emisor. a S S Z K Y Y
  • 40. REPRESENTACIÓN EXTERNA DE DATOS. Para soportar RMI o RPC, cualquier tipo de dato que pueda ser pasado como un argumento o devuelto como resultado debe ser capaz de ser aplanado y cada uno de estos tipos de datos primitivos representados en una representación de datos acordada. Al estándar acordado para la representación de estructuras de datos y valores primitivos se le denomina representación externa de datos. El empaquetado: consiste en tomar una colección de ítems de datos y ensamblarlos de un modo adecuado para la transmisión en un mensaje. El desempaquetado: es el proceso de desensamblado en el destino para producir una colección equivalente de datos. Por lo tanto empaquetar consiste en traducir las estructuras de datos y los valores primitivos en una representación externa de datos.
  • 41. SE TRATARÁN LAS DOS ALTERNATIVAS PARA LA REPRESENTACIÓN EXTERNADA DE DATOS Y EL EMPAQUETADO: La representación común de datos de CORBA, que incumbe a un representación externa para los datos estructurados y primitivos que puedan ser pasada como argumento y resultado de la invocación remota de métodos CORBA. Puede ser utilizada por una gran variedad de lenguajes de programación. La serialización de objetos en Java, que está relacionada con el aplanado y la representación externa de datos de cualquier objeto simple o un árbol de objetos que tienen que ser transmitidos en un mensaje o almacenados en disco. Es de uso exclusivo de Java. En ambos casos, el empaquetado y el desempaquetado son llevados a cabo por una capa de middleware sin ninguna partición del programador de la aplicación.

Notas del editor

  1. Esta es la pregunta a la que da respuesta el experimento