TCP Protcolo de transporte. 4.0.1. Introducción ● En las aplicaciones en red se suele utilizar el modelo cliente servidor. Cliente y servidor funcionan.

Slides:



Advertisements
Presentaciones similares
INSTITUTO NACIONAL DE INVESTIGACION Y CAPACITACION DE TELECOMUNICACIONES, INICTEL-UNI Propiedad intelectual de Daniel 2011.
Advertisements

CAPA DE TRANSPORTE MODELO OSI
Capa 4 Capa de Transporte
TEMA1. Servicios de Red e Internet
CAPA DE TRANSPORTE DEL MODELO OSI
Protocolos de transporte y aplicación
Capa de transporte.
MODELO TCP/IP Conectividad de extremo a extremo especificando como los datos deberian ser formateados,direccionados,transmitidos,enrutados y recibidos.
PROTOCOLO DE TRANSPORTE Profesor Daniel Díaz Ataucuri Introducción
Universidad Nacional de Luján - Asignatura Teleinformática y Redes Tema: Capa de Transporte - TCP 1 Capa de Transporte “Ofrece a sus usuarios un sistema.
Capa de aplicación y transporte de TCP/IP Semestre 1 Capítulo 11
Sistemas de Comunicación Magistral Nro. 8 Capa 4: Transporte Las funciones principales de la capa de transporte son transportar y regular el flujo de información.
Funciones Capa de Transporte
TCP/IP Introducción TCP/IP Introducción. TCP/IP vs OSI Aplicación Presentación Sesión Transporte Red Enlace Física Aplicación Acceso a la red Física TCP/IP.
RESUMEN CAPITULO 6.
© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public1 Capa de Transporte del modelo OSI Aspectos básicos de networking: Capítulo 4.
© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public1 Capa de Transporte del modelo OSI Aspectos básicos de networking: Capítulo 4.
Capítulo 17: Encapsulamiento IP, Fragmentación, y Reensamble.
Modelo OSI Capas 3 y 4 Harold Sánchez Ospina
Capítulo 7: Capa de transporte
TCP garantiza que la información es recibida en orden. Para ello, cada paquete enviado tiene un número de secuencia. Cada uno de los dos procesos involucrados.
Protocolos del modelo TCP/IP
Ing. Elizabeth Guerrero V.
4. Introducción a IP,TCP,UDP,ARP,ICMP
UD 1: “Introducción a los servicios de red e Internet”
PROTOCOLO TCP Y UDP.
Ing. Elizabeth Guerrero V.
Protocolos de Transporte y Aplicación. – TCP y UDP
Tema 1 – Introducción a las Redes informáticas
S ERVICIOS DE RED E I NTERNET Nombre: Adrián de la Torre López.
Nivel de Transporte en Internet
PROTOCOLOS Modelo TCP/IP
Gabriel Montañés León. 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.
Modelo OSI Para redes………
Protocolos de Transporte y Aplicación Javier Rodríguez Granados.
Capa de Acceso de Red (Network Access Layer). Definición: Es la primera capa del modelo TCP/IP. Ofrece la capacidad de acceder a cualquier red física,
Teoría sobre redes DNS DHCP UDP OSI HTTP MA C Switch Hub Router Ethernet IPIP LDA P Netbios BOOTP Puertos IMA P POP3 SMTP Telnet SSH Cortafuegos.
Capa de Red OSI Integrantes Carlos Mario Estrada Puerta Alejandra Barragán Santiago Ramírez Santa.
Ing. En sistemas computacionales Materia: Informática II Maestro: Gabriel Orosco Alumno: Alexis Mata.
Paul Leger Modelo OSI Paul Leger
INSTITUTO TECNOLÓGICO SUPERIOR DE LA MONTAÑA INGENIERÍA INFORMÁTICA 3.2 CAPA DE TRANSPORTE INTEGRANTES DEL EQUIPO: MAXIMINA FLORES LORENZO ROSIO EVARISTO.
UF0854: Instalación y configuración de los nodos de una red local.
Teleprocesos Ing. Leonardo Párraga.
Conmutación de Ethernet
Capítulo 4: Capa Red - II ELO322: Redes de Computadores
Conceptos Básicos de Programación
MOdeLO.
Capítulo 3: Capa Transporte: Principios del control de congestión
Modelo OSI.
Capítulo 5: Capa Enlace de Datos IV
DIRECCIONAMIENTO IPV4 Prof.: Nelson Calderón.
QUE ES UN SERVIDOR DE CORREO
Redes de Comunicaciones de Datos. Introducción  Se desarrollaron redes de comunicaciones diferentes, según el tipo de señal  Conceptos: Transmisión.
Redes de Comunicaciones. Introducción  Se desarrollaron redes de comunicaciones diferentes, según el tipo de señal  Conceptos: Transmisión de datos.
Capa de Red: comunicación de host a host  La Capa de red o Capa 3 de OSI: Provee servicios para intercambiar secciones de datos individuales a través.
A RQUITECTURA C LIENTE - SERVIDOR La arquitectura del cliente servidor se divide en dos partes Los promovedores de recursos o servicios llamados servidores.
Capítulo 9: Capa de transporte
Curso: fundamentos de redes Profesor: Miguel farfan Sesion: 03
Modelo de TCP - IP.
Planificación Curso UNIDAD 1. INTRODUCCIÓN A LOS SERVICIOS EN RED
PROTOCOLO TCP Protocolo de Control de Transmisión.
Hecha por los Estudiantes: Pipe Ávila y Pipe Cárdenas Destinada: Para todos ustedes los aprendices y la maestra ingeniera.
2 Es el dispositivo digital lógico de interconexión de equipos que opera en la capa de enlace de datos del modelo OSI. Su función es interconectar dos.
PROTOCOLO DE COMUNICACIÓN Y CABLEADO ESTRUCTURADO
PROTOCOLO DE COMUNICACIÓN Y CABLEADO ESTRUCTURADO
Las tramas de Ethernet TRAMA ETHERNET Responsable de la correcta configuración de las reglas El éxito de la transmisión de los paquetes de datos Tiene.
Los protocolos de la capa de red del modelo OSI especifican el direccionamiento y los procesos que permiten que los datos de la capa de transporte sean.
Intr. a la creación y gestión de páginas web
En la familia de protocolos de Internet UDP proporciona una sencilla interfaz entre la capa de red y la capa de aplicación. UDP no otorga garantías para.
CAPA DE RED- OSI. Intercambiar secciones de datos individuales a través de la red entre dispositivos finales identificados. Provee servicios para:
Transcripción de la presentación:

TCP Protcolo de transporte

Introducción ● En las aplicaciones en red se suele utilizar el modelo cliente servidor. Cliente y servidor funcionan a nivel de aplicación. ● La capa de transporte recibe los datos de estas aplicaciones y los preparan para su direccionamiento a nivel de red. ● Transferencia extremo a extremo. ● Otras funciones: ● Multiplexación de las comunicaciones. ● Confiabilidad y mantenimiento del orden. ● Manejo de errores.

Propósito de la capa de transporte. ● Seguimiento de la comunicación individual entre aplicaciones en los hosts origen y destino. ● Mantiene y controla los flujos de comunicación entre aplicaciones. ● Segmentación de datos y gestión de cada porción. ● División del flujo en segmentos y agregación de la cabecera. ● Reensamblaje de segmentos en flujos de datos de aplicación ● Reconstrución del flujo original a partir de los segmentos recibidos. ● Identificación de las diferentes aplicaciones. ● Asociación de un puerto a cada aplicación. ● Separación de las aplicaciones de los detalles de la red. Servir de enlace entre las aplicaciones y la red. ● Adecuarse a las necesidades de las aplicaciones. ● En cuanto a requerimiento de rendimiento y fiabilidad. ● A mayor fiabilidad, menor rendimiento. A mayor rendimiento menor fiabilidad.

Separación de comunicaciones múltiples ● Supongamos una máquina que se comunica simultáneamente con otras, mediante VoIP y . ● En el es aceptable un cierto retardo, pero la información debe ser completa. ● En la conversación VoIP, la información no puede sufrir retardos, pero pequeñas pérdidas de información puede ser aceptable.

