47
REDES DE DATOS CAPITULO 6 CAPA DE TRANSPORTE INTEGRANTES: LOPEZ APARICIO CESAR V.

REDES DE DATOS

  • Upload
    rona

  • View
    55

  • Download
    1

Embed Size (px)

DESCRIPTION

REDES DE DATOS. INTEGRANTES: LOPEZ APARICIO CESAR V. CAPITULO 6 CAPA DE TRANSPORTE. CAPA DE TRANSPORTE. MODELO OSI. CAPA DE TRANSPORTE. El nivel de transporte o capa transporte es el cuarto nivel del modelo OSI - PowerPoint PPT Presentation

Citation preview

REDES DE DATOS

REDES DE DATOS

CAPITULO 6CAPA DE TRANSPORTEINTEGRANTES:LOPEZ APARICIO CESAR V.CAPA DE TRANSPORTE

MODELO OSIEl nivel de transporte o capa transporte es el cuarto nivel del modelo OSI

Encargado de la transferencia libre de errores de los datos entre el emisor y el receptor, aunque no estn directamente conectados, as como de mantener el flujo de la red.CAPA DE TRANSPORTE

La tarea de esta capa es proporcionar un transporte de datos confiable y econmico de la mquina de origen a la mquina destino,

Esta capa se ocupa de garantizar la fiabilidad del servicio, describe la calidad y naturaleza del envo de datos.

Independientemente de la red o redes fisicas en uso, sin la capa transporte, el concepto total de los protocolos en capas tendra poco sentido.

FUNCIONES DE LA CAPA DE TRANSPORTE

FUNCIONES DE LA CAPA DE TRANSPORTE

Garantiza la calidad de servicio requerida.

Proporciona primitivas independientes de la capa de red.

Aisla las capas superiores de la tecnolgia, el diseo y las imperfecciones de la subred.

Se pueden tener servicios orientados a conexiones (confiable) o sin conexiones.SERVICIOS DE LA CAPA DE TRANSPORTE

PRIMITIVAS DEL SERVICIO DE TRANSPORTE

LISTEN: Se bloquea hasta que algn proceso intenta el contacto.

CONNECT: Intenta activamente establecer una conexin.

SEND: Envia informacin.

RECEIVE: Se bloque hasta que llegue una TPDU de DATOS.

DISCONNECT: Este lado quiere liberar la conexin.

PRIMITIVAS DEL SERVICIO DE TRANSPORTE

SOCKET BARKELEYEste es otro grupo de primitivas de transporte, las primitivas usadas en UNIX para el TCP.

El Berkeley sockets interfaz de programacin de aplicaciones (API) comprende una biblioteca para el desarrollo de aplicaciones en el lenguaje de programacin C.

En general son muy parecidas a las anteriores pero ofrecen ms caractersticas y flexibilidad.

FUNCIONES SOCKET BARKELEYsocket() Crea un nuevo socket.

bind() Se utiliza normalmente en el lado del servidor, y asocia una conexion con una estructura de direccin de socket.

listen() Se utiliza en el lado del servidor, y las causas de un salto socket TCP para entrar en estado de escucha.

connect() Se utiliza en el cliente. En caso de un socket TCP, hace un intento de establecer una nueva conexin TCP.

accept() se utiliza en el lado del servidor. Acepta un intentos recibidos entrantes para crear una nueva conexin TCP desde el cliente remoto, y crea un nuevo socket asociado con el par de direccin de socket de esta conexin. FUNCIONES SOCKET BARKELEYsend() y recv() o write() y read() , o sendto() y recvfrom() , Se utilizan para enviar y recibir datos a / desde una toma de distancia.

close() La conexion termina.

gethostbyname() y gethostbyaddr() Se utilizan para resolver nombres de host y direcciones.

select() Se utiliza para crear una lista de todos aquellos que estn listos para leer, listo para escribir, o los errores existentes.

poll() Se utiliza para comprobar el estado de un socketFUNCIONES SOCKET BARKELEYgetsockopt() Se utiliza para recuperar el valor actual de una opcin particular de conector para el socket especificado.

setsockopt() Se utiliza para definir una opcin particular de conector para el socket especificado.

