Está en la página 1de 6

JESSICA MILDREY SILVA FORERO CODIGO 100256546

DAVID FERNANDO PEREZ SUAZA CODIGO 100052198

PROFESOR: ALEXANDRA MARIA SILVA MONSALVE

ENTREGA PREVIA 1 ESCENARIO 3

SISTEMAS DISTRIBUIDOS
1. Estado del arte de socket:

Definición:

Los sockets son el concepto necesario para establecer una infraestructura del cliente servidor, esto
debido a que su concepción establece los requerimientos para poder establecer una comunicación
y en este caso poder compartir información requerida entre los programas y/o computadoras.

Esquema cliente servidor

Ya definimos que los sockets son una piedra angular necesaria para la conexión a través de una
red de datos y así transmitir la información requerida, por lo tanto, en estos casos para simplificar
las conexiones se crearon drivers o conjuntos de utilizades y /o herramientas que simplifican la
tarea de creación de estos sockets.
Dando como resultado que muchos lenguajes de programación tienen sus respectivas librerías y
controladores para conectarse a especificas bases de datos. Tenemos por ejemplo odbc para Java,
controlador de mysql en Python.

Tipos de socket

En la actualidad existen varios tipos de socket y cada uno por lo regular se asocia a un tipo de
protocolo, por ejemplo:

 SOCK_STREAM: está asociado al protocolo TCP, este brinda seguridad en la transmisión de


datos, seguridad en la recepción, en la integridad y en la secuencia, entre otros.
 SOCK_DGRAM: está asociado al protocolo UDP, e indica que los paquetes viajarán en tipo
datagramas, el cual tiene una comunicación asíncrona.

Ventajas

Su principal ventaja radica en que son muy eficientes a la hora de enviar un número elevado de
mensajes y datos.

Propiedades inherentes a los sockets

Las propiedades de un socket dependen de las características del protocolo en el que se


implementan. Generalmente la comunicación con sockets se realiza mediante un protocolo de la
familia TCP/IP (Protocolo de Control de Transmisión/Protocolo de Internet). Los dos más utilizados
son: TCP (Protocolo de Control de Transmisión) y UDP (Protocolo de Datagrama de Usuario)

Cuando se implementan con el protocolo TCP, los sockets tienen las siguientes propiedades:

 Orientado a conexión.
 Se garantiza la transmisión de todos los octetos sin errores ni omisiones.
 Se garantiza que todo octeto llegará a su destino en el mismo orden en que se ha
transmitido. Estas propiedades son muy importantes para garantizar la corrección de los
programas que tratan la información.

El protocolo UDP es un protocolo no orientado a la conexión. Sólo se garantiza que, si un mensaje


llega, llegue bien. En ningún caso se garantiza que llegue o que lleguen todos los mensajes en el
mismo orden que se mandaron. Esto lo hace adecuado para el envío de mensajes frecuentes, pero
no demasiado importantes, como, por ejemplo, mensajes para los refrescos (actualizaciones) de
un gráfico.

Variantes
Existe una variante de los sockets denominada Unix domain sockets, o bien, Interprocess
communication sockets (IPC sockets). Éstos se encuentran especificados en la norma POSIX y
tienen como propósito la intercomunicación entre programas dentro de la misma computadora,
facilitando así la optimización de recursos para este caso en concreto.

2. Esquema de conexión:

3. Enlace video: https://youtu.be/8REucqOb92E

4. Enlace Código: https://poligran-my.sharepoint.com/:f:/g/personal/dfperezs_poligran_edu_co/


EnwxWIlEGLJOuDX39AZfvXoBd2uDZTR6tKITbPvopKtcSA?e=6O2KXa

CONCLUSIONES
1. Podemos concluir que se puede desarrollar una aplicación cliente servidor en una misma
maquina virtual.
2. Realizando la instalación de la maquina virtual se puede realizar una actualización a través
del comando yum -y update y se puede exportar a un txt.
3. Se puede poner en práctica los conocimientos adquiridos en los escenarios 1,2 y 3
realizando una aplicación cliente servidor donde se tiene una conexión por red y además
se pueden conectar a través de sockets.
4. Se evidencia que con la conexión a través de sockets el cliente realiza peticiones al
servidor y este le responde, esto es muy útil de aprender ya que a través de esto se
pueden desarrollar múltiples aplicaciones que pueden servir a resolver problemas de la
cotidianidad.

BIBLIOGRAFÍA
1. Sockets (Cliente-Servidor). Disponible en https://www.programarya.com/Cursos-
Avanzados/Java/Sockets
2. Socket. Disponible en https://www.ecured.cu/Socket
3. Definición de socket. Disponible en https://www.techopedia.com/definition/16208/socket
4. Acerca de sockets. Disponible en https://www.webopedia.com/TERM/S/socket.html
5. Lenguajes y ciencias de la computación. Disponible en
http://www.lcc.uma.es/~eat/services/i_socket/i_socket.html#link2
6. Comunicación entre procesos distribuidos disponible en
http://es.tldp.org/Universitarios/seminario-2-sockets.html

También podría gustarte