La capa de aplicación Ing. Juan Manuel Álvarez
Introducción En informática, la capa de aplicación es el nivel 7 del modelo OSI o la cuarta capa de la pila de protocolos TCP/ IP. Ofrece a las aplicaciones (de usuario o no) la posibilidad de acceder a los servicios de las demás capas y define los protocolos que utilizan las aplicaciones para intercambiar datos, como correo electrónico (POP y SMTP), gestores de bases de datos y protocolos de transferencia de archivos (FTP).
Introducción Cabe aclarar que el usuario normalmente no interactúa directamente con el nivel de aplicación. Suele interactuar con programas que a su vez interactúan con el nivel de aplicación pero ocultando la complejidad subyacente. Así por ejemplo un usuario no manda una petición "HTTP/1.0 GET index.html" para conseguir una página en html, ni lee directamente el código html/xml. O cuando chateamos con el Messenger, no es necesario que codifiquemos la información y los datos del destinatario para entregarla a la capa de Presentación (capa 6) para que realice el envío del paquete.
Tipos de aplicaciones Básicamente existen dos tipos de aplicaciones en internet: Aplicaciones cliente servidor Esta arquitectura consiste básicamente en un cliente que realiza peticiones a otro programa -el servidor- que le da respuesta. Aunque esta idea se puede aplicar a programas que se ejecutan sobre una sola computadora es más ventajosa en un sistema operativo multiusuario distribuido a través de una red de computadoras.
Tipos de aplicaciones Básicamente existen dos tipos de aplicaciones en internet: Aplicaciones P2P: Son aquellas aplicaciones en la que todos o algunos aspectos de estas funcionan sin clientes ni servidores fijos, sino una serie de nodos que se comportan como iguales entre si. Es decir, actúan simultáneamente como clientes y servidores respecto a los demás nodos de la red
protocolos de la capa de aplicación En esta capa aparecen diferentes protocolos: FTP (File Transfer Protocol - Protocolo de Transferencia de Archivos) para transferencia de archivos. DNS (Domain Name Service - Servicio de Nombres de Dominio) DHCP (Dynamic Host Configuration Protocol - Protocolo de Configuración Dinámica de Anfitrión) HTTP (HyperText Transfer Protocol) para acceso a páginas de internet. NAT (Network Address Translation - Traducción de Dirección de Red) POP (Post Office Protocol) para correo electrónico. SMTP (Simple Mail Transport Protocol). SSH (Secure SHell) TELNET para acceder a equipos remotos TFTP (Trival File Transfer Protocol).
HTTP El protocolo de transferencia de hipertexto es utilizado para la transfernecia de hipertexto y ha sido el caballo de batalla de la web, fue propuesto en la RFC 1945, modificado por la RFC 2616 y mas recientemente por la RFC 2774
Ejemplo de transacción HTTP Primero se hace una conexión al puerto 80 del servidor
Ejemplo de transacción HTTP Se envía la petición completa de esta forma:   GET /2009/08/miercoles-de-bragas-xxx.html HTTP/1.1  Host: jmaquino.blogspot.com  User-Agent: Mozilla
Ejemplo de transacción HTTP Se obtiene una respuesta del protocolo:
SMTP El protocolo simple para la transferencia de correo permite la comunicación entre el host que envía el correo y el servidor de recepción de correo. Estas peticiones viajan por el puerto 25
Ejemplo de transacción SMTP S: 220 Servidor ESMTP C: HELO miequipo.midominio.com  S: 250 Hello, please meet you  C: MAIL FROM:  [email_address]   S: 250 Ok  C: RCPT TO:  [email_address]   S: 250 Ok  C: DATA  S: 354 End data with <CR><LF>.<CR><LF>  C: Subject: Campo de asunto  C: From:  [email_address]   C: To:  [email_address]   C:  C: Hola,  C: Esto es una prueba.  C: Adiós.  C:  C: .  S: 250 Ok: queued as 12345  C: quit  S: 221 Bye
POP3 e IMAP SMTP es un protocolo ideal para el envío de coreo pero por su arquitectura no es apto para la recepción de correo en los clientes por eso han aparecido dos protocols específicos para estas tareas: POP3 e IMAP
POP3. POP3 está diseñado para recibir correo, no para enviarlo. Permite a los usuarios con conexiones intermitentes ó muy lentas (tales como las conexiones por módem), descargar su correo electrónico mientras tienen conexión y revisarlo posteriormente incluso estando desconectados.  La mayoría de los clientes de correo incluyen la opción de dejar los mensajes en el servidor, de manera tal que, un cliente que utilice POP3 se conecta, obtiene todos los mensajes, los almacena en la computadora del usuario como mensajes nuevos, los elimina del servidor y finalmente se desconecta.   
IMAP Protocolo de acceso a mensajes electrónicos almacenados en un servidor. Se puede tener acceso al correo electrónico desde cualquier equipo que tenga una conexión a Internet.  Tiene varias ventajas sobre POP. Es más complejo que POP ya que permite visualizar los mensajes de manera remota y no descargando los mensajes como lo hace POP.  
Diferencias entre IMAP y POP3
DNS Es un sistema que permite hacer la traducción de nombres de dominio a direcciones IP.
FTP Protocolo para la transferencia de archivos entre sistemas conectados a una red TCP, basado en la arquitectura cliente-servidor. Desde un equipo cliente se puede conectar a un servidor para descargar archivos desde él o para enviarle archivos, independientemente del sistema operativo utilizado en cada equipo.
Modos de conexión FTP Modo activo.
Modos de conexión FTP Modo pasivo.
Telnet Protocolo de red (y del programa informático que implementa el cliente), que sirve para acceder mediante una red a otra máquina, para manejarla remotamente como si estuviéramos sentados delante de ella. Para que la conexión funcione, como en todos los servicios de Internet, la máquina a la que se acceda debe tener un programa especial que reciba y gestione las conexiones. El puerto que se utiliza generalmente es el 23.
SSH Protocolo y programa que lo implementa. Sirve para acceder a máquinas remotas a través de una red. Permite manejar por completo la computadora mediante un intérprete de comandos, y también puede redirigir el tráfico de X para poder ejecutar programas gráficos si tenemos un Servidor X (en sistemas Unix y Windows) corriendo. Además de la conexión a otras máquinas, SSH nos permite copiar datos de forma segura (tanto ficheros sueltos como simular sesiones FTP cifradas), gestionar claves RSA para no escribir claves al conectar a las máquinas y pasar los datos de cualquier otra aplicación por un canal seguro tunelizado mediante SSH.
Creación de aplicaciones de red Porfavor visiten el sitio: http://java.sun.com/docs/books/tutorial/networking/sockets/ Para mayor información sobre el tema

