Está en la página 1de 5

El desarrollo de aplicaciones de red tiene como núcleo escribir programas que se desarrollan

en diferentes sistemas terminales y que se comunican entre sí a través de la red. Estas

aplicaciones pueden ser escritas en diferentes lenguajes de programación como Java, Python

y C + +.

Acerca de la arquitectura de la aplicación, esta debe de ser planeada antes de la codificación

del software. Existen dos paradigmas arquitectónicos predominantes los cuales son: la

arquitectura cliente servidor y la arquitectura peer to peer.

Imagen. 1. Arquitectura Cliente - Servidor.


Link de la imagen número 1

En la arquitectura cliente servidor el Host siempre activo es el llamado servidor y es el que

debe atender a las solicitudes de muchos otros hosts, denominados clientes. En esta

arquitectura los clientes no se comunican directamente entre sí. Una característica de esta

arquitectura es que el servidor tiene una dirección IP que es fija, conocida y que siempre

estará encendida. Un sitio puede verse abrumado si tiene demasiadas solicitudes al mismo

tiempo por esta razón es más usado un centro de datos qué albergue una gran cantidad de

Hosts y que tengan cientos de miles de servidores que deben alimentarse y mantenerse.

Ejemplos de este modelo tenemos motores de búsqueda como Google, Amazon, Ebay y

ejemplos de aplicaciones que usan esta arquitectura incluye en la web FTP, Telnet y correo

electrónico.
Imagen. 1. Arquitectura Cliente - Servidor.
Link de la imagen número 2

En la arquitectura peer to peer se realiza una comunicación directa entre pares de Hosts que

están conectados permanentemente. Estos pares, son computadoras de escritorio y portátiles,

controladas por usuarios, que pueden estar ubicadas en casas, universidades u oficinas. Un

ejemplo es la popular aplicación para compartir archivos BitTorrent. Una de sus mayores

ventajas es que son rentables ya que no requieren una gran infraestructura de servidor ni un

ancho de banda grande; pese a esto, estás aplicaciones enfrentan desafíos de rendimiento,

confiabilidad y seguridad.

Para desarrollar una aplicación de red también debemos entender como los programas se

comunican entre sí.

Una aplicación consta de pares de procesos en los que se envían mensajes entre sí a través

de una red. Habitualmente etiquetamos a uno de los procesos como servidor y al otro como

cliente, en la web por ejemplo al buscador sería llamado cliente y un servidor web sería un

proceso de servidor. En arquitectura peer to peer quién descarga archivo es el cliente y quién

carga el archivo se le conoce como servidor.

Para enviar una postal siempre debemos tener una dirección de destino. Similarmente, en

internet el Host es identificado por su dirección IP. La dirección IP tiene una cantidad de 32 bits

que podemos considerar como una identificación única de Host.


Se debe tener también una transferencia de datos confiable ya que si un protocolo no lo

proporciona es posible que algunos de los datos enviados del proceso de envío nunca lleguen

al proceso de recepción ocasionando pérdidas en multimedia como audio y video.

Un protocolo de la capa de transporte debe proporcionar también garantías en el tiempo de

envío esto quiere decir que el servicio debe de ser en tiempo real ya que de lo contrario se

podrían provocar pausas poco naturales y retrasos al ver la respuesta del video. Así también

un protocolo de transporte debe proporcionar seguridad, cifrar todos los datos transmitidos por

el proceso de envío y que la capa de transporte puede descifrar los datos antes de entregarlos

al proceso de recepción.

El servicio TCP incluye el servicio orientado a la conexión y un servicio de transferencia de

datos confiables.

La web es un servicio que atrae a muchos usuarios por sus grandes beneficios y ventajas

como por ejemplo que operan bajo demanda ya que a diferencia de otros servicios como el

radio e internet, en la web los usuarios pueden elegir el servicio que desean.

El protocolo de transferencia de hipertexto (HTTP) se implementa en 2 programas un

programa cliente y un programa servidor. Http define como los clientes web solicitan páginas

web de los servidores de internet cuando un usuario solicita una página web el navegador

envía mensaje de solicitud http, el servidor recibe las solicitudes y responde con mensajes de

respuesta HTTP.

Imagen. 3. Protocolo HTTP


Link de la imagen número 3
Constantemente es necesario que un sitio web identifique a los usuarios ya sea por el deseo

de restringir les el acceso o por dar un servicio personalizado. Por esto http utiliza cookies, que

permiten al sitio web seguir a los usuarios.

Caché web es una entidad de red que satisface las solicitudes http en nombre de un servidor

web de origen. Es tanto un servidor como un cliente al mismo tiempo, cuando recibe

solicitudes y envía respuestas a un navegador, es un servidor y cuando envías solicitudes y

recibe respuestas de un servidor de origen, es un cliente.

Las páginas de Internet usualmente son conocidas por sus nombres Memo técnicos sin

embargo su verdadera identificación son mediante direcciones IP. Sabemos que hay dos

diferentes maneras de identificar a un Host por su nombre de Host y por su dirección IP,

reconciliar estas preferencias es la tarea principal del sistema de nombres de dominio de

internet (DNS). Este sistema es comúnmente empleado por otros protocolos de la capa de

Aplicación como el http y el smtp para traducir nombres de Host dados por el usuario a

direcciones IP.

Existen dos tipos de mensaje DNS, los de consulta y de respuesta. Es válido también

preguntarnos acerca de la seguridad de los servidores DNS, ¿estos podrían ser atacados?

Existen diferentes tipos de ataques como el DDoS, donde se envía una avalancha de

consultas DNS a servidores de dominio de nivel superior. También existe un ataque llamado

“men” in the middle donde el atacante intercepta en las consultas de los Host y devuelve

respuestas falsas, el ataque envenenamiento de dns donde el atacante envía respuestas

falsas a un servidor dns para que acepte registros falsos en su caché. Cualquiera de estos

ataques podría usarse para redirigir a un usuario web desprevenido al sitio web del atacante,

afortunadamente existen extensiones de seguridad dns que brindan protección contra tales

vulnerabilidades.
Imagen. 4. Protocolo DNS

Link de la imagen número 4

También podría gustarte