Clase 3 Protocolos2016

Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 100

Tipos de Protocolo

* TCP Y UDP
En general se ha explicado como los sistemas se
comunican a bajo nivel utilizando direcciones IP tanto en el
formato numérico como en el formato de nombres para
identificar la misma. IP no suministra mas capacidades que
enviar y recibir trozos de data se requiere mucho mas que
eso, en este sentido aparecen TCP Y UDP.
TCP (Protocolo de Control de Transmisión)
algunas garantías son:
•La retransmisión de los paquetes que son borrados (por problemas en
la red)
• Otra es que los paquetes son recibidos en el mismo orden en que son
enviados.
•La tercera garantía es que cada paquete recibido tiene exactamente el
mismo contenido que el paquete enviado.
Tipos de Protocolo
Algunos aplicaciones utilizan un protocolo distinto que corre encima de
IP, este es llamado UDP (Protocolo de Datagramas de Usuarios).
UDP envía un paquete de data a la vez (llamado datagrama) a otros
sistemas y no suministra una conexión virtual como lo hace TCP,
asimismo UDP no provee las mismas garantías que tiene TCP, esto
significa que puede darse el caso de que los paquetes se pierdan o bien
no sean reconstruidos en la forma adecuada.
La utilidad de utilizar UDP en vez de TCP, Si UDP no es confiable,
esta se basa en que TCP tiene un alto solapamiento en la conexión
comparado con UDP, lo que hace que TCP sea mas lento que UDP. Para
aplicaciones donde la velocidad de ejecución es mas importante que la
confiabilidad, UDP tiene mas sentido. Algunos ejemplos incluye audio y
video en la internet y algunas aplicaciones telefónicas.
Tipos de Protocolo
Protocolos de Aplicación de internet
* FTP y Telnet
FTP (Protocolo de transferencia de archivos) permite bajar y
colocar archivos en la internet. Para bajar un archivo en un sistema
de computación es necesario correr una aplicación cliente de FTP
que se conecta al servidor FTP y procede a bajar el archivo de su
correspondiente directorio o carpeta.
Telnet es una vía para realizar una conexión remota a otro
sistema en la red. Un servidor telnet debe estar corriendo en el
sistema remoto y un cliente de telnet debe estar corriendo en el
sistema local. Los sistema operativos típicos para servidores telnet
son unís, Windows nt etc.
Tipos de Protocolo
* HTTP
Es el protocolo primario de www. Cuando un navegador se conecta a
un servidor web, este usa http para recibir paginas web, http tiene la
capacidad para transferir paginas web, gráficos y muchos otros tipos de
medios usados en internet.
* Internet, Correo electrónico
El correo electrónico utiliza un protocolo llamado SMTP (Protocolo
de transferencia de correo simple) una aplicación cliente de correo
electrónico es utilizado para enviar y recibir mensajes y esta se comunica
con un servidor SMTP el cual esta fuera y se encarga de enviar los
mensajes y tomar la responsabilidad de tomar estos. Una dirección de
correo electrónico esta compuesta de dos partes: el nombre del usuario y
la dirección del servidor, un ejemplo cduran@consisint.com.
Protocolo IP
La función del protocolo IP
El protocolo IP es parte de la capa de Internet del conjunto
de protocolos TCP/IP. Es uno de los protocolos de Internet
más importantes ya que permite el desarrollo y transporte de
datagramas de IP (paquetes de datos), aunque sin garantizar
su "entrega". En realidad, el protocolo IP procesa datagramas
de IP de manera independiente al definir su representación,
ruta y envío.
El protocolo IP determina el destinatario del mensaje
mediante 3 campos:
el campo de dirección IP: Dirección del equipo;
Protocolo IP
el campo de máscara de subred: una máscara de subred le
permite al protocolo IP establecer la parte de la dirección IP
que se relaciona con la red;
el campo de pasarela predeterminada: le permite al
protocolo de Internet saber a qué equipo enviar un
datagrama, si el equipo de destino no se encuentra en la
red de área local.
Protocolo IP
Datagramas
Los datos circulan en Internet en forma de datagramas
(también conocidos como paquetes). Los datagramas son
datos encapsulados, es decir, datos a los que se les agrega
un encabezado que contiene información sobre su
transporte (como la dirección IP de destino).
Los routers analizan (y eventualmente modifican) los datos
contenidos en un datagrama para que puedan transitar.
Protocolo
A continuación IP
se indica cómo se ve un datagrama:

<- 32 bits ->


Longitud del Tipo de
Versión encabezado servicio Longitud total
(4 bits) (4 bits) (8 bits) (16 bits)
Identificación Indicador Margen del
(16 bits) fragmento
(3 bits) (13 bits)
Suma de comprobación del
Tiempo de vida Protocolo encabezado
(8 bits) (8 bits) (16 bits)
Dirección IP de origen (32 bits)
Dirección IP de destino (32 bits)
Datos
Protocolo IP
A continuación se indican los significados de los diferentes
campos:
Versión (4 bits): es la versión del protocolo IP que se está
utilizando (actualmente se utiliza la versión 4 IPv4) para
verificar la validez del datagrama. Está codificado en 4 bits.
Longitud del encabezado o IHL por Internet Header Length
(Longitud del encabezado de Internet) (4 bits): es la cantidad
de palabras de 32 bits que componen el encabezado
(Importante: el valor mínimo es 5). Este campo está
codificado en 4 bits.
Protocolo IP
Tipo de servicio (8 bits): indica la forma en la que se debe
procesar el datagrama.
Longitud total (16 bits): indica el tamaño total del
datagrama en bytes. El tamaño de este campo es de 2
bytes, por lo tanto el tamaño total del datagrama no puede
exceder los 65536 bytes. Si se lo utiliza junto con el tamaño
del encabezado, este campo permite determinar dónde se
encuentran los datos.
Identificación, indicadores y margen del fragmento son
campos que permiten la fragmentación de datagramas. Esto
se explica a continuación.
Protocolo IP
TTL o Tiempo de vida (8 bits): este campo especifica el número
máximo de routers por los que puede pasar un datagrama. Por lo
tanto, este campo disminuye con cada paso por un router y
cuando alcanza el valor crítico de 0, el router destruye el
datagrama. Esto evita que la red se sobrecargue de datagramas
perdidos.
Protocolo (8 bits): este campo, en notación decimal, permite
saber de qué protocolo proviene el datagrama.
◦ ICMP 1
◦ IGMP: 2
◦ TCP: 6
◦ UDP: 17
Protocolo IP
Suma de comprobación del encabezado (16 bits): este campo
contiene un valor codificado en 16 bits que permite controlar la
integridad del encabezado para establecer si se ha modificado
durante la transmisión. La suma de comprobación es la suma de
todas las palabras de 16 bits del encabezado (se excluye el campo
suma de comprobación). Esto se realiza de tal modo que cuando se
suman los campos de encabezado (suma de comprobación
inclusive), se obtenga un número con todos los bits en 1.
Dirección IP de origen (32 bits): Este campo representa la dirección
IP del equipo remitente y permite que el destinatario responda.
Dirección IP de destino (32 bits): dirección IP del destinatario del
mensaje.
Protocolo IP
Fragmentación de datagramas de IP
Como se ha visto anteriormente, el tamaño máximo de un
datagrama es de 65536 bytes. Sin embargo, este valor nunca es
alcanzado porque las redes no tienen suficiente capacidad para
enviar paquetes tan grandes. Además, las redes en Internet
utilizan diferentes tecnologías por lo tanto el tamaño máximo de
un datagrama varía según el tipo de red.
El tamaño máximo de una trama se denomina MTU (Unidad de
transmisión máxima). El datagrama se fragmentará si es más
grande que la MTU de la red.
Protocolo IP
Tipo de red MTU (en bytes)
Arpanet 1000
Ethernet 1500
FDDI 4470

