You are on page 1of 13

CAPA 4: TRANSPORTE

1.-MECANISMOS DE PROTOCOLOS ORIENTADOS A LA CONEXION Un servicio orientado a la conexión proporciona el establecimiento, mantenimiento y cierre de una conexión lógica entre usuarios de transporte (un usuario de transporte puede ser un protocolo de capa superior como FTP, SMTP, Telnet, etc.). Este tipo de servicio es el más utilizado por ser un servicio fiable. Básicamente, cuando se hable de este tipo de servicios, se estará refiriendo a TCP, que es el mayor referente de transporte orientado a la conexión. Aunque se puede argumentar que no existe una capa del modelo TCP/IP que presente mayores problemas que otra, también es justo argumentar que la capa de transporte es una de las más complejas, por el número tareas que se llevan a cabo. Servicio de red de entrega ordenada fiable Existen algunos servicios que son fiables casi al 100%, asegurando una entrega secuencial de los mensajes:
y y y

X.25 Redes que implementen LAPF (implementación de capa de enlace) Lan IEE 802.3 con LLC orientado a la conexión

Estos escenarios son ciertos siempre y cuando exista una conexión entre clientes finales a la misma red, y no una simple interconexión de red. Este servicio considera básicamente cuatro cosas: Direccionamiento Al querer establecer una conexión o realizar una transferencia entre entidades de transporte que usen el mismo protocolo, es necesario que se identifique a los usuarios destinos mediante alguna información:
y

y

Identificación del usuario: Se refiere a la identificación del usuario de transporte, en sí define el puerto que se utilizará (por ejemplo en TCP 80 para HTTP, 22 para SSH, etc.) Identificación de la entidad de transporte: Identifica al protocolo que hará uso, por ejemplo, si es TCP o UDP. Normalmente, solo existirá una o dos entidades en una estación.

Rechazar la aceptación de más segmentos del servicio de red: Al bloquear la recepción de información de la capa de nivel inferior. por tanto bloquea además el envió de la capa de transporte. agregar números de secuencias a las unidades de datos (en este caso a los segmentos) y utilizar confirmaciones para avanzar en el envió de ventanas. ya que esto solo agravará el problema al generar más congestión. y viceversa. desde la capa de red. Control de Flujo El control de flujo es una de las tareas más complejas dentro de la capa de transporte. el emisor al no recibir una confirmación de recepción los retransmitirá. Ante este problema existen varias soluciones: y y y y No hacer nada: Si existe una diferencia en las capacidades y tasas de envío y recepción. si varias conexiones de transporte utilizan la misma conexión de red (por ejemplo un circuito virtual). entonces los segmentos que no se alcancen a recibir se descartarán. Como la capa de transporte opera sobre una red o una interconexión de redes. pero esto no es concordante con una red fiable. la cantidad de retardo en la transmisión puede ser variable.y y Dirección de la estación: Es una dirección que identifica al host y es obtenida como es natural. lo que permite que se pueda confirmar un segmento sin la concesión de un nuevo crédito para control de flujo. esto desencadena la emisión de información de la capa par en el emisor. Usar un protocolo de ventana deslizante: Este principio se basa en establecer el tamaño de un grupo segmentos a ser enviados (conocido como ventana). Multiplexación El proceso de multiplexación y demultiplexación consiste en que varios usuarios de transporte (protocolos de capa superior) hacen uso de un mismo protocolo de transporte (TCP o UDP por ejemplo). . por lo que se dificulta utilizar de forma efectiva un mecanismo de tiempos de expiración para la retransmisión de datos perdidos. Esquema de créditos: Separa las confirmaciones y el control de flujo. Este mecanismo es bastante tosco e inexacto. A la combinación de la dirección de host y número de puerto se le conoce como Socket en TCP. por ejemplo. distinguiéndose unos de otros a través de números de puerto. existen dos razones para ello: y y El retardo de transmisión entre entidades de transporte (protocolos) es generalmente grande comparado con el tiempo de transmisión real. Número de la red: Información proveniente de la capa de red acerca de la red.

