El documento describe las funciones clave de la capa de transporte en la red, incluyendo la segmentación y reensamblaje de datos, el seguimiento de múltiples conversaciones, la identificación de aplicaciones mediante números de puerto, y el soporte de comunicaciones confiables a través del control de flujo y la retransmisión de datos. También compara los protocolos TCP y UDP, explicando que TCP proporciona entrega confiable y ordenada de datos mediante conexiones orientadas, mientras que UDP ofrece una entrega sin conexión de baja sobrec
- Permitir múltiples aplicaciones para comunicarse a través de la red al mismo tiempo en un solo dispositivo
- Asegurar que, si se requiere, todos los datos sean recibidos de manera confiable y en orden por la aplicación correcta.
- Emplear mecanismos de manejo de error
- Permitir múltiples aplicaciones para comunicarse a través de la red al mismo tiempo en un solo dispositivo
- Asegurar que, si se requiere, todos los datos sean recibidos de manera confiable y en orden por la aplicación correcta.
- Emplear mecanismos de manejo de error
Descripción del funcionamiento de la capa de transporte del modelo OSI. Interpretación de los campos de la cabecera del segmento formado en de la capa 4 de transporte.
2. La capa de transporte es responsable de la general transferencia de
extremo a extremo de datos de la aplicación.
La capa de transporte
también abarca estas
funciones:
• Permite múltiples
aplicaciones para
comunicarse a través de la
red al mismo tiempo en un
solo dispositivo.
• Asegura que, si es necesario,
todos los datos son
recibidos de forma fiable y
con el fin de la aplicación
correcta.
• Utiliza mecanismos de
control de errores.
3. Funciones de la capa de transporte
Propósito de la capa de Transporte.
La capa de transporte proporciona para la segmentación de los datos y el
control necesarios para volver a montar estas piezas en el varios flujos de
comunicación.
Sus principales responsabilidades para lograr esto son:
4. Seguimiento de conversaciones individuales.
Cualquier host puede tener múltiples aplicaciones que se están
comunicando a través de la red. Cada una de estas aplicaciones será
comunicarse con una o más aplicaciones en hosts remotos. Es
responsabilidad de la capa de transporte para mantener los múltiples flujos
de comunicación entre estas aplicaciones.
Segmentación de datos.
A medida que cada aplicación crea un flujo de datos que se enviarán a una
aplicación remota, estos datos deben estar preparados para ser enviados a
través del os medios de comunicación en piezas manejables. Los protocolos
de la capa de Transporte describen los servicios que este segmento de datos
de la capa de aplicación. Esto incluye la encapsulación requerido en cada
pieza de datos. Cada pieza de datos de la aplicación requiere encabezados
que se añade en la capa de Transporte para indicar la comunicación a la que
está asociado.
5. Segmentos de volver a montar
En el host de recepción, cada dato se puede dirigir a la aplicación
correspondiente. Además, estos individuo piezas de datos también deben ser
reconstruidos en un flujo de datos completo que es útil para la capa de
aplicación. La protocolos de la capa de transporte describen la forma en que
se utiliza la capa de información de cabecera de transporte para volver a
montar los datos piezas en los arroyos que se pasan a la capa de aplicación.
La identificación de las aplicaciones
Con el fin de pasar corrientes de datos a las aplicaciones apropiadas, la capa
de transporte debe identificar la aplicación de destino. A lograr esto, la capa
de transporte asigna una aplicación un identificador. Los protocolos TCP / IP
llaman a este identificador de un puerto número. Cada proceso de software
que necesita para acceder a la red se le asigna un número de puerto
exclusivo en ese anfitrión. Este puerto número se utiliza en el encabezado de
capa de transporte para indicar a la aplicación que ese pedazo de datos está
asociado.
6.
7. La separación de comunicaciones múltiples.
Considere la posibilidad de un ordenador conectado a una red que está
recibiendo simultáneamente y el envío de mensajes instantáneos de correo
electrónico y, ver páginas web, y la realización de una llamada telefónica
VoIP. Cada una de estas aplicaciones es el envío y recepción de datos a través
de la red al mismo tiempo. Sin embargo, los datos de la llamada no se dirige
al navegador web, y el texto de un instante mensaje no aparece en un correo
electrónico. Además, los usuarios requieren que una página de correo
electrónico o Web ser completamente recibido y presentado para que la
información sea se considera útil. Demoras leves se consideran aceptables
para asegurar que se reciba la información completa y presentado.
Por el contrario, en ocasiones faltan pequeñas partes de una conversación
telefónica podría considerarse aceptable. Uno puede inferir el audio que falta
en el contexto de la conversación o pedir a la otra persona que repita lo que
dijo. Es considerado preferible a los retrasos que resultarían de pedir a la red
para gestionar y vuelva a enviar segmentos que faltan.
8. En este ejemplo, el usuario - no en la red - gestiona el reenvío o la
sustitución de la información faltante.
9. Control de las conversaciones
Las principales funciones especificadas por todos los protocolos de capa de
transporte incluyen:
Segmentación y Reensamblaje.
Conversación Multiplexing.
Además de usar la información contenida en las cabeceras, de las funciones
básicas de segmentación de datos y montaje, algunos protocolos de la capa
de transporte ofrecen:
Conversaciones orientados a conexión.
Entrega fiable.
Reconstrucción de datos ordenada.
Control de flujo.
10.
11. Establecer una sesión.
La capa de transporte puede proporcionar esta orientación de conexión
mediante la creación de unas sesiones entre las aplicaciones. Estos
conexiones preparan las aplicaciones para comunicarse unos con otros antes
de que se transmite ningún dato. Dentro de estos sesiones, los datos para
una comunicación entre las dos aplicaciones pueden ser manejadas
estrechamente.
Confiable en la entrega.
Por muchas razones, es posible que una parte de los datos se corrompan o
se pierde por completo, ya que se transmite a través de red. La capa de
transporte puede garantizar que todas las piezas lleguen a su destino
haciendo que el dispositivo de la fuente a retransmitir todos los datos que se
pierden.
Mismo orden de entrega.
Dado que las redes pueden proporcionar múltiples rutas que pueden tener
diferentes tiempos de transmisión, los datos pueden llegar en el mal orden.
Por la numeración y secuencia de los segmentos, la capa de transporte puede
garantizar que estos segmentos se vuelven a montar en el orden correcto.
12. Control de Flujo.
Hosts de la red cuentan con recursos limitados, como la memoria o
ancho de banda. Cuando la capa de transporte es consciente de que
estos recursos están sobrecargados, algunos protocolos pueden solicitar
que la aplicación de envío reducir la tasa de flujo de datos. Es hecho en
la capa de transporte mediante la regulación de la cantidad de datos de
la fuente transmite como un grupo. El control de flujo puede evitar la
pérdida de segmentos en la red y evitar la necesidad de retransmisión.
En los protocolos se tratan en este capítulo, estos servicios se explicarán
con más detalle.
13.
14. Apoyo a la Comunicación Confiable
En términos de redes, fiabilidad significa asegurar que cada pieza de información
que la fuente envía llega a su destino. En la capa de transporte las tres
operaciones básicas de confiabilidad son:
El seguimiento de los datos transmitidos.
Reconocer los datos recibidos.
Retransmitir los datos sin acuse de recibo.
15. La determinación de la necesidad de confiabilidad.
Las aplicaciones, como bases de datos, páginas web y correo electrónico,
requieren que todos los datos enviados lleguen a su destino en su estado
original, a fin de que los datos para ser útil. Los datos faltantes pueden causar
una comunicación corrupta que es incompletos o ilegibles.
La imposición de sobrecarga para garantizar la fiabilidad para esta aplicación
podría reducir la utilidad de la aplicación. La imagen en una secuencia de vídeo
sería muy degradada si el dispositivo de destino tenía que dar cuenta de la
pérdida de datos y retrasar la corriente a la espera de su llegada. Es mejor
hacer la mejor imagen posible en su momento con los segmentos que llegan y
renunciar fiabilidad. Si se requiere fiabilidad por alguna razón, estas
aplicaciones pueden proporcionar la comprobación de errores y solicitudes de
retransmisión.
16. TCP y UDP
Los dos protocolos de capa de transporte más comunes de protocolo TCP / IP es el
protocolo de control de transmisión (TCP) y User Datagram Protocol (UDP).
Ambos protocolos gestionar la comunicación de múltiples aplicaciones. Las
diferencias entre los dos son las funciones específicas que cada protocolo
implementa.
User Datagram Protocol (UDP) UDP es un protocolo sin conexión sencilla, se
describe en el RFC 768. Tiene la ventaja de proveer a baja sobrecarga entrega de
datos. Las piezas de comunicación en UDP se llaman datagramas. Estos
datagramas se envían como "mejor esfuerzo" por este protocolo de capa de
transporte.
Las aplicaciones que utilizan UDP se incluyen:
Sistema de nombres de dominio (DNS)
Video Streaming
Voz sobre IP (VoIP)
17. Protocolo de Control de Transmisión (TCP)
TCP es un protocolo orientado a la conexión, que se describe en el RFC 793.
TCP provoca una sobrecarga adicional para obtener funciones. Las funciones
adicionales especificadas por TCP son la misma entrega del pedido, entrega
confiable, y control de flujo. Cada TCP segmento tiene 20 bytes de sobrecarga
en la cabecera de encapsulación de los datos de la capa de aplicación,
mientras que cada segmento UDP sólo tiene 8 bytes de sobrecarga.
Las aplicaciones que utilizan TCP son:
Los navegadores Web
E-mail
Transferencias de archivos
18.
19. Direccionamiento
Cuando una aplicación de cliente envía una petición a una aplicación de servidor,
el puerto de destino contenida en la cabecera es el puerto número que se asigna
al daemon servicio que se ejecuta en la máquina remota. El software cliente debe
saber que el puerto número está asociado con el proceso del servidor en el host
remoto. Este número de puerto de destino está configurado, ya sea por
incumplimiento o manualmente. Por ejemplo, cuando una aplicación de
navegador web hace una solicitud a un servidor web, utiliza el navegador TCP y el
puerto número 80 menos que se especifique lo contrario. Esto se debe a que el
puerto TCP 80 es el puerto por defecto asignado a las aplicaciones webserving.
Muchas aplicaciones comunes tienen asignaciones de puerto predeterminadas.
20. El puerto de origen en un segmento o el encabezado del datagrama de una
solicitud de cliente se genera al azar de números de puerto mayor del 1023.
Siempre y cuando no entre en conflicto con otros puertos en uso en el sistema,
el cliente puede elegir cualquier número de puerto de la gama de números de
puerto por omisión utilizados por el sistema operativo. Este número de puerto
actúa como dirección de retorno para el solicitando la aplicación. La capa de
transporte realiza un seguimiento de este puerto y la aplicación que inició la
solicitud para que cuando se devuelve una respuesta, puede ser enviada a la
aplicación correcta. El número de puerto aplicación solicitante es utilizado
como el número de puerto de destino en la respuesta a volver desde el
servidor.
La combinación del número de puerto de capa de transporte y la dirección IP
de capa de red asignado al host únicamente identifica un proceso particular
que se ejecuta en un dispositivo host específico. Esta combinación se llama un
socket. En ocasiones, puede encontrar el número de puerto y socket términos
utilizados indistintamente. En el contexto de este curso, la toma de término se
refiere sólo a la combinación única de dirección IP y número de puerto. Un par
de sockets, que consiste en la IP de origen y destino direcciones y números de
puerto, también es único e identifica la conversación entre los dos ejércitos.
21. Por ejemplo, la solicitud de la página web HTTP que se envía a un servidor web
(puerto 80) que se ejecuta en un host con una Capa 3 IPv4 dirección
192.168.1.20 estaría destinado a 192.168.1.20:80 socket. Si el navegador
solicita la página Web se está ejecutando en el host 192.168.100.48 y el
número de puerto dinámico asignado el navegador web es 49152, la toma de la
página web sería 192.168.100.48:49152.
La Internet Assigned Numbers Authority (IANA) asigna números de puerto.
IANA es un organismo de normalización que es responsable para la
asignación de diversas normas de direccionamiento.
Hay diferentes tipos de números de puerto:
22. Puertos conocidos (Números del 0 al 1023) - Estos números se reservan para
servicios y aplicaciones. Ellos son comúnmente usado para aplicaciones como
HTTP (servidor web) POP3 y SMTP (servidor de correo electrónico) y Telnet.
Al definir estos puertos conocidos para aplicaciones de servidor, las
aplicaciones cliente pueden ser programados para solicitar una conexión con
ese específico puerto y su servicio asociado.
Puertos registrados (números 1024 a 49151) - Estos números de puerto se
asignan a los procesos de usuario o aplicaciones. Estos procesos son
principalmente aplicaciones individuales que un usuario ha elegido para
instalar en lugar de las aplicaciones más comunes que los recibiría un puerto
bien conocido. Cuando no se usa para un recurso del servidor, estos puertos
también se pueden utilizar dinámicamente seleccionado por un cliente como
su puerto de origen.
23. Puertos dinámicos o privados (Números 49.152-65.535) - también conocidos
como puertos efímeros, por lo general son asignados dinámicamente a las
aplicaciones cliente cuando se inicia una conexión. No es muy común que un
cliente se conecte a un servicio a través de un puerto dinámico o privado
(aunque algunos programas de intercambio de archivos peer-to-peer hacen).
A veces es necesario saber qué conexiones TCP activas están abiertos y
funcionando en equipos en red. Netstat es una utilidad de red importante que
se puede utilizar para verificar las conexiones. Netstat indica el protocolo en
uso, lo local la dirección y el número de puerto, la dirección en el extranjero y
número de puerto, y el estado de la conexión.
Conexiones TCP inexplicables pueden suponer una importante amenaza para la
seguridad. Esto es debido a que pueden indicar que algo o alguien se conecta
con el host local. Además, las conexiones TCP innecesarias pueden consumir
sistema valiosa recursos y esto puede ralentizar el rendimiento del host.
Netstat debe ser utilizado para examinar las conexiones abiertas en un host
cuando el rendimiento parece estar comprometida. Muchas opciones útiles
están disponibles para el comando netstat.
24. Segmentación y reensamblado -
Divide and Conquer
Algunas aplicaciones transmiten grandes cantidades de datos - en algunos
casos, muchos gigabytes. No sería práctico para enviar todos estos datos en una
sola pieza de gran tamaño. Ningún otro tráfico de la red se puede transmitir
mientras se están enviando estos datos. Un pedazo grande de datos pueden
tardar minutos o incluso horas para enviar. Además, si hay cualquier error, el
archivo de datos completo tendría que estar perdido o molesta. Los dispositivos
de red no tienen buffers de memoria suficiente para almacenar esta cantidad de
datos, si bien es transmitida o recibida. El límite varía dependiendo de la
tecnología de red y el medio físico específico que se en uso.
Dividir los datos de aplicación en piezas tanto se asegura de que los datos se
transmiten dentro de los límites de los medios de comunicación y que los datos
de diferentes aplicaciones pueden ser multiplexados a los medios de
comunicación.
25. TCP y UDP manejan segmentación diferente.
En TCP, la cabecera de cada segmento contiene un número de secuencia. Este
número de secuencia permite que las funciones de la capa de transporte en el
host de destino para volver a montar los segmentos en el orden en el que fueron
transmitidos. Esto asegura que el aplicación de destino tiene los datos en la forma
exacta el remitente pretende.
Aunque los servicios que utilizan UDP también rastrean las conversaciones entre
las aplicaciones, que no tienen que ver con el orden en el que se transmite la
información, o en el mantenimiento de una conexión. No hay un número de
secuencia de la UDP cabecera. UDP es un diseño más simple y genera menos
sobrecarga que TCP, dando como resultado una transferencia más rápida de los
datos. La información puede llegar en un orden diferente de lo que se transmitió
porque los paquetes de diferentes pueden tomar caminos diferentes a través de
la red. Una aplicación que utiliza UDP debe tolerar el hecho de que los datos no
pueden llegar en el orden en el que fue enviado.
27. Here comes your footer Page 27
Tcp- Conversaciones Confiables
La distinción clave entre TCP y UDP es la confiabilidad. La fiabilidad de la
comunicación TCP se realiza utilizando sesiones orientadas a la conexión.
Antes de que un host que utiliza TCP envía datos a otro host, la capa de
Transporte inicia un proceso para crear una conexión con el destino. Esta
conexión permite el seguimiento de una sesión, o secuencia de comunicación
entre los anfitriones. Este proceso asegura que cada huésped es consciente y
preparado para la comunicación. Una completa conversación TCP requiere el
establecimiento de una sesión entre los hosts en ambas direcciones.
28. Here comes your footer Page 28
Después de una sesión se ha establecido, el destino envía acuses de recibo a la
fuente para los segmentos que se recibe. Estos reconocimientos son la base de
la fiabilidad en la sesión TCP. Como la fuente recibe una acuse de recibo, sabe
que los datos han sido entregado con éxito y se puede dejar que los datos de
seguimiento. Si la fuente no recibe un acuse de recibo dentro de un período de
tiempo predeterminado, que retransmite los datos al destino. Parte de la
sobrecarga adicional del uso de TCP es el tráfico de red generado por los
reconocimientos y las retransmisiones.
29. Here comes your footer Page 29
El establecimiento de las sesiones crea una sobrecarga en forma de segmentos
adicionales que se intercambian. También hay sobrecarga adicional en los hosts
individuales creadas por la necesidad de no perder de vista que los segmentos
están en espera acuse de recibo y por el proceso de retransmisión.
Esta fiabilidad se consigue haciendo que los campos en el segmento TCP, cada
uno con una función específica, como se muestra en la figura.
42. Here comes your footer Page 42
Procesos TCP Server
Los procesos de aplicación se ejecutan en los servidores. Estos procesos
esperan hasta que un cliente inicia la comunicación con una solicitud de
información u otros servicios.
Cada proceso de aplicación que se ejecuta en el servidor está
configurado para utilizar un número de puerto, ya sea por defecto o
manualmente por un administrador del sistema. Un servidor individual no
puede tener dos servicios asignados al mismo número de puerto en el
mismos servicios de capa de transporte. Un host que ejecuta una
aplicación de servidor web y una aplicación de transferencia de archivos
no puede tener configurado para utilizar el mismo puerto (por ejemplo,
puerto TCP 8080).
44. Here comes your footer Page 44
Cuando se asigna una aplicación a un servidor activo puerto específico,
ese puerto se considera que es "abierto" en el servidor. Esto significa que
la capa de transporte acepta segmentos de procesos dirigidos a ese
puerto. Cualquier solicitud de cliente entrante dirigido a la toma correcta
es aceptada y los datos se pasan a la aplicación de servidor. No puede
haber muchos puertos simultáneos abierto en un servidor, una para cada
activa aplicación de servidor. Es común para un servidor para
proporcionar más de un servicio, tal como un servidor web y un servidor
FTP, al mismo tiempo.
Una forma de mejorar la seguridad en el servidor es restringir el acceso al
servidor sólo a los puertos asociados a los servicios y aplicaciones que
deberían ser accesibles a los solicitantes autorizados.
50. Here comes your footer Page 50
Establecimiento de Conexión y Terminación
Cuando dos hosts se comunican a través de TCP, se establece una
conexión antes de que se pueden intercambiar datos. Después de que la
comunicación se ha completado, las sesiones se cierran y la conexión se
termina. La conexión y la sesión son mecanismos que permiten la función
de fiabilidad de TCP.
El anfitrión da seguimiento de cada segmento de datos dentro de una
sesión e intercambia información acerca de lo que se reciben los datos
de los ordenadores de el uso de la información en el encabezado TCP.
Cada conexión implica secuencias de comunicación de un solo sentido, o
sesiones para establecer y terminar el proceso TCP entre los dispositivos
finales.