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.
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
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)
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.).
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.
Comandos
GET
Solicita el recurso ubicado
en la URL especificada
HEAD
Solicita el
encabezado del
recurso ubicado en la
URL 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
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
s 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)
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).
Permite que dos máquinas que están
comunicadas controlen el estado de la
transmisión.
El objetivo de TCP
Los router solo tienen que mandar los datos en DATAGRAMAS
Se puede hacer una conexión sencilla entre CLIENTE Y SERVIDOR
Se permite sincronizar las transmisiones y garantizar su recepción.
Capacidad de controlar la velocidad de los datos usando mensajes de tamaño variable.
La función multiplexión
TCP posibilita la realización de
una tarea importante:
multiplexar/demultiplexar; es
decir transmitir datos desde
diversas aplicaciones en la
misma línea o, en otras
palabras, ordenar la
información que llega en
paralelo.
Confiabilidad de las transferencias
El protocolo TCP permite
garantizar la transferencia de
datos confiable, a pesar de que
usa el protocolo IP, que no
incluye ningún monitoreo de la
entrega de datagramas.
De hecho, el protocolo
TCP tiene un sistema
de acuse de recibo
que permite al cliente
y al servidor
garantizar la
recepción mutua de
datos.
Además, usando un
temporizador que
comienza con la recepción
del segmento en el nivel
de la máquina
originadora, el segmento
se reenvía cuando ha
transcurrido el tiempo
permitido, ya que en este
caso la máquina
originadora considera que
el segmento está perdido.
Cómo establecer una conexión
La conexión establecida entre las
dos aplicaciones a menudo se realiza
siguiendo el siguiente esquema:
Los puertos TCP deben estar abiertos.
La aplicación en el servidor es pasiva, es
decir, que la aplicación escucha y espera
una conexión.
La aplicación del cliente realiza un
pedido de conexión al servidor en el
lugar donde la aplicación es abierta
pasiva. La aplicación del cliente se
considera "abierta activa".
Las dos máquinas deben
sincronizar sus secuencias
usando un mecanismo
comúnmente llamado
negociación en tres pasos que
también se encuentra durante
el cierre de la sesión.
Método de ventana corrediza
En muchos casos, es posible limitar la
cantidad de acuses de recibo con el fin de
aliviar el tráfico en la red. Esto se logra
fijando un número de secuencia después
del cual se requiera un acuse de recibo.
Este número en realidad se guarda en el
campo ventana del encabezado TCP/IP.
SMTP
Simple Mail Transfer Protocol (SMTP) o Protocolo
Simple de Transferencia de Correo
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.
Historia del Protocolo SMTP
En 1982 se diseñó el primer Sistema para intercambiar
correos electrónicos en ARPANET, definido en los Request
for comments RFC 821 y RFC 822. La primera de ellas define
este protocolo y la segunda el formato del mensaje que este
protocolo debía transportar.
Con el tiempo se ha convertido en uno de los protocolos
más usados en internet. Para adaptarse a las nuevas
necesidades surgidas por el crecimiento y popularidad de
internet se han hecho varias ampliaciones a este protocolo,
como por ejemplo enviar texto con formato.
Funcionamiento del Protocolo SMTP
Cuando un cliente establece una conexión con el servidor
SMTP, espera a que éste envíe un mensaje "220 Service
ready" o "421 Service non available". Se envía un HELO
desde el cliente y con ello el servidor se identifica, esto
puede usarse para comprobar si se conectó con el
servidor SMTP correcto.
El cliente comienza la transacción
del correo con la orden MAIL
FROM, como argumento de esta
orden se puede pasar la dirección
de correo al que el servidor
notificará cualquier fallo en el
envío del correo (Por ejemplo,
MAIL FROM:<fuentearrobahost0>).
Luego si el servidor comprueba
que el origen es valido, el servidor
responde "250 OK".
Pasos para realizar la configuración
1.- Doble click a su Programa de Correo(Outlook Express).
2.-Vaya a Herramientas(Tools)-->Cuentas(Accounts)-->Correo(Mail).
3.- Elimine la cuenta creada de Terra.
4.- De un click en Agregar -->Correo
5.- Ingrese su nombre que aparezca en el correo y de un click en siguiente.
6- Ingrese su casilla de correo electrónico buzónarrobanombre y de un click en siguiente.
7- Aparecerá "Mi Servidor de Correo Entrante es : POP3"
8- En la parte inferior dice “Correo Entrante(POP3)”
ingrese con letras minúsculas: pop3.terra.cl; y en el
“Correo Saliente(SMTP)” ingrese con letras minúsculas:
smtp.terra.cl, y de un click en siguiente.
9.- Aparecerá en “Nombre de cuenta” su correo usuarioarrobaterra.cl y abajo ingrese
la contraseña que dio a su correo y de un click en siguiente.
10.- Ahí aparece abajo Finalizar; entonces de un click en "Finalizar".
11.- Aparecerá una ventana de Cuentas de internet, en la
pestaña de correo, seleccione la cuenta que creó y de un
click sobre el botón Propiedades (Properties).
12.- De un click sobre la pestaña Servidores (Servers).
13.- Marque la opción: Mi servidor requiere autenticación (My server requires authentication).
14.- Dar un click sobre el botón: Configuración.
15.- Marcar la opción: Usar la misma configuración que el servidor de correo entrante.
16.- De un click sobre el botón Aceptar (OK), hasta que vuelva a la ventana de “Cuentas de internet” y de un clic en
cerrar.
17.- Por ultimo cierre si programa de correo reinicie su PC.
Flujo de transacción de correo de SMTP
Aunque los comandos y réplicas de correo están definidas rígidamente, el
intercambio se puede seguir en Figura - Flujo de datos normal de SMTP. Todos los
comandos, réplicas o datos intercambiados son líneas de texto, delimitadas por
un CRLF. Todas las réplicas tienen un código numérico el comienzo de la línea.
El emisor SMTP establece una
conexión TCP con el SMTP de destino
y espera a que el servidor envíe un
mensaje "220 Service ready" o "421
Service not available" cuando el
destinatario es temporalmente
incapaz de responder.
Se envía un HELO (abreviatura de "hello"), con el que el
receptor se identificará devolviendo su nombre de
dominio. El SMTP emisor puede usarlo para verificar si
contactó con el SMTP de destino correcto.
Si el emisor SMTP soporta las extensiones de SMTP definidas en el RFC 1651, puede
sustituir el comando HELO por EHLO. Un receptor SMTP que no soporte las
extensiones responderá con un mensaje "500 Syntax error, command unrecognized".
El emisor SMTP debería intentarlo de nuevo con HELO, o si no puede retransmitir el
mensaje sin extensiones, enviar un mensaje QUIT.
Establecimiento de la conexión
Un emisor SMTP intentará establecer una conexión TCP con un
computador destino cuando tiene uno o más mensajes de correo para
entregar a ese computador siguiendo los siguientes pasos:
1º El emisor (parte activa) abre una conexión TCP con el receptor.
2º Una vez establecida la conexión, el receptor se identifica a sí mismo con la orden "220 Service
Ready" que indica que el servicio está preparado.
3º Después el emisor es el que se
identifica a sí mismo con la orden
"HELO".
4º Por último el receptor acepta la identificación del emisor
con la orden "250 OK" que indica que la acción de correo
solicitada es correcta.
Transferencia de correo
En estos momentos la conexión ya se ha establecido, el emisor SMTP puede enviar uno o más mensajes al receptor
SMTP.
Protocolo para enviar mensajes:
1º Una orden "MAIL" identifica al que originó el mensaje. Esta orden da el camino inverso que puede
utilizarse para informar de errores. 2º Una o más órdenes RCPT identifican los destinos de este mensaje.
La orden RCPT identifica un destino individual de los datos del correo. Usando esta orden se pueden
usar destinos múltiples. 3º Una orden DATA transfiere el texto del mensaje.
Cierre de la conexión
El emisor SMTP cierra la conexión en dos pasos: 1º El emisor envía una orden "QUIT" y espera una
respuesta. 2º Se inicia la operación de cierre TCP para la conexión TCP.
UDP
Caracteristicas
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).
significado de los
diferentes Campos
del UDP
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.
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.
FTP
Introducción a FTP
El protocolo FTP 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
RFC 141) entre equipos del Instituto
Tecnológico de Massachusetts (MIT,
Massachusetts Institute of Technology).
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
el intercambio de archivos entre
equipos remotos, de una manera eficaz
e independientemente del sistema de
archivos utilizado en cada equipo.
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).
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.
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 este, 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.
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, este se separa del
comando con un espacio (<SP>).
Existen tres tipos de comandos FTP diferentes:
comandos de control de acceso, comandos de
parámetros de transferencia y comandos de
servicio FTP.
Comandos de control de acceso
USER
PASS
ACCT
CWD
CDUP
SMNT
REIN
QUIT
Comandos de parámetros de transferencia
PORT
PASV
TYPE
STRU
MODE
Comandos de servicio FTP
RETR
STOR
STOU
APPE
ALLO
REST
RNFR
RNTO
ABOR
DELE
RMD
MKD
PWD
LIST
NLST
SITE
SYST
STAT
HELP
NOOP
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.
DHCP
Qué es DHCP
DHCP (Dynamic Host
Configuration Protocol, protocolo
de configuración de host
dinámico) es un protocolo que
permite que un equipo conectado
a una red pueda obtener su
configuración (principalmente, su
configuración de red) en forma
dinámica (es decir, sin una
intervención especial).
El protocolo DHCP sirve
principalmente para distribuir
direcciones IP en una red, pero desde
sus inicios se diseñó como un
complemento del protocolo BOOTP
(Protocolo Bootstrap), que se utiliza,
por ejemplo, cuando se instala un
equipo a través de una red (BOOTP se
usa junto con un servidor TFTP donde
el cliente encontrará los archivos que
se cargarán y copiarán en el disco
duro).
Cómo funciona el protocolo DHCP
Primero, se necesita un servidor
DHCP que distribuya las direcciones
IP. Este equipo será la base para
todas las solicitudes DHCP por lo
cual debe tener una dirección IP fija.
Por lo tanto, en una red puede
tener solo un equipo con una
dirección IP fija: el servidor DHCP.
El sistema básico de comunicación es
BOOTP (con la trama UDP). Cuando un
equipo se inicia no tiene información
sobre su configuración de red y no hay
nada especial que el usuario deba
hacer para obtener una dirección IP.
Para esto, la técnica que se usa es la
transmisión: para encontrar y
comunicarse con un servidor DHCP,
el equipo simplemente enviará un
paquete especial de transmisión
(transmisión en 255.255.255.255 con
información adicional como el tipo
de solicitud, los puertos de
conexión, etc.) a través de la red
local.
Los Diferentes tipos de paquetes
que se utilizan Cliente-Servidor
DHPC son
DHCPOFFER (respuesta del servidor a un
paquete DHCPDISCOVER, que contiene los
parámetros iniciales)
DHCPREQUEST (solicitudes varias del
cliente, por ejemplo, para extender su
concesión)
DHCPACK (respuesta del
servidor que contiene los
parámetros y la dirección IP
del cliente)
DHCPNAK (respuesta del servidor para
indicarle al cliente que su concesión ha
vencido o si el cliente anuncia una
configuración de red errónea)
DHCPDECLINE (el cliente le anuncia
al servidor que la dirección ya está
en uso)
DHCPRELEASE (el cliente
libera su dirección IP)
DHCPINFORM (el cliente solicita
parámetros locales, ya tiene su
dirección IP)
Qué es una 'concesión' en DHCP
Para optimizar los recursos de red, las
direcciones IP se asignan con una fecha de
inicio y de vencimiento para su validez. Esto es
lo que se conoce como "concesión". Un cliente
que detecta que su concesión está a punto de
vencer, puede solicitarle al servidor una
extensión de la misma por medio de un
DHCPREQUEST.
Cómo conseguir un servidor DHCP
Internet Software Consortium desarrolla
servidores DHCP en el mundo del software
libre. Estos son los servidores DHCP más
utilizados y los que mejor cumplen con el
estándar RFC. Puesto que no es sencillo
desarrollar un servidor DHCP, los
servidores que ofrecen son actualizados
regularmente.
La última versión a la fecha es la 3.0,
pero aún está en versión beta. Una de
las principales innovaciones en esta
versión es la posibilidad de actualizar en
forma dinámica un DNS de acuerdo a las
direcciones IP suministradas por el
servidor DHCP. Para mayor información,
el primer proyecto sobre DNS dinámicos
tiene fecha de marzo de 1996.