La fragmentación del datagrama se lleva a cabo a nivel de


router, es decir, durante la transición de una red con una MTU
grande a una red con una MTU más pequeña. Si el datagrama
es demasiado grande para pasar por la red, el router lo
fragmentará, es decir, lo dividirá en fragmentos más pequeños
que la MTU de la red, de manera tal que el tamaño del
fragmento sea un múltiplo de 8 bytes.
Protocolo IP
El router enviará estos fragmentos de manera
independiente y los volverá a encapsular (agregar un
encabezado a cada fragmento) para tener en cuenta el
nuevo tamaño del fragmento. Además, el router agrega
información para que el equipo receptor pueda rearmar los
fragmentos en el orden correcto. Sin embargo, no hay nada
que indique que los fragmentos llegarán en el orden
correcto, ya que se enrutan de manera independiente.
Protocolo IP
Para tener en cuenta la fragmentación, cada datagrama cuenta
con diversos campos que permiten su rearmado:
campo Margen del fragmento (13 bits): campo que brinda la
posición del comienzo del fragmento en el datagrama inicial. La
unidad de medida para este campo es 8 bytes (el primer
fragmento tiene un valor cero);
campo Identificación (16 bits): número asignado a cada
fragmento para permitir el rearmado;
campo Longitud total (16 bits): esto se vuelve a calcular para
cada fragmento; campo Indicador (3 bits): está compuesto de
tres bits:
Protocolo IP
Enrutamiento IP
El enrutamiento IP es una parte integral de la capa de
Internet del conjunto TCP/IP. El enrutamiento consiste en
asegurar el enrutamiento de un datagrama de IP a través de
la red por la ruta más corta. A esta función la llevan a cabo
los equipos denominados routers, es decir, equipos que
conectan al menos dos redes.
Protocolo TCP
Las características del protocolo TCP
TCP (que significa Protocolo de Control de Transmisión) es uno de
los principales protocolos de la capa de transporte del modelo
TCP/IP. En el nivel de aplicación, posibilita la administración de
datos que vienen del nivel más bajo del modelo, o van hacia él,
(es decir, el protocolo IP). Cuando se proporcionan los datos al
protocolo IP, los agrupa en datagramas IP, fijando el campo del
protocolo en 6 (para que sepa con anticipación que el protocolo
es TCP). TCP es un protocolo orientado a conexión, es decir, que
permite que dos máquinas que están comunicadas controlen el
estado de la transmisión.
Protocolo TCP
Las principales características del protocolo TCP son las siguientes:
TCP permite colocar los datagramas nuevamente en orden cuando
vienen del protocolo IP.
TCP permite que el monitoreo del flujo de los datos y así evita la
saturación de la red.
TCP permite que los datos se formen en segmentos de longitud variada
para "entregarlos" al protocolo IP.
TCP permite multiplexar los datos, es decir, que la información que
viene de diferentes fuentes (por ejemplo, aplicaciones) en la misma
línea pueda circular simultáneamente.
Por último, TCP permite comenzar y finalizar la comunicación
amablemente.
Protocolo TCP
El objetivo de TCP
Con el uso del protocolo TCP, las aplicaciones pueden comunicarse
en forma segura (gracias al sistema de acuse de recibo del protocolo
TCP) independientemente de las capas inferiores. Esto significa que
los routers (que funcionan en la capa de Internet) sólo tienen que
enviar los datos en forma de datagramas, sin preocuparse con el
monitoreo de datos porque esta función la cumple la capa de
transporte (o más específicamente el protocolo TCP).
Durante una comunicación usando el protocolo TCP, las dos
máquinas deben establecer una conexión. La máquina emisora (la
que solicita la conexión) se llama cliente, y la máquina receptora se
llama servidor.
Protocolo TCP
Después de recibir este segmento, la otra máquina
envía un acuse de recibo con el indicador FIN fijado en
1 y sigue enviando los segmentos en curso. Después de
esto, la máquina informa a la aplicación que se ha
recibido un segmento FIN y luego envía un segmento
FIN a la otra máquina, que cierra la conexión.
Protocolo UDP
El protocolo UDP (Protocolo de datagrama de usuario) es un
protocolo no orientado a conexión de la capa de transporte del
modelo TCP/IP. Este protocolo es muy simple ya que no
proporciona detección de errores (no es un protocolo orientado a
conexión).
Por lo tanto, el encabezado del segmento UDP es muy simple:
puerto de origen puerto de destino
(16 bits); (16 bits);
suma de comprobación del
longitud total
encabezado
(16 bits);
(16 bits);
datos
(longitud variable).
Protocolo UDP
Significado de los diferentes campos
Puerto de origen: es el número de puerto relacionado con
la aplicación del remitente del segmento UDP. Este campo
representa una dirección de respuesta para el destinatario.
Por lo tanto, este campo es opcional. Esto significa que si el
puerto de origen no está especificado, los 16 bits de este
campo se pondrán en cero. En este caso, el destinatario no
podrá responder (lo cual no es estrictamente necesario, en
particular para mensajes unidireccionales).
Protocolo UDP
Puerto de destino: este campo contiene el puerto
correspondiente a la aplicación del equipo receptor al que
se envía.
Longitud: este campo especifica la longitud total del
segmento, con el encabezado incluido. Sin embargo, el
encabezado tiene una longitud de 4 x 16 bits (que es 8 x 8
bits), por lo tanto la longitud del campo es necesariamente
superior o igual a 8 bytes.
Suma de comprobación: es una suma de comprobación
realizada de manera tal que permita controlar la integridad
del segmento.
Protocolo FTP
El protocolo FTP (Protocolo de transferencia de archivos) es,
como su nombre lo indica, un protocolo para transferir archivos.
La implementación del FTP se remonta a 1971 cuando se
desarrolló un sistema de transferencia de archivos (descrito en
RFC141) entre equipos del Instituto Tecnológico de
Massachusetts (MIT, Massachusetts Institute of Technology).
Desde entonces, diversos documentos de RFC (petición de
comentarios) han mejorado el protocolo básico, pero las
innovaciones más importantes se llevaron a cabo en julio de
1973.
Actualmente, el protocolo FTP está definido por RFC 959
(Protocolo de transferencia de archivos (FTP) - Especificaciones).
Protocolo FTP
La función del protocolo FTP
El protocolo FTP define la manera en que los datos deben
ser transferidos a través de una red TCP/IP.
El objetivo del protocolo FTP es:
permitir que equipos remotos puedan compartir archivos
permitir la independencia entre los sistemas de archivo del
equipo del cliente y del equipo del servidor
permitir una transferencia de datos eficaz
Protocolo FTP
El modelo FTP
El protocolo FTP está incluido dentro del modelo
cliente-servidor, es decir, un equipo envía órdenes (el
cliente) y el otro espera solicitudes para llevar a cabo
acciones (el servidor).
Durante una conexión FTP, se encuentran abiertos dos
canales de transmisión:
Un canal de comandos (canal de control)
Un canal de datos
Protocolo FTP
SERVIDOR CLIENTE Usuario
Canal de Control
GUI

