Trabajo 6 TCP/IP

Octubre 2008

Elaborado por:

Rusbel Dimas V-8.898.650

Yumar Solorzano V.-11.004.494

Rocny Suárez V-13.030.072

 Juan Maestre V-14.015.512

 

 

TCP/IP La familia de protocolos de Internet es un conjunto de protocolos de red en la que se basa Internet y que permiten la transmisión de datos entre redes de computadoras. En ocasiones se le denomina conjunto de protocolos TCP/IP, en referencia a los dos protocolos más importantes que la componen: Protocolo de Control de Transmisión (TCP) y Protocolo de Internet (IP), que fueron los dos primeros en definirse, y que son los más utilizados de la familia.

 

 Existen tantos protocolos en este conjunto que llegan a ser más de 100 diferentes, entre ellos se encuentra el popular HTTP (HyperText Transfer Protocol), que es el que se utiliza para acceder a las páginas Web, además de otros como el ARP (Address Resolution Protocol) para la resolución de direcciones, el FTP (File Transfer Protocol) para transferencia de archivos, y el SMTP (Simple Mail Transfer Protocol) y el POP (Post Office Protocol) para correo electrónico, TELNET para acceder a equipos remotos, entre otros.

 

El TCP/IP es la base de Internet, y sirve para enlazar computadoras que utilizan diferentes sistemas operativos, incluyendo PC, minicomputadoras y computadoras centrales sobre redes de área local (LAN) y área extensa (WAN). TCP/IP fue desarrollado y demostrado por primera vez en 1972 por el Departamento de Defensa de los Estados Unidos, ejecutándolo en ARPANET, una red de área extensa de dicho departamento. El 1 de enero de 2008 el Protocolo TCP/IP cumplió 25 años.

 

Descripción

La familia de protocolos de Internet puede describirse por analogía con el modelo OSI (Open System Interconnection), que describe los niveles o capas de la pila de protocolos, aunque en la práctica no corresponde exactamente con el modelo en Internet. En una pila de protocolos, cada nivel soluciona una serie de problemas relacionados con la transmisión de datos, y proporciona un servicio bien definido a los niveles más altos. Los niveles superiores son los más cercanos al usuario y tratan con datos más abstractos, dejando a los niveles más bajos la labor de traducir los datos de forma que sean físicamente manipulables.

El modelo de Internet fue diseñado como la solución a un problema práctico de ingeniería. El modelo OSI, en cambio, fue propuesto como una aproximación teórica y también como una primera fase en la evolución de las redes de ordenadores. Por lo tanto, el modelo OSI es más fácil de entender, pero el modelo TCP/IP es el que realmente se usa. Sirve de ayuda entender el modelo OSI antes de conocer TCP/IP, ya que se aplican los mismos principios, pero son más fáciles de entender en el modelo OSI.

 

 

La arquitectura del TCP/IP consta de cinco niveles o capas en las que se agrupan los protocolos, y que se relacionan con los niveles OSI de la siguiente manera:

 

 

Niveles en la pila TCP/IP

 

Hay algunas discusiones sobre como encaja el modelo TCP/IP dentro del modelo OSI. Como TCP/IP y modelo OSI no están delimitados con precisión no hay una respuesta que sea la correcta.

El modelo TCP/IP no está lo suficientemente dotado en los niveles inferiores como para detallar la auténtica estratificación en niveles: necesitaría tener una capa extra (el nivel de Red) entre los niveles de transporte e Internet. Protocolos específicos de un tipo concreto de red, que se sitúan por encima del marco de hardware básico, pertenecen al nivel de red, pero sin serlo. Ejemplos de estos protocolos son el ARP (Protocolo de resolución de direcciones) y el STP (Spanning Tree Protocol). De todas formas, estos son protocolos locales, y trabajan por debajo de las capas de Internet. Cierto es que situar ambos grupos (sin mencionar los protocolos que forman parte del nivel de Internet pero se sitúan por encima de los protocolos de Internet, como ICMP) todos en la misma capa puede producir confusión, pero el modelo OSI no llega a ese nivel de complejidad para ser más útil como modelo de referencia.