ELEMENTOS DE PROTOCOLO DE TRANSPORTEEl servicio de transporte se implementa mediante un protocolo de transporte entre dos entidades de transporte.

Se encargan del control de errores, la secuenciacin y el control del flujo.DIRECCINAMIENTOESTABLECIMIENTO DE UNA CONEXINLIBERACION DE UNA CONEXINCONTROL DE FLUJO Y ALAMCENAMIENTO DE BUFFERMULTIPLEXIONRECUPERACION DE CAIDAS

DIRECCIONAMIENTOCuando un proceso desea establecer una conexin con un proceso de aplicacin remoto, debe especificar a cul se conectar. (a quin mand el mensaje?)El mtodo que normalmente se emplea es definir direcciones de transporte en las que los procesos pueden estar a la escucha de solicitudes de conexin.En Internet, estos puntos terminales se denominan puertos, pero usaremos el trmino genrico de TSAP (Punto de Acceso al Servicio de Transporte).DIRECCIONAMIENTOLos puntos terminales anlogos de la capa de red se llaman NSAP (Punto de Acceso al Servicio de Red). Las direcciones IP son ejemplos de NSAPs.

ESTABLECIMIENTO DE UNA CONEXIONEl establecimiento de una conexin parece fcil, pero en realidad es sorprendentemente difcil.

A primera vista, parecera que es suficiente con mandar una TPDU (Unidad de Datos del Protocolo de Transporte) con la peticin de conexin y esperar a que el otro acepte la conexin.

En este enfoque cada vez que necesitemos una direccin la creamos. Al liberarse la conexin descartamos la direccin y no se vuelve a utilizar. O tambin asignar una secuencia dentro de los datos transmitidos, pero estos plantean los problemas de que si se pierde la conexin perdemos el orden del identificador y ya no funciona.

CONEXION DE 3 VIASCada host establece nmerosde secuencia independientemente.

El host que inicia la conexinenvia un paquete con sunumero inicial de secuencia.

El segundo host envia unpaquete de confirmacin con sunmero inicial de secuencia.

Todos los paquetes, exeptoel primero contienen ambosnmeros de secuenciaLIBERACION DE UNA CONEXIONLa liberacin de una conexin es ms fcil que su establecimiento.Hay dos estilos de terminacin de una conexin:

Liberacin asimtrica Liberacin simtrica.La liberacin asimtrica es la manera en que funciona el mecanismo telefnico: cuando una parte cuelga, se interrumpe la conexin.La liberacin simtrica trata la conexin como dos conexiones unidireccionales distintas, y requiere que cada una se libere por separado.LIBERACION SIMETRICAPodramos pensar en un protocolo en el que el host 1 diga:Ya termine, Terminaste tambin?. Si el host 2 responde Ya termine tambin. Adis, la conexin puede liberarse con seguridad.

LIBERACION SIMETRICAEl primer host envia un mensajeDR e inicia un temporizador.

Al recibir un DR, el segundo hostenvia otro DR como confirmacine inicia otro temporizador.

El primer host cierra la conexin yenva un acuse de recibo ACK.

Si el host 2 no recibe el ACKcierra la conexin la conexin alllegar a 0 el temporizador

Si el host 1 no recibe el DR hacehasta N intentos.CONTROL DE FLUJOEn esta capa lo que se hace es, si el servicio de red no es confiable, el emisor debe almacenar en un buffer todas las TPDUs enviadas, igual que en la capa enlace de datos.En particular, si el emisor sabe que el receptor siempre tiene espacio de buffer, no necesita tener copias de las TPDUs que enva.

Sin embargo, si el receptor no garantiza que se aceptar cada TPDU que llegue, el emisor tendr que usar buffers de todas maneras.

(a) Buffers de tamao fijo, encadenados.(b) Buffers de tamao variable encadenados.(c) Un buffer grande circular por conexinCONTROL DE FLUJOMULTIPLEXIONEn la capa de transporte puede surgir la necesidad de multiplexin por varias razones.

MULTIPLEXION HACIA ARRIBA

Por ejemplo, si en un host slo se dispone de una direccin de red, todas la conexiones de transporte de esa maquina tendrn que utilizarla.