haciendo entradas en la tabla de conexiones. De todas formas el proceso de cierre inicia cuando uno de los pares recibe de un usuario de transporte una primitiva de cierre (close). o redes LAN IEEE 202. Este estado finaliza cuando se recibe un segmento FIN. y la conexión es cerrada por mutuo acuerdo. al recibir el SYN cambia a ESTAB. mientras que un cierre ordenado hace que se espere hasta que todos los datos hayan sido recibidos. En este estado aun seguirá recibiendo información y pasándola a la capa correspondiente. entonces el receptor al recibir el segmento SYN cambia a LISTEN (apertura pasiva) luego contesta con su propio segmento SYN y cambia a modo ESTAB. y se pasa a estado FIN WAIT. inicia estando tanto el emisor como el receptor en un estado CLOSED. Puede iniciar el cierre cualquiera de los pares o ambos a la vez. la ventana y la calidad del servicio) Iniciar la reserva de recursos en las entidades de transporte (reservando espacio de memoria.) El proceso de apertura ideal. Luego el emisor cambia a un estado SYN SENT (donde se envía una solicitud de sincronización y se cambia a estado de apertura activa). con la idea de cumplir tres objetivos: y y y Permitir a cada extremo asegurarse de la existencia del otro Permitir el intercambio de parámetros opcionales (como el tamaño máximo del segmento. SERVICIOS DE RED NO FIABLES Para un protocolo de transporte el escenario más complejo es cuando el servicio de red no es fiable. por lo que es necesario un elaborado mecanismo que haga . etc. 2.3 con servicios LLC no orientados a la conexión. con lo que se cambiaría inmediatamente a estado ESTAB en ambos pares. tal es el caso de redes que utilicen IP. sino que los mismos pueden llegar sin atender a ninguna secuencia debido a retardos de tráfico en la red. redes de retransmisión de tramas que usen únicamente núcleos del protocolo LAPF. entonces se envía un segmento FIN al otro par para solicitar el cierre. con lo que se libera al usuario y se cierra la conexión. Nótese que el problema puede no ser únicamente que se pierdan ocasionalmente algunos segmentos. done el emisor original. siempre existe la necesidad de establecimiento y cierre de la misma. El proceso de cierre sucede de forma similar.Establecimiento y cierre de la conexión En cualquier ambiente de conexión. También puede suceder que ambos pares deseen intercambiar información y envíen prácticamente un segmento SYN al mismo tiempo. Existe dos tipos de cierres: un cierre repentino hace que se pierdan los datos en tránsito.

sino que se puede usar una confirmación acumulada. El emisor interpreta AN=601 entendiendo que los segmentos anteriores se recibieron correctamente. cierre de la conexión y recuperación de fallos. se numeran secuencialmente. Si el temporizador expira antes de que se confirme. 201 y 401 pero solo envía AN=601 de regreso. Sin embargo TCP usa un esquema que se diferencia en que cada octeto que se transmite se numera implícitamente. es decir. y si ese segmento contiene 200 octetos de datos. incluso en el caso de que llegasen todos. el receptor puede recibir lo segmentos numerados como 1. entonces el segundo segmento tendría el número de secuencia 201. cada trama o paquete. llegando eventualmente a su destino. Este mismo esquema se utiliza en algunos protocolos de transporte. no se enviará una confirmación positiva y se tendrá que efectuar una retransmisión. provocando muchas retransmisiones si el valor es demasiado bajo. si un segmento no se recibe. La primera es usar un valor fijo. Estrategia de retransmisión La retransmisión de un segmento puede ser causado por dos razones. La segunda razón. Para complicar aún más la situación. por lo que debe haber un temporizador asociado a cada segmento que se envía. establecimiento de la conexión. no se necesita una confirmación por cada segmento. Para mayor eficiencia. control de flujo. Para ello existen dos estrategias. las soluciones planteadas para las redes fiables. Esto puede traer problemas mayores. es que la entidad emisora no sabe que la transmisión del segmento no se ha realizado con éxito. y no 2. ya que conducen a nuevos problemas que solo agravan más las cosas. el primer segmento puede tener el número de secuencia igual a 1. la entidad de transporte que recibe los datos puede detectar el error y descartar el segmento. y para tratar esta contingencia se usa un esquema de confirmaciones de recepción. Por ejemplo. pero entonces no se contaría con la capacidad de reaccionar ante los cambios en las condiciones de la red. La solución a este problema consiste en numerar los segmentos secuencialmente. no son aplicables. dirección de duplicados. Ahora.25) cada unidad de datos. estrategia de retransmisión. Si en el segmento se incluye una suma de comprobación. entonces el emisor envía de nuevo el segmento. Por ejemplo. En definitiva se deben tratar siete cosas: la entrega ordenada.frente a estas deficiencias derivadas del modelo de red. Entrega ordenada Es posible que los segmentos. La primera es que el segmento puede dañarse en el camino. basado en el entendimiento del comportamiento típico de la red. lleguen en forma desordenada. donde la entidad receptora debe confirmar cada segmento recibido satisfactoriamente devolviendo un segmento con un número de confirmación. Pero si los temporizadores resuelven el problema. En algunos protocolos que abarcan tanto la capa de red como la de enlace (HDLC o X. o causando que el protocolo sea muy lento en reaccionar ante la pérdida de un segmento si el valor es . ahora el problema radica en decidir qué valor asignarle al temporizador.

Como sea. y por supuesto. el hecho de que cada segmento lleve un número de secuencia ayuda. el valor puede no ser válido debido a que la entidad receptora puede que no confirme inmediatamente un segmento utilizando confirmaciones acumuladas. Suponga que la entidad e transporta registra el tiempo que toma confirmar los segmentos y fija los temporizadores de retransmisión de acuerdo a la media de los retardos observados. Este no es un problema con soluciones completas. el segmento duplicado puede llegar antes que el original debido a algún retardo. De persistencia: Usado para abortar una conexión cuando no se confirma ningún segmento. Existen dos escenarios concretos: y y Si se recibe un duplicado antes del cierre de la conexión O se recibe después del cierre de la misma. las condiciones de la red pueden cambiar repentinamente. Por ello. Detección de duplicados Si al perderse un segmento y después retransmitirlo. incluso si la red funcionase con carga constante. pero la detección y gestión de duplicados no es algo sencillo. sin embargo. pero si uno o más segmentos sucesivos se entregan satisfactoriamente pero se pierde el ACK. que no es el único temporizador usado por el protocolo de transporte: y y y y y y De retransmisión: Para retransmitir un segmento no confirmado. Una aproximación para este valor es un valor poco mayor que el tiempo de ida y vuelta. note que se dice recibir "un" duplicado. en cuyo caso el receptor vería el segmento original como el duplicado. el receptor debe ser capaz de reconocer los duplicados. se necesitan dos tácticas para tratar el caso: . o si un segmento ha sido retransmitido. ya que desde el punto de vista del emisor. Para el primer escenario. el emisor no sabe si la confirmación positiva recibida es una respuesta del segmento original o de la retransmisión. Desde luego que este valor es variable.demasiado alto. De ventana: Tiempo máximo entre segmentos ACK/CREDIT de retransmisión SYN: intervalo entre intentos de establecimiento de una conexión. De reconexión: Tiempo mínimo entre el cierre de la conexión y el establecimiento de una nueva con la misma dirección de destino. La segunda estrategia es usar un esquema adaptable. De inactividad: Aborta una conexión cuando no se recibe ningún segmento. no se produce ninguna confusión. siempre existirá alguna incerteza con el mejor valor para el temporizador de un valor de retransmisión. el segmento retransmitido es el duplicado. el cual acarrea sus propios problemas. el temporizador de la entidad de transporte emisora expirará y retransmitirá uno o más segmentos.

el cual es reiniciado cada vez que se envía un segmento (ya que todos los segmentos poseen campos AN y W). Cualquiera de los casos puede ser resuelto a través del uso de temporizadores de retransmisión SYN. Para resolver este problema se utiliza un temporizador de ventana. si no hay nuevas confirmaciones en camino. En cualquier caso. Aun así puede ocurrir un bloqueo mutuo. A estará esperando la oportunidad de enviar datos y B pensará que ya ha concedido dicha oportunidad. un segmento que contenga (AN=i. Establecimiento de la conexión Como con otros mecanismos de protocolo. W=j). Entonces el emisor no debe confundirse si recibe varias confirmaciones positivas para el mismo segmento. W=j) confirma todos los octetos con números de secuencia menores a i. El funcionamiento es muy simple. Aquí dos cosas pueden ir mal: que se pierda o el SYN de A o la respuesta de B. El método es tan flexible que permite confirmar datos sin conceder créditos. A y B deben simplemente ignorar los SYN duplicados una vez que la conexión se haya establecido. el establecimiento de la conexión requiere el intercambio de SYN. Si se pierde el SYN de A. no habría duplicados. sino solo se retrasase. que eventualmente disparará una nueva confirmación. si la respuesta de B no se perdiese. Potencialmente. Además. luego B envía (AN=i. confirmar el duplicado. En síntesis. . pero el segmento se pierde. luego de emitirlo. Control de Flujo El mecanismo de control de flujo basado en créditos es bastante robusto para redes no fiables y requiere pocas modificaciones. El espacio de números de secuencia debe ser lo suficientemente grande para no agotarse antes del tiempo máximo de vida para un segmento. Por ejemplo B envía (AN=i.y y El receptor debe asumir que su confirmación se perdió y por tanto. pero si se pierde la respuesta de B. La pérdida de un segmento ACK/CREDIT tiene poco impacto en el funcionamiento del diseño. y concede j créditos extras iniciando por el octeto i. El segundo escenario será tratado en el establecimiento de la conexión. A podría recibir dos SYN de respuesta. el establecimiento de la conexión también debe considerar la falta de fiabilidad en el servicio de red. esperará un SYN de regreso para confirmar la conexión. esto puede causar duplicación de SYN. en un procedimiento conocido como "saludo de dos vías" o "diálogo de dos pasos". entonces B probablemente recibiría dos SYN de parte de A. en el emisor expirará un temporizador y retransmitirá un segmento de datos. aun. W=0) cerrando temporalmente la ventana. Sunga que A emite un SYN para B. Confirmaciones posteriores se encargarán de sincronizar de nuevo el protocolo.

Para ilustrarlo. Si un SYN i obsoleto llega a B luego de que la conexión haya terminado. Este procedimiento es conocido como "saludo de tres vías" o "diálogo en tres pasos". vea el caso en que un SYN i duplicado sobrevive hasta después del cierre de la conexión. existen otros problemas que deben ser abordados. Para ejemplificar el proceso. Entonces B acepta el inicio de la conexión y confirma con SYN j. B descarta el último con duplicado. cada entidad del protocolo de transporte inicio la numeración de sus segmentos de datos con el número de secuencia 1. donde i es el número de secuencia del primer segmento de datos que será enviado en esta conexión. Al igual que un SYN retrasado o una respuesta perdida producen un SYN duplicado. provocando que ambos extremos hayan transmitido y recibido un segmento SYN. lo mismo sucede al momento de cerrar la conexión. ya que una entidad de transporte en estado CLOSE WAIT envía su . Ahora. AN=i+1. La regla básica consiste en enviar un RST si el estado de la conexión no es todavía ESTAB y se recibe un ACK inválido (uno que no haga referencia a algún segmento que haya sido enviado). suponga que la entidad de transporte A inicia la conexión con un SYN que incluye el número de secuencia de envío i. cuando A inicia la transferencia de datos con un segmento numerado con k. cuando A reciba este mensaje.Además. La solución en realidad es bastante sencilla. Ahora. que es el número de secuencia inicial (ISN) y se asocia con el SYN mismo. lo que significa que B acepta la solicitud de conexión y que comenzará a transmitir con SN=j. Mientras tanto A decide abrir una nueva conexión con B y envía SYN=k. suponga que con cada nueva conexión. AN=i+1. B supone que se trata de una petición nueva y responde con un SYN=j. B rechaza el segmento por no corresponder con la secuencia que espera. Esto se debe a que puede ocurrir que los segmentos lleguen en desorden al destino causando pérdida de información. AN=j. simplemente cada lado de la conexión debe confirmar explícitamente el SYN y número de secuencia del otro. Una posible solución es iniciar las conexiones nuevas con un número de secuencia que difiera lo suficiente del último número de secuencia de la conexión más reciente. en el escenario de un SYN i obsoleto que llegue a B luego del cierre de la conexión. para evitar que un mensaje RST duplicado y obsoleto cancele el establecimiento de una conexión legítima. para que entonces A confirme y transmita el primer octeto de datos con el número de secuencia SN=i+1. la solicitud de conexión es de la forma SYN i. Para lograrlo. Cierre de la conexión Como ya se vio. el diálogo en dos pasos no es satisfactorio para establecer conexiones en ambientes de red no fiables. Sin embargo. lo que les conduce a pensar que existe una conexión válida. Imagine que una copia duplicada del segmento SN=401 de una antigua conexión llega durante el tiempo de vida de una nueva conexión y es entregada a B antes que el segmento SN=401 legítimo para esta conexión. y AN=j+1. se dará cuenta de que él no ha solicitado una conexión y por tanto enviará un RST. un segmento de datos retrasado o una confirmación perdida puede generar duplicidad de segmentos de datos causando a su vez interferencias en la transferencia de datos. B supondrá que se trata de una solicitud nueva y responde con SYN j.

la información de estado de todas las conexiones activas se pierde. la entidad de transporte asume que ha fallado la otra entidad o la red intermedia. luego de que el segmento haya sido retransmitido el máximo número de veces. pero el . se puede asociar un número de secuencia al segmento FIN. Si el reinicio es válido. la conexión semiabierta se puede terminar más rápidamente a través del uso del segmento RST. Para evitar este problema. El extremo activo de la conexión semiabierta puede cerrar la conexión usando un temporizador de persistencia. el cual mide el tiempo que la máquina de transporte continuará esperando una confirmación (o la respuesta apropiada) de un segmento transmitido. Para ello. Estas medidas solucionan la situación en la capa de transporte. ya que cuando ocurrió la interrupción. la entidad de transporte efectúa un cierre anormal. cada extremo debe confirmar explícitamente el segmento FIN del otro usuario usando un ACK con el número de secuencia del segmento FIN a confirmar. se debe comprobar su validez basándose en el número de secuencia i. Para realizar un cierre ordenado una entidad de transporte requiere lo siguiente: y y y Enviar un FIN i y recibir un AN=i+1 Recibir un FIN j y enviar un AN=j+1 Esperar un intervalo de tiempo igual a dos veces el tiempo máximo de vida de los segmentos Recuperación de interrupciones Cuando el sistema sobre el cual una entidad de transporte está operando falla y posteriormente se recupera. seguido por un segmento FIN. Cuando el temporizador expira. El usuario TS del lado que no falló sabe cuántos datos ha recibido. La entidad receptora aceptaría ese FIN y cerraría la conexión perdiendo el último segmento de datos. La decisión de reabrir la conexión se deja a los usuarios TS. ya que el RST podría serla respuesta de un segmento obsoleto como se mencionaba previamente. cierra la conexión e indica al usuario TS que se produjo un cierre anormal. el cual puede ser el siguiente número de secuencia tras el último octeto de los datos transmitidos. Las conexiones afectadas pasan a estar "semiabiertas" ya que el lado que no se vio afectado por la interrupción no se habrá dado cuenta aun del problema.último segmento de datos. En el caso de que una entidad de transporte falle y se reinicie rápidamente. En definitiva el problema es de sincronización. Un problema más serio es la potencial pérdida de segmentos y la posible presencia de segmentos obsoletos. Cuando el RST i se recibe al otro lado. puede que hubiera uno o más segmentos pendientes en ambos sentidos. pero el segmento FIN llega al otro externo antes que el último segmento de datos. El lado que falla devuelve un RST i por cada segmento i que reciba.

. Suma de comprobación (16 bits) Puntero Urgente (16 bits): Al ser sumado con el número de secuencia del segmento genera el número de secuencia del último octeto de la secuencia urgente. Indicadores (6 bits): URG urgente. 2.otro usuario no puede saberlo si perdió la información de estado. Número de confirmación (32 bits): Número de secuencia del siguiente octeto que la entidad TCP espera recibir Longitud de la cabecera (4 bits): Número de palabras de 32 bits de la cabecera. Los clientes TCP pueden modificar este comportamiento agregando una etiqueta para entrega forzada.TCP TCP está diseñado para asegurar comunicación fiable independientemente si se despliega en redes fiables o no fiables. indicado en octetos. ACK confirmación. iniciando con el número de secuencia que se indica en el campo de confirmación que el emisor está dispuesto a aceptar. RST reiniciar la conexión. TCP se vale de dos servicios de etiquetados de datos: 1. FIN el emisor no enviará más datos.. en cuyo caso es un número de secuencia inicial (ISN) y l primer octeto de datos es ISN+1. Cabecera TCP La cabecera de un segmento TCP tiene una longitud mínima de 20 octetos. a excepción de cuando aparece un indicador SYN. con lo que se corre el riesgo de que algunos datos de usuario se pierdan o dupliquen. El destinatario decide entonces qué hacer con esos datos. Reservado (6 bits): Reservado para uso futuro. Ventana (16 bits): Créditos para el control del flujo. SYN sincronizar los números de secuencia. 3. PSH forzado. Número de octetos de datos. Señalización de datos urgentes: A través de esto se informa al destinatario que los datos son significativos o urgentes . Por ejemplo notificaciones de congestión en las redes. y y y y y y y y y y Puerto de origen (16 bits): Usuario TCP de origen Puerto destino (16 bits): Usuario TCP destino Número de secuencia (32 bits): Número de secuencia del primer octeto de datos en este segmento. etc. Flujo de datos forzado: Por lo general TCP decide cuando se han acumulado suficientes datos para enviar un segmento.

Se activa el indicador SYN para solicitar una conexión. Los SYN duplicados retrasados y las confirmaciones de datos todavía no enviados constituyen ejemplos de esto. mientras que la entidad TCP establece el bit FIN en el último segmento que envía. El usuario puede indicar que un bloque es urgente. El control de flujo es regulado a través de la asignación de créditos. dicha transmisión es vista como un flujo de octetos. Un indicador PSH obliga a que los datos acumulados sean enviados o entregados según sea el caso. se enviará un segmento con valor RST activado.1 MECANISMOS TCP Establecimiento de la Conexión Siempre se utiliza un saludo en tres vías. TCP normalmente decide cuando construir un segmento para ser transmitido y cuando entregar los datos recibidos al usuario. y para ello TCP aplica al fin del bloque un puntero urgente y lo envía con el flujo ordinario de datos. . Si durante el intercambio de datos llega un segmento que aparentemente no va dirigido a la conexión actual. sirviendo como una función de fin de bloque. El receptor responde con SYN y ACK. La unidad de transporte almacena temporalmente los datos de entrada y de salida en buffers separados. 3. donde el crédito representa un número de octetos y no de segmentos. Cada segmento contiene el número de secuencia del primer octeto del campo de datos. Una conexión está definida por un Socket origen destino por tanto solo puede haber una única conexión TCP entre un único par de puertos. Cada usuario TCP emite una primitiva Close. Transferencia de datos A pesar de que los datos son transmitidos en segmentos.y Opciones (variable): Aquí se incluyen cosas como la longitud máxima del segmento a ser aceptado. Cierre de la conexión Normalmente ocurre un cierre ordenado.

el receptor TCP tiene dos opciones: o Inmediata: Cuando se aceptan los datos se transmite un segmento vacío que contiene el número de confirmación adecuado. Si el temporizador expira. Si dicho temporizador caduca. Política de entrega: Ante la falta de un indicador de forzado. 3. una entidad TCP es libre de entregar los datos al usuario tan pronto sea posible. o Acumulada: Cuando se aceptan los datos se registra la necesidad de una confirmación. retransmite todos los segmentos de la cola y reinicia el temporizador. la entidad receptora tiene dos opciones: o Aceptación ordenada: Se descartan los segmentos que no llegan en orden y se aceptan solo los que sí lo hagan. o Individual: Mantiene un temporizador por cada segmento de la cola. retransmite el segmento correspondiente y reinicia el temporizador. Si algún temporizador expira. y y y y y Política de envío: Si no existe un indicador de forzado o una ventana cerrada. Política de Retransmisión: TCP mantiene una cola de segmentos enviados pero no confirmados. pero se espera un segmento de datos de salida al que se le . retransmite el primer segmento de la cola y reinicia el temporizador. Política de aceptación: Cuando los segmentos no llegan en secuencia. pueden enviarse datos tan pronto sea posible mientras dure la validez de su crédito. Para ello existen tres estrategias: o Solo el primero: Se mantiene un temporizador de retransmisión para toda la cola.Si el usuario emite una primitiva ABORT se produce un cierre repentino. Puede entregar los segmentos en orden o acumularlos en los buffer de recepción antes de entregar un conjunto completo. En este caso. Entonces TCP puede construir un segmento por cada lote de datos de usuario o esperar a que se acumule cierta cantidad de los mismos antes de construir y enviar el segmento. o Por lotes: Se mantiene un temporizador para toda la cola. la entidad deja de intentar de recibir o transmitir datos y limpia los buffers de entrada y salida para finalmente enviar un segmento RST al otro extremo. o Aceptación en ventana: Se aceptan todos los segmentos que estén dentro de la ventana receptora.2 OPCIONES DE IMPLEMENTACION TCP Aunque el protocolo está ampliamente definido existen algunas consideraciones que pueden ser abordadas de distintas formas para cada entidad TCP. El protocolo establece que un segmento debe ser retransmitido si no se recibe su confirmación en determinado periodo de tiempo. Política de confirmación: Cuando llega un segmento en orden.

Sin embargo. control de errores y entrega ordenada. un temporizador de retransmisión definido de manera estática puede expirar demasiado rápido o demasiado tarde. Por tanto. lo que permite reducir la carga del protocolo. un servicio no . User Datagram Protocol). existe otro protocolo muy popular para la capa de transporte y que además pertenece a la pila TCP/IP. Mientras la congestión se hace más grave. por lo que UDP es básicamente un servicio no fiable ya que no se garantiza la entrega y la protección contra duplicados. lo cual resulta conveniente en muchos casos. ya que despliega características como control de flujo. Actualmente este mecanismo es utilizado por Internet para controlar la congestión entre origen y destino.UDP Además de TCP. estas técnicas se pueden agrupar en dos categorías: y y Gestión de Temporizadores de Retransmisión: En función de los cambios en las condiciones de red. el Protocolo de Datagrama de Usuario (UDP. todas las implementaciones TCP intentan determinar el retardo de ida y vuelta. 3.. Esta congestión tiene dos efectos: y y Cuando empieza a producirse. que transmite la confirmación adecuada dentro de un segmento vacío al expirar antes de haber enviado alguna confirmación. Debido a esto. la red o mejor dicho los nodos empiezan a descartar paquetes. especificado en el RFC 768. Gestión de Ventana: El tamaño de la ventana transmisión y la velocidad con que se adapta a las condiciones de transmisión puede tener un efecto decisivo para que TCP pueda ser utilizado eficientemente sin causar congestión. Para evitar retardos exagerados se crea un temporizador de ventana. 4. Como sea.3 CONTROL DE CONGESTION El control de flujo basado en créditos de TCP se diseñó para evitar la saturación del buffer de la entidad receptora.incorpora la confirmación. La fortaleza del enfoque orientado a la conexión es clara. TCP puede utilizarse para detectar el inicio de la congestión y reaccionar a través de alguna técnica de reducción en el flujo de datos. el tiempo de transmisión a través de la interconexión de redes aumenta. a través de la observación del patrón de retardo de los segmentos más recientes. UDP proporciona un servicio no orientado a la conexión para los procedimientos de capa de aplicación.

por tanto. Petición/respuesta: Aplicaciones en las cuales un servidor común proporciona un servicio de transacción a varios usuarios de transporte distribuidos y para el cual usar una secuencia del tipo de petición/respuesta es usual. la pérdida de algún dato ocasional no causa un desastre ya que el siguiente informe debería llegar en breve. tiene pocas tareas que realizar. la suma de comprobación se aplica al segmento UDP entero más una seudo . o tareas tan simples como sincronizar la hora en varias máquinas. los datos de usuario no se verificarán. UDP se sitúa sobre IP. Esencialmente. La suma de comprobación es el mismo algoritmo usado en TCP e IP. El uso del servicio se regula en la capa de aplicación y las conexiones de capas inferiores son frecuentemente innecesarias y molestas. que llevan consigo el requisito de utilizar cierto grado de redundancia y/o transmisión en tiempo real. El campo de suma de comprobación en UDP es opcional. Si se detecta un error.orientado a la conexión es más apropiado en algunos contextos donde la sobrecarga del establecimiento y cierre de la conexión resultan contraproducentes: y y y y Recolección de datos internos: incluye un muestreo activo o pasivo de fuentes de datos. En una situación de monitorización de tiempo real. si UDP no realiza la suma de comprobación. Estos requisitos no pueden tener funciones orientadas a conexión como la retransmisión. como los que provienen de sensores e informes automáticos de autocomprobación de componentes de red. Si no se utiliza. Esto se aprecia mejor al examinar la cabecera UDP. el anuncio de un nuevo nodo o el cambio de dirección de un servicio. Sin embargo. Para UDP. Diseminación de datos externos: incluye difusión de mensajes a usuarios de la red. Un ejemplo claro de esto es el uso del protocolo DNS. Un ejemplo claro de esto es el uso de SNMP.cabecera incorporada a la cabecera UDP en el momento del cálculo. Dicha cabecera incluye un puerto origen y un puerto destino. que en este caso está compuesto por la cabecera UDP y los datos de usuario. hay que recordar que la suma de comprobación de IP se aplica solo a la cabecera IP y no al campo de datos. El campo de longitud contiene la longitud de todo el segmento UDP. Aplicaciones en tiempo real: Como aplicaciones de voz y telemedios. . y como es no orientado a la conexión. incorpora a IP la capacidad de un direccionamiento de puerto. se le asigna el valor de cero. incluyendo la cabecera y los datos. el segmento se descarta sin tomar ninguna medida adicional.