Comandos
Servidor De respuesta Cliente
PI PI

Servidor Canal de Datos Usuario


De DTP DTP

Sistema de Sistema de
Archivos Archivos
Protocolo FTP
Por lo tanto, el cliente y el servidor cuentan con dos
procesos que permiten la administración de estos dos tipos
de información:
DTP (Proceso de transferencia de datos) es el proceso
encargado de establecer la conexión y de administrar el
canal de datos. El DTP del lado del servidor se denomina
SERVIDOR DE DTP y el DTP del lado del cliente se denomina
USUARIO DE DTP.
PI (Intérprete de protocolo) interpreta el protocolo y
permite que el DTP pueda ser controlado mediante los
comandos recibidos a través del canal de control.
Protocolo FTP
Esto es diferente en el cliente y el servidor:
◦ El SERVIDOR PI es responsable de escuchar los comandos
que provienen de un USUARIO PI a través del canal de
control en un puerto de datos, de establecer la conexión
para el canal de control, de recibir los comandos FTP del
USUARIO PI a través de éste, de responderles y de ejecutar
el SERVIDOR DE DTP.
◦ El USUARIO PI es responsable de establecer la conexión con
el servidor FTP, de enviar los comandos FTP, de recibir
respuestas del SERVIDOR PI y de controlar al USUARIO DE
DTP, si fuera necesario.
Protocolo FTP
Cuando un cliente FTP se conecta con un servidor FTP,
el USUARIO PI inicia la conexión con el servidor de
acuerdo con el protocolo Telnet. El cliente envía
comandos FTP al servidor, el servidor los interpreta,
ejecuta su DTP y después envía una respuesta estándar.
Una vez que se establece la conexión, el servidor PI
proporciona el puerto por el cual se enviarán los datos
al Cliente DTP. El cliente DTP escucha el puerto
especificado para los datos provenientes del servidor.
Protocolo FTP
Es importante tener en cuenta que, debido a que los
puertos de control y de datos son canales separados,
es posible enviar comandos desde un equipo y recibir
datos en otro. Entonces, por ejemplo, es posible
transferir datos entre dos servidores FTP mediante el
paso indirecto por un cliente para enviar instrucciones
de control y la transferencia de información entre dos
procesos del servidor conectados en el puerto
correcto.
Protocolo FTPCLIENTE
Servidor
PI

Servidor
DTP

SERVIDOR SERVIDOR

Canal de Control
Servidor Servidor
PI PI

Servidor Servidor
Canal de Datos
De DTP DTP
Sistema de Sistema de
Archivos Archivos
Protocolo FTP
En esta configuración, el protocolo indica que los
canales de control deben permanecer abiertos durante
la transferencia de datos. De este modo, un servidor
puede detener una transmisión si el canal de control es
interrumpido durante la transmisión.
Protocolo FTP
Los comandos FTP
Toda comunicación que se realice en el canal de control
sigue las recomendaciones del protocolo Telnet. Por lo
tanto, los comandos FTP son cadenas de caracteres Telnet
(en código NVT-ASCII) que finalizan con el código de final de
línea Telnet (es decir, la secuencia <CR>+<LF>, Retorno de
carro seguido del carácter Avance de línea indicado como
<CRLF>).
Si el comando FTP tiene un parámetro, éste se separa del
comando con un espacio (<SP>).
Protocolo FTP
Los comandos FTP hacen posible especificar:
El puerto utilizado
El método de transferencia de datos
La estructura de datos
La naturaleza de la acción que se va a realizar (Recuperar, Enumerar,
Almacenar, etc.)
Existen tres tipos de comandos FTP diferentes:
Comandos de control de acceso
Comandos de parámetros de transferencia
Comandos de servicio FTP
Protocolo FTP Comandos de control de acceso
Comando Descripción
Cadena de caracteres que permite identificar al usuario. La identificación del usuario es necesaria para
USER
establecer la comunicación a través del canal de datos.
Cadena de caracteres que especifica la contraseña del usuario. Este comando debe ser inmediatamente
PASS precedida por el comando USER. El cliente debe decidir si esconder la visualización de este comando
por razones de seguridad.
Cadena de caracteres que especifica la cuenta del usuario. El comando generalmente no es necesario.
ACCT Durante la respuesta que acepta la contraseña, si la respuesta es 230, esta etapa no es necesaria; Si la
respuesta es 332, sí lo es.
Change Working Directory (Cambiar el directorio de trabajo): este comando permite cambiar el
CWD directorio actual. Este comando requiere la ruta de acceso al directorio para que se complete como un
argumento.
Change to Parent Directory (Cambiar al directorio principal): este comando permite regresar al
CDUP directorio principal. Se introdujo para resolver los problemas de denominación del directorio principal
según el sistema (generalmente "..").
SMNT Structure Mount (Montar estructura):

REIN Reinitialize (Reinicializar):


