SlideShare una empresa de Scribd logo
1 de 129
Descargar para leer sin conexión
LOGO
Protocolos de
internet
Definición
 La definición del término protocolo es importantísimo.
En la vida real, los protocolos son un conjunto de
hábitos y procedimientos utilizados en las relaciones
interpersonales. Cuando es usado bajo el contexto de
redes de comunicación el termino protocolo tiene un
significado similar pero a un nivel mas especifico, esto
es, un protocolo de red es un conjunto de reglas,
secuencias, formatos de mensajes y procedimientos
bien detallados que posibilitan la transferencia de
datos entre dos o mas sistemas de computación.
 De manera similar, un protocolo de red
(incluyendo todos los protocolos de internet) es el
termino utilizado para describir como los sistemas de
computación se comunican con otros a nivel de bit y
de byte.
Tipos de Protocolo
 Protocolos de bajo nivel
 * IP, Direcciones IP
 Su función es transmitir trozos de data de un sistema
a otro, la información mas importante que requiere IP,
es la dirección de los sistemas de computación que IP
utiliza para transmitir y recibir data.
 El término mas familiar para una localización en
internet es “dirección”, cada sistema en internet tiene
dirección. Esta dirección es llamada dirección IP,
existen dos formatos para una dirección IP. Uno es
interno, cada computadora en internet utiliza una
dirección IP compuesta por 4 números, un ejemplo es
„198.137.231.1‟. Sin embargo como es mas fácil para
las personas recordar nombres que numero, se tiene
el otro formato que corresponde a nombres de
direcciones IP.
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) suministra una conexión virtual
entre dos sistemas (lo que significa que pueden existir
muchas conexiones físicas a partir de una conexión virtual),
con ciertas garantías en los trozos de datos (llamados
paquetes) que son transmitidos entre los sistemas. Dos
garantías son: la retransmisión de los paquetes que son
borrados (por problemas en la red) y la 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
 * SLIP Y PPP
 En los casos en que una aplicación de internet
esta corriendo sobre sistemas conectados a una LAN,
probablemente estos están utilizando IP sobre una red
ETHERNET o Token Ring, con una conexión de
internet dedicada (esclava).
 Tanto SLIP como PPP utilizan IP para enviar
data sobre líneas dedicadas. SLIP es la abreviatura
de Líneas seriales IP y PPP es el nombre corto de
Protocolo de Punto a Punto. Ambos toman la data y
los paquetes de IP para que así estos puedan ser
enviados sobre modem en líneas dedicadas.
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 IP
 A continuación se indica cómo se ve un