Aspectos sobre el transporte de la información ● Una comunicación que provoca un flujo contínuo de datos puede dificultar: ● La comunicación de otros datos diferentes. ● La recuperación de partes que han sufrido deterioro. ● La división en trozos de los datos de las diferentes comunicaciones permite su multiplexación (entrelazamiento). ● A nivel de TCP se dice que entre las aplicaciones se produce una “conversación”. ● El encabezado agrega información necesaria para el transporte.

Control de conversaciones ● Segmentación y reensamblaje. ● A nivel de enlace, hay limitaciones en cuanto a la MTU (PDU máxima). ● Transporte contempla este por cuestión de eficiencia, eligiendo un tamaño de PDU adecuado. ● Multiplexación. ● En el encabezado se gestiona información sobre la aplicación responsable de una conversación (puerto). ● Además se puede incluir soporte para: – Conversaciones orientadas a conexión. – Entrega confiable. – Reconstrucción ordenada de datos. – Control del flujo.

Control de conversaciones ● Establecimiento de una sesión ● Transporte prepara las aplicaciones para su comunicación, mediante el almacenamiento y gestión de cierta información útil sobre la conversación que se va a producir. ● Entrega confiable ● Parte de la comunicación puede perderse. Transporte puede recuparar la parte perdida. ● Entrega en orden ● La llegada de los datagramas puede tener un orden diferente al de salida, dadas las diferentes rutas que pueden seguir. Transporte garantiza el reensamblado en orden correcto. ● Control del flujo ● Adaptación al host más limitado para evitar pérdidas debidas a su saturación.

Soporte de comunicación confiable. ● Operaciones básicas de confiabilidad: ● Seguimiento de los datos transmitidos. ● Acuse de recibo de los datos transmitidos. ● Retransmisión de cualquier dato sin confirmar. ● La confiabilidad tiene un coste: el tráfico de control. ● A mayor cofiabilidad, mayor coste. ● Buscar compromiso entre confiabilidad y eficiencia dependiendo de la aplicación. ● Algunas aplicaciones necesitan un confiabilidad total: – Bases de datos. – Correo electrónico – Páginas web, transacciones comerciales... ● Otras se pueden permitir la pérdida parcial de sus datos: – Stream de video. – Voz

TCP y UDP ● TCP y UDP son los protocolos más comunes de transporte. ● UDP (User Datagram Protocol) ● Protocolo mínimo; prácticamente solo incluye puerto de origen y destino. ● Mejor intento (no confiable). ● DNS, VoIP y streaming de video. ● TCP (Transmission Control Protocol) ● Orientado a la conexión. ● Orden de entrega, entrega confiable y control del flujo. ● 20 bytes de carga en el encabezado (UDP solo 8). ● Ver encabezados en CCNA.

Direccionamiento del puerto ● Identificación de conversaciones. ● Puerto de origen: puerto asociado a la aplicación de origen. ● Puerto de destino: puerto asociado a la aplicación de destino. ● Puertos de aplicaciones servidor: definidos estáticamente por la IANA. El servidor conoce su número de puerto. ● Puertos de aplicaciones cliente: definidos dinámicamente. La aplicación elige un puerto que no esté siendo usado. ● El puerto de destino se puede modificar. Por ejemplo: – ● La cominación IP + nº de puerto identifica de manera única a una aplicación en una red. Se le denomina Socket. Ej. – :80 ● Dos socketes identifican una conversación.

Direccionamiento del puerto. ● La IANA asigna los números de puerto. ● ● Puertos well-known: – desde el 1 al – Corresponden a aplicaciones muy conocidas y controladas (HTTP, POP, SMTP, Telnet, SSH, SMB...) ● Puertos registrados: – Del 1024 a – Aplicaciones del usuario. Elegidos dinámicamente. – Algunas aplicaciones servidor no Well-known. ● Puertos efímeros: – Del al – Usados temporalmente para ciertas operaciones. ● Algunas aplicaciones utilizan puertos TCP y UDP. Depende de la conversación. Por ejemplo DNS.

Direccionamiento del puerto ● Para conocer las conexiones activas en un host usamos el comando “netstat”. ● Cada conexión TCP significa: ● Conexión desde el exterior. ● Consumo de recursos. ● Las conexiones innecesarias o inexplicables deben replantearse.