La capa de aplicación

  • 1.
    La capa deaplicación Ing. Juan Manuel Álvarez
  • 2.
    Introducción En informática,la capa de aplicación es el nivel 7 del modelo OSI o la cuarta capa de la pila de protocolos TCP/ IP. Ofrece a las aplicaciones (de usuario o no) la posibilidad de acceder a los servicios de las demás capas y define los protocolos que utilizan las aplicaciones para intercambiar datos, como correo electrónico (POP y SMTP), gestores de bases de datos y protocolos de transferencia de archivos (FTP).
  • 3.
    Introducción Cabe aclararque el usuario normalmente no interactúa directamente con el nivel de aplicación. Suele interactuar con programas que a su vez interactúan con el nivel de aplicación pero ocultando la complejidad subyacente. Así por ejemplo un usuario no manda una petición &quot;HTTP/1.0 GET index.html&quot; para conseguir una página en html, ni lee directamente el código html/xml. O cuando chateamos con el Messenger, no es necesario que codifiquemos la información y los datos del destinatario para entregarla a la capa de Presentación (capa 6) para que realice el envío del paquete.
  • 4.
    Tipos de aplicacionesBásicamente existen dos tipos de aplicaciones en internet: Aplicaciones cliente servidor Esta arquitectura consiste básicamente en un cliente que realiza peticiones a otro programa -el servidor- que le da respuesta. Aunque esta idea se puede aplicar a programas que se ejecutan sobre una sola computadora es más ventajosa en un sistema operativo multiusuario distribuido a través de una red de computadoras.
  • 5.
    Tipos de aplicacionesBásicamente existen dos tipos de aplicaciones en internet: Aplicaciones P2P: Son aquellas aplicaciones en la que todos o algunos aspectos de estas funcionan sin clientes ni servidores fijos, sino una serie de nodos que se comportan como iguales entre si. Es decir, actúan simultáneamente como clientes y servidores respecto a los demás nodos de la red
  • 6.
    protocolos de lacapa de aplicación En esta capa aparecen diferentes protocolos: FTP (File Transfer Protocol - Protocolo de Transferencia de Archivos) para transferencia de archivos. DNS (Domain Name Service - Servicio de Nombres de Dominio) DHCP (Dynamic Host Configuration Protocol - Protocolo de Configuración Dinámica de Anfitrión) HTTP (HyperText Transfer Protocol) para acceso a páginas de internet. NAT (Network Address Translation - Traducción de Dirección de Red) POP (Post Office Protocol) para correo electrónico. SMTP (Simple Mail Transport Protocol). SSH (Secure SHell) TELNET para acceder a equipos remotos TFTP (Trival File Transfer Protocol).
  • 7.
    HTTP El protocolode transferencia de hipertexto es utilizado para la transfernecia de hipertexto y ha sido el caballo de batalla de la web, fue propuesto en la RFC 1945, modificado por la RFC 2616 y mas recientemente por la RFC 2774
  • 8.
    Ejemplo de transacciónHTTP Primero se hace una conexión al puerto 80 del servidor
  • 9.
    Ejemplo de transacciónHTTP Se envía la petición completa de esta forma:   GET /2009/08/miercoles-de-bragas-xxx.html HTTP/1.1  Host: jmaquino.blogspot.com  User-Agent: Mozilla
  • 10.
    Ejemplo de transacciónHTTP Se obtiene una respuesta del protocolo:
  • 11.
    SMTP El protocolosimple para la transferencia de correo permite la comunicación entre el host que envía el correo y el servidor de recepción de correo. Estas peticiones viajan por el puerto 25
  • 12.
    Ejemplo de transacciónSMTP S: 220 Servidor ESMTP C: HELO miequipo.midominio.com S: 250 Hello, please meet you C: MAIL FROM: [email_address] S: 250 Ok C: RCPT TO: [email_address] S: 250 Ok C: DATA S: 354 End data with <CR><LF>.<CR><LF> C: Subject: Campo de asunto C: From: [email_address] C: To: [email_address] C: C: Hola, C: Esto es una prueba. C: Adiós. C: C: . S: 250 Ok: queued as 12345 C: quit S: 221 Bye
  • 13.
    POP3 e IMAPSMTP es un protocolo ideal para el envío de coreo pero por su arquitectura no es apto para la recepción de correo en los clientes por eso han aparecido dos protocols específicos para estas tareas: POP3 e IMAP
  • 14.
    POP3. POP3 estádiseñado para recibir correo, no para enviarlo. Permite a los usuarios con conexiones intermitentes ó muy lentas (tales como las conexiones por módem), descargar su correo electrónico mientras tienen conexión y revisarlo posteriormente incluso estando desconectados.  La mayoría de los clientes de correo incluyen la opción de dejar los mensajes en el servidor, de manera tal que, un cliente que utilice POP3 se conecta, obtiene todos los mensajes, los almacena en la computadora del usuario como mensajes nuevos, los elimina del servidor y finalmente se desconecta.   
  • 15.
    IMAP Protocolo deacceso a mensajes electrónicos almacenados en un servidor. Se puede tener acceso al correo electrónico desde cualquier equipo que tenga una conexión a Internet.  Tiene varias ventajas sobre POP. Es más complejo que POP ya que permite visualizar los mensajes de manera remota y no descargando los mensajes como lo hace POP.  
  • 16.
  • 17.
    DNS Es unsistema que permite hacer la traducción de nombres de dominio a direcciones IP.
  • 18.
    FTP Protocolo parala transferencia de archivos entre sistemas conectados a una red TCP, basado en la arquitectura cliente-servidor. Desde un equipo cliente se puede conectar a un servidor para descargar archivos desde él o para enviarle archivos, independientemente del sistema operativo utilizado en cada equipo.
  • 19.
    Modos de conexiónFTP Modo activo.
  • 20.
    Modos de conexiónFTP Modo pasivo.
  • 21.
    Telnet Protocolo dered (y del programa informático que implementa el cliente), que sirve para acceder mediante una red a otra máquina, para manejarla remotamente como si estuviéramos sentados delante de ella. Para que la conexión funcione, como en todos los servicios de Internet, la máquina a la que se acceda debe tener un programa especial que reciba y gestione las conexiones. El puerto que se utiliza generalmente es el 23.
  • 22.
    SSH Protocolo yprograma que lo implementa. Sirve para acceder a máquinas remotas a través de una red. Permite manejar por completo la computadora mediante un intérprete de comandos, y también puede redirigir el tráfico de X para poder ejecutar programas gráficos si tenemos un Servidor X (en sistemas Unix y Windows) corriendo. Además de la conexión a otras máquinas, SSH nos permite copiar datos de forma segura (tanto ficheros sueltos como simular sesiones FTP cifradas), gestionar claves RSA para no escribir claves al conectar a las máquinas y pasar los datos de cualquier otra aplicación por un canal seguro tunelizado mediante SSH.
  • 23.
    Creación de aplicacionesde red Porfavor visiten el sitio: http://java.sun.com/docs/books/tutorial/networking/sockets/ Para mayor información sobre el tema