WebSockets es una tecnología que proporciona un canal de comunicación bidireccional y full-duplex, sobre un único socket TCP. Dicha tecnología ha sido diseñada para ser implementada en navegadores y servidores web, pero también puede usarse por cualquier aplicación cliente/servidor.
La API de WebSockets está siendo normalizada por el W3C; mientras que el protocolo WebSockets, ya fue normalizado por la IETF como el RFC 6455, debido a que las conexiones TCP comunes sobre puertos diferentes al 80, son habitualmente bloqueadas por los administradores de redes. El uso de esta tecnología proporciona una solución a este tipo de limitaciones aportando una funcionalidad similar a la apertura de varias conexiones en distintos puertos, pero multiplexando diferentes servicios WebSockets sobre un único puerto TCP, con tan sólo una pequeña sobrecarga del protocolo.
Por parte de los clientes, WebSockets está siendo implementado en Mozilla Firefox 8, Google Chrome 4 y Safari 5; así como en la versión móvil de Safari en el iOS 4.2. y en Internet Explorer 10.
La nube elástica de Facilcloud permite trabajar con WebSockets y así aprovechar todas sus funcionalidades.
¿Qué se puede hacer con websockets?
La tecnología WebSockets consiste en una API que permite a las páginas web utilizar el protocolo web socket para establecer una vía de comunicación full dúplex (ida y vuelta de forma simultánea), con el servidor utilizando un mismo socket.
Ya no es necesario emular una conexión full dúplex con el servidor; sin embargo hay que tener en cuenta que estos métodos provocaban un alto tráfico en la red, consumo de recursos del servidor y latencia.
Ventajas de websockets:
- Es más rápido que el protocolo HTTP.
- Reduce el uso de la red, pues evita la necesidad de utilizar los paquetes HTTP que contienen grandes cantidades de datos de cabecera, sin necesidad de un mayor trabajo de procesamiento.
- Minimiza la latencia en las conexiones, ya que pone menos carga en los servidores, lo cual permite que estos equipos atiendan más conexiones simultaneas.
- Posibilita atravesar firewalls y servidores proxy; si un WebSockets detecta la presencia de un servidor proxy, solicita una conexión TCP/IP usando una instrucción Connect HTTP, luego de lo cual se puede pasar por el proxy sin dificultad.
- Facilita una mayor escalabilidad en la web, debido a su eficiencia al momento de mantener conexiones persistentes con los servidores.
Desventaja de websockets:
- Es una tecnología que continua en desarrollo, por lo cual, resulta común encontrar problemas de conectividad con algunos navegadores. Actualmente los principales navegadores que lo implementan son los siguientes: Chrome, Safari, Firefox, entre otros.
0 comentarios