DatagramSocket

Introducción
La comunicación entre entidades similares siempre ha sido importante, y para ello siempre existen diversas herramientas que facilitan esta comunicación. Anteriormente se habían presentado algunos de los componentes físicos por los que se hace una transferencia de datos entre ordenadores, pero también hace falta conocer proceso lógicos con los cuales se lleva a cabo esta comunicación. En el siguiente trabajo se presentan herramientas lógicas para la comunicación entre ordenadores.


Datagrama

Un datagrama es una unidad de transferencia asociada con redes en donde los datos se transmiten de la fuente al destino sin garantía de entrega y estos se dividen con frecuencia en fragmentos más pequeños y se transmiten sin una ruta definida o un pedido de entrega garantizado.

Los datagramas IP son las unidades principales de información de Internet. Los términos trama, mensaje, paquete de red y segmento también se usan para describir las agrupaciones de información lógica en las diversas capas del modelo de referencia OSI y en los diversos círculos tecnológicos.

El envío de datagramas se transmite desde un dispositivo emisor a uno receptor. Durante el proceso del envío de estos datagramas primero se debe crear un socket asociado a una dirección de Internet y a un puerto local. Posteriormente el servidor enlazará su conector a un puerto de servidor conocido para que el cliente pueda enviarle mensajes. Después el cliente ligará su conector a un puerto local libre. De este modo la respuesta enviará el mensaje, la IP y el puerto del emisor, lo que permitirá que el receptor envíe la correspondiente respuesta.


Socket

"Un socket es un punto final de un enlace de comunicación de dos vías entre dos programas que se ejecutan en la red. Un socket está vinculado a un número de puerto para que la capa TCP pueda identificar la aplicación a la que están destinados los datos a enviarse."(ORACLE)
Tanto el protocolo UDP como el TCP utilizan la abstracción de sockets (conectores), que proporciona los puntos extremos de la comunicación entre procesos.


UDP y TCP

Existen dos protocolos fundamentales en el nivel de tranporte de una comunicación de redes; el protocolo de datagrama de usuario (UDP, User Datagram Protocol) y el protocolo de control de transmisión (TCP, Transmission Control Protocol).

El protocolo de datagrama de usuario (UDP) permite que un paquete se envíe o se reciba en el utilizando comunicaciones sin conexión. El paquete de datos transportado de esta manera se denomina datagrama. Conforme a la comunicación sin conexión, cada datagrama transportado es dirigido y encaminado individualmente y puede llegar al receptor en cualquier orden.

El protocolo de control de transmisión (TCP) está orientado a conexión y transporta un flujo de datos sobre una conexión lógica establecida entre el emisor y el receptor. Gracias a la conexión, se garantiza que los datos mandados desde un emisor a un receptor van a ser recibidos en el mismo orden que se enviaron.


Conclusión

Un dilema es elegir qué tipo de comunicación usar, pero esto lo podemos saber conociendo el funcionamiento de cada proceso, y así, en base a lo que necesitamos elegir. Por ejemplo, si deseamos enviar un texto es preferible usar stream, ya que si se usan datagramas no se asegura que se reciban en el orden en que fueron enviados.

Bibliografía

Coulouris, G. (2001). Sistemas Distribuidos. Madrid: PEARSON EDUCACIÓN.
Liu, M. (2004). Computación Distribuida. Fundamentos y Aplicaciones. Madrid: PEARSON EDUCACIÓN.
TechTarget. (14 de 10 de 2017). Network Socket. Obtenido de TechTarget | WhatIs.com: http://whatis.techtarget.com

Comentarios

Entradas populares de este blog

Cifrado Asimetrico

Modelo OSI y TCP/IP

RMI