datagrama:
<- 32 bits ->
Versión
(4 bits)
Longitud del
encabezado
(4 bits)
Tipo de
servicio
(8 bits)
Longitud total
(16 bits)
Identificación
(16 bits)
Indicador
(3 bits)
Margen del
fragmento
(13 bits)
Tiempo de vida
(8 bits)
Protocolo
(8 bits)
Suma de comprobación del
encabezado
(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
 Por eso es que decimos que estamos en un entorno
Cliente-Servidor.
Las máquinas de dicho entorno se comunican en
modo en línea, es decir, que la comunicación se
realiza en ambas direcciones.
 Para posibilitar la comunicación y que funcionen bien
todos los controles que la acompañan, los datos se
agrupan; es decir, que se agrega un encabezado a los
paquetes de datos que permitirán sincronizar las
transmisiones y garantizar su recepción.
 Otra función del TCP es la capacidad de controlar la
velocidad de los datos usando su capacidad para
emitir mensajes de tamaño variable. Estos mensajes
se llaman segmentos.
Protocolo TCP
 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.
Protocolo TCP
multiplexacion demultiplexacion
Equipo A Equipo B
Protocolo TCP
 Estas operaciones se realizan empleando
el concepto de puertos (o conexiones), es
decir, un número vinculado a un tipo de
aplicación que, cuando se combina con
una dirección de IP, permite determinar en
forma exclusiva una aplicación que se
ejecuta en una máquina determinada.
Protocolo TCP
 El formato de los datos en TCP
 Un segmento TCP está formado de la siguiente
manera:
0 1 2 3 4 5 6 7 8 9
1
0
1
1
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
2
0
2
1
2
2
2
3
2
4
2
5
2
6
2
7
2
8
2
9
3
0
3
1
Puerto de origen Puerto de destino
Número de secuencia
Número de acuse de recibo
Margen
de
datos
Reservado
U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
Ventana
Suma de control Puntero urgente
Opciones Relleno
Datos
Protocolo TCP
 Significado de los diferentes campos:
 Puerto de origen (16 bits): Puerto relacionado
con la aplicación en curso en la máquina origen
 Puerto de destino (16 bits): Puerto relacionado
con la aplicación en curso en la máquina destino
 Número de secuencia (32 bits): Cuando el
indicador SYN está fijado en 0, el número de
secuencia es el de la primera palabra del
segmento actual.
Cuando SYN está fijado en 1, el número de
secuencia es igual al número de secuencia inicial
utilizado para sincronizar los números de
secuencia (ISN).
Protocolo TCP
 Número de acuse de recibo (32 bits): El número
de acuse de recibo, también llamado número de
descargo se relaciona con el número (secuencia)
del último segmento esperado y no el número del
último segmento recibido.
 Margen de datos (4 bits): Esto permite ubicar el
inicio de los datos en el paquete. Aquí, el margen
es fundamental porque el campo opción es de
tamaño variable. Reservado (6 bits): Un campo
que actualmente no está en uso pero se
proporciona para el uso futuro. Indicadores (6x1
bit): Los indicadores representan información
adicional:
Protocolo TCP
 URG: Si este indicador está fijado en 1, el
paquete se debe procesar en forma urgente.
 ACK: Si este indicador está fijado en 1, el
paquete es un acuse de recibo.
 PSH (PUSH): Si este indicador está fijado en 1, el
paquete opera de acuerdo con el método PUSH.
 RST: Si este indicador está fijado en 1, se
restablece la conexión.
 SYN: El indicador SYN de TCP indica un pedido
para establecer una conexión.
 FIN: Si este indicador está fijado en 1, se
interrumpe la conexión.
Protocolo TCP
 Ventana (16 bits): Campo que permite saber la
cantidad de bytes que el receptor desea recibir sin
acuse de recibo.
 Suma de control (CRC): La suma de control se
realiza tomando la suma del campo de datos del
encabezado para poder verificar la integridad del
encabezado.
 Puntero urgente (16 bits): Indica el número de
secuencia después del cual la información se torna
urgente. Opciones (tamaño variable): Diversas
opciones
 Relleno: Espacio restante después de que las
opciones se rellenan con ceros para tener una
longitud que sea múltiplo de 32 bits.
Protocolo TCP
 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.
Cuando se emite un segmento, se lo vincula a un
número de secuencia. Con la recepción de un
segmento de datos, la máquina receptora devolverá
un segmento de datos donde el indicador ACK esté
fijado en 1 (para poder indicar que es un acuse de
recibo) acompañado por un número de acuse de
recibo que equivale al número de secuencia anterior.
Protocolo TCP
Sistema de
Trasmisión
Sistema de
Recepción
Segmento 1
ACK 1
Segmento 2
Protocolo TCP
 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.
Protocolo TCP
Sistema de
Trasmisión
Sistema de
Recepción
Segmento 1
ACK 1
Segmento 1
Protocolo TCP
 Sin embargo, si el segmento no está perdido
y llega a destino, la máquina receptora lo
sabrá, gracias al número de secuencia, que
es un duplicado, y sólo retendrá el último
segmento que llegó a destino.
Protocolo TCP
 Cómo establecer una conexión
 Considerando que este proceso de comunicación,
que se produce con la transmisión y el acuse de
recibo de datos, se basa en un número de
secuencia, las máquinas originadora y receptora
(cliente y servidor) deben conocer el número de
secuencia inicial de la otra máquina.
 La conexión establecida entre las dos
aplicaciones a menudo se realiza siguiendo el
siguiente esquema:
 Los puertos TCP deben estar abiertos.
Protocolo TCP
 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.
Protocolo TCP
 Este diálogo posibilita el inicio de la comunicación
porque se realiza en tres etapas, como su
nombre lo indica:
 En la primera etapa, la máquina originadora (el
cliente) transmite un segmento donde el indicador
SYN está fijado en 1 (para indicar que es un
segmento de sincronización), con número de
secuencia N llamado número de secuencia inicial
del cliente.
Protocolo TCP
 En la segunda etapa, la máquina receptora (el
servidor) recibe el segmento inicial que viene del
cliente y luego le envía un acuse de recibo, que
es un segmento en el que el indicador ACK está
fijado en 1 y el indicador SYN está fijado en 1
(porque es nuevamente una sincronización). Este
segmento incluye el número de secuencia de esta
máquina (el servidor), que es el número de
secuencia inicial para el cliente. El campo más
importante en este segmento es el de acuse de
recibo que contiene el número de secuencia
inicial del cliente incrementado en 1.
Protocolo TCP
 Por último, el cliente transmite un acuse de
recibo, que es un segmento en el que el indicador
ACK está fijado en 1 y el indicador SYN está
fijado en 0 (ya no es un segmento de
sincronización). Su número de secuencia está
incrementado y el acuse de recibo representa el
número de secuencia inicial del servidor
incrementado en 1.
Protocolo TCP
Emisor Receptor
SYN
Secuencia = C
SYN
ACK = C+1
Secuencia = S
ACK = S+1
Secuencia = C+1
Protocolo TCP
 Después de esta secuencia con tres
intercambios, las dos máquinas están
sincronizadas y la comunicación puede
comenzar.
 Existe una técnica de piratería llamada
falsificación de IP, que permite corromper
este enlace de aprobación con fines
maliciosos.
Protocolo TCP
 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.
 Este método se llama efectivamente el "el método
de la ventana corrediza" porque, en cierta
medida, se define una serie de secuencias que
no necesitan acuses de recibo y que se desplaza
a medida que se reciben los acuses de recibo.
Protocolo TCP
123456789
Sistema de
Trasmisión
Sistema de
Recepción
Protocolo TCP
 Además, el tamaño de esta ventana no es fijo. De
hecho, el servidor puede incluir el tamaño de la
ventana que considera más apropiado en sus
acuses de recibo guardándolo en el campo
ventana. De este modo, cuando el acuse de
recibo indica un pedido para aumentar la ventana,
el cliente se desplazará al borde derecho de la
ventana.
123456789
Protocolo TCP
 Por el contrario, en el caso de una reducción,
el cliente no desplazará el borde derecho de
la ventana hacia la izquierda sino que
esperará que avance el borde izquierdo (al
llegar los acuses de recibo).
123456789
Protocolo TCP
 Cómo terminar una conexión
 El cliente puede pedir que se termine una
conexión del mismo modo que el servidor.
Para terminar una conexión se procede de la
siguiente manera:
 Una de las máquinas envía un segmento con
el indicador FIN fijado en 1, y la aplicación se
autocoloca en estado de espera, es decir que
deja de recibir el segmento actual e ignora los
siguientes.
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
(16 bits);
puerto de destino
(16 bits);
longitud total
(16 bits);
suma de comprobación del
encabezado
(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
GUI
Cliente
PI
Usuario
DTP
Servidor
PI
Servidor
De DTP
Sistema de
Archivos
Sistema de
Archivos
Canal de
Control
Comandos
De respuesta
Canal de Datos
SERVIDOR CLIENTE Usuario
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 FTP
Servidor
PI
Servidor
DTP
Servidor
PI
Servidor
De DTP
Sistema de
Archivos
Sistema de
Archivos
Canal de
Control
Canal de Datos
SERVIDOR SERVIDOR
Servidor
PI
Servidor
DTP
CLIENTE
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
USER
Cadena de caracteres que permite identificar al usuario. La identificación del usuario es
necesaria para establecer la comunicación a través del canal de datos.
PASS
Cadena de caracteres que especifica la contraseña del usuario. Este comando debe ser
inmediatamente precedida por el comando USER. El cliente debe decidir si esconder la
visualización de este comando por razones de seguridad.
ACCT
Cadena de caracteres que especifica la cuenta del usuario. El comando generalmente no es
necesario. 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.
CWD
Change Working Directory (Cambiar el directorio de trabajo): este comando permite cambiar el
directorio actual. Este comando requiere la ruta de acceso al directorio para que se complete
como un argumento.
CDUP
Change to Parent Directory (Cambiar al directorio principal): este comando permite regresar al
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):
QUIT
Comando que permite abandonar la sesión actual. Si es necesario, el servidor espera a que
finalice la 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
PORT
Cadena de caracteres que permite especificar el número de
puerto utilizado.
PASV
Comando que permite indicar al servidor de DTP que
permanezca a la espera de una conexión en un puerto
específico elegido aleatoriamente entre los puertos
disponibles. La respuesta a este comando es la dirección IP
del equipo y el puerto.
TYPE
Este comando permite especificar el tipo de formato en el
cual se enviarán los datos.
STRU
Carácter Telnet que especifica la estructura de archivos (F de
File [Archivo], R de Record [Registro], P de Page [Página]).
MODE
Carácter Telnet que especifica el método de transferencia de
datos (S de Stream [Flujo], B de Block [Bloque], C de
Compressed [Comprimido]).
Protocolo FTP
Comandos de servicio FTP
Comando Descripción
RETR
Este comando (RETRIEVE [RECUPERAR]) le pide al servidor de DTP
una copia del archivo cuya ruta de acceso se da en los parámetros.
STOR
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
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.
STOU
Este comando es idéntico al anterior, sólo le pide al servidor que cree
un archivo cuyo nombre sea único. El nombre del archivo se envía en
la respuesta.
APPE
Gracias a este comando (append [adjuntar]) los datos enviados se
concatenan en el archivo que lleva el nombre dado en el parámetro si
ya existe; si no es así, se crea.
ALLO
Este comando (allocate [reservar]) le pide al servidor que reserve un
espacio de almacenamiento lo suficientemente grande como para
recibir el archivo cuyo nombre se da en el argumento.
Protocolo FTP
REST
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
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.
RNFR
Este comando (rename from [renombrar desde]) permite volver a nombrar un
archivo. En los parámetros indica el nombre del archivo que se va a renombrar y
debe estar inmediatamente seguido por el comando RNTO.
RNTO
Este comando (rename from [renombrar a]) permite volver a nombrar un archivo. En
los parámetros indica el nombre del archivo que se va a renombrar y debe estar
inmediatamente seguido por el comando RNFR.
ABOR
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
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.
DELE
Este comando (delete [borrar]) permite que se borre un archivo, cuyo nombre se da
en los parámetros. Este comando es irreversible y la confirmación sólo puede darse
a nivel cliente.
RMD
Este comando (remove directory [eliminar directorio]) permite borrar un directorio. El
nombre del directorio que se va a borrar se indica en los parámetros.
MKD
Este comando (make directory [crear directorio]) permite crear un directorio. El
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.
LIST
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 directorio en el parámetro de este comando. El servidor de
DTP enviará la lista de archivos del directorio ubicado en el parámetro.
NLST
Este comando (name list [lista de nombres]) permite enviar la lista de archivos y
directorios presentes en el directorio actual.
SITE
Este comando (site parameters [parámetros del sistema]) hace que el servidor
proporcione servicios específicos no definidos en el protocolo FTP.
SYST
Este comando (system [sistema]) permite el envío de información acerca del
servidor remoto.
STAT
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 acceso en el argumento y después devuelve la misma
información que LISTA pero a través del canal de control.
HELP
Este comando permite conocer todos los comandos que el servidor comprende. La
información se devuelve por el canal de control.
NOOP
Este comando (no operations [no operación]) sólo se utiliza para recibir un
comando OK 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
1yz Respuesta positiva preliminar
La acción solicitada está en progreso.
Se debe obtener una segunda
respuesta antes de enviar un segundo
comando.
2yz Respuesta de finalización positiva
La acción solicitada se ha completado
y puede enviarse un nuevo comando.
3yz Respuesta intermedia positiva
La acción solicita está temporalmente
suspendida. Se espera información
adicional del cliente.
4yz Respuesta de finalización negativa
La acción solicitada no se ha realizado
debido a que el comando no se ha
aceptado temporalmente. Se le solicita
al cliente que intente más tarde.
5yz Respuesta negativa permanente
La acción solicitada no se ha realizado
debido a que el comando no ha sido
aceptado. Se le solicita al cliente que
formule una solicitud diferente.
Protocolo FTP
Segundo número
Dígito Significado Descripción
x0z Sintaxis
La acción tiene un error de sintaxis o sino,
es un comando que el servidor no
comprende.
x1z Información
Ésta es una respuesta que envía
información (por ejemplo, una respuesta a
un comando STAT).
x2z Conexiones La respuesta se refiere al canal de datos.
x3z Autenticación y cuentas
La respuesta se refiere al inicio de sesión
(USUARIO/CONTRASEÑA) o a la
solicitud para cambiar la cuenta (CPT).
x4z
No utilizado por el protocolo
FTP.
x5z Sistema de archivos
La respuesta se relaciona con el sistema
de 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
DO
WILL
El remitente comienza utilizando la opción
El remitente no debe utilizar la opción
WON'T El remitente no debe utilizar la opción
WILL
DO
El remitente comienza utilizando la opción,
después de enviar DO
DON'T El remitente no debe utilizar la opción
DON'T WON'T
El remitente indica que ha desactivado la
opción
WON'T DON'T
El remitente indica que el remitente debe
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
0 NULL Nulo
Este comando permite enviar datos al host
remoto sin que se interpreten (en particular
para indicar que el host local todavía esta
en línea).
1 LF Avance de línea
Este comando permite ubicar el cursor en
la línea siguiente, en la misma posición
horizontal.
2 CR Retorno de carro
Este comando permite ubicar el cursor en
el 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
7 BEL Campana
Este comando permite enviar una señal
visual o sonora sin cambiar la posición del
cursor.
8 BS Retroceso
Este comando permite cambiar la
posición del cursor a su posición anterior.
9 HT
Tabulación
horizontal
Este comando permite que la posición del
cursor pase a la siguiente tabulación a la
derecha.
11 VT Tabulación vertical
Este comando permite que la posición del
cursor pase a la siguiente tabulación de la
línea siguiente.
12 FF Avance de página
Este comando permite que la posición del
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
241 NOP Sin operación
Este comando permite enviar datos al host remoto
sin que se interpreten (en particular para indicar
que el host local todavía esta en línea).
242 DM Marca de datos
Permite vaciar todos los búferes entre el terminal
virtual de red y el host remoto. Se relaciona con la
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.
244 IP Interrumpir proceso
Este comando permite suspender, interrumpir o
abandonar el proceso remoto.
245 AO Abortar salida
Este comando permite suspender, interrumpir o
abandonar la visualización del proceso remoto.
246 AYT ¿Estás ahí?
Este comando permite controlar que el sistema
remoto todavía esté "vivo".
Protocolo Telnet
247 EC Borrar carácter
Este comando permite borrar el
carácter anterior.
248 EL Borrar línea
Este comando permite borrar la línea
anterior.
249 GA Adelante
Este comando permite revertir el
control, para conexiones semidúplex
250 SB SB
Este comando indica que los datos
que 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
255 IAC Interpretar como comando
Este comando permite interpretar el
byte siguiente como un comando. El
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
Solicitudes
Decodificación
Ubicación
de archivo
Creación de
encabezados
de formatoServidor
WEB
Cliente
(Navegador)
Envío de encabezados
de respuesta HTTP
Envío de
encabezados HTTP
Protocolos TCP/IP
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
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
Encabezados
Nombre del
encabezado
Descripción
Accept
Tipo de contenido aceptado por el navegador (por
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
Accept-Language
Idioma que el navegador espera (de forma
predeterminada, inglés)
Authorization Identificación del navegador en el servidor
Content-Encoding Tipo de codificación para el cuerpo de la solicitud
Content-LanguageTipo de idioma en el cuerpo de la solicitud
Content-Length Extensión del cuerpo de la solicitud
Content-Type
Tipo de contenido del cuerpo de la solicitud (por ejemplo,
texto/html). Consulte Tipos de MIME
Date Fecha en que comienza la transferencia de datos
Forwarded
Utilizado por equipos intermediarios entre el navegador y
el servidor
From
Permite especificar la dirección de correo electrónico del
cliente
From
Permite especificar que debe enviarse el documento si ha
sido 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
User-Agent
Cadena con información sobre el cliente, por ejemplo, el
nombre 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
Content-Type
Tipo de contenido del cuerpo de la respuesta (por
ejemplo, texto/html). Consulte Tipos de MIME
Date Fecha en que comienza la transferencia de datos
Expires Fecha límite de uso de los datos
Forwarded
Utilizado por equipos intermediarios entre el navegador y
el servidor
Location
Redireccionamiento a una nueva dirección URL asociada
con el 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
10x
Mensaje de
información
Estos códigos no se utilizan en la versión 1.0 del
protocolo
20x Éxito
Estos códigos indican la correcta ejecución de la
transacción
200 OK La solicitud se llevó a cabo de manera correcta
201 CREATED
Sigue a un comando POST e indica el éxito, la parte restante
del cuerpo indica la dirección URL donde se ubicará el
documento creado recientemente.
202 ACCEPTED
La solicitud ha sido aceptada, pero el procedimiento que sigue
no se ha llevado a cabo
203
PARTIAL
INFORMATION
Cuando se recibe este código en respuesta a un comando de
GET indica que la respuesta no está completa.
204 NO RESPONSE
El servidor ha recibido la solicitud, pero no hay información de
respuesta
205 RESET CONTENT
El servidor le indica al navegador que borre el contenido en los
campos de un formulario
206 PARTIAL CONTENT
Es una respuesta a una solicitud que consiste en el
encabezado range. El servidor debe indicar el encabezado
content-Range
Código Mensaje Descripción
30x Redirección
Estos códigos indican que el recurso ya no se
encuentra en la ubicación especificada
301 MOVED
Los datos solicitados han sido transferidos a una
nueva dirección
302 FOUND
Los datos solicitados se encuentran en una
nueva dirección URL, pero, no obstante, pueden
haber sido trasladados
303 METHOD
Significa que el cliente debe intentarlo con una
nueva dirección; es preferible que intente con
otro método en vez de GET
304 NOT MODIFIED
Si el cliente llevó a cabo un comando GET
condicional (con la solicitud relativa a si el
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
40x
Error debido al
cliente
Estos códigos indican que la solicitud es
incorrecta
400 BAD REQUEST
La sintaxis de la solicitud se encuentra
formulada de manera errónea o es imposible de
responder
401 UNAUTHORIZED
Los parámetros del mensaje aportan las
especificaciones de formularios de autorización
que se admiten. El cliente debe reformular la
solicitud con los datos de autorización correctos
402
PAYMENT
REQUIRED
El cliente debe reformular la solicitud con los
datos de pago correctos
403 FORBIDDEN El acceso al recurso simplemente se deniega
404 NOT FOUND
Un clásico. El servidor no halló nada en la
dirección especificada. Se ha abandonado sin
dejar una dirección para redireccionar... :)
Código Mensaje Descripción
50x Error debido al servidor
Estos códigos indican que existe un error interno en
el servidor
500 INTERNAL ERROR
El servidor encontró una condición inesperada que le
impide seguir con la solicitud (una de esas cosas que les
suceden a los servidores...)
501 NOT IMPLEMENTED
El servidor no admite el servicio solicitado (no puede
saberlo todo...)
502 BAD GATEWAY
El servidor que actúa como una puerta de enlace o proxy
ha recibido una respuesta no válida del servidor al que
intenta acceder
503 SERVICE UNAVAILABLE
El servidor no puede responder en ese momento debido
a que se encuentra congestionado (todas las líneas de
comunicación se encuentran congestionadas, inténtelo
de nuevo más adelante)
504 GATEWAY TIMEOUT
La respuesta del servidor ha llevado demasiado tiempo
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
HELO (ahora EHLO) EHLO 193.56.47.125
Identificación que utiliza la
dirección IP o el nombre
de dominio del equipo
remitente
MAIL FROM:
MAIL FROM:
originator@domain.com
Identificación de la
dirección del remitente
RCPT TO:
RCPT TO:
recipient@domain.com
Identificación de la
dirección del destinatario
DATA DATA message
Cuerpo del correo
electrónico
QUIT QUIT Salida del servidor SMTP
HELP HELP
Lista de comandos SMTP
que 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
USER
identification
Este comando permite la autenticación. Debe estar seguido del
nombre de usuario, es decir, una cadena de caracteres que identifique
al usuario en el servidor. El comando USER debe preceder al
comando PASS.
PASS password
El comando PASS permite especificar la contraseña del usuario cuyo
nombre 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
TOP <messageID>
<n>
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 vuelta los encabezados del mensaje, después una línea en
blanco y finalmente las primeras n líneas del mensaje.
UIDL [msg]
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 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.
QUIT
El comando QUIT solicita la salida del servidor POP3. Lleva a la
eliminación 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

Más contenido relacionado

La actualidad más candente

Protocolos De Internet
Protocolos De InternetProtocolos De Internet
Protocolos De InternetFernando
 
Protocolos y ejemplos
Protocolos y ejemplosProtocolos y ejemplos
Protocolos y ejemploselenainforb
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internetXXXJP
 
Protocolo Tcp Ip
Protocolo Tcp IpProtocolo Tcp Ip
Protocolo Tcp Ipmolina.ric3
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internetX-carlos-X
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internetXsJOSEsX
 
Protocolos del modelo osi
Protocolos del modelo osiProtocolos del modelo osi
Protocolos del modelo osijavi_ant16
 
Bollilla 2
Bollilla 2Bollilla 2
Bollilla 2inet
 
DIAPOSITIVAS DE PROTOCOLOS
DIAPOSITIVAS DE PROTOCOLOSDIAPOSITIVAS DE PROTOCOLOS
DIAPOSITIVAS DE PROTOCOLOSgutierrez2010
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internetivanna_alv
 

La actualidad más candente (18)

Protocolos De Internet
Protocolos De InternetProtocolos De Internet
Protocolos De Internet
 
Seminario #4 redes de computadoras
Seminario #4   redes de computadorasSeminario #4   redes de computadoras
Seminario #4 redes de computadoras
 
Protocolos y ejemplos
Protocolos y ejemplosProtocolos y ejemplos
Protocolos y ejemplos
 
Trabajo de marifalcon
Trabajo de marifalconTrabajo de marifalcon
Trabajo de marifalcon
 
Protocolos de Internet
Protocolos de InternetProtocolos de Internet
Protocolos de Internet
 
Investigación IPv4
Investigación IPv4Investigación IPv4
Investigación IPv4
 
MODELO TCP/IP
MODELO TCP/IPMODELO TCP/IP
MODELO TCP/IP
 
Bolilla 2 ppt técnico en redes
Bolilla 2 ppt técnico en redesBolilla 2 ppt técnico en redes
Bolilla 2 ppt técnico en redes
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internet
 
Protocolo Tcp Ip
Protocolo Tcp IpProtocolo Tcp Ip
Protocolo Tcp Ip
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internet
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internet
 
07 tcpip _1de2
07 tcpip _1de207 tcpip _1de2
07 tcpip _1de2
 
Protocolos del modelo osi
Protocolos del modelo osiProtocolos del modelo osi
Protocolos del modelo osi
 
Bollilla 2
Bollilla 2Bollilla 2
Bollilla 2
 
Comunicación tcp ip
Comunicación tcp ipComunicación tcp ip
Comunicación tcp ip
 
DIAPOSITIVAS DE PROTOCOLOS
DIAPOSITIVAS DE PROTOCOLOSDIAPOSITIVAS DE PROTOCOLOS
DIAPOSITIVAS DE PROTOCOLOS
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internet
 

Similar a Protocolos de Comunicacion

Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internettavo2484
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internetXsJOSEsX
 
Herramientas de colaboración digital
Herramientas de colaboración digitalHerramientas de colaboración digital
Herramientas de colaboración digitallefuente
 
Herramientas de colaboración digital
Herramientas de colaboración digitalHerramientas de colaboración digital
Herramientas de colaboración digitallefuente
 
Mariana y ruben
Mariana  y rubenMariana  y ruben
Mariana y rubenrubendios
 
Procolo tcpip josé luis parra borja 9°2
Procolo tcpip josé luis parra borja 9°2Procolo tcpip josé luis parra borja 9°2
Procolo tcpip josé luis parra borja 9°2José Parra Borja
 
Protocolo
ProtocoloProtocolo
Protocolonice04
 
Modelo tcp1
Modelo tcp1Modelo tcp1
Modelo tcp1nando85
 
Protocolos gabriela chisag
Protocolos gabriela chisagProtocolos gabriela chisag
Protocolos gabriela chisagjesy30
 
PROTOCOLO CAPA TRANSPORTE - RED
PROTOCOLO CAPA TRANSPORTE - REDPROTOCOLO CAPA TRANSPORTE - RED
PROTOCOLO CAPA TRANSPORTE - REDDiego Merino
 
Protocolos del modelo osi
Protocolos del modelo osiProtocolos del modelo osi
Protocolos del modelo osijavi_ant16
 
Protocolos del modelo osi de javier peña
Protocolos del modelo osi de javier peñaProtocolos del modelo osi de javier peña
Protocolos del modelo osi de javier peñamichelle_95
 

Similar a Protocolos de Comunicacion (20)

Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internet
 
S
SS
S
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internet
 
Protocolos de red
Protocolos de redProtocolos de red
Protocolos de red
 
Protocolos de red
Protocolos de redProtocolos de red
Protocolos de red
 
Protocolos
ProtocolosProtocolos
Protocolos
 
Protocolo tc pultimate presentacion1
Protocolo tc pultimate presentacion1Protocolo tc pultimate presentacion1
Protocolo tc pultimate presentacion1
 
Trabajo
TrabajoTrabajo
Trabajo
 
Herramientas de colaboración digital
Herramientas de colaboración digitalHerramientas de colaboración digital
Herramientas de colaboración digital
 
Herramientas de colaboración digital
Herramientas de colaboración digitalHerramientas de colaboración digital
Herramientas de colaboración digital
 
Mariana y ruben
Mariana  y rubenMariana  y ruben
Mariana y ruben
 
Mariana y ruben
Mariana  y rubenMariana  y ruben
Mariana y ruben
 
Procolo tcpip josé luis parra borja 9°2
Procolo tcpip josé luis parra borja 9°2Procolo tcpip josé luis parra borja 9°2
Procolo tcpip josé luis parra borja 9°2
 
Protocolo
ProtocoloProtocolo
Protocolo
 
Modelo tcp1
Modelo tcp1Modelo tcp1
Modelo tcp1
 
Protocolos gabriela chisag
Protocolos gabriela chisagProtocolos gabriela chisag
Protocolos gabriela chisag
 
Tcpip
TcpipTcpip
Tcpip
 
PROTOCOLO CAPA TRANSPORTE - RED
PROTOCOLO CAPA TRANSPORTE - REDPROTOCOLO CAPA TRANSPORTE - RED
PROTOCOLO CAPA TRANSPORTE - RED
 
Protocolos del modelo osi
Protocolos del modelo osiProtocolos del modelo osi
Protocolos del modelo osi
 
Protocolos del modelo osi de javier peña
Protocolos del modelo osi de javier peñaProtocolos del modelo osi de javier peña
Protocolos del modelo osi de javier peña
 

Más de Miguel Cabrera

MARCO DE REFERENCIA SEGURIDAD DE INFORMACIÓN
MARCO DE REFERENCIA SEGURIDAD DE INFORMACIÓNMARCO DE REFERENCIA SEGURIDAD DE INFORMACIÓN
MARCO DE REFERENCIA SEGURIDAD DE INFORMACIÓNMiguel Cabrera
 
INTRODUCCION CIBERSEGURIDAD
INTRODUCCION CIBERSEGURIDADINTRODUCCION CIBERSEGURIDAD
INTRODUCCION CIBERSEGURIDADMiguel Cabrera
 
DIFERENCIAS Y SIMILITUDES ISO27001 Y ISO27002
DIFERENCIAS Y SIMILITUDES ISO27001 Y ISO27002DIFERENCIAS Y SIMILITUDES ISO27001 Y ISO27002
DIFERENCIAS Y SIMILITUDES ISO27001 Y ISO27002Miguel Cabrera
 
CIBERSEGURIDAD EN LA EMPRESA
CIBERSEGURIDAD EN LA EMPRESACIBERSEGURIDAD EN LA EMPRESA
CIBERSEGURIDAD EN LA EMPRESAMiguel Cabrera
 
CIBER SEGURIDAD DATOS ESTADÍSTICOS.
CIBER SEGURIDAD DATOS ESTADÍSTICOS.CIBER SEGURIDAD DATOS ESTADÍSTICOS.
CIBER SEGURIDAD DATOS ESTADÍSTICOS.Miguel Cabrera
 
SEGURIDAD DE INFORMACIÓN SITUACIÓN ACTUAL
 SEGURIDAD DE INFORMACIÓN SITUACIÓN ACTUAL SEGURIDAD DE INFORMACIÓN SITUACIÓN ACTUAL
SEGURIDAD DE INFORMACIÓN SITUACIÓN ACTUALMiguel Cabrera
 
SEGURIDAD DE INFORMACIÓN.
SEGURIDAD DE INFORMACIÓN.SEGURIDAD DE INFORMACIÓN.
SEGURIDAD DE INFORMACIÓN.Miguel Cabrera
 
SEGURIDAD DE INFORMACIÓN Y PROTECCIÓN DE DATOS
SEGURIDAD DE INFORMACIÓN Y PROTECCIÓN DE DATOSSEGURIDAD DE INFORMACIÓN Y PROTECCIÓN DE DATOS
SEGURIDAD DE INFORMACIÓN Y PROTECCIÓN DE DATOSMiguel Cabrera
 
SEGURIDAD DE INFORMACIÓN RECURSOS TECNOLÓGICO
SEGURIDAD DE INFORMACIÓN RECURSOS TECNOLÓGICOSEGURIDAD DE INFORMACIÓN RECURSOS TECNOLÓGICO
SEGURIDAD DE INFORMACIÓN RECURSOS TECNOLÓGICOMiguel Cabrera
 
SEGURIDAD DE INFORMACIÓN EN LA ERA DIGITAL
SEGURIDAD DE INFORMACIÓN EN LA ERA DIGITALSEGURIDAD DE INFORMACIÓN EN LA ERA DIGITAL
SEGURIDAD DE INFORMACIÓN EN LA ERA DIGITALMiguel Cabrera
 
SEGURIDAD DE INFORMACIÓN INFRAESTRUCTURA DE SEGURIDAD
SEGURIDAD DE INFORMACIÓN INFRAESTRUCTURA DE SEGURIDADSEGURIDAD DE INFORMACIÓN INFRAESTRUCTURA DE SEGURIDAD
SEGURIDAD DE INFORMACIÓN INFRAESTRUCTURA DE SEGURIDADMiguel Cabrera
 
RECUPERACIÓN ANTE DESASTRES
RECUPERACIÓN ANTE DESASTRESRECUPERACIÓN ANTE DESASTRES
RECUPERACIÓN ANTE DESASTRESMiguel Cabrera
 
MANUAL PUESTO A TIERRA
MANUAL PUESTO A TIERRA MANUAL PUESTO A TIERRA
MANUAL PUESTO A TIERRA Miguel Cabrera
 
SEGURIDAD Y ADMINISTRACIÓN DE DATA CENTER
SEGURIDAD Y ADMINISTRACIÓN DE DATA CENTERSEGURIDAD Y ADMINISTRACIÓN DE DATA CENTER
SEGURIDAD Y ADMINISTRACIÓN DE DATA CENTERMiguel Cabrera
 
NORMATIVAS PROTECCIÓN CONTRA INCENDIO DATA CENTER
NORMATIVAS PROTECCIÓN CONTRA INCENDIO DATA CENTERNORMATIVAS PROTECCIÓN CONTRA INCENDIO DATA CENTER
NORMATIVAS PROTECCIÓN CONTRA INCENDIO DATA CENTERMiguel Cabrera
 
NORMAS Y ESTÁNDARES DE AUDITORIA DATA CENTER
NORMAS Y ESTÁNDARES DE AUDITORIA DATA CENTERNORMAS Y ESTÁNDARES DE AUDITORIA DATA CENTER
NORMAS Y ESTÁNDARES DE AUDITORIA DATA CENTERMiguel Cabrera
 
MANUAL DE FABRICACIÓN DE DATA CENTER
MANUAL DE FABRICACIÓN DE DATA CENTERMANUAL DE FABRICACIÓN DE DATA CENTER
MANUAL DE FABRICACIÓN DE DATA CENTERMiguel Cabrera
 
ISO 50001 ENERGÍA DATA CENTER
ISO 50001 ENERGÍA DATA CENTERISO 50001 ENERGÍA DATA CENTER
ISO 50001 ENERGÍA DATA CENTERMiguel Cabrera
 
Redes e Infraestructura
Redes e InfraestructuraRedes e Infraestructura
Redes e InfraestructuraMiguel Cabrera
 

Más de Miguel Cabrera (20)

MARCO DE REFERENCIA SEGURIDAD DE INFORMACIÓN
MARCO DE REFERENCIA SEGURIDAD DE INFORMACIÓNMARCO DE REFERENCIA SEGURIDAD DE INFORMACIÓN
MARCO DE REFERENCIA SEGURIDAD DE INFORMACIÓN
 
INTRODUCCION CIBERSEGURIDAD
INTRODUCCION CIBERSEGURIDADINTRODUCCION CIBERSEGURIDAD
INTRODUCCION CIBERSEGURIDAD
 
DIFERENCIAS Y SIMILITUDES ISO27001 Y ISO27002
DIFERENCIAS Y SIMILITUDES ISO27001 Y ISO27002DIFERENCIAS Y SIMILITUDES ISO27001 Y ISO27002
DIFERENCIAS Y SIMILITUDES ISO27001 Y ISO27002
 
CIBERSEGURIDAD EN LA EMPRESA
CIBERSEGURIDAD EN LA EMPRESACIBERSEGURIDAD EN LA EMPRESA
CIBERSEGURIDAD EN LA EMPRESA
 
CIBER SEGURIDAD DATOS ESTADÍSTICOS.
CIBER SEGURIDAD DATOS ESTADÍSTICOS.CIBER SEGURIDAD DATOS ESTADÍSTICOS.
CIBER SEGURIDAD DATOS ESTADÍSTICOS.
 
SEGURIDAD DE INFORMACIÓN SITUACIÓN ACTUAL
 SEGURIDAD DE INFORMACIÓN SITUACIÓN ACTUAL SEGURIDAD DE INFORMACIÓN SITUACIÓN ACTUAL
SEGURIDAD DE INFORMACIÓN SITUACIÓN ACTUAL
 
SEGURIDAD DE INFORMACIÓN.
SEGURIDAD DE INFORMACIÓN.SEGURIDAD DE INFORMACIÓN.
SEGURIDAD DE INFORMACIÓN.
 
SEGURIDAD DE INFORMACIÓN Y PROTECCIÓN DE DATOS
SEGURIDAD DE INFORMACIÓN Y PROTECCIÓN DE DATOSSEGURIDAD DE INFORMACIÓN Y PROTECCIÓN DE DATOS
SEGURIDAD DE INFORMACIÓN Y PROTECCIÓN DE DATOS
 
SEGURIDAD DE INFORMACIÓN RECURSOS TECNOLÓGICO
SEGURIDAD DE INFORMACIÓN RECURSOS TECNOLÓGICOSEGURIDAD DE INFORMACIÓN RECURSOS TECNOLÓGICO
SEGURIDAD DE INFORMACIÓN RECURSOS TECNOLÓGICO
 
SEGURIDAD DE INFORMACIÓN EN LA ERA DIGITAL
SEGURIDAD DE INFORMACIÓN EN LA ERA DIGITALSEGURIDAD DE INFORMACIÓN EN LA ERA DIGITAL
SEGURIDAD DE INFORMACIÓN EN LA ERA DIGITAL
 
SEGURIDAD DE INFORMACIÓN INFRAESTRUCTURA DE SEGURIDAD
SEGURIDAD DE INFORMACIÓN INFRAESTRUCTURA DE SEGURIDADSEGURIDAD DE INFORMACIÓN INFRAESTRUCTURA DE SEGURIDAD
SEGURIDAD DE INFORMACIÓN INFRAESTRUCTURA DE SEGURIDAD
 
RECUPERACIÓN ANTE DESASTRES
RECUPERACIÓN ANTE DESASTRESRECUPERACIÓN ANTE DESASTRES
RECUPERACIÓN ANTE DESASTRES
 
MANUAL PUESTO A TIERRA
MANUAL PUESTO A TIERRA MANUAL PUESTO A TIERRA
MANUAL PUESTO A TIERRA
 
SEGURIDAD Y ADMINISTRACIÓN DE DATA CENTER
SEGURIDAD Y ADMINISTRACIÓN DE DATA CENTERSEGURIDAD Y ADMINISTRACIÓN DE DATA CENTER
SEGURIDAD Y ADMINISTRACIÓN DE DATA CENTER
 
NORMATIVAS PROTECCIÓN CONTRA INCENDIO DATA CENTER
NORMATIVAS PROTECCIÓN CONTRA INCENDIO DATA CENTERNORMATIVAS PROTECCIÓN CONTRA INCENDIO DATA CENTER
NORMATIVAS PROTECCIÓN CONTRA INCENDIO DATA CENTER
 
NORMAS Y ESTÁNDARES DE AUDITORIA DATA CENTER
NORMAS Y ESTÁNDARES DE AUDITORIA DATA CENTERNORMAS Y ESTÁNDARES DE AUDITORIA DATA CENTER
NORMAS Y ESTÁNDARES DE AUDITORIA DATA CENTER
 
MANUAL DE FABRICACIÓN DE DATA CENTER
MANUAL DE FABRICACIÓN DE DATA CENTERMANUAL DE FABRICACIÓN DE DATA CENTER
MANUAL DE FABRICACIÓN DE DATA CENTER
 
ISO 50001 ENERGÍA DATA CENTER
ISO 50001 ENERGÍA DATA CENTERISO 50001 ENERGÍA DATA CENTER
ISO 50001 ENERGÍA DATA CENTER
 
ESTÁNDAR DATA CENTER
ESTÁNDAR DATA CENTERESTÁNDAR DATA CENTER
ESTÁNDAR DATA CENTER
 
Redes e Infraestructura
Redes e InfraestructuraRedes e Infraestructura
Redes e Infraestructura
 

Último

Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 

Último (20)

Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 

Protocolos de Comunicacion

  • 2. Definición  La definición del término protocolo es importantísimo. En la vida real, los protocolos son un conjunto de hábitos y procedimientos utilizados en las relaciones interpersonales. Cuando es usado bajo el contexto de redes de comunicación el termino protocolo tiene un significado similar pero a un nivel mas especifico, esto es, un protocolo de red es un conjunto de reglas, secuencias, formatos de mensajes y procedimientos bien detallados que posibilitan la transferencia de datos entre dos o mas sistemas de computación.  De manera similar, un protocolo de red (incluyendo todos los protocolos de internet) es el termino utilizado para describir como los sistemas de computación se comunican con otros a nivel de bit y de byte.
  • 3. Tipos de Protocolo  Protocolos de bajo nivel  * IP, Direcciones IP  Su función es transmitir trozos de data de un sistema a otro, la información mas importante que requiere IP, es la dirección de los sistemas de computación que IP utiliza para transmitir y recibir data.  El término mas familiar para una localización en internet es “dirección”, cada sistema en internet tiene dirección. Esta dirección es llamada dirección IP, existen dos formatos para una dirección IP. Uno es interno, cada computadora en internet utiliza una dirección IP compuesta por 4 números, un ejemplo es „198.137.231.1‟. Sin embargo como es mas fácil para las personas recordar nombres que numero, se tiene el otro formato que corresponde a nombres de direcciones IP.
  • 4. 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) suministra una conexión virtual entre dos sistemas (lo que significa que pueden existir muchas conexiones físicas a partir de una conexión virtual), con ciertas garantías en los trozos de datos (llamados paquetes) que son transmitidos entre los sistemas. Dos garantías son: la retransmisión de los paquetes que son borrados (por problemas en la red) y la 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.
  • 5. 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.
  • 6. Tipos de Protocolo  * SLIP Y PPP  En los casos en que una aplicación de internet esta corriendo sobre sistemas conectados a una LAN, probablemente estos están utilizando IP sobre una red ETHERNET o Token Ring, con una conexión de internet dedicada (esclava).  Tanto SLIP como PPP utilizan IP para enviar data sobre líneas dedicadas. SLIP es la abreviatura de Líneas seriales IP y PPP es el nombre corto de Protocolo de Punto a Punto. Ambos toman la data y los paquetes de IP para que así estos puedan ser enviados sobre modem en líneas dedicadas.
  • 7. 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.
  • 8. 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.
  • 9. 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;
  • 10. 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.
  • 11. 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.
  • 12. Protocolo IP  A continuación se indica cómo se ve un datagrama: <- 32 bits -> Versión (4 bits) Longitud del encabezado (4 bits) Tipo de servicio (8 bits) Longitud total (16 bits) Identificación (16 bits) Indicador (3 bits) Margen del fragmento (13 bits) Tiempo de vida (8 bits) Protocolo (8 bits) Suma de comprobación del encabezado (16 bits) Dirección IP de origen (32 bits) Dirección IP de destino (32 bits) Datos
  • 13. 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.
  • 14. 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.
  • 15. 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
  • 16. 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.
  • 17. 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.
  • 18. 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.
  • 19. 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.
  • 20. 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:
  • 21. 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.
  • 22. 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.
  • 23. 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.
  • 24. 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.
  • 25. Protocolo TCP  Por eso es que decimos que estamos en un entorno Cliente-Servidor. Las máquinas de dicho entorno se comunican en modo en línea, es decir, que la comunicación se realiza en ambas direcciones.  Para posibilitar la comunicación y que funcionen bien todos los controles que la acompañan, los datos se agrupan; es decir, que se agrega un encabezado a los paquetes de datos que permitirán sincronizar las transmisiones y garantizar su recepción.  Otra función del TCP es la capacidad de controlar la velocidad de los datos usando su capacidad para emitir mensajes de tamaño variable. Estos mensajes se llaman segmentos.
  • 26. Protocolo TCP  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.
  • 28. Protocolo TCP  Estas operaciones se realizan empleando el concepto de puertos (o conexiones), es decir, un número vinculado a un tipo de aplicación que, cuando se combina con una dirección de IP, permite determinar en forma exclusiva una aplicación que se ejecuta en una máquina determinada.
  • 29. Protocolo TCP  El formato de los datos en TCP  Un segmento TCP está formado de la siguiente manera: 0 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 3 1 Puerto de origen Puerto de destino Número de secuencia Número de acuse de recibo Margen de datos Reservado U R G A C K P S H R S T S Y N F I N Ventana Suma de control Puntero urgente Opciones Relleno Datos
  • 30. Protocolo TCP  Significado de los diferentes campos:  Puerto de origen (16 bits): Puerto relacionado con la aplicación en curso en la máquina origen  Puerto de destino (16 bits): Puerto relacionado con la aplicación en curso en la máquina destino  Número de secuencia (32 bits): Cuando el indicador SYN está fijado en 0, el número de secuencia es el de la primera palabra del segmento actual. Cuando SYN está fijado en 1, el número de secuencia es igual al número de secuencia inicial utilizado para sincronizar los números de secuencia (ISN).
  • 31. Protocolo TCP  Número de acuse de recibo (32 bits): El número de acuse de recibo, también llamado número de descargo se relaciona con el número (secuencia) del último segmento esperado y no el número del último segmento recibido.  Margen de datos (4 bits): Esto permite ubicar el inicio de los datos en el paquete. Aquí, el margen es fundamental porque el campo opción es de tamaño variable. Reservado (6 bits): Un campo que actualmente no está en uso pero se proporciona para el uso futuro. Indicadores (6x1 bit): Los indicadores representan información adicional:
  • 32. Protocolo TCP  URG: Si este indicador está fijado en 1, el paquete se debe procesar en forma urgente.  ACK: Si este indicador está fijado en 1, el paquete es un acuse de recibo.  PSH (PUSH): Si este indicador está fijado en 1, el paquete opera de acuerdo con el método PUSH.  RST: Si este indicador está fijado en 1, se restablece la conexión.  SYN: El indicador SYN de TCP indica un pedido para establecer una conexión.  FIN: Si este indicador está fijado en 1, se interrumpe la conexión.
  • 33. Protocolo TCP  Ventana (16 bits): Campo que permite saber la cantidad de bytes que el receptor desea recibir sin acuse de recibo.  Suma de control (CRC): La suma de control se realiza tomando la suma del campo de datos del encabezado para poder verificar la integridad del encabezado.  Puntero urgente (16 bits): Indica el número de secuencia después del cual la información se torna urgente. Opciones (tamaño variable): Diversas opciones  Relleno: Espacio restante después de que las opciones se rellenan con ceros para tener una longitud que sea múltiplo de 32 bits.
  • 34. Protocolo TCP  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. Cuando se emite un segmento, se lo vincula a un número de secuencia. Con la recepción de un segmento de datos, la máquina receptora devolverá un segmento de datos donde el indicador ACK esté fijado en 1 (para poder indicar que es un acuse de recibo) acompañado por un número de acuse de recibo que equivale al número de secuencia anterior.
  • 35. Protocolo TCP Sistema de Trasmisión Sistema de Recepción Segmento 1 ACK 1 Segmento 2
  • 36. Protocolo TCP  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.
  • 37. Protocolo TCP Sistema de Trasmisión Sistema de Recepción Segmento 1 ACK 1 Segmento 1
  • 38. Protocolo TCP  Sin embargo, si el segmento no está perdido y llega a destino, la máquina receptora lo sabrá, gracias al número de secuencia, que es un duplicado, y sólo retendrá el último segmento que llegó a destino.
  • 39. Protocolo TCP  Cómo establecer una conexión  Considerando que este proceso de comunicación, que se produce con la transmisión y el acuse de recibo de datos, se basa en un número de secuencia, las máquinas originadora y receptora (cliente y servidor) deben conocer el número de secuencia inicial de la otra máquina.  La conexión establecida entre las dos aplicaciones a menudo se realiza siguiendo el siguiente esquema:  Los puertos TCP deben estar abiertos.
  • 40. Protocolo TCP  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.
  • 41. Protocolo TCP  Este diálogo posibilita el inicio de la comunicación porque se realiza en tres etapas, como su nombre lo indica:  En la primera etapa, la máquina originadora (el cliente) transmite un segmento donde el indicador SYN está fijado en 1 (para indicar que es un segmento de sincronización), con número de secuencia N llamado número de secuencia inicial del cliente.
  • 42. Protocolo TCP  En la segunda etapa, la máquina receptora (el servidor) recibe el segmento inicial que viene del cliente y luego le envía un acuse de recibo, que es un segmento en el que el indicador ACK está fijado en 1 y el indicador SYN está fijado en 1 (porque es nuevamente una sincronización). Este segmento incluye el número de secuencia de esta máquina (el servidor), que es el número de secuencia inicial para el cliente. El campo más importante en este segmento es el de acuse de recibo que contiene el número de secuencia inicial del cliente incrementado en 1.
  • 43. Protocolo TCP  Por último, el cliente transmite un acuse de recibo, que es un segmento en el que el indicador ACK está fijado en 1 y el indicador SYN está fijado en 0 (ya no es un segmento de sincronización). Su número de secuencia está incrementado y el acuse de recibo representa el número de secuencia inicial del servidor incrementado en 1.
  • 44. Protocolo TCP Emisor Receptor SYN Secuencia = C SYN ACK = C+1 Secuencia = S ACK = S+1 Secuencia = C+1
  • 45. Protocolo TCP  Después de esta secuencia con tres intercambios, las dos máquinas están sincronizadas y la comunicación puede comenzar.  Existe una técnica de piratería llamada falsificación de IP, que permite corromper este enlace de aprobación con fines maliciosos.
  • 46. Protocolo TCP  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.  Este método se llama efectivamente el "el método de la ventana corrediza" porque, en cierta medida, se define una serie de secuencias que no necesitan acuses de recibo y que se desplaza a medida que se reciben los acuses de recibo.
  • 48. Protocolo TCP  Además, el tamaño de esta ventana no es fijo. De hecho, el servidor puede incluir el tamaño de la ventana que considera más apropiado en sus acuses de recibo guardándolo en el campo ventana. De este modo, cuando el acuse de recibo indica un pedido para aumentar la ventana, el cliente se desplazará al borde derecho de la ventana. 123456789
  • 49. Protocolo TCP  Por el contrario, en el caso de una reducción, el cliente no desplazará el borde derecho de la ventana hacia la izquierda sino que esperará que avance el borde izquierdo (al llegar los acuses de recibo). 123456789
  • 50. Protocolo TCP  Cómo terminar una conexión  El cliente puede pedir que se termine una conexión del mismo modo que el servidor. Para terminar una conexión se procede de la siguiente manera:  Una de las máquinas envía un segmento con el indicador FIN fijado en 1, y la aplicación se autocoloca en estado de espera, es decir que deja de recibir el segmento actual e ignora los siguientes.
  • 51. 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.
  • 52. 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 (16 bits); puerto de destino (16 bits); longitud total (16 bits); suma de comprobación del encabezado (16 bits); datos (longitud variable).
  • 53. 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).
  • 54. 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.
  • 55. 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).
  • 56. 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
  • 57. 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
  • 58. Protocolo FTP GUI Cliente PI Usuario DTP Servidor PI Servidor De DTP Sistema de Archivos Sistema de Archivos Canal de Control Comandos De respuesta Canal de Datos SERVIDOR CLIENTE Usuario
  • 59. 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.
  • 60. 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.
  • 61. 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.
  • 62. 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.
  • 63. Protocolo FTP Servidor PI Servidor DTP Servidor PI Servidor De DTP Sistema de Archivos Sistema de Archivos Canal de Control Canal de Datos SERVIDOR SERVIDOR Servidor PI Servidor DTP CLIENTE
  • 64. 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.
  • 65. 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>).
  • 66. 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
  • 67. Protocolo FTP Comandos de control de acceso Comando Descripción USER Cadena de caracteres que permite identificar al usuario. La identificación del usuario es necesaria para establecer la comunicación a través del canal de datos. PASS Cadena de caracteres que especifica la contraseña del usuario. Este comando debe ser inmediatamente precedida por el comando USER. El cliente debe decidir si esconder la visualización de este comando por razones de seguridad. ACCT Cadena de caracteres que especifica la cuenta del usuario. El comando generalmente no es necesario. 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. CWD Change Working Directory (Cambiar el directorio de trabajo): este comando permite cambiar el directorio actual. Este comando requiere la ruta de acceso al directorio para que se complete como un argumento. CDUP Change to Parent Directory (Cambiar al directorio principal): este comando permite regresar al 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): QUIT Comando que permite abandonar la sesión actual. Si es necesario, el servidor espera a que finalice la transferencia en progreso y después proporciona una respuesta antes de cerrar la conexión.
  • 68. Protocolo FTP Comandos de parámetros de transferencia Comando Descripción PORT Cadena de caracteres que permite especificar el número de puerto utilizado. PASV Comando que permite indicar al servidor de DTP que permanezca a la espera de una conexión en un puerto específico elegido aleatoriamente entre los puertos disponibles. La respuesta a este comando es la dirección IP del equipo y el puerto. TYPE Este comando permite especificar el tipo de formato en el cual se enviarán los datos. STRU Carácter Telnet que especifica la estructura de archivos (F de File [Archivo], R de Record [Registro], P de Page [Página]). MODE Carácter Telnet que especifica el método de transferencia de datos (S de Stream [Flujo], B de Block [Bloque], C de Compressed [Comprimido]).
  • 69. Protocolo FTP Comandos de servicio FTP Comando Descripción RETR Este comando (RETRIEVE [RECUPERAR]) le pide al servidor de DTP una copia del archivo cuya ruta de acceso se da en los parámetros. STOR 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 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. STOU Este comando es idéntico al anterior, sólo le pide al servidor que cree un archivo cuyo nombre sea único. El nombre del archivo se envía en la respuesta. APPE Gracias a este comando (append [adjuntar]) los datos enviados se concatenan en el archivo que lleva el nombre dado en el parámetro si ya existe; si no es así, se crea. ALLO Este comando (allocate [reservar]) le pide al servidor que reserve un espacio de almacenamiento lo suficientemente grande como para recibir el archivo cuyo nombre se da en el argumento.
  • 70. Protocolo FTP REST 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 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. RNFR Este comando (rename from [renombrar desde]) permite volver a nombrar un archivo. En los parámetros indica el nombre del archivo que se va a renombrar y debe estar inmediatamente seguido por el comando RNTO. RNTO Este comando (rename from [renombrar a]) permite volver a nombrar un archivo. En los parámetros indica el nombre del archivo que se va a renombrar y debe estar inmediatamente seguido por el comando RNFR. ABOR 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 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. DELE Este comando (delete [borrar]) permite que se borre un archivo, cuyo nombre se da en los parámetros. Este comando es irreversible y la confirmación sólo puede darse a nivel cliente. RMD Este comando (remove directory [eliminar directorio]) permite borrar un directorio. El nombre del directorio que se va a borrar se indica en los parámetros. MKD Este comando (make directory [crear directorio]) permite crear un directorio. El nombre del directorio que se va a crear se indica en los parámetros.
  • 71. Protocolo FTP PWD Este comando (print working directory [mostrar el directorio actual]) hace posible volver a enviar la ruta del directorio actual completa. LIST 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 directorio en el parámetro de este comando. El servidor de DTP enviará la lista de archivos del directorio ubicado en el parámetro. NLST Este comando (name list [lista de nombres]) permite enviar la lista de archivos y directorios presentes en el directorio actual. SITE Este comando (site parameters [parámetros del sistema]) hace que el servidor proporcione servicios específicos no definidos en el protocolo FTP. SYST Este comando (system [sistema]) permite el envío de información acerca del servidor remoto. STAT 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 acceso en el argumento y después devuelve la misma información que LISTA pero a través del canal de control. HELP Este comando permite conocer todos los comandos que el servidor comprende. La información se devuelve por el canal de control. NOOP Este comando (no operations [no operación]) sólo se utiliza para recibir un comando OK del servidor. Sólo se puede utilizar para no desconectarse después de un período de inactividad prolongado.
  • 72. 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).
  • 73. 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).
  • 74. Protocolo FTP Primer número Dígito Significado Descripción 1yz Respuesta positiva preliminar La acción solicitada está en progreso. Se debe obtener una segunda respuesta antes de enviar un segundo comando. 2yz Respuesta de finalización positiva La acción solicitada se ha completado y puede enviarse un nuevo comando. 3yz Respuesta intermedia positiva La acción solicita está temporalmente suspendida. Se espera información adicional del cliente. 4yz Respuesta de finalización negativa La acción solicitada no se ha realizado debido a que el comando no se ha aceptado temporalmente. Se le solicita al cliente que intente más tarde. 5yz Respuesta negativa permanente La acción solicitada no se ha realizado debido a que el comando no ha sido aceptado. Se le solicita al cliente que formule una solicitud diferente.
  • 75. Protocolo FTP Segundo número Dígito Significado Descripción x0z Sintaxis La acción tiene un error de sintaxis o sino, es un comando que el servidor no comprende. x1z Información Ésta es una respuesta que envía información (por ejemplo, una respuesta a un comando STAT). x2z Conexiones La respuesta se refiere al canal de datos. x3z Autenticación y cuentas La respuesta se refiere al inicio de sesión (USUARIO/CONTRASEÑA) o a la solicitud para cambiar la cuenta (CPT). x4z No utilizado por el protocolo FTP. x5z Sistema de archivos La respuesta se relaciona con el sistema de archivos remoto.
  • 76. 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.
  • 77. 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)
  • 78. 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.
  • 79. 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.
  • 80. 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
  • 81. 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).
  • 82. 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.
  • 83. 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.
  • 84. 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.
  • 85. Protocolo Telnet Opciones negociadas de Telnet Solicitud Respuesta Interpretación DO WILL El remitente comienza utilizando la opción El remitente no debe utilizar la opción WON'T El remitente no debe utilizar la opción WILL DO El remitente comienza utilizando la opción, después de enviar DO DON'T El remitente no debe utilizar la opción DON'T WON'T El remitente indica que ha desactivado la opción WON'T DON'T El remitente indica que el remitente debe 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.
  • 86. 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.
  • 87. 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 0 NULL Nulo Este comando permite enviar datos al host remoto sin que se interpreten (en particular para indicar que el host local todavía esta en línea). 1 LF Avance de línea Este comando permite ubicar el cursor en la línea siguiente, en la misma posición horizontal. 2 CR Retorno de carro Este comando permite ubicar el cursor en el 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.
  • 88. 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.
  • 89. Protocolo Telnet Comandos de control para la visualización Número Código Nombre Significado 7 BEL Campana Este comando permite enviar una señal visual o sonora sin cambiar la posición del cursor. 8 BS Retroceso Este comando permite cambiar la posición del cursor a su posición anterior. 9 HT Tabulación horizontal Este comando permite que la posición del cursor pase a la siguiente tabulación a la derecha. 11 VT Tabulación vertical Este comando permite que la posición del cursor pase a la siguiente tabulación de la línea siguiente. 12 FF Avance de página Este comando permite que la posición del cursor pase al final de la siguiente página mientras conserva su posición horizontal.
  • 90. 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.
  • 91. Protocolo Telnet Caracteres de control de sesión Número Código Nombre Significado 240 SE Fin de negociación de opciones 241 NOP Sin operación Este comando permite enviar datos al host remoto sin que se interpreten (en particular para indicar que el host local todavía esta en línea). 242 DM Marca de datos Permite vaciar todos los búferes entre el terminal virtual de red y el host remoto. Se relaciona con la 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. 244 IP Interrumpir proceso Este comando permite suspender, interrumpir o abandonar el proceso remoto. 245 AO Abortar salida Este comando permite suspender, interrumpir o abandonar la visualización del proceso remoto. 246 AYT ¿Estás ahí? Este comando permite controlar que el sistema remoto todavía esté "vivo".
  • 92. Protocolo Telnet 247 EC Borrar carácter Este comando permite borrar el carácter anterior. 248 EL Borrar línea Este comando permite borrar la línea anterior. 249 GA Adelante Este comando permite revertir el control, para conexiones semidúplex 250 SB SB Este comando indica que los datos que 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 255 IAC Interpretar como comando Este comando permite interpretar el byte siguiente como un comando. El comando IAC permite ir más allá de los comandos básicos.
  • 93. 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.
  • 94. 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
  • 95. Protocolo HTTP Solicitudes Decodificación Ubicación de archivo Creación de encabezados de formatoServidor WEB Cliente (Navegador) Envío de encabezados de respuesta HTTP Envío de encabezados HTTP Protocolos TCP/IP
  • 96. 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.
  • 97. 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)
  • 98. 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.
  • 99. 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)
  • 100. Protocolo HTTP Comandos Comando Descripción 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
  • 101. Encabezados Nombre del encabezado Descripción Accept Tipo de contenido aceptado por el navegador (por 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 Accept-Language Idioma que el navegador espera (de forma predeterminada, inglés) Authorization Identificación del navegador en el servidor Content-Encoding Tipo de codificación para el cuerpo de la solicitud Content-LanguageTipo de idioma en el cuerpo de la solicitud
  • 102. Content-Length Extensión del cuerpo de la solicitud Content-Type Tipo de contenido del cuerpo de la solicitud (por ejemplo, texto/html). Consulte Tipos de MIME Date Fecha en que comienza la transferencia de datos Forwarded Utilizado por equipos intermediarios entre el navegador y el servidor From Permite especificar la dirección de correo electrónico del cliente From Permite especificar que debe enviarse el documento si ha sido 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 User-Agent Cadena con información sobre el cliente, por ejemplo, el nombre y la versión del navegador y el sistema operativo
  • 103.  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
  • 104.  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
  • 105.  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
  • 106. 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 Content-Type Tipo de contenido del cuerpo de la respuesta (por ejemplo, texto/html). Consulte Tipos de MIME Date Fecha en que comienza la transferencia de datos Expires Fecha límite de uso de los datos Forwarded Utilizado por equipos intermediarios entre el navegador y el servidor Location Redireccionamiento a una nueva dirección URL asociada con el documento Server Características del servidor que envió la respuesta
  • 107.  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.
  • 108. Código Mensaje Descripción 10x Mensaje de información Estos códigos no se utilizan en la versión 1.0 del protocolo 20x Éxito Estos códigos indican la correcta ejecución de la transacción 200 OK La solicitud se llevó a cabo de manera correcta 201 CREATED Sigue a un comando POST e indica el éxito, la parte restante del cuerpo indica la dirección URL donde se ubicará el documento creado recientemente. 202 ACCEPTED La solicitud ha sido aceptada, pero el procedimiento que sigue no se ha llevado a cabo 203 PARTIAL INFORMATION Cuando se recibe este código en respuesta a un comando de GET indica que la respuesta no está completa. 204 NO RESPONSE El servidor ha recibido la solicitud, pero no hay información de respuesta 205 RESET CONTENT El servidor le indica al navegador que borre el contenido en los campos de un formulario 206 PARTIAL CONTENT Es una respuesta a una solicitud que consiste en el encabezado range. El servidor debe indicar el encabezado content-Range
  • 109. Código Mensaje Descripción 30x Redirección Estos códigos indican que el recurso ya no se encuentra en la ubicación especificada 301 MOVED Los datos solicitados han sido transferidos a una nueva dirección 302 FOUND Los datos solicitados se encuentran en una nueva dirección URL, pero, no obstante, pueden haber sido trasladados 303 METHOD Significa que el cliente debe intentarlo con una nueva dirección; es preferible que intente con otro método en vez de GET 304 NOT MODIFIED Si el cliente llevó a cabo un comando GET condicional (con la solicitud relativa a si el documento ha sido modificado desde la última vez) y el documento no ha sido modificado, este código se envía como respuesta.
  • 110. Código Mensaje Descripción 40x Error debido al cliente Estos códigos indican que la solicitud es incorrecta 400 BAD REQUEST La sintaxis de la solicitud se encuentra formulada de manera errónea o es imposible de responder 401 UNAUTHORIZED Los parámetros del mensaje aportan las especificaciones de formularios de autorización que se admiten. El cliente debe reformular la solicitud con los datos de autorización correctos 402 PAYMENT REQUIRED El cliente debe reformular la solicitud con los datos de pago correctos 403 FORBIDDEN El acceso al recurso simplemente se deniega 404 NOT FOUND Un clásico. El servidor no halló nada en la dirección especificada. Se ha abandonado sin dejar una dirección para redireccionar... :)
  • 111. Código Mensaje Descripción 50x Error debido al servidor Estos códigos indican que existe un error interno en el servidor 500 INTERNAL ERROR El servidor encontró una condición inesperada que le impide seguir con la solicitud (una de esas cosas que les suceden a los servidores...) 501 NOT IMPLEMENTED El servidor no admite el servicio solicitado (no puede saberlo todo...) 502 BAD GATEWAY El servidor que actúa como una puerta de enlace o proxy ha recibido una respuesta no válida del servidor al que intenta acceder 503 SERVICE UNAVAILABLE El servidor no puede responder en ese momento debido a que se encuentra congestionado (todas las líneas de comunicación se encuentran congestionadas, inténtelo de nuevo más adelante) 504 GATEWAY TIMEOUT La respuesta del servidor ha llevado demasiado tiempo en relación al tiempo de espera que la puerta de enlace podía admitir (excedió el tiempo asignado...)
  • 112. 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.
  • 113. 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.
  • 114. 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".
  • 115. 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.
  • 116. 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".
  • 117. 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
  • 118. 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.
  • 119. Protocolo SMTP  A continuación se brinda un resumen de los principales comandos SMTP: Comando Ejemplo Descripción HELO (ahora EHLO) EHLO 193.56.47.125 Identificación que utiliza la dirección IP o el nombre de dominio del equipo remitente MAIL FROM: MAIL FROM: originator@domain.com Identificación de la dirección del remitente RCPT TO: RCPT TO: recipient@domain.com Identificación de la dirección del destinatario DATA DATA message Cuerpo del correo electrónico QUIT QUIT Salida del servidor SMTP HELP HELP Lista de comandos SMTP que el servidor admite
  • 120. 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.
  • 121. 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.
  • 122. 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
  • 123. Protocolo POP  A continuación se brinda un resumen de los principales comandos POP3 Comandos POP3 Comando Descripción USER identification Este comando permite la autenticación. Debe estar seguido del nombre de usuario, es decir, una cadena de caracteres que identifique al usuario en el servidor. El comando USER debe preceder al comando PASS. PASS password El comando PASS permite especificar la contraseña del usuario cuyo nombre 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
  • 124. Protocolo POP NOOP Permite mantener la conexión abierta en caso de inactividad TOP <messageID> <n> 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 vuelta los encabezados del mensaje, después una línea en blanco y finalmente las primeras n líneas del mensaje. UIDL [msg] 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 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. QUIT El comando QUIT solicita la salida del servidor POP3. Lleva a la eliminación de todos los mensajes marcados como eliminados y envía el estado de esta acción.
  • 125. 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.
  • 126. 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.)
  • 127. 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).
  • 128. 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