¿Qué es el socket de un servidor?

Programación de sockets

Los tutoriales de Java han sido escritos para el JDK 8. Los ejemplos y las prácticas que se describen en esta página no aprovechan las mejoras introducidas en versiones posteriores y pueden utilizar tecnología que ya no está disponible.Consulte los cambios en el lenguaje de Java para ver un resumen de las características actualizadas del lenguaje en Java SE 9 y las versiones posteriores.Consulte las notas de la versión del JDK para obtener información sobre las nuevas características, las mejoras y las opciones eliminadas o obsoletas de todas las versiones del JDK.

En el lado del cliente: El cliente conoce el nombre de host de la máquina en la que se ejecuta el servidor y el número de puerto en el que el servidor está escuchando. Para realizar una solicitud de conexión, el cliente intenta encontrarse con el servidor en la máquina y el puerto del servidor. El cliente también necesita identificarse ante el servidor, por lo que se vincula a un número de puerto local que utilizará durante esta conexión. Éste suele ser asignado por el sistema.

Si todo va bien, el servidor acepta la conexión. Una vez aceptada, el servidor obtiene un nuevo socket vinculado al mismo puerto local y también tiene su punto final remoto configurado con la dirección y el puerto del cliente. Necesita un nuevo socket para poder seguir escuchando el socket original para las peticiones de conexión mientras atiende las necesidades del cliente conectado.

Lee más  ¿Qué oposiciones hay para administrativo?

Socket frente a puerto

Este artículo necesita citas adicionales para su verificación. Por favor, ayude a mejorar este artículo añadiendo citas de fuentes fiables. El material sin fuente puede ser cuestionado y eliminado.Buscar fuentes:  «Network socket» – noticias – periódicos – libros – scholar – JSTOR (noviembre de 2017) (Aprende cómo y cuándo eliminar este mensaje de la plantilla)

Un socket de red es una estructura de software dentro de un nodo de red de un ordenador que sirve como punto final para enviar y recibir datos a través de la red. La estructura y las propiedades de un socket están definidas por una interfaz de programación de aplicaciones (API) para la arquitectura de red. Los sockets se crean sólo durante la vida de un proceso de una aplicación que se ejecuta en el nodo.

Debido a la estandarización de los protocolos TCP/IP en el desarrollo de Internet, el término socket de red se utiliza más comúnmente en el contexto del conjunto de protocolos de Internet, y por lo tanto a menudo también se denomina socket de Internet. En este contexto, un socket se identifica externamente a otros hosts por su dirección de socket, que es la tríada de protocolo de transporte, dirección IP y número de puerto.

Servidor de sockets Java múltiples clientes

Escribir servidores WebSocketUn servidor WebSocket no es más que una aplicación que escucha en cualquier puerto de un servidor TCP que sigue un protocolo específico. La tarea de crear un servidor personalizado tiende a asustar a la gente; sin embargo, puede ser sencillo implementar un simple servidor WebSocket en la plataforma que elijas.

Lee más  ¿Quién inventó la informática y en qué año?

Este artículo asume que ya estás familiarizado con el funcionamiento de HTTP y que tienes un nivel moderado de experiencia en programación. Dependiendo del soporte del lenguaje, puede ser necesario el conocimiento de los sockets TCP. El objetivo de esta guía es presentar los conocimientos mínimos que necesitas para escribir un servidor WebSocket.

Nota: Lea la última especificación oficial de WebSockets, RFC 6455. Las secciones 1 y 4-7 son especialmente interesantes para los implementadores de servidores. La sección 10 discute la seguridad y definitivamente deberías leerla antes de exponer tu servidor.

Advertencia: El servidor puede escuchar en cualquier puerto que elija, pero si elige cualquier puerto que no sea el 80 o el 443, puede tener problemas con los cortafuegos y/o proxies. Los navegadores generalmente requieren una conexión segura para los WebSockets, aunque pueden ofrecer una excepción para los dispositivos locales.

Ejemplo de socket de servidor Java

Ciertamente, cuando se lleva a cabo una comunicación TCP/IP, toda la información necesaria puede ser proporcionada por la clase Socket sólo para el propósito de la comunicación. No importa que sea del lado del servidor o del lado del cliente.

Debido a que está leyendo los datos enviados por el servidor a través de la red, no está leyendo directamente el sistema de archivos del servidor o los recursos ( db , ram o algo así ) está leyendo los datos que ya fueron procesados por el ServerSocket.

Cuando se solicita una imagen, página, etc, el servidor web ( El ServerSocket ) escribe los bytes al cliente, a su vez el cliente tiene que leerlos ( para saber lo que envió el servidor web ¿no? ) y procesarlos mostrándolos al usuario final.

Lee más  ¿Cuál es la clave de root en Ubuntu?

Ejemplo: Piensa en un centro de llamadas entrantes como ejemplo. Estos servicios son servidores. No inician una llamada, sino que esperan a que entren las llamadas de los clientes. Una vez que las llamadas entran, pueden entablar una conversación bidireccional.