Comando Netstat ● ● Man netstat ● ● Netstat /?

Segmentación y reensamblaje. ● Dividir los datos de aplicación en secciones garantiza que los datos se transmitan dentro de los límites del medio y que los datos de distintas aplicaciones puedan ser multiplexados en el medio. ● TCP da información sobre: ● Origen y destino ● Orden de secuencia ● Segmentos recibidos ● Control del flujo y administración de la saturación ● UDP da información sobre: ● Origen y destino

Práctica

Cómo generar conversaciones confiables ● Conexión ● Antes de que un host envíe datos a otro: – TCP establece una conexión en ambas direcciones. – La conexión permite el rastreo de la conversación ya que ambos extremos tienen constancia de la conversación. – Iniciada la conversación de envían acuses de recibo por cada segmento recibido. – Al recibir un acuse de recibo de un segmento, deja de rastrearse el segmento. En caso contrario, se reenvía el segmento. – Establecimientos de conexión + acuses de recibo + retransmisiones = carga adicional. – No solo hay carga en la red. El seguimiento de segmentos y acuses de recibo tienen coste computacional. – Todo esto es posible gracias a los campos de TCP.

Procesos del servidor TCP. ● Los procesos (de aplicación) del servidor esperan una solicitud de información u otro servicio. ● Administrador configura proceso para escuchar en un puerto. ● No pueden haber dos procesos servidor escuchando en el mismo número de puerto dentro de los mismos servicios de la capa de Transporte. ● La asignación de un puerto a una aplicación de servidor que está activo deja el “puerto abierto”. ● Si un puerto está abierto, TCP acepta las conexiones al socket y las dirige a la aplicación de servidor correspondiente. ● Normalmente un servidor (físico) tiene varios puertos abiertos.

Establecimiento y finalización de la conexión TCP ● Inicio de la conexión: ● Intercambio de señales de 3 vías (3 handshake). – Establece que el dispositivo de destino esté presente en la red. – Verifica que el dispositivo de destino tenga un servicio activo y esté aceptando las peticiones en el número de puerto de destino que el cliente que lo inicia intente usar para la sesión. – Informa al dispositivo de destino que el cliente de origen intenta establecer una sesión de comunicación en ese número de puerto. ● Pasos: – Origen: Envía SYN + nº de secuencia origen (SeqOr_0) – Destino: Envía SYN ACK + SeqOr_0+1 + nº de sencuencia destino (SeqDes_0) – Origen: Comprueba SeqOr+1. Envía ACK + SeqOr_0+1 + SeqDes_0+1. ● Campos de control (1 bit cada uno): ● URG – Urgente. ● ACK – Acuse de recibo. ● PSH – Empuje (vaciar buffer) ● RST – Reset = reconfiguración de conexión. ● SYN – Sincronizar ● FIN – No hay más datos desde el emisor. ● Cuando uno de los campos está a 1, indica que información de control incluye el segmento.

Análisis del 3-Handshake con Wireshark. ● Analizar con Wireshark una conexión a un servidor web. ● Ver transparencia CCNA: ● ● ●

Terminación de una sesión TCP ● Dos sesiones: ● Del cliente al servidor ● Del servidor al cliente ● El cliente envía FIN y el servidor confirma con ACK la recepción. El cliente finaliza la sesión. ● El servidor enfía FIN y el cliente confirma con ACK la recepción. El servidor finaliza la sesión.

Actividad con PT

Reensamblaje de segmentos TCP ● Número de secuencia inicial (ISN). ● Los segmentos se enumeran y etiquetan secuencialmente en el origen. ● En el destino se comprueba que los segmentos llegan en orden. ● Cuando un segmento llega en orden no contiguo se almacena en un buffer en espera de que lleguen los segmentos perdidos. ● Cuando llegan los segmentos perdidos, se procesan junto con los que estaban en espera en el buffer.

