jueves, 6 de noviembre de 2014

CAPA DE APLICACIÓN



La capa de aplicación esta compuesta por:
  • Aplicaciones
  • Servicios
  • Protocolos
¿Qué es la capa de aplicación?
La capa de aplicación es aquella que proporciona la interfaz entre las aplicaciones que utilizamos para comunicarnos y la red en la que se trasmiten los mensajes.

Dentro de la capa de aplicación podemos encontrar dos tipos de programas o aplicaciones:
  • Aplicaciones de red
  • Servicios de la capa de aplicación

Aplicaciones

Las aplicaciones son aquellos programas que utiliza el usuario final para comunicarse en la red, sean programas de mensajería, navegadores web, clientes de correo electrónico, etc.

Servicios

Los servicios son los programas que el usuario no ve, pero que son necesarios para que las aplicaciones funcionen correctamente.
Estos servicios son por ejemplo, la trasferencia de archivos, funciones de prioridades en red, cola de impresión en red, etc.
Los servicios deben implementar varios protocolos, ya que son muchas las distintas aplicaciones que se comunican en una red.

Protocolos

Tenemos que señalar que los protocolos de la capa de aplicación son aquellos que se utilizan para intercambiar los datos entre los programas que se están ejecutando en el origen y destino. Dicho esto, podemos comenzar nombrando algunos protocolos utilizados en esta capa:
  • Protocolo de servicio de nombres (DNS)
  • Protocolo de trasferencia de hipertexto (HTTP)
  • Protocolo de trasferencia de correo (SMTP)
  • Protocolo de emulación de terminal (Telnet)
  • Protocolo de trasferencia de archivos (FTP)
  • ...
Todos estos protocolos nos proporcionan la información de control y su formato necesario para las funciones de comunicación mas comunes dentro de Internet.

Funciones de los protocolos:
Los protocolos establecen reglas para el intercambio de datos entre las diferentes aplicaciones y servicios instalados en los dispositivos de origen y destino dentro de una red.
Además, los protocolos son los encargados de estructurar los mensajes que se envían entre origen y destino.
Tenemos que destacar que cada protocolo realiza una acción especifica y que por este motivo son muchísimos los protocolos existentes hoy en día.
Por otro lado tenemos que saber que para que la comunicación tenga éxito, tenemos que tener implementados tanto en el origen como en el destino los mismos protocolos.
Ya hemos visto a grandes rasgos lo principal de la capa de aplicación, pero en los siguientes artículos veremos protocolos concretos, servicios concretos y alguna arquitectura de red asociada a esta capa.

Aplicaciones y servicios de la capa de aplicación.

  • Servidores
  • Protocolos
  • Modelo cliente / servidor
  • Redes y aplicaciones P2P
Todas ellas relacionadas con la capa de aplicación.

Servidores

Para poder entender los dos puntos restantes, tenemos que tener claro lo que es un servidor y para ello vamos a dar aquí algunas pistas y datos que te ayuden a tenerlo más claro. Un servidor es todo aquel dispositivo que responde a una solicitud de aplicaciones de cliente.
En general, un servidor suele ser un ordenador que contiene mucha información para ser compartida con muchos sistemas clientes.
Cada servidor suele tener un servicio o proceso denominado daemon, que se encarga de escuchar las peticiones, darles prioridades y ejecutar las respuestas en los formatos adecuados.
Dependiendo del fin de cada servidor, algunos requerirán sistemas de seguridad como usuario y contraseña, por lo que tendrán listas con los usuarios y contraseñas permitidos para dar respuesta a las solicitudes.

Protocolos de la capa de aplicaciones

Tenemos que tener en cuenta que una aplicación puede emplear varios servicios diferentes de la capa de aplicación. De esta forma, un usuario envía una petición y el servidor realmente puede llegar a recibir muchas mas para esa única petición que hace el cliente. Por otro lado, el servidor suele recibir varias peticiones de clientes distintos a la vez y es aquí donde entran en juego los protocolos.

Modelo cliente-servidor

Cómo ya sabemos, si por ejemplo, nosotros queremos ver una página web desde nuestro dispositivo móvil u ordenador, primero tenemos que hacer una petición al servidor que contiene esa información. Bien, pues esto es básicamente en lo que consiste este modelo. El usuario hace una petición al servidor y este contesta. Este modelo se encuentra dentro de la capa de aplicación, ya que es la forma más directa que tiene un cliente para recibir información. Los protocolos de esta capa son los responsables de darle un formato a esas solicitudes y respuestas.
Para que quede más claro, este tipo de modelo de red puede ser nuestro cliente de correo. Nosotros abrimos el cliente de correo y este hace una petición al servidor de correo para que le envíe los correos nuevos que tenga.
Dentro de este modelo de red estaría la carga y descarga de datos de un cliente a un servidor o viceversa.

Redes y aplicaciones P2P

Antes de explicar qué son las redes y aplicaciones punto a punto, hay que decir que son parecidas pero que en la practica son diferentes. Redes P2P: En este tipo de redes nos encontramos dos o más equipos conectados entre sí por una red, pero no dependen de un servidor para compartir información. Cada equipo funciona como cliente y servidor a la vez. Las funciones de cliente o servidor se activan por solicitud.
Un ejemplo de este tipo de redes son las que tenemos en casa, es decir, un par de ordenadores conectados entre sí para compartir archivos. Incluso si colocamos una impresora en un equipo y la compartimos, también estaríamos hablando de red punto a punto. (OJO, siempre y cuando la impresora este conectada a un equipo de forma directa y no a la red). El problema de este tipo de redes es la seguridad, ya que cada equipo debe administrar su propia seguridad al no tener un servidor que centralice las peticiones, las cuentas de usuario y sus contraseñas.
Aplicaciones P2P: Una aplicación punto a punto permite a un dispositivo actuar como cliente o como servidor dentro de la misma comunicación. En este tipo de aplicaciones cada cliente es un servidor y cada servidor es un cliente. Este tipo de aplicaciones requieren de una interfaz de usuario, aunque luego tengan servicio ejecutándose en segundo plano. Este tipo de aplicaciones puede darse entre las redes cliente-servidor, en las redes punto a punto y en Internet. Un ejemplo de este tipo de aplicación serían las ya mundialmente conocidas como aplicaciones de intercambio de archivos (Emule, Torrent, etc) o los sistemas de mensajería instantánea (Messenger, WhatsApp, etc)
Ya en el siguiente artículo veremos ejemplos de servicios y protocolos de la capa de aplicación, este artículo será algo mas técnico pero espero que igual de interesante que los escritos hasta el momento.

Protocolos y servicios DNS

En el presente artículo vamos a ver los protocolos y servicios más utilizados dentro de la capa de aplicación, prestando luego atención a uno de los servicios más importantes en la Red, como son los servidores de nombres o DNS. Comenzaremos ofreciendo una lista de los protocolos considerados como principales:
  • Sistema de nombres de dominios, comúnmente llamado DNS
  • Protocolo de transferencia de hipertexto (HTTP)
  • Protocolo simple de transferencia de correo (SMTP)
  • Protocolo de oficina de correos (POP)
  • Protocolo de trasferencia de archivos (FTP)
 

Servicio y protocolo DNS

En todas las redes, los dispositivos tienen asignada una etiqueta numérica, llamada IP. Al ser complicado recordar tantas etiquetas numéricas, se crearon los llamados nombres de dominio (DNS) que nos asocian dichas IPs con un nombre sencillo de recordar por los humanos. Por ejemplo, es más fácil recodar un nombre tal que www.desarrolloweb.com que 192.25.169.122. Además, si por algún problema se tuviera que cambiar de servidor y la IP cambiara, el nombre del dominio puede continuar siendo el mismo y dirigir a la IP correcta con tan solo asociarle la nueva. En definitiva, el DNS se creó para facilitar el reconocimiento de redes, dominios, etc.
El protocolo DNS define un servicio que coincide con nombres de recursos que tienen la dirección IP solicitada. Las comunicaciones del protocolo DNS utilizan un formato simple llamado mensaje. Este mensaje se utiliza para todas las acciones que realiza el protocolo.
El servicio DNS tiene una arquitectura cliente-servidor, aunque hay que destacar que se ejecuta por si mismo sin necesidad de una aplicación determinada. En definitiva, por sí mismo ofrece un servicio a otras aplicaciones que lo requieran.
Después de ver qué es y cómo funciona un DNS a grandes rasgos, podemos entender por qué cuando nos conectamos en red nos pide unos servidores DNS. Éstos son para facilitar el enrutado de la información y las peticiones de direcciones de Internet.

Formato del mensaje DNS

La comunicación cliente/servidor del protocolo DNS, o mensaje, tiene un formato como se puede ver a continuación: Encabezado - pregunta – respuesta – autoridad – adicional
  1. Pregunta: la pregunta para el servidor de nombres
  2. Respuesta: registros de recursos que responden a la pregunta
  3. Autoridad: registros de recursos que apuntan a una autoridad
  4. Adicional: registros de recursos que poseen información adicional

Jerarquía en DNS

El sistema de nombres de dominio (DNS) utiliza un sistema jerárquico para crear una base de datos para proporcionar una resolución de nombres optimizada. En la parte superior, los servidores raíz tienen registros que les indican cómo alcanzar los servidores de niveles inferiores y así sucesivamente.
Veamos un ejemplo: nosotros queremos acceder a una pagina italiana desde España. Bien, pues nuestro DNS primero buscará la URL en listados de IPs españolas y al no encontrarlo, pasará al siguiente nivel para buscarlo dentro de otra lista de IPs y así sucesivamente hasta dar con la correcta.
 A veces un DNS no encuentra la IP solicitada y se ve obligado a pedir ayuda a otros servidores, que actuarán de la misma forma que el primero. Esto forma una gran red de servidores de DNS que son los encargados realmente de que Internet funcione correctamente de cara a los usuarios y sus peticiones.

1 comentario:

  1. CAPA DE APLICACIÓN: utilizan las aplicaciones para intercambiar datos, como correo electrónico para que el usuario entienda y pueda utilizarla para obtener información y comunicarse.

    ResponderBorrar