miércoles, 11 de diciembre de 2013

Protocolo de aplicación de TCP/IP

Un protocolo es un conjunto de reglas de comunicaciones entre dispositivos: computadoras, teléfonos, enrutadores, switches, etc. Los protocolos gobiernan el formato, sincronización, secuencia y control de errores. Sin estas reglas, los dispositivos no podrían detectar la llegada de bits.

      Los protocolos van más allá que sólo una comunicación básica. Si se desea enviar un archivo de una computadora a otra, cierta información debe ser agregada al paquete para decirle al receptor donde pertenece cada grupo en relación con los otros, pero éste es un asunto menor. Para mejorar la confiabilidad de la información, información de sincronización y corrección deberá ser agregada al paquete. Al mensaje, junto con la información adicional se le conoce como protocolo.


PROTOCOLOS DE APLICACIÒN TCP/IP

            TCP/IP es el protocolo común utilizado por todos los ordenadores conectados a Internet, de manera que éstos puedan comunicarse entre sí. Hay que tener en cuenta que en Internet se encuentran conectados ordenadores de clases muy diferentes y con hardware y software incompatibles en muchos casos, además de todos los medios y formas posibles de conexión. Aquí se encuentra una de las grandes ventajas del TCP/IP, pues este protocolo se encargará de que la comunicación entre todos sea posible. TCP/IP es compatible con cualquier sistema operativo y con cualquier tipo de hardware.

            TCP/IP no es un único protocolo, sino que es en realidad lo que se conoce con este nombre es un conjunto de protocolos que cubren los distintos niveles del modelo OSI. Los dos protocolos más importantes son el TCP (Transmission Control Protocol) y el IP (Internet Protocol), que son los que dan nombre al conjunto.
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 forma:

            Aplicación: Se corresponde con los niveles OSI de aplicación, presentación y sesión. Aquí se incluyen protocolos destinados a proporcionar servicios, tales como correo electrónico (SMTP), transferencia de ficheros (FTP), conexión remota (TELNET) y otros más recientes como el protocolo HTTP (Hypertext Transfer Protocol)
            El TCP/IP necesita funcionar sobre algún tipo de red o de medio físico que proporcione sus propios protocolos para el nivel de enlace del Internet. Por esto, hay que tomar en cuenta que los protocolos utilizados en este nivel pueden ser muy diversos y no forman parte del conjunto TCP/IP. Sin embargo, esto no debe ser problemático puesto que una de las funciones y ventajas principales del TCP/IP es proporcionar una abstracción del medio de forma que sea posible el intercambio de información entre medios diferentes y tecnologías que inicialmente son incompatibles.

            Para transmitir información, ésta se debe dividir en unidades de menor tamaño, ya que proporciona grandes ventajas en el manejo de los datos que se transfieren. En TCP/IP, cada una de estas unidades de información recibe el nombre de “datagrama” y son conjuntos de datos que se envían como mensajes independientes.


            Todos los protocolos de alto nivel tienen algunas características en común:
Pueden ser aplicaciones escritas por el usuario o aplicaciones estandarizadas y distribuidas con un producto TCP/IP. De hecho, la pila TCP/IP incluye protocolos de aplicación tales como:

         TELNET para el acceso interactivo de una terminal a un host remoto.
         FTP ("File Transfer Protocol"). Sirve para transferencias de alta velocidad de un disco a otro.
         SMTP ("simple mail transfer protocol"). Funciona como sistema de correo de Internet.
         RPC (Remote  Procedure Call). Permite llamadas a procedimientos situados remotamente.
         SNMP (Simple Network Managment Protocol). Se trata de una aplicación para el control de la red.
         NFS (Network File System). Permite la utilización de archivos distribuidos por los programas de la red.
         X-Windows (Es un protocolo para el manejo de ventanas e interfaces de usuario).
            Estas son las aplicaciones implementadas más ampliamente, pero existen muchas otras. Cada implementación TCP/IP particular incluye un conjunto más o menos restringido de protocolos de aplicación.

            Usan UDP o TCP como mecanismo de transporte. Recordar que UDP no es fiable ni ofrece control de flujo, por lo que en este caso la aplicación ha de proporcionar sus propias rutinas de recuperación de errores y de control de flujo. Suele ser más fácil desarrollar aplicaciones sobre TCP, un protocolo fiable, orientado a conexión. La mayoría de los protocolos de aplicación utilizan TCP, pero algunas aplicaciones se construyen sobre UDP para proporcionar un mejor rendimiento reduciendo la carga del sistema que genera el protocolo. La mayoría de ellas usa el modelo de interacción cliente/servidor.
  PROTOCOLO TELNET:

            El protocolo TELNET proporciona una interfaz estandarizada, a través de la cual un programa de un host (el cliente de TELNET) puede acceder a los recursos de otro host (el servidor de TELNET) como si el cliente fuera una terminal local conectada al servidor.
            Por ejemplo, un usuario de una estación de trabajo situada en una LAN se puede conectar al host. Por supuesto, TELNET se puede usar tanto en LANs como en WANs.

            El servicio Telnet permite conectarse a ordenadores que no están comunicados directamente para ejecutar programas y consultar información como si nuestro ordenador personal fuese una terminal más del ordenador con el que nos conectamos.
            Una vez nos conectamos con el ordenador (servidor) en cuestión, podremos utilizar las aplicaciones instaladas en él. Para realizar las conexiones necesitaremos utilizar un programa cliente telnet.

  
  PROTOCOLO FTP:

         FTP (File Transfer Protocol) es un protocolo de transferencia de archivos entre sistemas conectados a una red TCP basado en la arquitectura cliente-servidor, de manera que desde un equipo cliente nos podemos conectar a un servidor para descargar archivos desde él o para enviarle nuestros propios archivos independientemente del sistema operativo utilizado en cada equipo.
             El Servicio FTP es ofrecido por la capa de Aplicación del modelo de capas de red TCP/IP al usuario, utilizando normalmente el puerto de red 20 y el 21. Un problema básico de FTP es que está pensado para ofrecer la máxima velocidad en la conexión, pero no la máxima seguridad, ya que todo el intercambio de información, desde el login y password del usuario en el servidor hasta la transferencia de cualquier archivo, se realiza en texto plano sin ningún tipo de cifrado, con lo que un posible atacante lo tiene muy fácil para capturar este tráfico, acceder al servidor, o apropiarse de los archivos transferidos. Para solucionar este problema son de gran utilidad aplicaciones como scp y sftp, incluidas en el paquete SSH, que permiten transferir archivos pero cifrando todo el tráfico.

El siguiente modelo representa el diagrama de un servicio FTP.

           En el modelo, el intérprete de protocolo (PI) de usuario, inicia la conexión de control en el puerto 21. Las órdenes FTP estándar las genera el PI de usuario y se transmiten al proceso servidor a través de la conexión de control.
           
            Las respuestas estándar se envían desde el PI del servidor al PI de usuario por la conexión de control como respuesta a las órdenes. Estas órdenes FTP especifican parámetros para la conexión de datos (puerto de datos, modo de transferencia, tipo de representación y estructura) y la naturaleza de la operación sobre el sistema de archivos (almacenar, recuperar, añadir, borrar, etc.).
           
            El proceso de transferencia de datos (DTP) de usuario u otro proceso en su lugar, debe esperar a que el servidor inicie la conexión al puerto de datos especificado (puerto 20 en modo activo o estándar) y transferir los datos en función de los parámetros que se hayan especificado.
           
             Vemos también en el diagrama que la comunicación entre cliente y servidor es independiente del sistema de archivos utilizado en cada ordenador, de manera que no importa que sus sistemas operativos sean distintos, porque las entidades que se comunican entre sí son los PI y los DTP, que usan el mismo protocolo estandarizado: el FTP. También hay que destacar que la conexión de datos es bidireccional, es decir, se puede usar simultáneamente para enviar y para recibir, y no tiene por qué existir todo el tiempo que dura la conexión FTP.

 PROTOCOLO SMTP:

            El correo electrónico (E-mail) es probablemente la aplicación TCP/IP más usada.
            Los protocolos de correo básicos de correo proporcionan intercambio de correo y mensajes entre hosts TCP/IP hosts; se han añadido servicios para la transmisión de datos que no se pueden representar con texto ASCII de 7 bits.    El término SMTP se emplea con frecuencia para referirse a la combinación de los tres protocolos, por su estrecha interrelación, pero estrictamente hablando, SMTP es sólo uno de los tres estándares que se aplican a este tipo de correo.

  PROTOCOLO DNS:

            El DNS usa el concepto de espacio de nombres distribuido. Los nombres simbólicos se agrupan en zonas de autoridad, o más comúnmente, zonas. En cada una de estas zonas, uno o más hosts tienen la tarea de mantener una base de datos de nombres simbólicos y direcciones IP y de suministrar la función de servidor para los clientes que deseen traducir nombres simbólicos a direcciones IP. Estos servidores de nombres locales se interconectan lógicamente en un árbol jerárquico de dominios.

Aplicaciones de DNS:
            Muchas implementaciones de DNS proporcionan tres utilidades bastante comunes para consultar a servidores de nombres:

Host: Obtiene una dirección IP asociada con un nombre de host o un nombre de host asociado con una dirección IP.

Nslookup: Permite localizar información acerca de los nodos de red, examinar los contenidos de la base de datos de un servidor de nombres y establecer la accesibilidad a servidores de nombres.

dig("Domain Internet Groper") Permite probar los servidores de nombres, reunir grandes volúmenes de información de nombres de dominio y ejecutar simples consultas de nombres de dominio.

  PROTOCOLOS HTTP:
          
          El Protocolo de Transferencia de HiperTexto (Hypertext Transfer Protocol) es un sencillo protocolo cliente-servidor que articula los intercambios de información entre los clientes Web y los servidores HTTP, atendiendo a las necesidades de un sistema global de distribución de información como el World Wide Web.
            Desde el punto de vista de las comunicaciones, está soportado sobre los servicios de conexión TCP/IP, y funciona de la misma forma que el resto de los servicios comunes de los entornos UNIX: un proceso servidor escucha en un puerto de comunicaciones TCP y espera las solicitudes de conexión de los clientes Web. Una vez que se establece la conexión, el protocolo TCP se encarga de mantener la comunicación y garantizar un intercambio de datos libre de errores.
Los elementos software de la arquitectura web (clientes, servidores, proxies) utilizan el protocolo HTTP para comunicarse.

         HTTP define la sintaxis y la semántica que utilizan estos elementos para comunicarse.
         Las últimas versiones HTTP/1.0 y HTTP/1.1
         Es un protocolo en la capa de aplicación. Por debajo está TCP/IP.


             Es un protocolo de comunicaciones estándar que comunica servidores, proxies y clientes, permite la transferencia de documentos web, sin importar cuál es el cliente o cual es el servidor esta basado en el esquema petición/respuesta. El cliente envía un mensaje de petición y el servidor contesta con un mensaje de respuesta, cuyo contenido es función de la petición hecha por el cliente.

   
El usuario escribe en la barra de dirección del navegador el recurso al que desea acceder:
http://www.uv.es/~uvalen/cat/index.html
El navegador descompone la URL en 3 partes:
El protocolo ("http")
El nombre del servidor ("www.uv.es")
El camino ("/~uvalen/cat/index.html")
El navegador se comunica con servidor de nombres para traducir el nombre del servidor "www.uv.es" en una Dirección IP, que es utilizada para conectarse a la máquina servidora.


          PROTOCOLO SNMP:
         
            El protocolo Simple Network Management Protocol (SNMP) permite gestionar redes TCP/IP. Fue aprobado por el IAB en 1988 y está basado en SGMP que permite manejar los routers en Internet. Servicio en el puerto UDP 161.
            SNMP puede también dispositivos no-SNMP utilizando agentes proxy. Un agente proxy es un conversor de protocolo que traduce las órdenes SNMP a las comprensibles por el protocolo de gestión propio del dispositivo. Actualmente SNMP está soportado en muchos sistemas distintos tales como puentes, PC’s, estaciones de trabajo, encaminadores, terminales, servidores, hubs, concentradores, y tarjetas avanzadas ethernet, token ring y FDDI.


SNMP se basa en un sistema de petición-respuesta. La autoridad gestora no es la red como sistema sino una o varias estaciones distinguidas (NMS).

10:19