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 |
|
|
5 |
Sesión |
|
|
4 |
Transporte |
|
|
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 |
|
4 |
Transporte |
ej. TCP, UDP, RTP, SCTP |
|
3 |
Internet |
Para TCP/IP este es el Protocolo de Internet (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 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).
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.
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
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

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.

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

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:

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.

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