Extensible Messaging and Presence Protocol para niños
Datos para niños Extensible Messaging and Presence Protocol |
||||||||
---|---|---|---|---|---|---|---|---|
![]() |
||||||||
Familia | Internet | |||||||
Función | Mensajería instantánea | |||||||
Puertos |
5222/TCP (Cliente a servidor) |
|||||||
Ubicación en la pila de protocolos | ||||||||
|
||||||||
Estándares | ||||||||
RFC 6120 (Principal) |
||||||||
El Extensible Messaging and Presence Protocol, más conocido como XMPP, es un conjunto de reglas abiertas para la comunicación en línea. Imagina que es como el idioma que usan las aplicaciones de chat para entenderse entre sí. Antes se le conocía como Jabber.
Este protocolo se basa en XML, que es un lenguaje para organizar información. XMPP fue creado originalmente para la mensajería instantánea, es decir, para enviar mensajes de texto en tiempo real.
A diferencia de otros sistemas de chat que pertenecen a una sola empresa, XMPP es un protocolo abierto. Esto significa que cualquiera puede usarlo y crear programas compatibles. Hay muchos programas y servidores gratuitos que lo utilizan.
Varias empresas han usado XMPP para sus servicios de chat. Por ejemplo, Google lo usó para su servicio Google Talk en el pasado.
Contenido
¿Cómo funciona XMPP?
XMPP es como un sistema de correo electrónico, pero para mensajes instantáneos. No hay un servidor central que controle todo. En cambio, hay muchos servidores XMPP conectados entre sí. Cualquiera puede crear su propio servidor.
Identificadores de usuario en XMPP
Cada persona en la red XMPP tiene un identificador único, llamado Jabber ID o JID. Es muy parecido a una dirección de correo electrónico. Por ejemplo, un JID podría ser tunombredeusuario@servidor.com.
La parte después del "@" es el nombre del servidor donde está tu cuenta. Esto ayuda a que los mensajes lleguen al lugar correcto sin necesidad de una lista central de todos los usuarios.
Recursos y prioridades
A veces, una persona puede conectarse a su cuenta XMPP desde diferentes dispositivos, como su teléfono o su computadora. Para esto, se usa algo llamado "recurso". Un recurso es como una etiqueta que identifica el dispositivo.
Por ejemplo, tu JID completo podría ser tunombredeusuario@servidor.com/casa si estás en tu computadora de casa. Cada recurso puede tener una prioridad. Los mensajes se envían al dispositivo con la prioridad más alta.
Envío de mensajes con XMPP
Imagina que Ana quiere chatear con Luis. Ana tiene su cuenta en el servidor ejemploana.com y Luis en ejemploluis.net. Así es como funciona el envío de un mensaje:
- El programa de chat de Ana envía su mensaje a su servidor, ejemploana.com.
- El servidor ejemploana.com se conecta con el servidor de Luis, ejemploluis.net.
- El servidor ejemploluis.net entrega el mensaje a Luis.
- Si Luis no está conectado en ese momento, el mensaje se guarda en su servidor hasta que se conecte.
Historia de XMPP
El proyecto Jabber, que dio origen a XMPP, fue iniciado por Jeremie Miller en 1998. La primera versión importante de su software salió en mayo de 2000. El servidor principal de este proyecto se llamaba jabberd.
En agosto de 2005, Google lanzó Google Talk, que usaba XMPP para sus funciones de mensajería. Al principio, no permitía la comunicación entre diferentes servidores, pero esta función se añadió en 2006.
La fundación que impulsaba Jabber cambió su nombre a XMPP Standards Foundation en 2007. Esto mostró el crecimiento y la importancia del protocolo.
Conexión con otros sistemas de chat
Una característica muy útil de XMPP son las pasarelas o transportes. Estas pasarelas permiten que los usuarios de XMPP se comuniquen con personas que usan otros sistemas de chat, como los de MSN Messenger o ICQ (servicios antiguos de mensajería).
No necesitas un programa especial para esto. El servidor XMPP es el que ofrece este servicio de pasarela. Te registras en la pasarela con tus datos del otro sistema de chat, y así puedes hablar con tus amigos sin importar qué sistema usen.
XMPP y la web
A veces, los sistemas de seguridad de internet (llamados cortafuegos) pueden bloquear las conexiones de XMPP. Para solucionar esto, XMPP puede usar el protocolo HTTP, que es el que se usa para navegar por páginas web.
Esto permite que los usuarios detrás de un cortafuegos puedan conectarse a XMPP. Hay dos formas principales en que XMPP puede usar HTTP:
- Binding: Este método es el más eficiente. El programa de chat mantiene una conexión HTTP abierta para recibir mensajes tan pronto como llegan.
Programas que usan XMPP
Muchos programas de chat han implementado el protocolo XMPP. Algunos ejemplos son:
- Dino: Un programa moderno para GNU/Linux que se enfoca en una interfaz sencilla y segura.
- iChat: Un programa de chat que venía incluido en el sistema operativo OS X de Apple.
- Psi: Un programa que funciona en Windows, Linux y OS X.
- Gajim: Otro programa multiplataforma para Windows y GNU/Linux, enfocado solo en XMPP.
- Pidgin (software): Un programa muy popular en GNU/Linux que puede conectarse a muchos tipos de redes de chat, incluyendo XMPP.
- Telepathy: Una base para la comunicación en tiempo real usada en sistemas como Ubuntu.
Desarrollo y extensiones
El protocolo XMPP sigue evolucionando. Se han creado documentos llamados RFC que describen cómo funciona XMPP y sus diferentes partes.
Algunas de las extensiones más usadas de XMPP incluyen:
- Chat multiusuario: Permite que varias personas chateen juntas en una sala.
- Transferencia de archivos: Para enviar documentos o imágenes a través del chat.
- HTTP Binding: Para conectar XMPP a través de la web.
Actualmente, XMPP también se está ampliando para manejar llamadas de voz por internet (VoIP).
Galería de imágenes
Véase también
En inglés: XMPP Facts for Kids