Documente Academic
Documente Profesional
Documente Cultură
Tema Profesor Integrantes o o o o o Seccin Fecha : Nivel de Transporte TCP, UDP, SCTP
Alegra Juscamaita, Catherine Nathalie Barraza Chenda, Estefani Montenegro Marcial , Gustavo Pezo Prez, Evelyn Madelaine Suasnabar Reyes, Jessica : 41I
19 de octubre de 2011
La Molina, 2011
Redes de Comunicaciones
Tabla de Contenido
1. 2. 3. 4. 5. 6. 7. 7.1. 7.2. 7.3. 8. 9. 10. INTRODUCCIN ........................................................................................................................... 2 BREVE RESEA ...................................................................................................................... 3 Modelo OSI ................................................................................................................................ 3 Modelo TCP/IP .......................................................................................................................... 4 Capa de Trasporte.................................................................................................................... 5 Control de las conversaciones ............................................................................................. 12 Soporte de comunicacin confiable ..................................................................................... 14 Protocolos de la Capa de Transporte.................................................................................. 15 UDP ...................................................................................................................................... 15 TCP ....................................................................................................................................... 26 SCTP .................................................................................................................................... 45 Comparacin entre TCP-UDP-SCTP ................................................................................. 54 Similitudes entre TCP y SCTP ............................................................................................. 55 Diferencias entre TCP y SCTP ......................................................................................... 56
Redes de Comunicaciones
INTRODUCCIN
El objetivo de este trabajo es un estudio de las caractersticas y del desempeo del protocolo SCTP (Stream Control Transmission Protocol) y contrastarlo con los protocolos clsicos de la capa de transporte. SCTP es un protocolo que trabaja en la capa de transporte, el cual diferencia de TCP que permite crear un solo canal de transmisin, con SCTP se puede crear diversos canales de conexin que trabajan en paralelo, de esta manera la transmisin es ms rpida entre cliente y servidor. Todo el trabajo se realiza con aplicaciones existentes que funcionan bajo el entorno de Linux con el objetivo de mostrar los beneficios al usar SCTP en lugar de TCP, adems se muestran herramientas tiles para crear aplicaciones que trabajen sobre SCTP.
Redes de Comunicaciones
1. BREVE RESEA
A principios de 1980 el desarrollo de redes surgi con desorden en muchos sentidos. Se produjo un enorme crecimiento en la cantidad y tamao de las redes. A medida que las empresas tomaron conciencia de las ventajas de usar tecnologas de conexin, las redes se agregaban o expandan a casi la misma velocidad a la que se introducan las nuevas tecnologas de red. Para mediados de 1980, estas empresas comenzaron a sufrir las consecuencias de la rpida expansin. De la misma forma en que las personas que no hablan un mismo idioma tienen dificultades para comunicarse, las redes que utilizaban diferentes especificaciones e implementaciones tenan dificultades para intercambiar informacin. El mismo problema surga con las empresas que desarrollaban tecnologas de conexiones privadas o propietarias. "Propietario" significa que una sola empresa o un pequeo grupo de empresas controlan todo uso de la tecnologa. Las tecnologas de conexin que respetaban reglas propietarias en forma estricta no podan comunicarse con tecnologas que usaban reglas propietarias diferentes. Para enfrentar el problema de incompatibilidad de redes, la Organizacin Internacional para la Estandarizacin (ISO) investig modelos de conexin como la red de Digital Equipment Corporation (DECnet), la Arquitectura de Sistemas de Red (Systems Network Architecture) y TCP/IP a fin de encontrar un conjunto de reglas aplicables de forma general a todas las redes. Con base en esta investigacin, la ISO desarroll un modelo de red que ayuda a los fabricantes a crear redes que sean compatibles con otras redes.
2. Modelo OSI
Siguiendo el esquema de este modelo se crearon numerosos protocolos. El advenimiento de protocolos ms flexibles donde las capas no estn tan demarcadas
Redes de Comunicaciones
y la correspondencia con los niveles no era tan clara puso a este esquema en un segundo plano. Sin embargo es muy usado en la enseanza como una manera de mostrar cmo puede estructurarse una "pila" de protocolos de comunicaciones. El modelo especifica el protocolo que debe ser usado en cada capa, y suele hablarse de modelo de referencia ya que es usado como una gran herramienta para la enseanza de comunicacin de redes. Este modelo est dividido en siete capas:
Capa de aplicacin Capa de presentacin Capa de sesin Capa de transporte Capa de red
3. Modelo TCP/IP
El modelo TCP/IP es un modelo de descripcin de protocolos de red creado en la dcada de 1970 por DARPA, una agencia del Departamento de Defensa de los Estados Unidos. Evolucion de ARPANET, el cual fue la primera red de rea amplia y predecesora de Internet. EL modelo TCP/IP se denomina a veces como Internet Model, Modelo DoD o Modelo DARPA. El modelo TCP/IP, describe un conjunto de guas generales de diseo e implementacin de protocolos de red especficos para permitir que una computadora pueda comunicarse en una red. TCP/IP provee conectividad de extremo a extremo especificando como los datos deberan ser formateados, direccionados, transmitidos, enrutados y recibidos por el destinatario. Existen protocolos para los diferentes tipos de servicios de comunicacin entre computadoras.
Redes de Comunicaciones
TCP/IP tiene cuatro capas de abstraccin segn se define en el RFC 1122. Capa 4 o capa de aplicacin Capa 3 o capa de transporte Capa 2 o capa de red Capa 1 o capa de enlace
4. Capa de Trasporte
El 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. Es la base de toda la jerarqua de protocolo. La tarea de esta capa es proporcionar un transporte de datos confiable y econmico de la mquina de origen a la mquina destino, independientemente de la red de redes fsica en uno. Sin la capa transporte, el concepto total de los protocolos en capas tendra poco sentido. Capa encargada de efectuar el transporte de los datos (que se encuentran dentro del paquete) de la mquina origen a la de destino, independizndolo del tipo de red fsica que se est utilizando. La PDU de la capa 4 se llama Segmento o Datagrama, dependiendo de si corresponde a TCP o UDP. Sus protocolos son TCP y UDP; el primero orientado a conexin y el otro sin conexin. Trabajan, por lo tanto, con puertos lgicos y junto con la capa red dan forma a los conocidos como Sockets IP: Puerto (192.168.1.1:80).
Redes de Comunicaciones
La capa de Transporte permite la segmentacin de datos y brinda el control necesario para reensamblar las partes dentro de los distintos streams de comunicacin. Las responsabilidades principales que debe cumplir son: Seguimiento de la comunicacin individual entre aplicaciones en los hosts origen y destino. Segmentacin de datos y gestin de cada porcin. Reensamble de segmentos en flujos de datos de aplicacin. Identificacin de las diferentes aplicaciones. Seguimiento de Conversaciones individuales
Cualquier host puede tener mltiples aplicaciones que se estn comunicando a travs de la red. Cada una de estas aplicaciones se comunicar con una o ms aplicaciones en hosts remotos. Es responsabilidad de la capa de Transporte mantener los diversos streams de comunicacin entre estas aplicaciones. Segmentacin de datos
Debido a que cada aplicacin genera un stream de datos para enviar a una aplicacin remota, estos datos deben prepararse para ser enviados por los medios en partes manejables. Los protocolos de la capa de Transporte describen los servicios que segmentan estos datos de la capa de Aplicacin. Esto incluye la
Redes de Comunicaciones
encapsulacin necesaria en cada seccin de datos. Cada seccin de datos de aplicacin requiere que se agreguen encabezados en la capa de Transporte para indicar la comunicacin a la cual est asociada. Reensamble de segmentos
En el host de recepcin, cada seccin de datos puede ser direccionada a la aplicacin adecuada. Adems, estas secciones de datos individuales tambin deben reconstruirse para generar un stream completo de datos que sea til para la capa de Aplicacin. Los protocolos de la capa de Transporte describen cmo se utiliza la informacin de encabezado de dicha capa para reensamblar las secciones de datos en streams y enviarlas a la capa de Aplicacin. Identificacin de las aplicaciones
Para poder transferir los streams de datos a las aplicaciones adecuadas, la capa de Transporte debe identificar la aplicacin de destino. Para lograr esto, la capa de Transporte asigna un identificador a la aplicacin. Los protocolos TCP/IP denominan a este identificador nmero de puerto. A todos los procesos de software que requieran acceder a la red se les asigna un nmero de puerto exclusivo en ese host. Este nmero de puerto se utiliza en el encabezado de la capa de Transporte para indicar con qu aplicacin est asociada esa seccin de datos. La capa de Transporte es el enlace entre la capa de Aplicacin y las capas inferiores, que son responsables de la transmisin en la red. Esta capa acepta datos de distintas conversaciones y los transfiere a las capas inferiores como secciones manejables que puedan ser eventualmente multiplexadas a travs del medio. Las aplicaciones no necesitan conocer los detalles de operacin de la red en uso. Las aplicaciones generan datos que se envan desde una aplicacin a otra sin tener en cuenta el tipo de host destino, el tipo de medios sobre los que los datos deben viajar, el paso tomado por los datos, la congestin en un enlace o el tamao de la red. Adems, las capas inferiores no tienen conocimiento de que existen varias aplicaciones que envan datos en la red. Su responsabilidad es entregar los datos al
Redes de Comunicaciones
dispositivo adecuado. Luego la capa de Transporte ordena estas secciones antes de entregarlas a la aplicacin adecuada.
Los requerimientos de datos varan debido a que las distintas aplicaciones poseen distintos requerimientos, existen varios protocolos de la capa de Transporte. Para algunas aplicaciones, los segmentos deben llegar en una secuencia especfica de manera que puedan ser procesados en forma exitosa. En algunos casos, todos los datos deben recibirse para ser utilizados por cualquiera de las mismas. En otros casos, una aplicacin puede tolerar cierta prdida de datos durante la transmisin a travs de la red.
En las redes convergentes actuales, las aplicaciones con distintas necesidades de transporte pueden comunicarse en la misma red. Los distintos protocolos de la capa de Transporte poseen distintas reglas que permiten que los dispositivos gestionen los diversos requerimientos de datos. Algunos protocolos proporcionan slo las funciones bsicas para la entrega eficiente de las secciones de datos entre las aplicaciones adecuadas. Estos tipos de protocolos son tiles para aquellas aplicaciones cuyos datos son sensibles a las demoras.
Otros protocolos de la capa de Transporte describen procesos que brindan funciones adicionales, como asegurar la entrega confiable entre las aplicaciones. Si bien estas funciones adicionales provee una comunicacin ms slida entre aplicaciones de la capa de Transporte, representan la necesidad de utilizar recursos adicionales y generan un mayor nmero de demandas en la red.
Redes de Comunicaciones
Separacin de comunicaciones mltiples; Considere una computadora conectada a una red que recibe y enva e-mails y mensajes instantneos, explora sitios Web y realiza una llamada telefnica de VoIP de manera simultnea. Cada una de estas aplicaciones enva y recibe datos en la red al mismo tiempo. Sin embargo, los datos de la llamada telefnica no se direccionan al explorador Web y el texto de un mensaje instantneo no aparece en el e-mail.
Adems, los usuarios precisan que un e-mail o una pgina Web sean recibidos y presentados de manera completa para que la informacin sea considerada til. Las demoras leves se consideran aceptables para asegurar que se reciba y presente la informacin completa. Por el contrario, la prdida ocasional de pequeas partes de una conversacin telefnica puede considerarse aceptable.
Redes de Comunicaciones
Se puede inferir la parte de audio perdida del contexto de la conversacin o se puede solicitar a la otra persona que repita lo que dijo. Es preferible esto ltimo a las demoras que se produciran si se solicita a la red que gestione y vuelva a enviar los segmentos perdidos. En este ejemplo, el usuario, no la red, gestiona el reenvo o reemplazo de informacin que falta.
En la capa de Transporte, cada conjunto de secciones en particular que fluyen desde una aplicacin de origen a una de destino se conoce como conversacin. Para identificar todos los segmentos de datos, la capa de Transporte agrega un encabezado a la seccin que contiene datos binarios. Este encabezado contiene campos de bits. Son los valores de estos campos los que permiten que los distintos protocolos de la capa de Transporte lleven a cabo las diversas funciones.
Redes de Comunicaciones
Las redes de datos e Internet brindan soporte a la red humana al proporcionar la comunicacin continua y confiable entre las personas, tanto de manera local como alrededor del mundo. En un nico dispositivo, las personas pueden utilizar varios servicios como e-mails, la Web y la mensajera instantnea para enviar mensajes o recuperar informacin. Las aplicaciones como clientes de correo electrnico, exploradores Web y clientes de mensajera instantnea permiten que las personas utilicen las computadoras y las redes para enviar mensajes y buscar informacin. Los datos de cada una de estas aplicaciones se empaquetan, transportan y entregan al daemon de servidor o aplicacin adecuados en el dispositivo de destino. Los procesos descritos en la capa de Transporte del modelo OSI aceptan los datos de la capa de Aplicacin y los preparan para el direccionamiento en la capa de Red. La capa de Transporte es responsable de la transferencia de extremo a extremo general de los datos de aplicacin. La capa de Transporte cuando se encapsulan los datos de aplicacin para usarse en la capa de Red. La capa de Transporte incluye tambin las siguientes funciones:
Redes de Comunicaciones
Permitir mltiples aplicaciones para comunicarse a travs 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 aplicacin correcta, y emplear mecanismos de manejo de error.
Redes de Comunicaciones
se les asigna una direccin conocida como puerto para que la capa de Transporte pueda determinar con qu aplicacin o servicio se identifican los datos. Adems de utilizar la informacin contenida en los encabezados para las funciones bsicas de segmentacin y reensamblaje de datos, algunos protocolos de la capa de Transporte proveen: Conversaciones orientadas a la conexin. Entrega confiable. Reconstruccin ordenada de datos. Control del flujo.
Redes de Comunicaciones
requerimientos. Un protocolo de la capa de Transporte puede implementar un mtodo para asegurar la entrega confiable de los datos. En trminos de redes, confiabilidad significa asegurar que cada seccin de datos que enva el origen llegue al destino. En la capa de Transporte, las tres operaciones bsicas de confiabilidad son: Seguimiento de datos transmitidos, Acuse de recibo de los datos recibidos, y Retransmisin de cualquier dato sin acuse de recibo. Esto requiere que los procesos de la capa de Transporte de origen mantengan el seguimiento de todas las porciones de datos de cada conversacin y retransmitan cualquiera de los datos que no dieron acuse de recibo por el destino. La capa de Transporte del host de recepcin tambin debe rastrear los datos a medida que se reciben y reconocer la recepcin de los datos. Estos procesos de confiabilidad generan un uso adicional de los recursos de la red debido al reconocimiento, rastreo y retransmisin. Para admitir estas operaciones de confiabilidad se intercambian ms datos de control entre los hosts emisores y receptores. Esta informacin de control est contenida en el encabezado de la Capa 4.
Redes de Comunicaciones
UDP es un protocolo simple que provee las funciones bsicas de la capa de Transporte. Genera mucho menos sobrecarga que TCP, ya que no es orientado a la conexin y no cuenta con los sofisticados mecanismos de retransmisin, secuenciacin y control del flujo.
Esto no significa que las aplicaciones que utilizan UDP no sean confiables. Slo quiere decir que estas funciones no son contempladas por el protocolo de la capa de Transporte y deben implementarse aparte, si fuera necesario. Pese a que es relativamente baja la cantidad total de trfico UDP que puede encontrarse en una red tpica, entre los protocolos principales de la capa de Aplicacin que utilizan UDP se incluyen: Sistema de denominacin de dominio (DNS), Protocolo simple de administracin de red (SNMP), Protocolo de configuracin dinmica de host (DHCP), Protocolo de informacin de enrutamiento (RIP), Protocolo trivial de transferencia de archivos (TFTP), y Juegos en lnea. Es uno de los protocolos mnimos del nivel de transporte basados en el intercambio de datagramas (encapsulado de capa 4 del Modelo OSI), y a orientado a mensajes
Redes de Comunicaciones
documentado en el RFC 768 de la IETF.; no tiene control en sus flujos ya que sus paquetes pueden adelantarse unos a otros, y tampoco se sabe si llegan correctamente porque no hay entrega de confirmacin de entrega o recepcin.
UDP utiliza puertos para permitir la comunicacin entre aplicaciones. Es tambin utilizado para aplicaciones de streaming (audio, voz, etc.) donde la llegada de los paquetes es ms importante que la fiabilidad. Tambin sirve para aplicaciones simples de tipo peticin / respuesta como el servicio DNS, donde la sobrecarga de las cabeceras que aportan la fiabilidad es desproporcionada para el tamao de los paquetes.
El protocolo UDP es un protocolo de transmisin de datos, pero en este caso la velocidad prima sobre la calidad de entrega, adems se trata de un protocolo no fiable porque no confirma que el receptor haya recibido la informacin.
Redes de Comunicaciones
La comunicacin con el controlador se realiza a travs del envo y recepcin de paquetes UDP. El envo de los bytes se realiza, mediante el protocolo UDP (User Data Protocol), mostrado a continuacin:
Algunas aplicaciones como los juegos en lnea o VoIP pueden tolerar algunas prdidas de datos. Si estas aplicaciones utilizaran TCP, experimentaran largas demoras, ya que TCP detecta la prdida de datos y los retransmite. Estas demoras seran ms perjudiciales para la aplicacin que las pequeas prdidas de datos. Algunas aplicaciones, como DNS, simplemente reintentan enviar la solicitud si no obtienen respuesta y, por lo tanto, no necesitan TCP para garantizar la entrega del mensaje. La baja sobrecarga de UDP lo hace deseable para dichas aplicaciones.
Redes de Comunicaciones
Este protocolo est definido para hacer posible el intercambio de datagramas a travs de la red, UDP asume que se usa el protocolo IP. UDP, son las siglas de Protocolo de Datagrama de Usuario (en ingls User Datagram Protocol); un protocolo sin conexin que como TCP funciones en redes IP. Este protocolo no est orientado a conexin de la capa de transporte del modelo TCP/IP, adems este protocolo es muy simple ya que no proporciona deteccin de errores (no es un protocolo orientado a conexin). UDP provee procedimiento para que las aplicaciones puedan comunicarse entre ellos con el mnimo mecanismo de protocolo, por lo cual se dice que es un protocolo orientado a la transaccin, o haciendo un contraste con el protocolo TCP como protocolo no orientado a la conexin ya que no se garantiza los errores de duplicados, ni la entrega de los paquetes, adems UDP no usa acuses de recibos o ventanas pero sin embargo la confiabilidad puede ser suministrada por protocolos de la capa de aplicacin. User Datagram Protocol es un poco confiable .No comprobar si hay errores, o incluso para ver si los datos transmitidos se ha recibido. Sin embargo, debido a que
Redes de Comunicaciones
no ofrece estos servicios, tiene una menor carga y por lo tanto ms rpido que TCP . UDP proporcionar un mejor rendimiento en una red confiable. Servicio de nombres de dominio , de archivos Protocolo trivial de transferencia y Simple Network Management Protocol todos los UDP uso.
Donde el puerto de origen es el nmero de puerto usado en el host origen. Puerto de destino este campo contiene el puerto correspondiente a la aplicacin del equipo receptor al que se enva, o del host destino. La longitud este campo especifica la longitud total del segmento con el encabezado y los datos incluido que tiene de 4 x 16 bits por lo tanto la longitud del campo es necesariamente es >= a 8 bytes. Checksum es la sumatoria calculada en funcin de los campos del encabezado y de los datos que se utilizada para detectar errores. Datos en este campo se colocan los datos transportados.
PUERTOS UDP utiliza puertos para permitir la comunicacin entre aplicaciones. El campo de puerto tiene una longitud de 16 bits, por lo que el rango de valores vlidos va de 0 a 65.535. El puerto 0 est reservado, pero es un valor permitido como puerto origen si el proceso emisor no espera recibir mensajes como respuesta. Los puertos 1 a 1023 se llaman puertos "bien conocidos" y en sistemas operativos tipo Unix enlazar con uno de estos puertos requiere acceso como supe usuario.
Redes de Comunicaciones
Los puertos 1024 a 49.151 son puertos registrados. Los puertos 49.152 a 65.535 son puertos efmeros y son utilizados como puertos temporales, sobre todo por los clientes al comunicarse con los servidores.
REENSAMBLAJE DE DATAGRAMAS DE UDP Ya que UDP opera sin conexin, las sesiones no se establecen antes de que se lleve a cabo la comunicacin, como sucede con TCP. Se dice que UDP es basado en transacciones. En otras palabras, cuando una aplicacin posee datos para enviar, simplemente los enva.
Muchas aplicaciones que utilizan UDP envan pequeas cantidades de datos que pueden ocupar un segmento. Sin embargo, algunas aplicaciones enviarn cantidades mayores de datos que deben dividirse en varios segmentos. La PDU de UDP se conoce como datagrama, pese a que los trminos segmento y datagrama a veces se utilizan de manera indistinta para describir una PDU de la capa de Transporte.
Cuando se envan mltiples datagramas a un destino, los mismos pueden tomar rutas distintas y llegar en el orden incorrecto. UDP no mantiene un seguimiento de los nmeros de secuencia de la manera en que lo hace TCP. UDP no puede reordenar los datagramas en el orden de la transmisin. Ver la figura. Por lo tanto, UDP simplemente reensambla los datos en el orden en que se recibieron y los enva a la aplicacin. Si la secuencia de los datos es importante para la aplicacin, la misma deber identificar la secuencia adecuada de datos y determinar cmo procesarlos.
Redes de Comunicaciones
PROCESOS Y SOLICITUDES DEL SERVIDOR UDP Al igual que las aplicaciones basadas en TCP, a las aplicaciones de servidor basadas en UDP se les asigna nmeros de puertos bien conocidos o registrados. Cuando se ejecutan estas aplicaciones o procesos, aceptan los datos que coincidan con el nmero de puerto asignado. Cuando UDP recibe un datagrama destinado a uno de esos puertos, enva los datos de aplicacin a la aplicacin adecuada en base a su nmero de puerto.
Redes de Comunicaciones
PROCESOS DEL CLIENTE UDP Como en TCP, la comunicacin cliente/servidor se inicia por una aplicacin cliente que solicita datos de un proceso del servidor. El proceso de cliente UDP selecciona al azar un nmero de puerto del rango dinmico de nmeros de puerto y lo utiliza como puerto de origen para la conversacin. El puerto de destino por lo general ser el nmero de puerto bien conocido o registrado asignado al proceso del servidor.
Los nmeros de puerto de origen seleccionados al azar colaboran con la seguridad. Si existe un patrn predecible para la seleccin del puerto de destino, un intruso puede simular el acceso a un cliente de manera ms sencilla intentando conectarse al nmero de puerto que tenga mayor posibilidad de estar abierto.
Ya que no se crean sesiones con UDP, tan pronto como los datos estn listos para ser enviados y los puertos estn identificados, UDP puede formar el datagrama y enviarlo a la capa de Red para direccionamiento y envo a la red.
Redes de Comunicaciones
Cabe recordar que una vez que el cliente ha elegido los puertos de origen y destino, estos mismos puertos se utilizarn en el encabezado de todos los datagramas que se utilicen en la transaccin. Para la devolucin de datos del servidor al cliente, se invierten los nmeros de puerto de origen y destino en el encabezado del datagrama.
Redes de Comunicaciones
Redes de Comunicaciones
UDP y TCP son protocolos comunes de la capa de Transporte TCP no enva datos a la red hasta que advierte que el destino est preparado para recibirlos. Luego TCP administra el flujo de datos y reenva todos los segmentos de datos de los que recibi acuse a medida que se reciben en el destino.
TCP utiliza mecanismos de enlace, temporizadores y acuses de recibo y uso dinmico de ventanas para llevar a cabo estas funciones confiables. Sin embargo, esta confiabilidad representa cierta sobrecarga en la red en trminos de encabezados de segmentos ms grandes y mayor trfico de red entre el origen y el destino que administra el transporte de datos.
Redes de Comunicaciones
7.2. TCP
Es uno principales protocolos de la capa de transporte del modelo TCP/IP, que significa Protocolo de Control de Transmisin; es un protocolo de capa 4 orientado a la conexin es decir que permite que dos mquinas que estn comunicadas controlen el estado de la transmisin de datos full-dplex; adems es confiable.
Con el uso del protocolo TCP las aplicaciones pueden comunicarse en forma segura independiente de las capas inferiores esto significa que los routers solo tienen que enviar datos en forma de datagramas sin preocuparse con el monitoreo de datos porque esta funcin la cumple la capa de transporte. TCP forma parte de la pila del protocolo TCP/IP, se establece una conexin entre ambos extremos antes de iniciar la transferencia de informacin. Entre otras funciones de la TCP est:
La capacidad de controlar la velocidad de los datos usando su capacidad para emitir mensajes de tamao variable, estos mensajes se llaman segmentos. Brinda un circuito virtual entre las aplicaciones del usuario final.
Redes de Comunicaciones
Adems es el responsable de dividir los mensajes en segmentos, reensamblar en el receptor, reenviar cualquier mensaje que no tenga un acuse de recibo y reensamblar los mensajes a partir de los mensajes recibidos.
A diferencia de UDP que enva los paquetes ni bien empieza, el protocolo TCP tiene tres frases para realizar el envo ya que la conexin debe ser previamente establecida. Entre las 3 fases en la comunicacin TCP:
Establecimiento de la conexin.- esto se debe de realizar antes de que comience la transferencia de datos, en esta etapa ambos extremos deben sincronizar sus nmeros de secuencias iniciales denominado ISN, esto se realiza a travs del intercambio de segmentos que establece la conexin al transportar el bit SYN (es el bit de control para la sincronizacin), y en la sincronizacin se intercambian los SYN y acuse de recibo ACK, as como se muestra a continuacin:
Redes de Comunicaciones
El establecimiento de la conexin TCP en programacin se hace mediante funciones llamado sockets que es similar a un sistema de telefona en el cual la funcin bind dice a las otras personas cual es nuestro nmero de telfono entonces ahora si se puede realizar llamadas. Tambin se denota la funcin connect se ejecuta el lado del cliente mientras que las funciones bind, listen y accept se ejecutan del lado del servidor. Transferencia de datos.- en esta etapa tambin se realiza el ordenamiento de los datos transferidos, liberacin de errores, la retransmisin de los paquetes perdidos, el descarte de paquetes duplicados, manejo de la congestin y control de flujo; ahora el ordenamiento de la data se hace usando los ISN ya que se incrementa por cada byte transmitido, haciendo uso de los SACK, para la liberacin de errores el protocolo TCP utiliza el algoritmo CRC el cual hace una verificacin del campo cheksum de 16 bits, ahora el manejo de la congestin y el control de flujo se hacen mediante el uso de ventanas as como se muestra a continuacin:
Termino de la conexin.- tanto el cliente como el servidor pueden terminar la conexin, si consideramos que el cliente es el que enva un flag FIN, el servidor le responde con un acuse de recibo con lo que se detiene el flujo del cliente del servidor, el servidor enva un FIN hacia el cliente y este responder con otro acuse de recibo, con lo que se detiene el flujo de datos del servidor al cliente, adems por otro lado esto se ver reflejado al llamar la funcin close en la funcin main, as como se muestra a continuacin:
Redes de Comunicaciones
ESTRUCTURA DEL PAQUETE TCP Un paquete TCP es un encapsulado por el encabezado TCP que especifica el enrutamiento, como las direcciones y destino del datagrama y consta de los campos:
Puerto de origen. Puerto de destino. Nmero de secuencia. Nmero de confirmacin. Desplazamiento de datos. Un campo reservado. Bit de control. Ventana. Suma de comprobacin. Indicador de urgencia. Opciones. Compensin.
El protocolo TCP, se utiliza para enviar y recibir datos por la red. Adems este protocolo divide el archivo que tiene que enviar en pequeos paquetes, que son enviados uno a uno.
Redes de Comunicaciones
Redes de Comunicaciones
LA DESVENTAJA DE LA ESTRATIFICACION POR CAPAS La estratificacin por capas es una idea fundamental que proporciona las bases para el diseo de protocolos. Permite al diseador dividir un problema complicado en subproblemas y resolver cada parte de manera independiente. Por desgracia, el software resultante de una estratificacin por capas estrictas puede ser muy ineficaz. Si se considera el trabajo de la capa de transporte, debe aceptar un flujo de octetos desde un programa de aplicacin, dividir el flujo en paquetes y enviar cada paquete a travs de la red de redes. Para optimizar la transferencia, la capa de transporte debe seleccionar el tamao de paquete ms grande posible que le permita a un paquete viajar en una trama de red. En particular, si la mquina de
Redes de Comunicaciones
destino est conectada a una mquina de la misma red de la fuente, solo la red fsica se ver involucrada en la transferencia, as, el emisor puede optimizar el tamao del paquete para esta red. Si el software preserva una estricta estratificacin por capas, sin embargo, la capa de transporte no podr saber como rutear l modulo de Internet l trfico o que redes estn conectadas directamente. Ms aun, la capa de transporte no comprender el datagrama o el formato de trama ni ser capaz de determinar cmo deben ser aadidos muchos octetos de encabezado a un paquete. As, una estratificacin por capas estricta impedir que la capa de transporte optimice la transferencia.
Redes de Comunicaciones
Redes de Comunicaciones
Proceso de comunicacin del TCP: El modelo TCP/IP describe la funcionalidad de los protocolos que forman la suite de protocolos TCP/IP. Esos protocolos, que se implementan tanto en el host emisor como en el receptor, interactan para proporcionar la entrega de aplicaciones de extremo a extremo a travs de una red. Un proceso completo de comunicacin incluye estos pasos: 1. Creacin de datos a nivel de la capa de aplicacin del dispositivo final origen. 2. Segmentacin y encapsulacin de datos cuando pasan por la stack de protocolos en el dispositivo final de origen. 3. Generacin de los datos sobre el medio en la capa de acceso a la red de la stack. 4. Transporte de los datos a travs de la internetwork, que consiste de los medios y de cualquier dispositivo intermediario. 5. Recepcin de los datos en la capa de acceso a la red del dispositivo final de destino. 6. Desencapsulacin y rearmado de los datos cuando pasan por la stack en el dispositivo final. 7. Traspaso de estos datos a la aplicacin de destino en la capa de aplicacin del dispositivo final de destino.
Redes de Comunicaciones
Redes de Comunicaciones
La figura muestra la asignacin tpica de puertos de origen y destino en operaciones de cliente o servidor TCP.
Redes de Comunicaciones
Para entender el proceso de enlace de tres vas, es importante observar los distintos valores que intercambian los dos hosts. Dentro del encabezado del segmento TCP, existen seis campos de 1 bit que contienen informacin de control utilizada para gestionar los procesos de TCP. Estos campos son los siguientes: URG: Urgente campo de sealizador significativo, ACK: Campo significativo de acuse de recibo,
Redes de Comunicaciones
PSH: Funcin de empuje,
RST: Reconfiguracin de la conexin, SYN: Sincronizar nmeros de secuencia, FIN: No hay ms datos desde el emisor.
A estos campos se los denomina sealadores porque el valor de uno de estos campos es slo de 1 bit, entonces tiene slo dos valores: 1 0. Si el valor del bit se establece en 1, indica la informacin de control que contiene el segmento. Si se utiliza un proceso de cuatro pasos, los sealizadores se intercambian para finalizar la conexin TCP.
Redes de Comunicaciones
Redes de Comunicaciones
Redes de Comunicaciones
Redes de Comunicaciones
El proceso de retransmisin no es especificado por RFC, sino que depende de la implementacin de TCP en particular. Para una implementacin de TCP tpica, un host puede transmitir un segmento, colocar una copia del segmento en una cola de retransmisin e iniciar un temporizador. Cuando se recibe el acuse de recibo de los datos, se elimina el segmento de la cola. Si no se recibe el acuse de recibo antes de que el temporizador venza, el segmento es retransmitido. La animacin demuestra la retransmisin de segmentos perdidos. Los hosts actuales tambin suelen emplear una funcin opcional llamada Acuses de recibo selectivos. Si ambos hosts admiten el Acuse de recibo selectivo, es posible que el destino reconozca los bytes de segmentos discontinuos y el host slo necesitar retransmitir los datos perdidos.
Redes de Comunicaciones
CONTROL DEL FLUJO TCP tambin provee mecanismos para el control del flujo. El control del flujo contribuye con la confiabilidad de la transmisin TCP ajustando la tasa efectiva de flujo de datos entre los dos servicios de la sesin. Cuando el origen advierte que se recibi la cantidad de datos especificados en los segmentos, puede continuar enviando ms datos para esta sesin.
El campo Tamao de la ventana en el encabezado TCP especifica la cantidad de datos que puede transmitirse antes de que se reciba el acuse de recibo. El tamao de la ventana inicial se determina durante el comienzo de la sesin a travs del enlace de tres vas. El mecanismo de retroalimentacin de TCP ajusta la tasa de transmisin de datos efectiva al flujo mximo que la red y el dispositivo de destino pueden soportar sin sufrir prdidas. TCP intenta gestionar la tasa de transmisin de manera que todos los datos se reciban y se reduzcan las retransmisiones.
Redes de Comunicaciones
Redes de Comunicaciones
7.3. SCTP
SCTP es un mecanismo de transporte fiable orientado hacia conexin. Est orientado tambin hacia transmisin de datos pero no est orientado hacia bytes como TCP. Provee mltiples transmisiones distribuidos sobre una misma conexin. Puede adems representar una conexin con mltiples direcciones IP de modo que si una IP falla, la conexin no se interrumpe. Se desarrollo inicialmente para aplicaciones de telefona pero se puede utilizar en otras aplicaciones.
El protocolo de transmisin de control de flujo SCTP (Stream Control Transmission Protocol) \cite{caro2003sctp} es un estndar de nivel de transporte propuesto por el IETF e implementando en varias distribuciones de Linux y versiones comerciales de UNIX. SCTP es producto de los esfuerzos orientados en sus comienzos en el desarrollo protocolo de sealizacin telefnica para redes IP \cite{robison2signaling}. Provee una conexin full-duplex confiable\footnote{Si bien existen algunas propuestas como \cite{stewart-p} para permitir comunicaciones parcialmente confiable, muy tiles en aplicaciones de audio y video.}. Dicha conexin se denomina asociacin y provee un novedoso servicio de Multihoming, que le permite a los hosts de una asociacin tener mltiples direcciones IP. Ofrece multistreaming
Redes de Comunicaciones
con lo cual se pueden tener mltiples flujos de datos independientes. SCTP provee un servicio de envo de datos orientado a mensajes a diferencia de TCP, que es orientado a bytes sin ninguna estructura de datos. Los paquetes SCTP siempre comienzan con una cabecera comn. A continuacion tenemos uno o ms Chunks, bloques concatenados que contienen informacin de datos o de control. Los Chunks de control transfieren la informacin necesaria para el funcionamiento de una asociacin, mientras que los Chunks de datos llevan informacin de la capa de aplicacin. SCTP provee un diseo flexible que permite agregar nuevos Chunks de control.
Cada Chunk contiene una cabecera que identifica su tipo, longitud y cualquier flag especial que el tipo requiera. SCTP posee la flexibilidad de concatenar diversos tipos de Chunks en un mismo paquete. Durante una transferencia de datos, se utilizan principalmente dos tipos de Chunks: a) Data Chunk, usado por el emisor, que contiene los datos. b) Sack Chunk, usado por el receptor, que contiene el acuse de la recepcin de los data Chunks. Todos los data Chunks son identificados por un nmero secuencial llamado Transmission Sequence Number (TSN). Los TSN cuentan data Chunks y no bytes enviados como lo hace el Sequence Number de TCP. Cuando un Data Chunk arriba al receptor, este ltimo debe enviar un Sack Chunk, reportando la recepcin. El Cumulative TSN Ack es utilizado de la misma manera que los Acknowledgement Number de TCP. El Ack de SCTP acusa la recepcin de todos los TSN hasta el valor del mismo, mientras que en TCP se acusa recibo de la recepcin de bytes, y no de los segmentos que los transportan.
Los campos Gap Ack Blocks son utilizados para acusar la recepcin de datos fuera de orden, ya sea porque hay Data Chunks que pueden arribar al receptor en forma desordenada, o porque pueden haberse perdido. Entonces, si un TSN cae dentro de un Gap Ack Block significa que se ha recibido correctamente y que el emisor no necesita retransmitirlo incluso si el Cumulative TSN Ack no acusa su recepcin. El
Redes de Comunicaciones
Sack Chunk contiene una lista de TSN llamada Duplicate TSN. Por medio de esta lista, el receptor informa al emisor sobre la recepcin de TSN duplicados. SCTP es un protocolo de ventana deslizante que regula la tasa de transmisin de datos de la misma manera que lo hace TCP. El valor Advertised Receiver Window Credit es informado por el receptor al momento de iniciar la asociacin y en cada Sack Chunk transmitido.
Para realizar control de congestin SCTP utiliza los mismos mecanismos de TCP: Slow Start, Congestion Avoidance, Fast Retransmit y Fast Recovery
\cite{allman1999rfc2581}. SCTP realiza Slow Start cuando el Cwnd es menor o igual que el SSThresh, a diferencia de las implementaciones de TCP que pueden elegir entre Slow Start o Congestion Avoidance cuando el Cwnd es igual que el SSThresh. Durante Slow Start, el Cwnd es incrementado nicamente si se cumplen las siguientes condiciones: 1) que el Ack recibido asiente nuevos datos, 2) que todo el Cwnd este en uso antes de que el Ack arribe. Al cumplirse la condicin especificada, el Cwnd es incrementado por el mnimo entre la cantidad de datos asentidos y el MTU (unidad mxima de
transferencia)\footnote{En TCP se utiliza el Sender Maximum Segment Size (Smss) que es el mximo tamao que el emisor de un segmento puede enviar en un momento dado. Este valor puede estar acotado en el MTU (mxima unidad de transmisin) del enlace de salida desde el host, el resultado del Path MTU Discovery Algorithm , Rmss u otros factores. Este tamao no incluye los encabezados TCP e IP.}. Las variables de Cwnd y SSThresh deben mantenerse por cada una de las direcciones destino presentes en una asociacin, con lo cual, los algoritmos de control de congestin deben ejecutarse por cada una de ellas. Esto se debe a que distintas direcciones destinos generalmente implican diferentes caminos con sus respectivos estados de congestin y latencia.
Redes de Comunicaciones
Ante la ocurrencia de un Timeout, el emisor retransmite todos los Data Chunk que no hayan sido asentidos. Todos los Data Chunks que fueron asentidos por medio de Gap Ack Block no sern retransmitidos, evitando la retransmisin de los Data Chunks que fueron recibidos fuera de orden.
El clculo del Timeout de retransmisin (RTO) se realiza con el mismo algoritmo utilizado en TCP \cite{jacobson1988congestion}. El mismo debe realizarse por cada destino que interviene en la asociacin.
Al igual que TCP, SCTP tiene un mecanismo de Fast Retransmit el cual consiste en optimizar el rendimiento ante prdidas aisladas. El mecanismo que utiliza el receptor para informa EL FORMATO DEL PAQUETE SCTP: Consiste de cabecera SCTP comn seguida de una pila de bloques llamados chunks, que estar limitado por el MTU (Maximun Transfer Unit), estos chunks puede contener datos de control o la data en s que se desea enviar. La cabecera comn consta de: La direccin del puerto de origen. La direccin del puerto de destino. El tag de verificacin. El campo cheksum del paquete.
El puerto de origen es usado por el receptor para identificar la asociacin a la que pertenece el paquete SCTP, el puerto de destino es el puerto a donde el paquete est destinado. Ambos extremos asignan un valor de identificacin de 32 bits (verification tag), este campo es negociado al inicio de la asociacin.
Redes de Comunicaciones
El checksum, es una herramienta utilizada para verificar la integridad de cada paquete SCTP, el cual usa el algoritmo Alder-32; el cual realiza una suma usando 32 bits de esta manera se pueden detectar errores. Todo tipo de chunk tiene los campos: Type.- Identifica el tipo de chunk que se est transmitiendo. Flag.- Especifica que bits se van a usar en la asociacin, depende del tipo de chunk que se va a enviar. Length.- Determina el tamao total del chunk en bytes. Chunk data.- Incluye la carga de datos que est llevando el chunk.
En esta figura se observa a un paquete que puede tener N chunks, es ah que el SCTP permite que los chunks sean multiplexados utilizando la total
Redes de Comunicaciones
capacidad de MTU, con la excepcin de que necesita los mensajes: INIT e INIT-ACK.
EL DESEMPEO DEL SCTP Por qu necesitamos otro protocolo de transporte? TCP: flujo fiable de bytes UDP: datagramas no fiables No hay transmisin de mensajes fiables No hay grados variables de fiabilidad (todo o nada) Varios canales en una conexin.
HISTORIA DEL PROTOCOLO SCTP El comit SIGTRAN quera un protocolo de transporte SS7. MDTP (Protocolo de Datagramas de Transmision MultiNetwork), hizo lo que quera SIGTRAN pero pas por encima de UDP. MDTP a evolucionado hasta convertirse en SCTP, que es un protocolo de transporte.
Redes de Comunicaciones
ASOCIACIONES Y STREAMS Asociacin SCTP: similar a conexin TCP. Streams: los canales para la transmisin unidireccional de mensajes (hasta 2^ 16 por direccin) Numero de flujos de negociacin en el inicion de la conexin.
APLICACIONES SOBRE SCTP: Streaming de video mediante JMF (Java Media Framework)
SCTP, es un protocolo de nivel de transporte orientado a conexin, que a diferencia de TCP y su concepto de conexin introduce una nueva forma de comunicacin entre sistemas denominado asociacin. Las principales caractersticas de SCTP son las siguientes: Es un protocolo punto a punto, donde se establece el intercambio de datos entre dos extremos conocidos. Proporciona transporte fiable de datos de usuario, detectando y reparando los datos errneos o fuera de secuencia. Se adapta a la tasa de transferencia, disminuyendo la velocidad de envo de datos en caso de congestin en la red.
Redes de Comunicaciones
Multi-horming: permite establecer asociaciones robustas entre dos extremos cada uno de los cuales puede ser alcanzado mediante ms de una direccin de red. Hacia cada una de ellas se encaminan los mensajes de forma independiente de manera que, si una de las interfaces de red queda fuera de servicio, la comunicacin no se ve afectada ya que el flujo de datos se redirige por una de las otras si las hay. Cada asociacin puede contener uno o ms streams que permiten el envo de datos de forma independiente entre cada uno de ellos.
STREAMING DE VIDEO MEDIANTE SCTP / JMF: Porque utilizamos SCTP, ya que es un protocolo de transporte que sirve para el intercambio de datos en tiempo real, y que tambin nos permite tener uno o mas interfaces de red que se puedan utilizar como backup para que no haya cortes en la transmisin en caso de cada de las interfaces principales. Ahora se utiliza JMF porque ofrece todo lo necesario para implementar una aplicacin multimedia y adems nos permite sustituir el protocolo de transporte utilizado, en este caso se ha utilizado SCTP en vez de TCP o UDP. Para eso se consigui realizar una aplicacin cliente/servidor multimedia mediante el API que ofrece JMF que utiliza RTP para realizar el streaming de datos, RCTP lleva la informacin de control de flujo RTP y SCTP como nivel de transporte, que tambin se puede construir un sistema de videovigilancia mediante cmaras IP.
Redes de Comunicaciones
Ahora no es muy costoso de realizar esta aplicacin sino tener bastante claro el orden en la pila de protocolos para todos los pasos que hay que realizar. Los datos podrn ser presentados por pantalla mediante una interfaz grafica, almacenados en un fichero o enviados a travs de la red, asi como se presenta en este modelo fundamental:
Redes de Comunicaciones
Cada uno de estos apartados que presenta el esquema, el API ofrece una serie de clases e interfaces que permiten al programador realizar una aplicacin a medida respondiendo a sus necesidades. Tanto TCP como UDP, brindan servicios a una serie de aplicaciones de alto nivel.
Por estas limitaciones, UDP no ofrece un nivel de confiabilidad necesario para algunas aplicaciones; por ejemplo, si se utiliza UDP, pero se necesita cierto nivel de confiabilidad, se deber implementar de forma externa los mecanismos de control, de retransmisin de paquetes, de deteccin y correccin de congestin en la red, entre otros.
En cambio, TCP ofrece todos estos servicios. Sin embargo, algunos servicios que entrega, por ejemplo, la entrega ordenada de paquetes, puede provocar importantes retardos. TCP no tiene soporte para hosts con mltiples interfaces.
SCTP fue creado para solucionar algunas limitaciones que tienen los protocolos TCP y UDP. A continuacin se muestra una figura que compara trminos entre los 3 protocolos.
Redes de Comunicaciones
A pesar de estas diferencias, se puede decir que tienen muchas cosas similares; por ejemplo, el inicio de conexin/asociacin requiere un intercambio de mensajes para su inicio, ambos ofrecen envo confiable de datos, control de congestin, y un mecanismo de intercambio de mensajes para finalizar una comunicacin.
De la figura anterior, se puede notar que existe una similitud mayor entre SCTP y TCP que entre SCTP y UDP. Se profundizar sobre la relacin SCTP/TCP.
Redes de Comunicaciones
Control de congestin: ambos ofrecen el mismo sistema de control ante congestin (Additive Increase/Multiplicative Decrease),
Fin de comunicacin: ambos intercambian mensajes para indicar el fin de una comunicacin.
Inicio de comunicacin: existe una diferencia en la implementacin. TCP usa 3-way-handshake, SCTP utiliza 4 mensajes, de forma de prevenir ataques del tipo SYN-Flooding.
Head-of-Line Blocking (HOL): el protocolo SCTP evita el HOL. Se produce debido a que TCP enva datos de forma ordenada, en un solo flujo de comunicacin. SI se produce una prdida, los datos ya enviados y recibidos correctamente, se mantienen en el buffer a la espera de la llegada del dato perdido.
Redes de Comunicaciones
Para ejemplificar, se muestra en la figura anterior el envo de varios archivos por la misma conexin TCP. Si se produce una prdida del primer paquete, el resto de los paquetes (2-6) debern esperar a que llegue el paquete 1 retransimitido. En este caso si los paquetes de color son archivos independientes, se retrasa la llegada de stos a la capa de aplicacin. Una solucin, utilizando TCP para el mismo problema, es enviar los distintos datos a travs de distintas conexiones TCP, en paralelo (como HTTP). As, considerando el mismo ejemplo anterior, solo se retrasaran los datos de la conexin relacionada al paquete perdido, y no todos los datos de las otras conexiones. La desventaja de este tipo de conexin es la prdida de tiempo al iniciar/terminar una conexin, y el mal uso de recursos al tener varias conexiones TCP abiertas entre 2 hosts.
Debido a las caractersticas de SCTP, este problema no se da. Si se tiene solo una asociacin, y un stream, una prdida del paquete 1 no retrasa el paso de los datos de los paquetes 3-6 a la capa de aplicacin. Lo mismo pasa si se realiza el envo de datos distintos en flujos distintos. La diferencia en este caso, y ventaja, es que las distintas conexiones TCP no deben iniciarse desde capa de aplicacin, sino que la capa de transporte se encarga de dividir la informacin en distintos flujos, en una misma asociacin.
Ataques SYN: Un ataque SYN tcnica utilizada para provocar denegacin de servicio en un servidor web.
Fin de comunicacin: SCTP no tiene el estado HALF-CLOSED de TCP, en el cual uno de los extremos puede continuar enviando datos.
Multi-Homing/Multi-Streaming.
Redes de Comunicaciones
Los protocolos ms populares son el TCP y el UDP, el protocolo TCP es ms confiable y garantiza el envo y la recepcin ordenada de los segmentos y maneja la congestin de la red, mientras que la UDP es un protocolo no orientado a la conexin o tambin se le puede decir orientado a la transmisin por lo que no garantiza el envo y la recepcin ordenada ni la congestin de la red, sino que solo le importa transmitir los mensajes sin importar si todos los paquetes llegaron o no. Sin embargo UDP es un protocolo rpido y preserva los limites de los mensajes que transportan es decir enva los mensajes tal cual los recibos de la capa de aplicacin, a diferencia de TCP se reacomoda los paquetes de acuerdo al tamao de la ventana de transmisin. Las funciones de SCTP, tambin provee confiabilidad y envo ordenado de los mensajes as como TCP, pero opera de manera similar a UDP, preservando los limites de los mensajes y provee adicionalmente los siguientes servicio: multi-homig, multi_streaming, Initiation protecction, message framing, graceful shutdown, etc. El protocolo SCTP monitoriza el camino que esta fuera de servicio usando un heartbeat, entonces el mensaje se enva peridicamente, SCTP permite configurar de modo que usen todas las interfaces en conjunto. Tambin SCTP soporta mltiples streams en una misma asociacin, tambin garantiza que el tamao del paquete enviado ser el mismo que el paquete ledo al otro extremo.
Redes de Comunicaciones
CONCLUSIONES
El protocolo SCTP ofrece la posibilidad de multi-streaming, sin embargo se debe de tener cuidado en la seleccin de la cantidad de streams a usar, mientras se enven una mayor cantidad de mensajes en un tiempo dado ser mejor usar una mayor cantidad de flujos, pero no en exceso ya que se puede producir un overhead. TCP brinda un circuito virtual entre las aplicaciones del usuario final, adems es el responsable de dividir los mensajes en segmentos, reensamblar en el receptor, reenviar cualquier mensaje que no tenga acuse de recibo y reensamblar los mensajes a partir de los mensajes recibidos. El protocolo de transporte TCP incorpora ciertos mecanismos para actuar contra la congestin. Los protocolos orientados a cadenas se disean para enviar caracteres separados y no bloques, tramas, datagramas, etc. Los datos son enviados por un protocolo de nivel superior en forma de cadenas, byte a byte. Cuando llegan al nivel TCP, los bytes son agrupados para formar segmentos TCP. Dichos segmentos se transfieren a IP. El protocolo SCTP puede ofrecer mensajes de sealizacin a la aplicacin tan pronto como llegar al utilizar el servicio de orden porque la prdida de un mensaje de sealizacin no afecta a la entrega del resto de los mensajes y esto evita la lnea de bloqueo en el TCP, que se produce cuando mltiples capas superiores son multiplexadas dentro de una nica conexin TCP. UDP es generalmente el protocolo usado en la transmisin de vdeo y voz a travs de una red. Esto es porque no hay tiempo para enviar de nuevo
Redes de Comunicaciones
paquetes perdidos cuando se est escuchando a alguien o viendo un vdeo en tiempo real. En la familia de protocolos de Internet UDP proporciona una sencilla interfaz entre la capa de red y la capa de aplicacin. UDP no otorga garantas para la entrega de sus mensajes y el origen UDP no retiene estados de los mensajes UDP que han sido enviados a la red. UDP slo aade multiplexado de aplicacin y suma de verificacin de la cabecera y la carga til. TCP da soporte a muchas de las aplicaciones ms populares de Internet, incluidas HTTP, SMTP, SSH y FTP.
UDP ofrece los servicios mnimos de la capa de transporte; no ofrece transferencia confiable ni ordenada; tampoco ofrece un control de flujo, por lo que una aplicacin puede desbordar el buffer de recepcin del destinatario. Tampoco ofrece control de congestin. UDP no ofrece un nivel de confiabilidad necesario para algunas aplicaciones; por ejemplo, si se utiliza UDP, pero se necesita cierto nivel de confiabilidad, se deber implementar de forma externa los mecanismos de control, de retransmisin de paquetes, de deteccin y correccin de congestin en la red, entre otros. TCP ofrece todos estos servicios. Sin embargo, algunos servicios que entrega, por ejemplo, la entrega ordenada de paquetes, puede provocar importantes retardos. TCP no tiene soporte para hosts con mltiples interfaces.
Redes de Comunicaciones
Redes de Comunicaciones
Con SCTP se puede crear diversos canales de conexin que trabajan en paralelo, de esta manera la transmisin entre cliente y servidor. TCP siempre ofrece un flujo ordenado de bytes a la aplicacin. Cabe sealar que SCTP no sea tan rpido como TCP si se utiliza como un buscar y reemplazar, aunque actualmente se demuestran casos en los que SCTP se puede utilizar para navegar por la web. Considerando los costes de gestin de hoy en da, las soluciones de gestin integrada para entregar servicios extremos a extremo eficientemente en un ambiente de mltiples capas heterogneos de la red constituyen un factor dominante para la introduccin de las nuevas arquitecturas de red, tecnologas, y servicios. Si la conexin se hace entre dos host muy diferentes en cuanto a velocidad, se puede llegar a una congestin. Cuando esto ocurre, es difcil recuperarse. Por eso hay que estudiar muy bien el mecanismo de control de flujo. Los segmentos TCP tiene una cabecera con una serie de campos de control y luego los datos. Para comenzar una sesin TCP hay que conectarse al receptor, cuando se ha confirmado la conexin ya se puede enviar datos en ambas direcciones. Cuando se cierra la conexin, el receptor ya no acepta datos pero el emisor los acepta hasta que termina de llegar la aceptacin de cierre del receptor. En el ao 2006 sali un protocolo Datagram Congestion Control Protocol (DCCP), Protocolo de Control de Congestin de Datagramas, DCCP es un nuevo protocolo de nivel de transporte orientado a los mensajes, se recomienda hacer un estudio de comparacin con el protocolo SCTP.
Redes de Comunicaciones
Hacer un estudio ms profundo sobre los avances de SCTP sobre Windows y sobre las libreras que estn en desarrollo para Java. Realizar un estudio de aplicacin del protocolo SCTP en conjunto con el protocolo IPv6 a las redes celulares, SCTP/IPv6 mbil en lugar de TCP/IP.
Redes de Comunicaciones
http://www.mailxmail.com/curso-redes-comunicaciones-internet-3/protocolos-niveltransporte-tcp-udp http://es.wikibooks.org/wiki/Redes_inform%C3%A1ticas/Protocolos_TCP_y_UDP_en _el_nivel_de_transporte http://consultasccna.comoj.com/informacion/tcpip/modelo/transudp.php http://es.wikibooks.org/wiki/Redes_inform%C3%A1ticas/Protocolos_TCP_y_UDP_en _el_nivel_de_transporte http://profesores.elo.utfsm.cl/~agv/elo323/2s10/projects/CaponaAhumada/comparaci on.html http://rr-sctp.googlecode.com/svn/trunk/paper/sctp.tex http://docencia.etsit.urjc.es/moodle/file.php/15/Curso_2010_2011/Teoria/4-transportenat-udp.pdf http://www.mfbarcell.es/docencia_uned/redes/tema_02/redes_cap_02.pdf http://dis.um.es/~lopezquesada/documentos/IES_0506/RAL_0506/doc/UT10.pdf http://growitsol.com/support/UABCS/RedesII/UnidadIII/Unidad-III.pdf