robot de la enciclopedia para niños

Extensible Messaging and Presence Protocol para niños

Enciclopedia para niños
Datos para niños
Extensible Messaging and Presence Protocol
XMPP logo.svg
Familia Internet
Función Mensajería instantánea
Puertos

5222/TCP (Cliente a servidor)
5269/TCP (Servidor a servidor)

5223/TCP (SSL)
Ubicación en la pila de protocolos
Aplicación XMPP
Transporte TCP
Red IP
Estándares

RFC 6120 (Principal)
RFC 6121 (Mensajería instantánea y presencia)
RFC 6122 (Formato de direcciones)
RFC 3922 (CPIM)

RFC 3923 (Cifrado)

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.

¿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.

Archivo:Wie ein Jabber-Transport funktioniert
Alice envía un mensaje a través de la red XMPP a la pasarela de ICQ, y luego el mensaje llega a Bob usando la red ICQ.

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

Kids robot.svg En inglés: XMPP Facts for Kids

kids search engine
Extensible Messaging and Presence Protocol para Niños. Enciclopedia Kiddle.