martes, 5 de junio de 2012

TCP/IP Y OSI

TCP/IP

Internet es un conglomerado muy amplio y extenso en el que se encuentran ordenadores con sistemas operativos incompatibles, redes más pequeñas y distintos servicios con su propio conjunto de protocolos para la comunicación. Ante tanta diversidad resulta necesario establecer un conjunto de reglas comunes para la comunicación entre estos diferentes elementos y que además optimice la utilización de recursos tan distantes. Este papel lo tiene el protocolo TCP/IP. TCP/IP también puede usarse como protocolo de comunicación en las redes privadas intranet y extranet.Hay dos clases de protocolos dentro de la  TCP/IP que son: protocolos a nivel de red y protocolos a nivel de aplicacion.
Protocolos a Nivel de Red
Estos protocolos se encargan de controlar los mecanismos de transferencia de datos. Normalmente son invisibles para el usuario y operan por debajo de la superficie del sistema. Dentro de estos protocolos tenemos:
TCP. Controla la división de la información en unidades individuales de datos (llamadas paquetes) para que estos paquetes sean encaminados de la forma más eficiente hacia su punto de destino. 

IP. Se encarga de repartir los paquetes de información enviados entre el ordenador local y los ordenadores remotos. Esto lo hace etiquetando los paquetes con una serie de información, entre la que cabe destacar las direcciones IP de los dos ordenadores. 
Protocolos a Nivel de Aplicación
Aquí tenemos los protocolos asociados a los distintos servicios de Internet, como FTP, Telnet, Gopher, HTTP, etc. Estos protocolos son visibles para el usuario en alguna medida. Por ejemplo, el protocolo FTP (File Transfer Protocol) es visible para el usuario. El usuario solicita una conexión a otro ordenador para transferir un fichero, la conexión se establece, y comienza la transferencia. Durante dicha transferencia, es visible parte del intercambio entre la máquina del usuario y la máquina remota (mensajes de error y de estado de la transferencia, como por ejemplo cuantos bytes del fichero se han transferido en un momento dado).

COMPONENTES PRINCIPALES DE LA PILA TCP/IP


TCP/IP opera a través del uso de una pila. Dicha pila es la suma total de todos los protocolos necesarios para completar una transferencia de datos entre dos máquinas (así como el camino que siguen los datos para dejar una máquina o entrar en la otra). La pila está dividida en capas, como se ilustra en la figura siguiente:





Después de que los datos han pasado a través del proceso ilustrado en la figura anterior, viajan a su destino en otra máquina de la red. Allí, el proceso se ejecuta al revés (los datos entran por la capa física y recorren la pila hacia arriba). Cada capa de la pila puede enviar y recibir datos desde la capa adyacente. Cada capa está también asociada con múltiples protocolos que trabajan sobre los datos.
MODELO TCP/IP  FRENTE AL MODELO OSI
Si comparamos el modelo OSI y el modelo TCP/IP, observamos que ambos presentan similitudes y
diferencias.
Similitudes:
  • Ambos se dividen en capas
  • Ambos tienen capas de aplicación,aunque incluyen servicios muy distintos
  • Ambos tienen capas de transporte y de red similares
  • Se supone que la tecnología es de conmutación por paquetes (no de conmutación por circuito)
    ¡Hay que conocer los dos!
Diferencias:
<!--[if !supportLists]-->·         <!--[endif]-->TCP/IP combina las funciones de la capa de presentación y de sesión en la capa de aplicación
<!--[if !supportLists]-->·         <!--[endif]-->TCP/IP combina la capas de enlace de datos y la capa física del modelo OSI en una sola capa
<!--[if !supportLists]-->·         <!--[endif]-->TCP/IP parece ser más simple porque tiene menos capas
<!--[if !supportLists]-->·         <!--[endif]-->Los protocolos TCP/IP son los estándares en torno a los cuales se desarrolló la Internet, de modo que la credibilidad del modelo TCP/IP se debe en gran parte a sus protocolos. En comparación, las redes típicas no se desarrollan normalmente a partir del protocolo OSI, aunque el modelo OSI se usa como guía

  
    FUNCIONALIDAD EN CADA CAPA TCP/IP Y OSI
     TCP/IP
 Las funciones de las cinco capas del modelo TCP/IP son similares a las capas del modelo OSI. A continuación se explicara brevemente los encabezados agregados por cada capa en el modelo TCP/IP.
     a. El nivel aplicación:
Las aplicaciones interactúan con protocolos del nivel transporte para recibir o emitir informaciones. Cada programa de aplicación elige el tipo de servicio de transporte deseado y transmite sus datos al nivel transporte para encaminarlos. En la capa aplicación genera un mensaje que es pasado hacia la capa de transporte,después de que la aplicación ha elegido cual es el protocolo de transporte utilizado. Los servidores DHCP, DNS, Proxy, NAT, SMTP, etc... operan en esta capa del modelo.
     b. El nivel Transporte:
El nivel transporte brinda una comunicación de principio a fin entre dos programas de aplicación. Este nivel puede actuar:
•    En modo conectado (TCP)
•    En modo no conectado (UDP)
    A los mensajes generados por la capa aplicación, la capa de transporte los encapsula en mensajes llamados “segmentos”. Para que los paquetes no se pierdan y no se duplique en la Internet, esta capa agrega un encabezado. Además, coloca un identificador para determinar cual es la aplicación que esta generando el mensaje y cual será la aplicación que deberá recibir el mensaje generado por la computadora de origen. En esta capa operan los Firewalls y algunos switches de capa 4.


   c. El nivel IP:
    El nivel IP encapsula los paquetes recibidos del nivel transporte en unidades llamadas “datagramas IP”. Los niveles IP cooperan al encaminamiento de los datagramas según un modo no conectado (gracias a unos algoritmos de encaminamiento). A los segmentos que envía la capa aplicación, la capa IP le agrega un encabezado para permitir que los datagramas puedan ser encaminados al pasar por varios enrutadores antes de llegar su destino final. Los campos con los cuales más vamos a trabajar son: “IP de Origen” e “IP de Destino” y son los campos que utilizan los enrutadores para encaminar los datagramas. Los enrutadores y switches de capa 3 operan en esta capa del modelo.
   d. El nivel enlace de datos:
Esta capa encapsula el datagrama que proviene de la capa de red en un paquete denominado “trama”. Esta capa permite que el medio de transmisión físico sea confiable ya que agrega control y detección de errores. En esta capa operan los Bridges y Switches de capa 2, ya que los mismos utilizan dos campos del encabezado de la trama para conmutar información desde una computadora origen hacia una de destino. Los campos de la trama que utilizan los Bridges y Switches son la dirección “MAC de Origen” y la dirección “MAC de Destino”. Los bridges y switches de capa 2 operan en esta capa del modelo.
   e. El nivel Red Física:
   Este nivel esta en contacto con el material, es decir circuitos, cables, patch panells, conectores JACK, conectores Plug RJ-45, patch cord, etc...
<!--[if !vml]--><!--[endif]-->

   MODELO OSI
  a. Capa aplicación: brinda los servicios de comunicación a los usuarios. Es una caja de herramientas normalizadas. Los protocolos pueden ser:
•   Relativos a la gestión de las aplicaciones o del sistema, por
    ejemplo: explorador de windows, programa para monitorear las redes
I    
•   Específicos de la aplicación, por ejemplo: servidores DHCP, DNS, Proxy, NAT, FTP, Email, Web, etc.
    Esta capa debe poseer protocolos que sean capaces de crear un terminal virtual de red abstracta, la cual debe realizar la adaptación de los diferentes programas de aplicaciones que poseen las maquinas de una red, con el fin de lograr la compatibilidad de las mismas. Se debe crear un programa para lograr la correspondencia entre la terminal virtual y la terminal real.
b. Capa presentación: se hace cargo, facilitando el trabajo de las entidades de la capa aplicación, de las diferentes sintaxis abstractas o de transferencia, así también como de la semántica de los datos intercambiados. Sus servicios incluyen:
• Conversiones de código y de formatos de datos.
• La compresión y la encriptación de los datos.
Un ejemplo, es la codificación de datos en una forma estándar acordada. La información en una computadora se representa como cadena de caracteres, enteros, cantidades de punto flotante; estos códigos se representan con cadenas de caracteres como (ACSII, Unicode) y enteros (Complemento a uno o a dos). 
c. Capa sesión: permite establecer una relación entre dos aplicaciones, organizar y sincronizar el diálogo, permitiendo un intercambio full duplex, semiduplex o simplex. Si el tráfico es en un solo sentido a la vez, esta capa puede ayudar a llevar el control de los turnos. Un servicio relacionado es el manejo de fichas, ya que para algunos protocolos es esencial que dos máquinas no intenten la misma operación al mismo tiempo, para ello la capa sesión otorga fichas que se pueden intercambiar. 
Para la sincronización de la transferencia de archivos, la capa sesión inserta puntos de verificación en la corriente de datos, de modo que después de cada interrupción sólo se deban repetir los datos que se transfirieron después del último punto de verificación.

d. Capa transporte: se ubica en la frontera de las capas orientadas a transmisión y a tratamiento. Su función es ofrecer un servicio constante para las entidades de sesión, independientemente de la QoS de la red, asegurando un servicio punto a punto.
Acepta datos de la capa sesión, los divide en unidades más pequeñas si es necesario, los pasa a la capa de red y asegura que todos los pedazos lleguen correctamente al otro extremo. Esta capa debe ser lo suficientemente versátil, como para aislar a las capas superiores de los cambios tecnológicos.

La capa transporte crea una conexión de red distinta para cada conexión de transporte que requiera la capa sesión. Si el volumen de transmisión es alto, esta capa puede crear múltiples conexiones de red, dividiendo los datos entre las conexiones o puede multiplexar varias
conexiones de transporte en la misma conexión de red para reducir el costo, la multiplexación debe ser transparente a la capa sesión. 
e. Capa de Red: Dos sistemas comunicándose, pueden no ser adyacentes; es por ello que existen otros sistemas intermedios que sirven de relevo (nodos de redes). La capa de red brinda las medios de comunicación de un sistema extremo hacia otro, asegurando el encaminamiento poco a poco, es decir se ocupa del funcionamiento de la subred. Las rutas se pueden basar en tablas estáticas, se pueden establecer al inicio de cada conversación o pueden ser altamente dinámicas.
Controla que en la subred no se encuentren presentes demasiados paquetes a la vez, formando los cuellos de botella. El software debe contar cuántos paquetes o caracteres o bits envía cada cliente paraproducir información de facturación.

f. Capa enlace de datos: transmite datos sin error, sin duplicación, sin pérdida entre sistemas adyacentes. Enmascara a las capas superiores de las imperfecciones de los medios de transmisión utilizados.
Toma un medio de transmisión en bruto y lo transforma en una línea que parezca libre de errores de transmisión no detectados en la capa de red. Esto lo lleva a cabo haciendo que el emisor divida los datos de entrada en marcos(tramas) de datos, que transmita los marcos(tramas) en forma secuencial y procese los marcos(tramas) de acuse de recibo que devuelve el receptor. 
g. Capa Física: se hace cargo de la transmisión de series de bits sobre el medio físico de interconexión, brinda las funciones de comando de los circuitos de datos.
Las capas 7,6,5,4 son punto a punto es una conexión lógica, mientras que las capas 3,2,1 no son punto a punto, sino que deben pasar por elementos de interconexión o nodos de redes hasta llegar a su destino, en este caso el encaminamiento es indirecto.