El siguiente diagrama intenta mostrar la pila OSI y otros protocolos relacionados con el modelo OSI original:

 

7

Aplicación

ej. HTTP, DNS, SMTP, SNMP, FTP, Telnet, SSH y SCP, NFS, RTSP, Feed, Webcal , POP3

6

Presentación

ej. XDR, ASN.1, SMB, AFP

5

Sesión

ej. TLS, SSH, ISO 8327 / CCITT X.225, RPC, NetBIOS

4

Transporte

ej. TCP, UDP, RTP, SCTP, SPX

3

Red

ej. IP, ICMP, IGMP, X.25, CLNP, ARP, RARP, BGP, OSPF, RIP, IGRP, EIGRP, IPX, DDP

2

Enlace de datos

ej. Ethernet, Token Ring, PPP, HDLC, Frame Relay, RDSI, ATM, IEEE 802.11, FDDI

1

Físico

ej. cable, radio, fibra óptica

 

Normalmente, los tres niveles superiores del modelo OSI (Aplicación, Presentación y Sesión) son considerados simplemente como el nivel de aplicación en el conjunto TCP/IP. Como TCP/IP no tiene un nivel de sesión unificado sobre el que los niveles superiores se sostengan, estas funciones son típicamente desempeñadas (o ignoradas) por las aplicaciones de usuario. La diferencia más notable entre los modelos de TCP/IP y OSI es el nivel de Aplicación, en TCP/IP se integran algunos niveles del modelo OSI en su nivel de Aplicación. Una interpretación simplificada de la pila TCP/IP se muestra debajo:

 

5

Aplicación

ej. HTTP, FTP, DNS
(protocolos de enrutamiento como BGP y RIP, que por varias razones funcionen sobre TCP y UDP respectivamente, son considerados parte del nivel de red)

4

Transporte

ej. TCP, UDP, RTP, SCTP
(protocolos de enrutamiento como OSPF, que funcionen sobre IP, son considerados parte del nivel de Internet)

3

Internet

Para TCP/IP este es el Protocolo de Internet (IP)
(protocolos requeridos como ICMP e IGMP funcionan sobre IP, pero todavía se pueden considerar parte del nivel de red; ARP no funciona sobre IP)

2

Enlace

ej. Ethernet, Token Ring, PPP, HDLC, Frame Relay, RDSI, ATM, IEEE 802.11, FDDI

1

Físico

ej. medio físico, y técnicas de codificación, T1, E1

 

El nivel Físico

 

El nivel físico describe las características físicas de la comunicación, como las convenciones sobre la naturaleza del medio usado para la comunicación (como las comunicaciones por cable, fibra óptica o radio), y todo lo relativo a los detalles como los conectores, código de canales y modulación, potencias de señal, longitudes de onda, sincronización y temporización y distancias máximas.

 

El nivel de Enlace de datos

 

El nivel de enlace de datos especifica cómo son transportados los paquetes sobre el nivel físico, incluyendo los delimitadores (patrones de bits concretos que marcan el comienzo y el fin de cada trama). Ethernet, por ejemplo, incluye campos en la cabecera de la trama que especifican que máquina o máquinas de la red son las destinatarias de la trama. Ejemplos de protocolos de nivel de enlace de datos son Ethernet, Wireless Ethernet, SLIP, Token Ring y ATM.

PPP es un poco más complejo y originalmente fue diseñado como un protocolo separado que funcionaba sobre otro nivel de enlace, HDLC/SDLC.

Este nivel es a veces subdividido en Control de enlace lógico (Logical Link Control) y Control de acceso al medio (Media Access Control).

 

El nivel de Internet

 

Como fue definido originalmente, el nivel de red soluciona el problema de conseguir transportar paquetes a través de una red sencilla. Ejemplos de protocolos son X.25 y Host/IMP Protocol de ARPANET.

Con la llegada del concepto de Internet, nuevas funcionalidades fueron añadidas a este nivel, basadas en el intercambio de datos entre una red origen y una red destino. Generalmente esto incluye un enrutamiento de paquetes a través de una red de redes, conocida como Internet.