Cuando llega una TPDU, se necesita algn mecanismo para saber a cul proceso asignarla. Esta situacin se conoce como multiplexin hacia arriba.

MULTIPLEXIONMULTIPLEXIN HACIA ABAJOLa multiplexin tambin puede ser til en la capa transporte para la utilizacin de circuitos virtuales, que dan ms ancho de banda cuando se reasigna a cada circuito una tasa mxima de datos.

La solucin es abrir mltiples conexiones de red y distribuir el trfico entre ellas.

Esto se denomina multiplexin hacia abajo.

MULTIPLEXIONRECUPERACION DE CAIDASSi los hosts y los enrutadores estn sujetos a cadas, la recuperacin es fundamental.

Si la entidad de transporte est por entero dentro de los hosts, la recuperacin de cadas de red y de enrutadores es sencilla.

Si la capa de red proporciona servicio de datagramas, las entidades de transporte esperan prdida de algunas TPDUs todo el tiempo, y saben cmo manejarla.

Si la capa de red proporciona servicio orientado a la conexin, entonces la prdida de un circuito virtual se maneja estableciendo otro nuevo y sondeando la entidad de transporte remota para saber cuales TPDUs ha recibido y cuales no.

Un problema ms complicado es la manera de recuperarse de cadas del host. Al reactivarse, sus tablas estn en el estado inicial y no sabe con precisin donde estaba.

En un intento por recuperar su estado previo, el servidor podra enviar una TPDU de difusin a todos los dems host, anunciando que se acaba de caer y solicitando a todos sus clientes que le informen el estado de todas la conexiones abiertas.

RECUPERACION DE CAIDASPROTOCOLOS DE TRANSPORTE DE INTERNETTCP Y UDPTCP (Transmisin Control Protocol) es un protocolo orientado a conexiones. TCP se define en RFCs 793, 1122 y 1323

UDP (User Data Protocol) es un protocolo sin conexiones. UDP se define en RFC 768

TCP proporciona una corriente confiable de bytes a travs de una internet. TCP se adapta a dinmicamente a las propiedades de la internet y es robusto ante muchos tipos de fallasMODELO DE SERVICIO TCPEl transmisor y el receptor crean puntos de conexin llamados sockets. La direccin de un socket esta formada por el IP del host y un nmero de puerto de 16 bits.

Los puertos menores de 256 estn reservados para servicios estandar definidos en RFC 1700.

Las conexiones TCP son duplex de punto a punto. El par (socket1, socket2) identifica cada conexin.

Una conexin TCP es una corriente de bytes, no una coriente de mensajes.EL PROTOCOLO TCPCada byte en una corriente TCP tiene su propio numero de secuencia de 32 bits.

El tamao mximo de un paquete TCP (segmento) es 65.535 pero cada red puede tener un MTU (Maximum Transfer Unit) por lo que puede ocurrir fragmentacin.

TCP usa un protocolo de ventana corrediza.

TCP es robusto frente a fragmentacin, duplicacin, paquetes perdidos o fuera de orden, retrasmisiones, etc.ENCABEZADO DEL PROTOCOLO TCP

UDP (USER DATA PROTOCOL)Permite enviar datagramas sin necesidad de establecer una conexin.

Los puertos de origen y destino cumplen la misma funcin que en TCP.

FRAGMENTACIN DE PAQUETESFragmentacin de paquetes IPCuando se tiene un paquete IP y se quiere pasar a la capa de enlace, se le aade la cabecera y el campo de CRC (Cyclic Redundancy Check). Como hay redes que limitan el tamao mximo de los paquetes que pueden transportar entonces los paquetes se deben fragmentar siguiendo el procedimiento de la figura.

34Fragmentacin de paquetes IPSi en la cabecera de un paquete IP existe y est activo el bit de "no fragmentacin" entonces el paquete no se puede fragmentar. Si se activa la fragmentacin los siguientes campos de la cabecera IP se modifican:

El campo posicin o desplazamiento que indica a que byte corresponde el primer byte de datos. El Indicador o bit de mas datos: que vale 1 en todos los fragmentos excepto en el ltimo. Si un fragmento tiene que volver a fragmentarse y el bit de mas datos ya vale 1, mantendr este valor en todos los nuevos fragmentos. Si vale 0, tomar el valor 1 excepto en el ltimo fragmento. El campo longitud de los datos y el campo checksum se calculan para cada fragmento. El identificador de paquete y el resto de campos conservan el valor que tienen antes de fragmentarse el paquete IP.

35ConceptosMTU (Unidad mxima de transferencia)Expresa el tamao en bytes de la unidad de datos ms grande que puede enviarse usando un Protocolo de Internet

Posibles Problemas:Cada vez ms redes bloquean todo el trfico ICMP.El camino se modifica dinmicamente, cambiando el MTU durante una transmisin.

MSS (Tamao Mximo de Segmentos)Es el tamao ms grande de datos que un dispositivo de comunicaciones puede manejar en un nico trozo sin fragmentar.Tiene gran importancia en Internet.Es establecido automticamente por el Sistema Operativo.36Fragmentacin de paquetes IPEl MTU de una red es la mayor cantidad de datos que puede transportar su trama fsica. El MTU de las redes Ethernet es de 1500 bytes y el de la redes Token Ring 8192 byte. Esto significa que una red Ethernet nunca podr transportar un datagrama de 1500 bytes sin fragmentarlo.

Un encaminador (router) fragmenta un datagrama en varios si el siguiente tramo de la red por el que tiene que viajar el datagrama tiene un MTU interior a la longitud del datagrama. Vemos con el siguiente ejemplo como se produce la fragmentacin de un datagrama.

37Fragmentacin de paquetes IP

Transmitir una datagrama IP de 1420 bytes de datos de la Red1 a la Red238Fragmentacin de paquetes IP

39Fragmentacin de paquetes IP

40Fragmentacin de paquetes IP

41Datagrama IPEl esquema de envo en IP es similar al que se emplea en la capa de Acceso a red. En esta ltima se envan tramas formadas por un encabezado y los datos. En el encabezado se incluyen la direccin fsica del origen y del destino.

En el caso de IP se envan Datagramas, stos tambin incluyen un Encabezado y Datos, pero las direcciones empleadas son Direcciones IP.

42Formato del Datagrama IPLos Datagramas IP estn formadas por palabras de 32 bits. Cada datagrama tiene un mnimo de cinco palabras y un mximo de quince.

43Explicacin de la FragmentacinEl tamao mximo de una trama se denomina MTU (Unidad de Transmisin Mxima). La fragmentacin del datagrama se lleva a cabo a nivel de router.Si el datagrama es demasiado grande para pasar por la red, el router lo fragmentar.El router enviar estos fragmentos de manera independiente y los volver a encapsular.El router agrega informacin para que el equipo receptor pueda unir los fragmentos en el orden correcto.

Cada datagrama cuenta con diversos campos para su unin:Campo Margen del Fragmento.Campo Identificacin.Campo Longitud Total.Campo Indicador44Enrutamiento IPEl 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 travs de la red por la ruta ms corta. A esta funcin la llevan a cabo los equipos denominados routers, es decir, equipos que conectan al menos dos redes.

Enrutar es el proceso de seleccin de un camino para el envo de paquetes. La computadora que hace esto es llamada Router45Problemas de la FragmentacinSe tiene un problema para el nodo receptor:Cmo recomponer correctamente el datagrama original a partir de los trozos?

No todos los trozos llegan juntos y en orden. Se fija un tiempo mximo de espera para los trozos.

El nodo receptor no sabe la longitud real del datagrama.

46Ejemplo de Fragmentacin de PaquetesSi un paquete de 2,366 bytes entra en una red Ethernet con un tamao de MTU por defecto, debe ser fragmentada en dos paquetes:

Primer Paquete1,500 bytes de longitud20 bytes del encabezado IP24 bytes de la cabecera TCP1456 bytes son octetos de datosDF=0 (Fragmentar)MF=1 (Ms fragmentos)Offset=0

Segundo Paquete910 bytes de longitud20 bytes del encabezado IP24 bytes de la cabecera TCP866 bytes son octetos de datosDF=0 (Fragmentar)MF=0 (ltimo fragmento)Offset=182

47