
PROTOCOLO SIMPLE DE TRANMISION DE CORREO (SMTP)
Este protocolo es el estándar de Internet para el intercambio de correo electrónico. SMTP necesita que el sistema de transmisión ponga a su disposición un canal de comunicación fiable y con entrega ordenada de paquetes, con lo cual, el uso del protocolo TCP en la capa de transporte, es lo adecuado. Para que dos sistemas intercambien correo mediante el protocolo SMTP, no es necesario que exista una conexión interactiva, ya que este protocolo usa métodos de almacenamiento y reenvío de mensajes.
MODO DE COMUNICACION SMTP
Cuando un servidor de SMTP, requiere transmitir un mensaje a otro servidor SMTP, el emisor (servidor que inicia la sesión SMTP) establece una conexión con el receptor (servidor que recibe petición de establecer sesión SMTP). Esta conexión es unidireccional, es decir, el emisor puede enviar correo al receptor, pero durante esa conexión, el receptor no puede enviar correo al emisor. Si el receptor tiene que enviar correo al emisor, tiene que esperar a que finalice la conexión establecida y establecer otra en sentido contrario, cambiando los papeles de emisor y receptor.
PROTOCOLO POP3
El protocolo POP (Protocolo de oficina de correos), como su nombre lo indica, permite recoger el correo electrónico en un servidor remoto (servidor POP). Es necesario para las personas que no están permanentemente conectadas a Internet, ya que así pueden consultar sus correos electrónicos recibidos sin que ellos estén conectados.
Al igual que con el protocolo SMTP, el protocolo POP (POP2 y POP3) funciona con comandos de texto enviados al servidor POP. Cada uno de estos comandos enviados por el cliente (validados por la cadena CR/LF) está compuesto por una palabra clave, posiblemente acompañada por uno o varios argumentos, y está seguido por una respuesta del servidor POP compuesta por un número y un mensaje descriptivo. el protocolo POP3 administra la autenticación utilizando el nombre de usuario y la contraseña. Sin embargo, esto no es seguro, ya que las contraseñas, al igual que los correos electrónicos, circulan por la red como texto sin codificar (de manera no cifrada)
PROTOCOLO IMAP
El protocolo IMAP (Protocolo de acceso a mensajes de Internet) es un protocolo alternativo al de POP3, pero que ofrece más posibilidades:
* IMAP permite administrar diversos accesos de manera simultánea
* IMAP permite administrar diversas bandejas de entrada
* IMAP brinda más criterios que pueden utilizarse para ordenar los correos electrónicos.
¿POR QUE AL PROCESAR PAGINAS WEB SE ENVIAN CABECERAS QUE TIENEN EL PREFIJO MIME?
MIME, Multipurpose Internet Mail Extensions (Extensiones del correo de internet para aplicaciones diversas) son especificaciones para los tipos de archivos que se mueven por Internet. La finalidad de MIME es permitir a los ordenadores de las diversas plataformas y a las configuraciones pasa información entre sí y que comprendan cómo procesar la información con la menor cantidad de confusión y molestia. Existen distintos tipos de MIME para textos, imágenes, vídeo, audio, mensajes, aplicaciones y otras más.
HTML es texto, y su tipo MIME es text/html.
HTML es texto, y su tipo MIME es text/html.
¿Cómo se apoyan los servidores en MIME?.
Después de recibir una solicitud para enviar un archivo, el servidor comprueba la extensión del archivo para determinar el tipo MIME del archivo. Extensiones como .HTM, .HTML, .GIF, .JPG, .MID y otras más son conocidas en el ámbito de Internet y es importante saber que no se pueden cambiar arbitrariamente estas extensiones por otras inventadas. La razón de que tenga esa limitación es que el servidor confia en la utilización esperada de las extensiones para determinar el tipo de archivo.
Una pequeña introducción sobre qué son los MIME types, más que nada para aclarar conceptos.
El protocolo más extendido para el envío de correos por internet es smtp. Este protocolo sólo admite el envio de caracteres de texto y además usando sólo 7 bits. Esto hace que sólo pueda enviarse un conjunto muy limitado de caracteres de texto (128), y no pueden enviarse caracteres con acentos, eñes, etc. Tampoco permite el envio de imágenes, música, etc.
Para intentar solucionar este problema, se hizo una pequeña extensión, conocida como MIME (Multipurpose Internet Mail Extensions). La idea básica consiste en convertir cualquier cosa que se quiera mandar a una ristra de caracteres de 7 bits, como los que acepta el protocolo smtp. Si tanto el que envía como el que recibe están de acuerdo en como convertir y desconvertir esos caracteres de 7 bits a la imagen, música, texto con acentos o lo que sea, se podría enviar cualquier cosa en un correo de texto.
Cabeceras MIME
Cuando usamos esta extensión MIME para enviar correos con imágenes, lo primero que se hace, usando caracteres de 7 bits, es enviar una pequeña cabecera. Esta cabecera le indica al que lo recibe qué es lo que está recibiendo y cómo debe tratarlo.
Luego, qué tipo de información es la que se va a enviar. Los posibles tipos estan definidos y no se puede poner cualquier cosa. Por ejemplo, para enviar una foto jpeg se pondría
El protocolo más extendido para el envío de correos por internet es smtp. Este protocolo sólo admite el envio de caracteres de texto y además usando sólo 7 bits. Esto hace que sólo pueda enviarse un conjunto muy limitado de caracteres de texto (128), y no pueden enviarse caracteres con acentos, eñes, etc. Tampoco permite el envio de imágenes, música, etc.
Para intentar solucionar este problema, se hizo una pequeña extensión, conocida como MIME (Multipurpose Internet Mail Extensions). La idea básica consiste en convertir cualquier cosa que se quiera mandar a una ristra de caracteres de 7 bits, como los que acepta el protocolo smtp. Si tanto el que envía como el que recibe están de acuerdo en como convertir y desconvertir esos caracteres de 7 bits a la imagen, música, texto con acentos o lo que sea, se podría enviar cualquier cosa en un correo de texto.
Cabeceras MIME
Cuando usamos esta extensión MIME para enviar correos con imágenes, lo primero que se hace, usando caracteres de 7 bits, es enviar una pequeña cabecera. Esta cabecera le indica al que lo recibe qué es lo que está recibiendo y cómo debe tratarlo.
Luego, qué tipo de información es la que se va a enviar. Los posibles tipos estan definidos y no se puede poner cualquier cosa. Por ejemplo, para enviar una foto jpeg se pondría
Content-type: image/jpeg
Finalmente, hay que indicar cual es el mecanismo para convertir o desconvertir esa imagen jpeg a un conjunto de caracteres de 7 bits. Actualmente hay servidores de correo con protocolo smtp extendido que admiten caracteres de más de 7 bits, por lo que hay más métodos de conversión disponibles. Pero los compatibles con 7 bits son
7bit.
quoted-printable.
base64.
Son simplemente la forma de convertir una ristra de bytes arbitrarios (una foto, una música, un video) a una ristra de caracteres de 7 bits, susceptible de ser enviada por correo con el protocolo smtp.
Esto sería lo que aparecería en la cabecera MIME
Content-Transfer-Encoding: 7bit
Ejemplo completo de correo MIME
Un ejemplo completo. Si queremos enviar un correo cuyo asunto es "Camión" y el texto es "Acentos áéíóó y otros Ñ ñ ü", el texto con caracteres de 7 bits que se enviaría al servidor smtp sería
From:yo@yo.com
To:chuidiang@gmail.com
Message-ID:<12097592.01175854969750.javamail.administrador@trasto2>Subject:=?Cp1252?Q?Cami=F3n?=
MIME-Version: 1.0Content-Type: text/plain; charset=Cp1252Content-Transfer-Encoding: quoted-printableAcentos =E1=E9=ED=F3=F3 y otros =D1 =F1 =FC.
Puedes ver en las tres primeras líneas algunos datos sobre el correo (from, to y Message-ID). Esto no tiene que ver con los tipos MIME, es la forma en el protocolo smtp de indicar algunos datos del correo.
La siguiente línea es el subject, que como ves se ha convertido a caracteres normales, quitando el acento de camión y reemplazándolo por =F3. Puesto que esto va delante de la cabecera MIME, lleva su conversión por defecto, decidida por el cliente de correo que he usado para obtener esto.
Luego a lo que vamos, las tres líneas con la cabecera MIME, indicando versión, tipo de texto con el juego de caracteres Cp1215 empleado en el original y el tipo de conversión que se va a hacer (quoted-printable)
Finalmente el mensaje, en el que se han reemplazado todos los acentos y caracteres extraños por caracteres normales. El punto de la última línea es del protocolo smtp para indicar que se ha llegado al final de mensaje.

No hay comentarios:
Publicar un comentario