En la familia de protocolos de Internet, IP realiza las tareas básicas para conseguir transportar datos desde un origen a un destino. IP puede pasar los datos a una serie de protocolos superiores; cada uno de esos protocolos es identificado con un único "Número de protocolo IP". ICMP y IGMP son los protocolos 1 y 2, respectivamente.

Algunos de los protocolos por encima de IP como ICMP (usado para transmitir información de diagnóstico sobre transmisiones IP) e IGMP (usado para dirigir tráfico multicast) van en niveles superiores a IP pero realizan funciones del nivel de red e ilustran una incompatibilidad entre los modelos de Internet y OSI. Todos los protocolos de enrutamiento, como BGP, OSPF, y RIP son realmente también parte del nivel de red, aunque ellos parecen pertenecer a niveles más altos en la pila.

 

El nivel de Transporte

 

Los protocolos del nivel de transporte pueden solucionar problemas como la fiabilidad ("¿alcanzan los datos su destino?") y la seguridad de que los datos llegan en el orden correcto. En el conjunto de protocolos TCP/IP, los protocolos de transporte también determinan a qué aplicación van destinados los datos.

Los protocolos de enrutamiento dinámico que técnicamente encajan en el conjunto de protocolos TCP/IP (ya que funcionan sobre IP) son generalmente considerados parte del nivel de red; un ejemplo es OSPF (protocolo IP número 89).

TCP (protocolo IP número 6) es un mecanismo de transporte fiable y orientado a conexión, que proporciona un flujo fiable de bytes, que asegura que los datos llegan completos, sin daños y en orden. TCP realiza continuamente medidas sobre el estado de la red para evitar sobrecargarla con demasiado tráfico. Además, TCP trata de enviar todos los datos correctamente en la secuencia especificada. Esta es una de las principales diferencias con UDP, y puede convertirse en una desventaja en flujos en tiempo real (muy sensibles a la variación del retardo) o aplicaciones de enrutamiento con porcentajes altos de pérdida en el nivel de Internet.

Más reciente es SCTP, también un mecanismo fiable y orientado a conexión. Está relacionado con la orientación a byte, y proporciona múltiples sub-flujos multiplexados sobre la misma conexión. También proporciona soporte de multihoming, donde una conexión puede ser representada por múltiples direcciones IP (representando múltiples interfaces físicas), así si hay una falla la conexión no se interrumpe. Fue desarrollado inicialmente para aplicaciones telefónicas (para transportar SS7 sobre IP), pero también fue usado para otras aplicaciones.

UDP (protocolo IP número 17) es un protocolo de datagramas sin conexión. Es un protocolo no fiable (best effort al igual que IP) - no porque sea particularmente malo, sino porque no verifica que los paquetes lleguen a su destino, y no da garantías de que lleguen en orden. Si una aplicación requiere estas características, debe llevarlas a cabo por sí misma o usar TCP.

UDP es usado normalmente para aplicaciones de streaming (audio, video, etc) donde la llegada a tiempo de los paquetes es más importante que la fiabilidad, o para aplicaciones simples de tipo petición/respuesta como el servicio DNS, donde la sobrecarga de las cabeceras que aportan la fiabilidad es desproporcionada para el tamaño de los paquetes.

DCCP está actualmente bajo desarrollo por el IETF. Proporciona semántica de control para flujos TCP, mientras de cara al usuario se da un servicio de datagramas UDP..

TCP y UDP: son usados para dar servicio a una serie de aplicaciones de alto nivel. Las aplicaciones con una dirección de red dada son distinguibles entre sí por su número de puerto TCP o UDP. Por convención, los puertos bien conocidos (well-known ports) son asociados con aplicaciones específicas.

RTP es un protocolo de datagramas que ha sido diseñado para datos en tiempo real como el streaming de audio y video que se monta sobre UDP.

 

El nivel de Aplicación

 

El nivel de aplicación es el nivel que los programas más comunes utilizan para comunicarse a través de una red con otros programas. Los procesos que acontecen en este nivel son aplicaciones específicas que pasan los datos al nivel de aplicación en el formato que internamente use el programa y es codificado de acuerdo con un protocolo estándar.

Algunos programas específicos se considera que se ejecutan en este nivel. Proporcionan servicios que directamente trabajan con las aplicaciones de usuario. Estos programas y sus correspondientes protocolos incluyen a HTTP (HyperText Transfer Protocol), FTP (Transferencia de archivos), SMTP (correo electrónico), SSH (login remoto seguro), DNS (Resolución de nombres de dominio) y a muchos otros.

Una vez que los datos de la aplicación han sido codificados en un protocolo estándar del nivel de aplicación son pasados hacia abajo al siguiente nivel de la pila de protocolos TCP/IP.

En el nivel de transporte, las aplicaciones normalmente hacen uso de TCP y UDP, y son habitualmente asociados a un número de puerto bien conocido (well-known port). Los puertos fueron asignados originalmente por la IANA.

 


 

 

 

 

Ventajas e inconvenientes

 

El conjunto TCP/IP está diseñado para enrutar y tiene un grado muy elevado de fiabilidad, es adecuado para redes grandes y medianas, así como en redes empresariales. Se utiliza a nivel mundial para conectarse a Internet y a los servidores web. Es compatible con las herramientas estándar para analizar el funcionamiento de la red.

 

Un inconveniente de TCP/IP es que es más difícil de configurar y de mantener que NetBEUI o IPX/SPX; además es algo más lento en redes con un volumen de tráfico medio bajo. Sin embargo, puede ser más rápido en redes con un volumen de tráfico grande donde haya que enrutar un gran número de tramas.

El conjunto TCP/IP se utiliza tanto en redes empresariales como por ejemplo en campus universitarios o en complejos empresariales, en donde utilizan muchos enrutadores y conexiones a mainframe o a ordenadores UNIX, como así también en redes pequeñas o domésticas, y hasta en teléfonos móviles y en domótica. [1]

 

 

Funcionamiento del protocolo TCP/IP

  1. Comprobar cómo el funcionamiento de una red de ordenadores tan grande como Internet se basa en una idea conceptualmente sencilla: dividir la información en trozos o paquetes, que viajan de manera independiente hasta su destino, donde conforme van llegando se ensamblan de nuevo para dar lugar al contenido original. Estas funciones las realizan los protocolos TCP/IP: el Transmission Control Protocol se encarga de fragmentar y unir los paquetes y el Internet Protocol tiene como misión hacer llegar los fragmentos de información a su destino correcto.
  2. Los ordenadores personales precisan de un software especial que sepa interpretar correctamente las órdenes del TCP/IP. Este software, que recibe el nombre de pila TCP/IP, realiza una labor de intermediario entre Internet y el computador personal. En el caso de los PC es el conocido Winsock, del que existen diversas versiones. Para los Macintosh el software es el MacTCP. Por otra parte, cuando un ordenador personal se conecta a una red de área local a través de la línea telefónica por medio de un módem y un puerto serie, necesita también una pila TCP/IP, así como un protocolo de software, siendo el más extendido el PPP, que al proporcionar más fiabilidad en la conexión ha dejado atrás al más rudimentario protocolo SLIP.

Imagen

El protocolo TCP fragmenta la información en paquetes a los que añade una cabecera con la suma de comprobación.

3.       El TCP tiene como misión dividir los datos en paquetes. Durante este proceso proporciona a cada uno de ellos una cabecera que contiene diversa información, como el orden en que deben unirse posteriormente. Otro dato importante que se incluye es la denominada suma de comprobación, que coincide con el número total de datos que contiene el paquete. Esta suma sirve para averiguar en el punto de destino si se ha producido alguna pérdida de información.

Imagen

El protocolo IP "ensobra" los paquetes y les añade entre otros datos la dirección de destino.

  1. Después del protocolo TCP entra en funcionamiento el Internet Protocol, cuya misión es colocar cada uno de los paquetes en una especie de sobres IP, que contiene datos como la dirección donde deben ser enviados, la dirección del remitente, el tiempo de "vida" del paquete antes de ser descartado. etc...
  2. A medida que se ensobran, los paquetes son enviados mediante routers, que deciden en cada momento cuál es el camino más adecuado para llegar a su destino. Dado que la carga de internet varía constantemente, los paquetes pueden ser enviados por distintas rutas, llegando en ese caso desordenados.

Imagen

Por último, de nuevo el protocolo TCP comprueba que los paquetes hayan llegado intactos y procede a montar de nuevo el mensaje original.

Con la llegada de paquetes a su destino, se activa de nuevo el protocolo TCP, que realiza una nueva suma de comprobación y la compara con la suma original. Si alguna de ellas no coincide, detectándose así pérdida de información en el trayecto, se solicita de nuevo el envío del paquete desde el origen. Por fin, cuando se ha comprobado la validez de todos los paquetes, el TCP los une formado el mensaje inicial.                                                                                                                   

Aproximación al modelo de arquitectura de los protocolos TCP/IP

El modelo de arquitectura de estos protocolos es mas simple que el modelo OSI, como resultado de la agrupación de diversas capas en una sola o bien por no usar alguna de las capas propuestas en dicho modelo de referencia.

Así, por ejemplo, la capa de presentación desaparece pues las funciones a definir en ellas se incluyen en las propias aplicaciones. Lo mismo sucede con la capa de sesión, cuyas funciones son incorporadas a la capa de transporte en los protocolos TCP/IP. Finalmente la capa de enlace de datos no suele usarse en dicho paquete de protocolos.

De esta forma nos quedamos con una modelo en cuatro capas, tal y como se ve en la siguiente figura:

Comparación TCP/IP modelo OSI

Al igual que en el modelo OSI, los datos descienden por la pila de protocolos en el sistema emisor y la escalan en el extremo receptor. Cada capa de la pila añade a los datos a enviar a la capa inferior, información de control para que el envío sea correcto. Esta información de control se denomina cabecera, pues se coloca precediendo a los datos. A la adición de esta información en cada capa se le denomina encapsulación. Cuando los datos se reciben tiene lugar el proceso inverso, es decir, según los datos ascienden por la pila, se van eliminando las cabeceras correspondientes.

Encapsulación TPC/IP

 

 

Cada capa de la pila tiene su propia forma de entender los datos y, normalmente, una denominación especifica que podemos ver en la tabla siguiente. Sin embargo, todos son datos a transmitir, y los términos solo nos indican la interpretación que cada capa hace de los datos.

 

 

 

TCP

UDP

Capa de Aplicación

Flujo

Mensaje

Capa de Transporte

Segmento

Paquete

Capa de Internet

Datagrama

Datagrama

Capa de Acceso a la Red

Trama

Trama

 

 



Resumen

Los protocolos TCP/IP son fundamentales para el desarrollo de Internet tal como hoy la conocemos. Su misión es complementaria y tiene como objetivo el que la información llegue a su destino de la manera más eficiente posible.

Suponiendo que un mensaje es un puzzle, el protocolo TCP es el encargado de desmontar cada una de las piezas y memorizar el orden para poder reconstruirlo, cada una de las piezas pueden viajar incluso por caminos diferentes, sin embargo al llegar a su destino el mismo protocolo TCP será el responsable de hacer coincidir otra vez el rompecabezas, incluso si detecta que por el camino alguna pieza se ha estropeado, es capaz de volver a pedir un recambio original para reconstruir la información.

  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Bibliografía

 

 

 

[1] Wikimedia Foundation, Inc. (2008). Familia de protocolos de Internet. Recuperado el 17 de Octubre de 2.008 de http://es.wikipedia.org/wiki/TCP/IP      

 

 

[2] Barberán, Manuel  (1998). Funcionamiento del protocolo TCP/IP. Recuperado el 17 de Octubre de 2.008 de http://www.ctv.es/areas/comofunciona/conexion/3.htm

 

 

Hosted by www.Geocities.ws

1