Capa Transporte1 Capítulo 3: Capa Transporte - I ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al.

Slides:



Advertisements
Presentaciones similares
CAPA DE TRANSPORTE MODELO OSI
Advertisements

Capa 4 Capa de Transporte
TEMA1. Servicios de Red e Internet
Programación Interactiva Aplicaciones Cliente-Servidor
CAPA DE TRANSPORTE DEL MODELO OSI
Capítulo 7 Multimedia en Redes de Computadores
CAPA DE RED DEL MODELO DE REFERENCIA OSI
Ingeniería en Automática Industrial Software para Aplicaciones Industriales I Ingeniería en Automática Industrial Software para Aplicaciones Industriales.
Capa de transporte.
MODELO TCP/IP Conectividad de extremo a extremo especificando como los datos deberian ser formateados,direccionados,transmitidos,enrutados y recibidos.
MODELO TCP/IP.
7: Multimedia en Redes de Computadores7-1 Capítulo 7 Multimedia en Redes de Computadores Computer Networking: A Top Down Approach Featuring the Internet,
PROTOCOLO DE TRANSPORTE Profesor Daniel Díaz Ataucuri Introducción
Capa Transporte3-1 Capítulo 3: Continuación r 3.1 Servicios de la capa transporte r 3.2 Multiplexing y demultiplexing r 3.3 Transporte sin conexión: UDP.
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.
5: Capa Enlace de Datos5-1 Capítulo 5: Capa de Enlace de Datos ELO322: Redes de Computadores Agustín J. González Este material está basado en el material.
Funciones Capa de Transporte
8.6-1 Capítulo 8, Sección 8.6: IPsec Material basado en el Texto: Computer Networking: A Top Down Approach Featuring the Internet, Jim Kurose, Keith Ross.
CAPA DE RED  Aquí se lleva a cabo el direccionamiento lógico que tiene carácter jerárquico, se selecciona la mejor ruta hacia el destino mediante el.
7: Multimedia en Redes de Computadores7-1 Capítulo 7 Multimedia en Redes de Computadores Material tomado de: Computer Networking: A Top Down Approach Featuring.
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.
Capítulo 2: Capa Aplicación
Introducción1-1 Capítulo 1: Introducción ELO322: Redes de Computadores Agustín J. González Este material está basado en el material preparado como apoyo.
Fundamentos de TCP/IP.
2: Capa Aplicación 1 Capítulo 2: Capa Aplicación  2.1 Principios de la aplicaciones de red  2.2 Web y HTTP  2.3 FTP  2.4 Correo Electrónico  SMTP,
2: Capa Aplicación 1 Capa Aplicación: FTP ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al texto.
Introducción 1-1 Capítulo 1: Introducción ELO322: Redes de Computadores Agustín J. González Este material está basado en: El material preparado como apoyo.
Capa Transporte 3-1 Capítulo 3: Capa Transporte - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
Capa Transporte3-1 Capítulo 3: Capa transporte ELO322: Redes de Computadores Agustín J. González Este material está basado en el material preparado como.
2: Capa Aplicación 1 Capítulo 2: Capa Aplicación - I ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
2: Capa Aplicación 1 Capítulo 2: Capa Aplicación - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
2: Capa Aplicación 1 Capa Aplicación: P2P ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al texto.
2: Capa Aplicación 1 Capa Aplicación: Programación de sockets ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material.
Capa de Red4-1 Capítulo 4: Capa Red - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al texto Computer.
Modelo OSI Capas 3 y 4 Harold Sánchez Ospina
Introducción 1-1 Capítulo 1: Introducción ELO322: Redes de Computadores Agustín J. González Este material está basado en: El material preparado como apoyo.
Introducción 1-1 Capítulo 1: Introducción ELO322: Redes de Computadores Agustín J. González Este material está basado en: El material preparado como apoyo.
Capítulo 7: Capa de transporte
2: Capa Aplicación 1 Capa Aplicación: File Transfer Protocol ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material.
2: Capa Aplicación Capa Aplicación: P2P ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al texto Computer.
Protocolos del modelo TCP/IP
Ing. Elizabeth Guerrero V.
2: Capa Aplicación 1 Capítulo 2: Capa Aplicación - I ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
Capítulo 3: Capa Transporte - I
Jean Carlo Fernandez C.I Cesar Arismendi C.I
PROTOCOLO TCP Y UDP.
Ing. Elizabeth Guerrero V.
Tema 1 – Introducción a las Redes informáticas
Capa Aplicación: Programación de sockets
Capítulo 5: Capa Enlace de Datos - I
Nivel de Transporte en Internet
Significa Modelo de Interconexión de sistemas Abiertos.
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………
2: Capa Aplicación 1 Capa Aplicación: Programación de sockets ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material.
Protocolos de Transporte y Aplicación
Capa Transporte 1 Capítulo 3: Capa Transporte - I ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al.
Protocolos de Transporte y Aplicación Javier Rodríguez Granados.
Sistemas de Comunicación Magistral Nro. 6 Capa 3: Red La Capa de Red provee principalmente los servicios de envío, enrutamiento (routing) y control de.
Capítulo 3: Capa Transporte - I
Capítulo 3: Capa Transporte - I
Capa Aplicación: Programación de sockets
Capítulo 3: Capa Transporte - I
Capítulo 3: Capa Transporte - I
Capa Aplicación: File Transfer Protocol
Capa Aplicación: File Transfer Protocol
Capítulo 3: Capa Transporte - I
Capítulo 3: Capa Transporte - I
Capítulo 3: Capa Transporte - I
Capa Aplicación: File Transfer Protocol
Transcripción de la presentación:

Capa Transporte1 Capítulo 3: Capa Transporte - I ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al texto Computer Networking: A Top Down Approach Featuring the Internet 3rd edition. Jim Kurose, Keith Ross Addison-Wesley, 2004.

Capa Transporte2 Capítulo 3: Capa Transporte Objetivos:  Entender los principios detrás de los servicios de la capa transporte:  Multiplexing / demultiplexing  Transferencia confiable de datos  Control de flujo  Control de congestión  Aprender sobre los protocolos de transporte en la Internet:  UDP: transporte sin conexión  TCP: transporte orientado a la conexión  Control de congestión en TCP

Capa Transporte3 Contenido de Capítulo 3  3.1 Servicios de la capa transporte  3.2 Multiplexing y demultiplexing  3.3 Transporte sin conexión: UDP  3.4 Principios de transferencia confiable de datos  3.5 Transporte orientado a la conexión: TCP  Estructura de un segmento  Transferencia confiable de datos  Control de flujo  Gestión de la conexión  3.6 Principios del control de congestión  3.7 Control de congestión en TCP

Capa Transporte4 Protocolos y servicios de transporte  Proveer comunicación lógica entre procesos de aplicaciones corriendo en diferentes hosts  Los protocolos de transporte corren en sistemas terminales (computadores, no equipos internos como routers)  Lado Tx: divide el mensaje de la aplicación en segmentos, y los pasa a la capa de red  Lado Rx: si se requiere, re- ensambla los segmentos del mensaje, y lo pasa a la capa aplicación  Hay más de un protocolo de transporte disponible para las aplicaciones  Internet: TCP y UDP  Hoy también SCTP (2000), DCCP (2005) application transport network data link physical application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical logical end-end transport

Capa Transporte5 Capa transporte vs. capa red  Capa transporte: encargada de la comunicación lógica entre procesos  Depende y mejora los servicios de la capa de red  Capa de red: encargada de la comunicación lógica entre hosts Analogía:  12 niños en una casa envían cartas a 12 niños. en otra casa  Ann y Bill recopilan las cartas en cada hogar y las envían por correo. También distribuyen las cartas que llegan.  Procesos = niños  Mensajes aplicación = cartas en sobres  Hosts = casas  Protocolo de transporte = Ann y Bill  Protocolo capa red = servicio de correos

Capa Transporte6 Protocolos de capa transporte en Internet  TCP: Entrega confiable y en orden ‏  Control de flujo  Tiene: control de congestión  Establecimiento de conexión  UDP: Entrega no confiable, tal vez desordenada: ‏  Básicamente el mismo servicio que IP: “mejor esfuerzo” (best- effort) ‏  Qué servicios no se ofrecen:  Garantías de retardo  Garantías de ancho de banda  (Básicamente porque no es fácil implementarlo basándose en los servicios de IP) ‏ application transport network data link physical application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical logical end-end transport