Comando que permite abandonar la sesión actual. Si es necesario, el servidor espera a que finalice la
QUIT
transferencia en progreso y después proporciona una respuesta antes de cerrar la conexión.
Protocolo FTP Comandos de parámetros de transferencia
Comando Descripción
Cadena de caracteres que permite especificar el número de puerto
PORT
utilizado.
Comando que permite indicar al servidor de DTP que permanezca a
la espera de una conexión en un puerto específico elegido
PASV
aleatoriamente entre los puertos disponibles. La respuesta a este
comando es la dirección IP del equipo y el puerto.
Este comando permite especificar el tipo de formato en el cual se
TYPE
enviarán los datos.
Carácter Telnet que especifica la estructura de archivos (F de File
STRU
[Archivo], R de Record [Registro], P de Page [Página]).
Carácter Telnet que especifica el método de transferencia de datos
MODE (S de Stream [Flujo], B de Block [Bloque], C de Compressed
[Comprimido]).
Protocolo FTP Comandos de servicio FTP
Comando Descripción
Este comando (RETRIEVE [RECUPERAR]) le pide al servidor de DTP
RETR
una copia del archivo cuya ruta de acceso se da en los parámetros.
Este comando (store [almacenar]) le pide al servidor de DTP que
acepte los datos enviados por el canal de datos y que los almacene en
STOR
un archivo que lleve el nombre que se da en los parámetros. Si el
archivo no existe, el servidor lo crea; de lo contrario, lo sobrescribe.
Este comando es idéntico al anterior, sólo le pide al servidor que cree
STOU un archivo cuyo nombre sea único. El nombre del archivo se envía en
la respuesta.
Gracias a este comando (append [adjuntar]) los datos enviados se
APPE concatenan en el archivo que lleva el nombre dado en el parámetro si
ya existe; si no es así, se crea.
Este comando (allocate [reservar]) le pide al servidor que reserve un
ALLO espacio de almacenamiento lo suficientemente grande como para
recibir el archivo cuyo nombre se da en el argumento.
Protocolo FTP
Este comando (restart [reiniciar]) permite que se reinicie una transferencia desde
donde se detuvo. Para hacer esto, el comando envía en el parámetro el marcador
REST que representa la posición en el archivo donde la transferencia se había
interrumpido. Después de este comando se debe enviar inmediatamente un
comando de transferencia.
Este comando (rename from [renombrar desde]) permite volver a nombrar un
RNFR archivo. En los parámetros indica el nombre del archivo que se va a renombrar y
debe estar inmediatamente seguido por el comando RNTO.
Este comando (rename from [renombrar a]) permite volver a nombrar un archivo. En
RNTO los parámetros indica el nombre del archivo que se va a renombrar y debe estar
inmediatamente seguido por el comando RNFR.
Este comando (abort [cancelar]) le indica al servidor de DTP que abandone todas
las transferencias asociadas con el comando previo. Si no hay conexión de datos
ABOR
abierta, el servidor de DTP no realiza ninguna acción; de lo contrario, cierra la
conexión. Sin embargo, el canal de control permanece abierto.
Este comando (delete [borrar]) permite que se borre un archivo, cuyo nombre se da
DELE en los parámetros. Este comando es irreversible y la confirmación sólo puede darse
a nivel cliente.
Este comando (remove directory [eliminar directorio]) permite borrar un directorio. El
RMD
nombre del directorio que se va a borrar se indica en los parámetros.
Este comando (make directory [crear directorio]) permite crear un directorio. El
MKD
nombre del directorio que se va a crear se indica en los parámetros.
Protocolo FTP
PWD
Este comando (print working directory [mostrar el directorio actual]) hace posible volver a
enviar la ruta del directorio actual completa.
Este comando permite que se vuelva a enviar la lista de archivos y directorios presentes en
el directorio actual. Esto se envía a través del DTP pasivo. Es posible indicar un nombre de
LIST
directorio en el parámetro de este comando. El servidor de DTP enviará la lista de archivos
del directorio ubicado en el parámetro.
Este comando (name list [lista de nombres]) permite enviar la lista de archivos y
NLST
directorios presentes en el directorio actual.
Este comando (site parameters [parámetros del sistema]) hace que el servidor
SITE
proporcione servicios específicos no definidos en el protocolo FTP.
Este comando (system [sistema]) permite el envío de información acerca del servidor
SYST
remoto.
Este comando (Estado: [estado]) permite transmitir el estado del servidor; por ejemplo,
permite conocer el progreso de una transferencia actual. Este comando acepta una ruta de
STAT
acceso en el argumento y después devuelve la misma información que LISTA pero a través
del canal de control.
Este comando permite conocer todos los comandos que el servidor comprende. La
HELP
información se devuelve por el canal de control.
Este comando (no operations [no operación]) sólo se utiliza para recibir un comando OK
NOOP del servidor. Sólo se puede utilizar para no desconectarse después de un período de
inactividad prolongado.
Protocolo FTP
Las respuestas FTP
Las respuestas FTP garantizan la sincronización entre el cliente y
el servidor FTP. Por lo tanto, por cada comando enviado por el
cliente, el servidor eventualmente llevará a cabo una acción y
sistemáticamente enviará una respuesta.
Las respuestas están compuestas por un código de 3 dígitos que
indica la manera en la que el comando enviado por el cliente ha
sido procesado. Sin embargo, debido a que el código de 3 dígitos
resulta difícil de leer para las personas, está acompañado de
texto (cadena de caracteres Telnet separada del código numérico
por un espacio).
Protocolo FTP
Los códigos de respuesta están compuestos por 3 números,
cuyos significados son los siguientes:
El primer número indica el estatuto de la respuesta (exitosa
o fallida)
El segundo número indica a qué se refiere la respuesta.
El tercer número brinda un significado más específico
(relacionado con cada segundo dígito).
Protocolo FTP Primer número
Dígito Significado Descripción
La acción solicitada está en progreso.
Se debe obtener una segunda
1yz Respuesta positiva preliminar
respuesta antes de enviar un segundo
comando.
La acción solicitada se ha completado
2yz Respuesta de finalización positiva
y puede enviarse un nuevo comando.
La acción solicita está temporalmente
3yz Respuesta intermedia positiva suspendida. Se espera información
adicional del cliente.
La acción solicitada no se ha realizado
debido a que el comando no se ha
4yz Respuesta de finalización negativa
aceptado temporalmente. Se le solicita
al cliente que intente más tarde.
La acción solicitada no se ha realizado
debido a que el comando no ha sido
5yz Respuesta negativa permanente
aceptado. Se le solicita al cliente que
formule una solicitud diferente.
Protocolo FTP Segundo número
Dígito Significado Descripción
La acción tiene un error de sintaxis o sino, es
x0z Sintaxis
un comando que el servidor no comprende.
Ésta es una respuesta que envía información
x1z Información (por ejemplo, una respuesta a un comando
STAT).
x2z Conexiones La respuesta se refiere al canal de datos.
La respuesta se refiere al inicio de sesión
x3z Autenticación y cuentas (USUARIO/CONTRASEÑA) o a la solicitud para
cambiar la cuenta (CPT).
x4z No utilizado por el protocolo FTP.
La respuesta se relaciona con el sistema de
x5z Sistema de archivos
archivos remoto.
Protocolo Telnet
El protocolo Telnet es un protocolo de Internet estándar que
permite conectar terminales y aplicaciones en Internet. El
protocolo proporciona reglas básicas que permiten vincular a
un cliente (sistema compuesto de una pantalla y un teclado)
con un intérprete de comandos (del lado del servidor).
El protocolo Telnet se aplica en una conexión TCP para enviar
datos en formato ASCII codificados en 8 bits, entre los cuales
se encuentran secuencias de verificación Telnet. Por lo tanto,
brinda un sistema de comunicación orientado bidireccional
(semidúplex) codificado en 8 bits y fácil de implementar.
Protocolo Telnet
El protocolo Telnet se basa en tres conceptos básicos:
el paradigma Terminal virtual de red (NVT);
el principio de opciones negociadas;
las reglas de negociación.
Éste es un protocolo base, al que se le aplican otros protocolos del
conjunto TCP/IP (FTP, SMTP, POP3, etc.). Las especificaciones Telnet no
mencionan la autenticación porque Telnet se encuentra totalmente
separado de las aplicaciones que lo utilizan (el protocolo FTP define
una secuencia de autenticación sobre Telnet). Además, el protocolo
Telnet no es un protocolo de transferencia de datos seguro, ya que los
datos que transmite circulan en la red como texto sin codificar (de
manera no cifrada)
Protocolo Telnet
Telnet para conectar un host remoto a un equipo que funciona
como servidor, a este protocolo se le asigna el puerto 23.
Excepto por las opciones asociadas y las reglas de negociación, las
especificaciones del protocolo Telnet son básicas. La transmisión
de datos a través de Telnet consiste sólo en transmitir bytes en el
flujo TCP (el protocolo Telnet especifica que los datos deben
agruparse de manera predeterminada —esto es, si ninguna
opción especifica lo contrario— en un búfer antes de enviarse.
Específicamente, esto significa que de manera predeterminada
los datos se envían línea por línea). Cuando se transmite el byte
255, el byte siguiente debe interpretarse como un comando.
Protocolo Telnet
Por lo tanto, el byte 255 se denomina IAC (Interpretar como
comando). Los comandos se describen más adelante en
este documento.
Las especificaciones básicas del protocolo Telnet se
encuentran disponibles en la RFC (petición de comentarios)
854, mientras que las distintas opciones están descriptas en
la RFC 855 hasta la RFC 861.
Protocolo Telnet
RFC (peticiones de comentarios) relacionadas con Telnet
RFC 854 Especificaciones del protocolo Telnet
RFC 855 Especificaciones de opciones de Telnet
RFC 856 Transmisión binaria en Telnet
RFC 857 Opción Eco de Telnet
RFC 858 Opción de suprimir continuación en Telnet
RFC 859 Opción Estado de Telnet
RFC 860 Opción Marca de tiempo de Telnet
RFC 861 Opción Lista extendida de opciones de Telnet
Protocolo Telnet
La noción de terminal virtual
Cuando surgió Internet, la red (ARPANET) estaba compuesta de
equipos cuyas configuraciones eran muy poco homogéneas
(teclados, juegos de caracteres, resoluciones, longitud de las
líneas visualizadas). Además, las sesiones de los terminales
también tenían su propia manera de controlar el flujo de datos
entrante/saliente.
Por lo tanto, en lugar de crear adaptadores para cada tipo de
terminal, para que pudiera haber interoperabilidad entre estos
sistemas, se decidió desarrollar una interfaz estándar
denominada NVT (Terminal virtual de red).
Protocolo Telnet
Así, se proporcionó una base de comunicación estándar,
compuesta de:
caracteres ASCII de 7 bits, a los cuales se les agrega el código
ASCII extendido;
tres caracteres de control;
cinco caracteres de control opcionales;
un juego de señales de control básicas.
Por lo tanto, el protocolo Telnet consiste en crear una abstracción
del terminal que permita a cualquier host (cliente o servidor)
comunicarse con otro host sin conocer sus características.
Protocolo Telnet
El principio de opciones negociadas
Las especificaciones del protocolo Telnet permiten tener en
cuenta el hecho de que ciertos terminales ofrecen servicios
adicionales, no definidos en las especificaciones básicas
(pero de acuerdo con las especificaciones), para poder
utilizar funciones avanzadas. Estas funcionalidades se
reflejan como opciones. Por lo tanto, el protocolo Telnet
ofrece un sistema de negociaciones de opciones que
permite el uso de funciones avanzadas en forma de
opciones, en ambos lados, al iniciar solicitudes para su
autorización desde el sistema remoto.
Protocolo Telnet
Las opciones de Telnet afectan por separado cada dirección del canal de
datos. Entonces, cada parte puede negociar las opciones, es decir, definir
las opciones que:
desea usar (DO);
se niega a usar (DON'T);
desea que la otra parte utilice (WILL);
se niega a que la otra parte utilice (WON'T).
De esta manera, cada parte puede enviar una solicitud para utilizar una
opción. La otra parte debe responder si acepta o no el uso de la opción.
Cuando la solicitud se refiere a la desactivación de una opción, el
destinatario de la solicitud no debe rechazarla para ser completamente
compatible con el modelo NVT.
Protocolo Telnet Opciones negociadas de Telnet
Solicitud Respuesta Interpretación
El remitente comienza utilizando la opción
WILL
DO El remitente no debe utilizar la opción
WON'T El remitente no debe utilizar la opción
El remitente comienza utilizando la opción,
DO
WILL después de enviar DO
DON'T El remitente no debe utilizar la opción
El remitente indica que ha desactivado la
DON'T WON'T
opción
El remitente indica que el remitente debe
WON'T DON'T
desactivar la opción
Existen 255 códigos de opción. De todas maneras, el protocolo Telnet proporciona un
espacio de dirección que permite describir nuevas opciones.
La RFC (petición de comentarios) 855 explica cómo documentar una nueva opción.
Protocolo Telnet
Las reglas de negociación
Las reglas de negociación para las opciones permiten evitar situaciones
de enrollo automático (por ejemplo, cuando una de las partes envía
solicitudes de negociación de opciones a cada confirmación de la otra
parte).
Las solicitudes sólo deben enviarse en el momento de un cambio de
modo.
Cuando una de las partes recibe la solicitud de cambio de modo, sólo
debe confirmar su recepción si todavía no se encuentra en el modo
apropiado.
Sólo debe insertarse una solicitud en el flujo de datos en el lugar en el
que surte efecto.
Protocolo Telnet
Caracteres de control de salida
Los siguientes caracteres son comandos que permiten controlar
la visualización del terminal virtual de red:
Comandos de control para la visualización:
Número Código Nombre Significado
Este comando permite enviar datos al host
remoto sin que se interpreten (en particular
0 NULL Nulo
para indicar que el host local todavía esta en
línea).
Este comando permite ubicar el cursor en la
1 LF Avance de línea línea siguiente, en la misma posición
horizontal.
Este comando permite ubicar el cursor en el
2 CR Retorno de carro
extremo izquierdo de la línea actual.

Así, se define el comando CRLF, compuesto de dos comandos CR y LF uno


después del otro (en cualquier orden). Esto permite ubicar el cursor en el
extremo izquierdo de la línea siguiente.
Protocolo Telnet
Caracteres de control opcionales
Los caracteres anteriores son los únicos (entre los 128
caracteres del código ASCII básico y los 128 caracteres del
código ASCII extendido) que tienen un significado particular
para el terminal virtual de red. Los siguientes caracteres
pueden tener un significado en un terminal virtual de red,
pero no se utilizan necesariamente.
Protocolo Telnet Comandos de control para la visualización
Número Código Nombre Significado
Este comando permite enviar una señal visual
7 BEL Campana
o sonora sin cambiar la posición del cursor.
Este comando permite cambiar la posición del
8 BS Retroceso
cursor a su posición anterior.
Este comando permite que la posición del
9 HT Tabulación horizontal cursor pase a la siguiente tabulación a la
derecha.
Este comando permite que la posición del
11 VT Tabulación vertical cursor pase a la siguiente tabulación de la
línea siguiente.
Este comando permite que la posición del
12 FF Avance de página cursor pase al final de la siguiente página
mientras conserva su posición horizontal.
Protocolo Telnet
Caracteres de control de sesión
Los siguientes caracteres son comandos que permiten controlar la
sesión Telnet. Para que puedan interpretarse como tal, estos
comandos deben estar precedidos por el carácter de escape IAC
(Interpretar como comando). Si estos bytes se transmiten sin estar
precedidos por el carácter IAC, se procesarán como caracteres
simples. Para transmitir el carácter IAC, este mismo debe estar
precedido por un carácter de escape. En otras palabras, debe estar
duplicado.
Los comandos relacionados con una negociación de opciones deben
estar seguidos de un byte que especifique la opción. Estos comandos
permiten interrumpir señales, eliminar información en el caché del
terminal, etc.
Protocolo Telnet Caracteres de control de sesión
Número Código Nombre Significado

240 SE Fin de negociación de opciones


Este comando permite enviar datos al host remoto sin
241 NOP Sin operación que se interpreten (en particular para indicar que el
host local todavía esta en línea).
Permite vaciar todos los búferes entre el terminal
virtual de red y el host remoto. Se relaciona con la
242 DM Marca de datos pulsación del botón de sincronización (Synch) NVT y
debe vincularse con una indicación de notificación
urgente TCP.
243 BRK Interrupción Pausa de caracteres del terminal virtual.
Este comando permite suspender, interrumpir o
244 IP Interrumpir proceso
abandonar el proceso remoto.
Este comando permite suspender, interrumpir o
245 AO Abortar salida
abandonar la visualización del proceso remoto.
Este comando permite controlar que el sistema remoto
246 AYT ¿Estás ahí?
todavía esté "vivo".
Protocolo Telnet
247 EC Borrar carácter
Este comando permite borrar el carácter
anterior.
Este comando permite borrar la línea
248 EL Borrar línea
anterior.
Este comando permite revertir el control,
249 GA Adelante
para conexiones semidúplex
Este comando indica que los datos que
250 SB SB siguen son una negociación de la opción
anterior.
251 WILL Código de opción

252 WON'T Código de opción

253 DO Código de opción

254 DON'T Código de opción


Este comando permite interpretar el byte
siguiente como un comando. El comando
255 IAC Interpretar como comando
IAC permite ir más allá de los comandos
básicos.
Protocolo HTTP
Introducción al protocolo HTTP
Desde 1990, el protocolo HTTP (Protocolo de transferencia de
hipertexto) es el protocolo más utilizado en Internet. La versión 0.9
sólo tenía la finalidad de transferir los datos a través de Internet (en
particular páginas Web escritas en HTML). La versión 1.0 del protocolo
(la más utilizada) permite la transferencia de mensajes con
encabezados que describen el contenido de los mensajes mediante la
codificación MIME.
El propósito del protocolo HTTP es permitir la transferencia de
archivos (principalmente, en formato HTML). entre un navegador (el
cliente) y un servidor web (denominado, entre otros, httpd en equipos
UNIX) localizado mediante una cadena de caracteres denominada
dirección URL.
Protocolo HTTP
Comunicación entre el navegador y el servidor
La comunicación entre el navegador y el servidor se
lleva a cabo en dos etapas:
El navegador realiza una solicitud HTTP
El servidor procesa la solicitud y después envía una
respuesta HTTP
Protocolo HTTP
Protocolos TCP/IP

Ubicación de
archivo
Envío de
encabezados HTTP

Decodificación
Solicitudes

Envío de encabezados de
respuesta HTTP Creación de
encabezados de
Cliente Servidor WEB formato
(Navegador)
Protocolo HTTP
En realidad, la comunicación se realiza en más etapas si
se considera el procesamiento de la solicitud en el
servidor. Dado que sólo nos ocupamos del protocolo
HTTP, no se explicará la parte del procesamiento en el
servidor en esta sección del artículo. Si este tema les
interesa, puede consultar el articulo sobre el
tratamiento de CGI.
Protocolo HTTP
Solicitud HTTP
Una solicitud HTTP es un conjunto de líneas que el navegador
envía al servidor. Incluye:
Una línea de solicitud: es una línea que especifica el tipo de
documento solicitado, el método que se aplicará y la versión
del protocolo utilizada. La línea está formada por tres
elementos que deben estar separados por un espacio:
◦ el método
◦ la dirección URL
◦ la versión del protocolo utilizada por el cliente (por lo
general, HTTP/1.0)
Protocolo HTTP
Los campos del encabezado de solicitud: es un conjunto de
líneas opcionales que permiten aportar información
adicional sobre la solicitud y/o el cliente (navegador, sistema
operativo, etc.). Cada una de estas líneas está formada por
un nombre que describe el tipo de encabezado, seguido de
dos puntos (:) y el valor del encabezado.
El cuerpo de la solicitud: es un conjunto de líneas opcionales
que deben estar separadas de las líneas precedentes por una
línea en blanco y, por ejemplo, permiten que se envíen datos
por un comando POST durante la transmisión de datos al
servidor utilizando un formulario.
Protocolo HTTP
Por lo tanto, una solicitud HTTP posee la siguiente sintaxis
(<crlf> significa retorno de carro y avance de línea):
MÉTODO VERSIÓN URL<crlf>ENCABEZADO: Valor<crlf>. . .
ENCABEZADO: Valor<crlf>Línea en blanco <crlf>CUERPO DE
LA SOLICITUD
A continuación se encuentra un ejemplo de una solicitud
HTTP:
GET http://es.kioskea.net HTTP/1.0 Accept : Text/html If-
Modified-Since : Saturday, 15-January-2000 14:37:11 GMT
User-Agent : Mozilla/4.0 (compatible; MSIE 5.0; Windows 95)
Protocolo HTTP
Comandos
Comando Descripción
GET Solicita el recurso ubicado en la URL especificada

Solicita el encabezado del recurso ubicado en la URL


HEAD
especificada

POST Envía datos al programa ubicado en la URL especificada


PUT Envía datos a la URL especificada
DELETE Borra el recurso ubicado en la URL especificada
Encabezados
Nombre del
Descripción
encabezado
Tipo de contenido aceptado por el navegador (por
Accept
ejemplo, texto/html). Consulte Tipos de MIME
Accept-Charset Juego de caracteres que el navegador espera
Accept-Encoding Codificación de datos que el navegador acepta
Idioma que el navegador espera (de forma
Accept-Language
predeterminada, inglés)
Authorization Identificación del navegador en el servidor
Content-Encoding Tipo de codificación para el cuerpo de la solicitud
Content-Language Tipo de idioma en el cuerpo de la solicitud
Content-Length Extensión del cuerpo de la solicitud
Tipo de contenido del cuerpo de la solicitud (por ejemplo,
Content-Type
texto/html). Consulte Tipos de MIME
Date Fecha en que comienza la transferencia de datos
Utilizado por equipos intermediarios entre el navegador y el
Forwarded
servidor
From Permite especificar la dirección de correo electrónico del cliente
Permite especificar que debe enviarse el documento si ha sido
From
modificado desde una fecha en particular
Link Vínculo entre dos direcciones URL
Orig-URL Dirección URL donde se originó la solicitud

Referer Dirección URL desde la cual se realizó la solicitud


Cadena con información sobre el cliente, por ejemplo, el nombre
User-Agent
y la versión del navegador y el sistema operativo
Respuesta HTTP
Una respuesta HTTP es un conjunto de líneas que el servidor envía
al navegador. Está constituida por: Incluye:
Una línea de estado: es una línea que especifica la versión del
protocolo utilizada y el estado de la solicitud en proceso mediante
un texto explicativo y un código. La línea está compuesta por tres
elementos que deben estar separados por un espacio: La línea está
formada por tres elementos que deben estar separados por un
espacio:
◦ la versión del protocolo utilizada
◦ el código de estado
◦ el significado del código
Los campos del encabezado de respuesta: es un conjunto
de líneas opcionales que permiten aportar información
adicional sobre la respuesta y/o el servidor. Cada una de
estas líneas está compuesta por un nombre que califica el
tipo de encabezado, seguido por dos puntos (:) y por el
valor del encabezado Cada una de estas líneas está formada
por un nombre que describe el tipo de encabezado, seguido
de dos puntos (:) y el valor del encabezado.
El cuerpo de la respuesta: contiene el documento solicitado
Por lo tanto, una respuesta HTTP posee la siguiente sintaxis
(<crlf> significa retorno de carro y avance de línea):
VERSIÓN-HTTP CÓDIGO EXPLICACIÓN <crlf>ENCABEZADO:
Valor<crlf>. . . ENCABEZADO: Valor<crlf>Línea en blanco
<crlf>CUERPO DE LA RESPUESTA A continuación se
encuentra un ejemplo de una respuesta HTTP:
HTTP/1.0 200 OK Date: Sat, 15 Jan 2000 14:37:12 GMT
Server : Microsoft-IIS/2.0 Content-Type : text/HTML
Content-Length : 1245 Last-Modified : Fri, 14 Jan 2000
08:25:13 GMT
Encabezados de respuesta
Nombre del encabezado Descripción
Content-Encoding Tipo de codificación para el cuerpo de la respuesta
Content-Language Tipo de idioma en el cuerpo de la respuesta
Content-Length Extensión del cuerpo de la respuesta
Tipo de contenido del cuerpo de la respuesta (por ejemplo,
Content-Type
texto/html). Consulte Tipos de MIME
Date Fecha en que comienza la transferencia de datos
Expires Fecha límite de uso de los datos
Utilizado por equipos intermediarios entre el navegador y el
Forwarded
servidor
Redireccionamiento a una nueva dirección URL asociada con el
Location
documento
Server Características del servidor que envió la respuesta
Los códigos de respuesta
Son los códigos que se ven cuando el navegador no puede
mostrar la página solicitada. El código de respuesta está
formado por tres dígitos: el primero indica el estado y los
dos siguientes explican la naturaleza exacta del error.
Código Mensaje Descripción
Mensaje de
10x Estos códigos no se utilizan en la versión 1.0 del protocolo
información
Estos códigos indican la correcta ejecución de la
20x Éxito
transacción

200 OK La solicitud se llevó a cabo de manera correcta

Sigue a un comando POST e indica el éxito, la parte restante


201 CREATED del cuerpo indica la dirección URL donde se ubicará el
documento creado recientemente.
La solicitud ha sido aceptada, pero el procedimiento que sigue
202 ACCEPTED
no se ha llevado a cabo
PARTIAL Cuando se recibe este código en respuesta a un comando de
203
INFORMATION GET indica que la respuesta no está completa.
El servidor ha recibido la solicitud, pero no hay información de
204 NO RESPONSE
respuesta
El servidor le indica al navegador que borre el contenido en los
205 RESET CONTENT
campos de un formulario
Es una respuesta a una solicitud que consiste en el
206 PARTIAL CONTENT encabezado range. El servidor debe indicar el encabezado
content-Range
Código Mensaje Descripción
Estos códigos indican que el recurso ya no se
30x Redirección
encuentra en la ubicación especificada
Los datos solicitados han sido transferidos a una
301 MOVED
nueva dirección
Los datos solicitados se encuentran en una
302 FOUND nueva dirección URL, pero, no obstante, pueden
haber sido trasladados
Significa que el cliente debe intentarlo con una
303 METHOD nueva dirección; es preferible que intente con
otro método en vez de GET

Si el cliente llevó a cabo un comando GET


condicional (con la solicitud relativa a si el
304 NOT MODIFIED documento ha sido modificado desde la última
vez) y el documento no ha sido modificado, este
código se envía como respuesta.
Código Mensaje Descripción
Error debido al Estos códigos indican que la solicitud es
40x
cliente incorrecta
La sintaxis de la solicitud se encuentra formulada
400 BAD REQUEST
de manera errónea o es imposible de responder
Los parámetros del mensaje aportan las
especificaciones de formularios de autorización
401 UNAUTHORIZED
que se admiten. El cliente debe reformular la
solicitud con los datos de autorización correctos
El cliente debe reformular la solicitud con los
402 PAYMENT REQUIRED
datos de pago correctos
403 FORBIDDEN El acceso al recurso simplemente se deniega
Un clásico. El servidor no halló nada en la
404 NOT FOUND dirección especificada. Se ha abandonado sin
dejar una dirección para redireccionar... :)
Código Mensaje Descripción
Estos códigos indican que existe un error interno en
50x Error debido al servidor
el servidor
El servidor encontró una condición inesperada que le
500 INTERNAL ERROR impide seguir con la solicitud (una de esas cosas que les
suceden a los servidores...)
El servidor no admite el servicio solicitado (no puede
501 NOT IMPLEMENTED
saberlo todo...)
El servidor que actúa como una puerta de enlace o
502 BAD GATEWAY proxy ha recibido una respuesta no válida del servidor al
que intenta acceder

El servidor no puede responder en ese momento debido


a que se encuentra congestionado (todas las líneas de
503 SERVICE UNAVAILABLE
comunicación se encuentran congestionadas, inténtelo
de nuevo más adelante)

La respuesta del servidor ha llevado demasiado tiempo


504 GATEWAY TIMEOUT en relación al tiempo de espera que la puerta de enlace
podía admitir (excedió el tiempo asignado...)
Correo Electrónico
Introducción al correo electrónico
El correo electrónico es considerado el servicio más
utilizado de Internet. Por lo tanto, la serie de
protocolos TCP/IP ofrece una gama de protocolos que
permiten una fácil administración del enrutamiento del
correo electrónico a través de la red.
Protocolo SMTP
El protocolo SMTP (Protocolo simple de transferencia de correo)
es el protocolo estándar que permite la transferencia de correo
de un servidor a otro mediante una conexión punto a punto.
Éste es un protocolo que funciona en línea, encapsulado en una
trama TCP/IP. El correo se envía directamente al servidor de
correo del destinatario. El protocolo SMTP funciona con
comandos de textos enviados al servidor SMTP (al puerto 25 de
manera predeterminada). A cada comando enviado por el cliente
(validado por la cadena de caracteres ASCII CR/LF, que equivale a
presionar la tecla Enter) le sigue una respuesta del servidor SMTP
compuesta por un número y un mensaje descriptivo.
Protocolo SMTP
A continuación se describe una situación en la que se realiza una
solicitud para enviar correos a un servidor SMTP:
Al abrir la sesión SMTP, el primer comando que se envía es el
comando HELO seguido por un espacio (escrito <SP>) y el nombre
de dominio de su equipo (para decir "hola, soy este equipo"), y
después validado por Enter (escrito <CRLF>). Desde abril de 2001,
las especificaciones para el protocolo SMTP, definidas en RFC
2821, indican que el comando HELO sea remplazado por el
comando EHLO.
El segundo comando es "MAIL FROM:" seguido de la dirección de
correo electrónico del remitente. Si se acepta el comando, el
servidor responde con un mensaje "250 OK".
Protocolo SMTP
El siguiente comando es "RCPT TO:" seguido de la dirección
de correo electrónico del destinatario. Si se acepta el
comando, el servidor responde con un mensaje "250 OK".
El comando DATA es la tercera etapa para enviar un correo
electrónico. Anuncia el comienzo del cuerpo del mensaje. Si
se acepta el comando, el servidor responde con un mensaje
intermediario numerado 354 que indica que puede iniciarse
el envío del cuerpo del mensaje y considera el conjunto de
líneas siguientes hasta el final del mensaje indicado con una
línea que contiene sólo un punto.
Protocolo SMTP
El cuerpo del correo electrónico eventualmente contenga
algunos de los siguientes encabezados:
◦ Date (Fecha)
◦ Subject (Asunto)
◦ Cc
◦ Bcc (Cco)
◦ From (De)
Si se acepta el comando, el servidor responde con un
mensaje "250 OK".
Protocolo SMTP
A continuación se describe un ejemplo de transacción entre un
cliente (C) y un servidor SMTP (S):
S: 220 smtp.commentcamarche.net SMTP Ready C: EHLO
machine1.commentcamarche.net S: 250
smtp.commentcamarche.net C: MAIL
FROM:<webmaster@commentcamarche.net> S: 250 OK C: RCPT
TO:<meandus@meandus.net> S: 250 C: RCPT
TO:<tittom@tittom.fr> S: 550 No such user here C: DATA S: 354
Start mail input; end with <CRLF>.<CRLF> C: Subject: Hola C: Hola
Meandus: C: ¿Cómo andan tus cosas? C: C: ¡Nos vemos pronto! C:
<CRLF>.<CRLF> S: 250 C: QUIT R: 221
smtp.commentcamarche.net closing transmission
Protocolo SMTP
Las especificaciones básicas del protocolo SMTP indican que todos los caracteres
enviados están codificados mediante el código ASCII de 7 bits y que el 8 º bit sea
explícitamente cero. Por lo tanto, para enviar caracteres acentuados es necesario
recurrir a algoritmos que se encuentren dentro de las especificaciones MIME:
base64 para archivos adjuntos
quoted-printable (abreviado QP) para caracteres especiales utilizados en el
cuerpo del mensaje
Por lo tanto, es posible enviar un correo electrónico utilizando un simple telnet al
puerto 25 del servidor SMTP:
telnet smtp.commentcamarche.net 25
(El servidor indicado anteriormente no existe. Intente reemplazar
commentcamarche.net por el nombre de dominio de su proveedor de servicios de
Internet.
Protocolo SMTP
A continuación se brinda un resumen de los principales comandos
SMTP: Comando Ejemplo Descripción
Identificación que utiliza la
dirección IP o el nombre de
HELO (ahora EHLO) EHLO 193.56.47.125
dominio del equipo
remitente
MAIL FROM: Identificación de la dirección
MAIL FROM:
originator@domain.com del remitente
Identificación de la dirección
RCPT TO: RCPT TO: recipient@domain.com
del destinatario
DATA DATA message Cuerpo del correo electrónico
QUIT QUIT Salida del servidor SMTP
Lista de comandos SMTP que
HELP HELP
el servidor admite
Protocolo POP
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.
Existen dos versiones principales de este protocolo, POP2 y
POP3, a los que se le asignan los puertos 109 y 110
respectivamente, y que funcionan utilizando comandos de
texto radicalmente diferentes.
Protocolo POP
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.
Protocolo POP
A continuación se brinda un resumen de los principales
comandos POP2: Comandos POP2

Comando Descripción
HELLO Identificación que utiliza la dirección IP del equipo remitente
FOLDER Nombre de la bandeja de entrada que se va a consultar
READ Número del mensaje que se va a leer
RETRIEVE Número del mensaje que se va a recoger
SAVE Número del mensaje que se va a guardar
DELETE Número del mensaje que se va a eliminar
QUIT Salida del servidor POP2
Protocolo POP
A continuación se brinda un resumen de los principales
comandos POP3 Comandos POP3

Comando Descripción
Este comando permite la autenticación. Debe estar seguido del nombre de
USER identification usuario, es decir, una cadena de caracteres que identifique al usuario en el
servidor. El comando USER debe preceder al comando PASS.
El comando PASS permite especificar la contraseña del usuario cuyo nombre
PASS password
ha sido especificado por un comando USER previo.
STAT Información acerca de los mensajes del servidor

RETR Número del mensaje que se va a recoger

DELE Número del mensaje que se va a eliminar

LIST [msg] Número del mensaje que se va a mostrar


Protocolo POP
NOOP Permite mantener la conexión abierta en caso de inactividad
Comando que muestra n líneas del mensaje, cuyo número se da en el
argumento. En el caso de una respuesta positiva del servidor, éste enviará de
TOP <messageID> <n>
vuelta los encabezados del mensaje, después una línea en blanco y
finalmente las primeras n líneas del mensaje.
Solicitud al servidor para que envíe una línea que contenga información
sobre el mensaje que eventualmente se dará en el argumento. Esta línea
contiene una cadena de caracteres denominada unique identifier listing (lista
UIDL [msg] de identificadores únicos) que permite identificar de manera única el
mensaje en el servidor, independientemente de la sesión. El argumento
opcional es un número relacionado con un mensaje existente en el servidor
POP, es decir, un mensaje que no se ha borrado.
El comando QUIT solicita la salida del servidor POP3. Lleva a la eliminación
QUIT de todos los mensajes marcados como eliminados y envía el estado de esta
acción.
Protocolo POP
Por lo tanto, 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). En realidad, según RFC 1939, es posible cifrar
la contraseña utilizando un algoritmo MD5 y beneficiarse de una
autenticación segura. Sin embargo, debido a que este comando
es opcional, pocos servidores lo implementan. Además, el
protocolo POP3 bloquea las bandejas de entrada durante el
acceso, lo que significa que es imposible que dos usuarios
accedan de manera simultánea a la misma bandeja de entrada.
Protocolo POP
De la misma manera que es posible enviar un correo
electrónico utilizando telnet, también es posible acceder al
correo entrante utilizando un simple telnet por el puerto del
servidor POP (110 de manera predeterminada):
telnet mail.commentcamarche.net 110
(El servidor indicado anteriormente no existe. Intente
reemplazar commentcamarche.net por el nombre de
dominio de su proveedor de servicios de Internet.)
Protocolo POP
S: +OK mail.commentcamarche.net POP3 service S:
(Netscape Messaging Server 4.15 Patch 6 (built Mar 31
2001)) C: USER jeff S: +OK Name is a valid mailbox C: PASS
password S: +OK Maildrop ready C: STAT S: +OK 2 0 C: TOP 1
5 S: Subject: Hola S: Hola Meandus: S: ¿Cómo andan tus
cosas? S: S: ¡Nos vemos pronto! C: QUIT S: +OK
La visualización de datos que se obtiene depende del cliente
Telnet que esté utilizando. Según su cliente Telnet, puede
ser necesario activar la opción echo local (eco local).
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
FIN DEL TEMA

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy