Está en la página 1de 4

Comunicaciones en sistemas cliente-servidor: Socket

• Un socket se define como un punto terminal de una comunicación


• Concatenación de la dirección IP y el puerto – un número incluido al comienzo del
paquete de mensajes para diferenciar los servicios de red en un host
• El socket 161.25.19.8:1625 se refiere al puerto 1625 en el host 161.25.19.8

• Un par de procesos que se comunican a


través de una red emplean un par de
sockets, uno para cada proceso
• Todos los puertos por debajo de 1024 son
bien conocidos, y se utilizan para servicios
estándar
Sockets en Java
• Tres tipos de sockets
• Orientado a la conexión (TCP) – Clase
socket
• Sin conexión (UDP) – Clase DatagramSocket
• Clase MulticastSocket– Los datos
El servidor crea un
ServerSocket que especifica
que se pondrá a la escucha
se pueden enviar a varios destinatarios y es en el puerto 6013

una subclase de DatagramSocket. El servidor comienza a escuchar el


puerto con el método accept ().
El servidor primero establece un objeto PrintWriter

• El Código ejemplo describe un servidor


que utilizará para comunicarse con el cliente.

El servidor escribe la
de datos que usa sockets TCP orientados fecha en el socket

a conexión
El servidor cierra el socket de conexión con el cliente y
• El servidor escuha en el Puerto 6013 reanuda la escucha de más solicitudes.

• Cuando se recibe una conexión el servidor


devuelve la fecha y la hora al cliente Servidor horario
utiliza TCP
orientado a
conexión
Sockets en Java

• El Cliente crea un socket y solicita


una conexión con el servidor
• Establecida la conexión, puede leer El cliente crea un Socket y solicita una
conexión con el servidor en la dirección
en el socket usando instrucciones IP 127.0.0.1 en el puerto 6013

E/S.
• Después de recibir los datos cierra
el socket y sale
• La dirección especial IP 127.0.0.1
(loopback) se utiliza hacerse
referencia a si misma. (tanto el
cliente como el servidor están en la
misma PC)

Cliente Horario
Sockets en Java - Wireshark

También podría gustarte