Capa Transporte7 Contenido de Capítulo 3  3.1 Servicios de la capa transporte  3.2 Multiplexing y demultiplexing  3.3 Transporte sin conexión: UDP  3.4 Principios de transferencia confiable de datos  3.5 Transporte orientado a la conexión: TCP  Estructura de un segmento  Transferencia confiable de datos  Control de flujo  Gestión de la conexión  3.6 Principios del control de congestión  3.7 Control de congestión en TCP

Capa Transporte8 Multiplexación/demultiplexación aplicación transporte red enlace física P1 aplicación transporte red enlace física aplicación transporte red enlace física P2 P3 P4 P1 host 1 host 2 host 3 = proceso= socket Entrega el segmento recibido al socket correcto Demultiplexación en host Rx: Capa de transporte: Recolección de datos desde múltiples sockets, usa info. de encabezado (puerto e IP origen ‏, puerto e IP destino) Multiplexación en host Tx:

Capa Transporte9 Cómo trabaja la demultiplexación  El host Rx recibe datagramas IP  Cada datagrama tiene dirección IP fuente y dirección IP destino  Cada datagrama incluye 1 segmento de la capa transporte  Cada segmento tiene números de puerto fuente y destino  El host usa dirección IP y número de puerto para conducir un segmento al socket apropiado  Puertos reservados por protocolos establecidos, HTTP: 80, FTP: 21, está definido en RFC 1700 # puerto fuente# puerto dest. 32 bits Datos de la aplicación (mensaje) ‏ Otros campos del encabezado Formato de segmento TCP/UDP

Capa Transporte10 Demultiplexación sin conexión (UDP) ‏  Cuando la capa transporte en un host Rx recibe un segmento UDP:  Chequea número de puerto destino en segmento  Dirige el segmento UDP al socket con ese número de puerto  Datagramas IP con direcciones IP y/o números de puerto origen diferentes pueden ser dirigidos al mismo socket destino.

Capa Transporte11 Re-visitemos: Código Cliente Socket UDP  Cliente: Creamos socket y datagrama con núm. de puerto: DatagramSocket clientSocket = new DatagramSocket();... InetAddress IPAddress = InetAddress.getByName("hostname");... DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, IPAddress, 9876);... clientSocket.send(sendPacket);  El Socket UDP destino queda identificado por (2-tuple) : ( Dirección IP destino, Número puerto destino) ‏

Capa Transporte12 Re-visitemos: Código Servidor Socket UDP  Servidor crea el socket en un puerto específico: DatagramSocket serverSocket = new DatagramSocket(9876);...  Recibe paquete del cliente, usa ip y puerto del mensaje para responder: DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length); serverSocket.receive(receivePacket);... InetAddress IPAddress = receivePacket.getAddress(); int port = receivePacket.getPort(); DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, IPAddress, port);...  Servidor responde usando la información obtenida del paquete: serverSocket.send(sendPacket);

Capa Transporte13 Demultiplexación sin conexión (cont) ‏ Cliente IP:B P2 cliente IP: A P3 servidor IP: C PO: 6428 PD: 9157 PO: puerto origen, provee “dirección de retorno” Una aplicación recibe mensajes desde distintos hosts distinguiéndose por su IP y puerto orígenes. PO: 9157 PD: 6428 PO: 6428 PD: 5775 PO: 5775 PD: 6428 P1

Capa Transporte14 Demultiplexación orientada a la conexión  Sockets TCP queda definido por (4-tupla):  Dirección IP Origen  Número de puerto Origen  Dirección IP Destino  Número de puerto Destino  Host receptor usa los cuatro valores para dirigir los segmentos al socket apropiado.  Un host servidor puede soportar muchos sockets TCP en un mismo puerto simultáneos:  Cada socket es identificado por su 4-tupla propia  Servidores Web tiene un socket diferente por cada cliente conectado  HTTP no-persistente tendrá diferentes sockets por cada petición de datos

Capa Transporte15 Revisita: Código Cliente Socket TCP  Cliente: Creamos socket con IP y núm. de puerto: Socket clientSocket = new Socket("hostname", 6789);... DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream());

Capa Transporte16 Revisita: Código Servidor Socket TCP  Servidor crea el welcome socket en un puerto específico: ServerSocket welcomeSocket = new ServerSocket(6789);  Al aceptar una conexión se crea un nuevo socket para este cliente específico: Socket connectionSocket = welcomeSocket.accept();  Se lee desde socket de conexión: BufferedReader inFromClient = new BufferedReader( new InputStreamReader(connectionSocket.getInputStream()));  Se responde usando el mismo socket de conexión: DataOutputStream outToClient = new DataOutputStream(connectionSocket.getOutputStream());