Acuse de recibo de TCP con uso de ventanas. ● El número de secuencia y de acuse de recibo indica el número de bytes contenidos en los segmentos: ● Nº de secuencia: Nº relativo de bytes que han sido transmitidos en esta sesión más 1. ● Nº de reconocimiento: indica el siguiente byte que el receptor espera en esta sesión (acuso de recibo de expectativa). ● El origen entiende que se han recibido todos los bytes enviados y envía el siguiente lote, utilizando como número de secuencia el nº de acuse de recibo. ● En vez de enviar un acuse de recibo por cada byte, las confirmaciones van por lotes. ● Por ejemplo, si se comienza con un número de secuencia 2000, si se reciben 10 segmentos de 1000 bytes cada uno, se devolverá al origen un número de reconocimiento igual a ● Para saber hasta cuando puede esperar el destino para enviar un acuse de recibo se usa una ventana: ● El tamaño de ventana indica la cantidad de datos que un origen puede transmitir antes de que un acuse de recibo deba ser recibido. ● El tamaño de ventana se indica en el encabezado.

Manejo de la pérdida de segmentos. ● Solo se confirman los datos de los segmentos contiguos: ● Si se reciben los segmentos con números de secuencia de 1500 a 3000 y de 3400 a 3500, el número de acuse de recibo será ● Al no recibir confirmación, el origen vuelve al último acuse de recibo y retransmite desde aquí. ● Implementación típica: – Origen envia segmento y lo pone en cola. – Inicia un temporizador. – Si no recibe confirmación antes del timeout reenvía el segmento. ● Acuse de recibo selectivo: – Confirmación de segmentos discontínuos. – Reenvío solo de los segmentos perdidos. ● Ver animación.

Control de la congestión ● Al recibir confirmación el origen entiende que puede seguir enviando. ● El tamaño de ventana indica cuantos segmentos se envian antes de una confirmación. ● El tamaño de ventana se acuerda durante la conexión. ● TCP se ajusta al máximo que puede transmitir. ● Ver gráfico (ventana 3 KB)

Reducción del tamaño de la ventana. ● Recursos limitados en el host. ● Reducción de la ventana: – Disminución de la tasa de transmisión debido a que el origen espera acuses de recibo con más frecuencia. – Ver gráfico. ● Después de periodos sin pérdidas o recursos limitados: – Aumento progresivo de la ventana. – Aumenta hasta que vuelvan a haber pérdidas. ● Proceso de aumento y reducción contínuo, hasta encontrar el tamaño óptimo. ● Redes eficientes → Ventana grande. ● Redes ineficientes o sobrecargadas → Ventana pequeña. ● Ver gráfico.

UDP. Baja sobrecarga vs. confiabilidad ● No orientado a la conexión. ● No retransmite. ● No secuencia. ● No controla el flujo. ● Si se necesitan estas características, se pueden implementar aparte. ● DNS, SNMP, DHCP, RIP, TFTP, juegos online. ● Para aplicaciones donde un retraso es peor que la pérdida de datos.

Reensamblaje de datagramas de UDP ● No hay conexión. Cuando una aplicación está preparada para enviar datos, los envía (UDP orientado a transacción). ● Los fragmentos UDP son llamados datagramas (igual que los paquetes de red). ● UDP no ordena ni controla pérdidas. Sencillamente reensambla los datos de los datagramas que llegaron, en el orden en que llegaron y se los pasa a la aplicación. ● Si el orden es importante, corre de cuenta de la aplicación.

Procesos y solicitudes del servidor UDP. ● Las aplicaciones UDP también tiene asociados números de puerto well-known o registrados. ● Cuando UDP recibe un datagrama destinado a cierto puerto, le envía los datos a la aplicación servidor asociada. ● Ej: UDP 53 → DNS; UDP 1812 → RADIUS.

Procesos de cliente UDP ● La aplicación cliente elige un puerto al azar para usar como nº de puerto origen. ● Determina el puerto destino (well-known o registrado). ● Elección azarosa del puerto origen: aporta seguridad al evitar la predecibilidad de puertos abiertos. ● Elegidos el puerto origen y destino, se adjuntan estos datos en todos los datagramas (en ambos sentidos, aunque con su posición invertida).

Actividad con PT.

Actividad con netstat

Actividad con Wireshark

Actividad con Wireshark

Actividad con PT