Capa Transporte17 Demultiplexación orientada a la conexión (cont.) ‏ Cliente IP:B P1 cliente IP: A P1P2P4 servidor IP: C P5P6P3 Notar puede haber igual puerto Origen en A y B. Igual puerto destino en ambas conexiones desde B. PO: 9157 PD: 80 IP-O: A IP-D: C PO: 9157 PD: 80 IP-D: C IP-O: B PO: 5775 PD: 80 IP-D: C IP-O: B

Capa Transporte18 Demultiplexación orientada a la conexión: Servidor Web con hebras (cont.) ‏ Cliente IP:B P1 cliente IP: A P1P2 servidor IP: C PO: 9157 PD: 80 PO: 9157 PD: 80 P3 IP-D: C IP-O: A IP-D: C IP-O: B PO: 5775 PD: 80 IP-D: C IP-O: B P4 Aquí un único proceso maneja distintos sockets para cada cliente.

Capa Transporte19 Contenido de Capítulo 3  3.1 Servicios de la capa transporte  3.2 Multiplexing y demultiplexing  3.3 Transporte sin conexión: UDP  3.4 Principios de transferencia confiable de datos  3.5 Transporte orientado a la conexión: TCP  Estructura de un segmento  Transferencia confiable de datos  Control de flujo  Gestión de la conexión  3.6 Principios del control de congestión  3.7 Control de congestión en TCP

Capa Transporte20 UDP: User Datagram Protocol [RFC 768]  Básicamente agrega puerto a paquete IP  Servicio de “mejor esfuerzo”, un segmento UDP se puede:  perder  Entregar a la aplicación fuera de orden  Sin conexión:  No hay handshaking (establecimiento de conexión) entre servidor y receptor UDP  Cada segmento UDP es manejado en forma independiente de los otros Por qué existe UDP?  No requiere establecimiento de conexión (lo cual agregaría retardo) ‏  Simple: no se requiere mantener estado en el Tx y el Rx  Pequeño segmento de encabezado => menor overhead  No hay control de congestión: UDP puede transmitir tan rápido como se desee

Capa Transporte21 UDP: más  A menudo es usado por flujos (streaming) multimedia en aplicaciones que:  Toleran a pérdida  Son sensibles a la tasa de transmisión  Otros usos de UDP  DNS  SNMP (Simple Network Management Protocol) ‏  Es posible lograr la transferencia confiable sobre UDP: pero se debe agregar esta confiabilidad en la capa aplicación  En este caso la recuperación de errores depende de la aplicación! # puerto origen# puerto dest. 32 bits Datos de la Aplicación (mensaje) ‏ Formato segmento UDP largo checksum Largo, en bytes del segmento UDP, incluyendo encabezados

Capa Transporte22 Checksum UDP (suma de chequeo) ‏ Transmisor:  Trata el contenido de cada segmento como una secuencia de enteros de 16 bits  checksum: “suma” del contenido del segmento y luego tomamos el complemento 1.  Transmisor pone el valor del checksum en el campo checksum del datagrama UDP Receptor:  Calcula el checksum del segmento recibido  Chequea si el checksum calculado corresponde al valor de checksum recibido en el campo:  NO corresponde => error detectado  SI => no hay error detectado. Pero podrían haber errores sin embargo! Objetivo: detectar “errores” (e.g., bits cambiados) en segmentos transmitidos

Capa Transporte23 Ejemplo Checksum en Internet  Notar  Cuando sumamos números, la reserva del bit más significativo debe ser sumada al resultados  Tomar el complemento 1 no es más que invertir los bits  Ejemplo: sumar dos enteros de 16-bits Sumar reserva “suma” checksum

Capa Transporte24 Contenido de Capítulo 3  3.1 Servicios de la capa transporte  3.2 Multiplexing y demultiplexing  3.3 Transporte sin conexión: UDP  3.4 Principios de transferencia confiable de datos  3.5 Transporte orientado a la conexión: TCP  Estructura de un segmento  Transferencia confiable de datos  Control de flujo  Gestión de la conexión  3.6 Principios del control de congestión  3.7 Control de congestión en TCP