Ir al contenido principal

Arquitectura Cliente/Servidor

Contenido

Hay un Examen dentro de dos semanas sobre una materia que genera dificultades por un par de temas complejos que requieres entender para poder pasarla así que le pides ayuda  a un amigo para comprenderla sin embargo, este no tiene una idea clara por lo que le pregunta a uno de los alumnos que mejor lleva la materia, este último consulta uno de sus libros para refrescar sus conocimientos y decirle al su compañero como funciona tal ley, finalmente tu amigo llega y te lo explica con sus palabras y finalmente comprendes a lo que se refiere un concepto.
Ejemplo de otro "Ciclo" donde en lugar de ser información es el carbono el que va de un lado a otro

El funcionamiento de un sistema distribuido funciona de forma similar al caso expuesto: un usuario busca algo en un browser este pide información a un sitio que puede que le pida a otro sitio y así hasta encontrar la información deseada y hacer el camino de regreso. La razón por la que opera de esta manera reside en la forma en la que está estructurado el propio software, en su Arquitectura.
Antes de llegar al concepto de Arquitectura de software es necesario analizar el cómo se percibe este proceso de intercambio de información:
Es el proceso mediante el que un mensaje es emitido por un individuo llamado emisor, es comprendido por otro llamado receptor o destinatario gracias a la existencia de un código común. Este proceso abarca dos etapas conocidas como codificación y descodificación del mensaje, el primero consiste en un proceso de transmutación del mensaje mediante los distintos elementos del código y su introducción a un canal entre esta y la segunda etapa se realiza la transmisión del mensaje donde puede encontrarse interferencias; una vez llegada a la descodificación se tiene un mecanismo de feedback (retroalimentación) donde se puede intercambiar los papeles donde el receptor se vuelva emisor y viceversa. (Alcaraz, 2015)


Arquitectura de Software

En un principio se refería a la estructuración del software como capas dentro de un único computador, ahora se define a partir de los servicios ofrecidos y solicitados en uno o mas computadores.
Plataforma. -Consiste en el hardware y las capas más bajas de software (ej. Sistema operativo).

Middleware. -Es el software necesario para el soporte de interacciones entre Clientes y Servidores principalmente en aplicaciones distribuidas. Normalmente se define como una capa de software cuyo propósito es ocultar la heterogeneidad y proveer de un modelo de programación conveniente para los desarrolladores de aplicaciones. Se encuentra representado por procesos u objetos que actúan en un conjunto de computadoras y que se comunican con el fin de proporcionar soporte para compartición de recursos en un sistema distribuido. (Coulouris, Dollimore, & Kindberg, 2014)
Se subdivide en:
§  Software intermedio general. Servicios generales que requieren todos los clientes y servidores.
§  Software intermedio de servicios. Software asociado a un servicio en particular.

Arquitectura Cliente/Servidor

 
Comunicación en sofware

Ahora que ya han quedado varios conceptos claros podemos ver a la arquitectura cliente servidor como un proceso de comunicación.
El cliente es la entidad que permite al usuario realizar peticionas al servidor, se le conoce con el término front-end. Normalmente maneja todas las funciones relacionadas con la manipulación y despliegue de datos, por lo que están desarrollados sobre plataformas que permiten construir interfaces gráficas de usuario (GUI), además de acceder a los servicios distribuidos en cualquier parte de una red.
Servidor. - Es el encargado de atender a múltiples clientes que hacen peticiones de algún recurso administrado por este. Al proceso servidor se le conoce con el término back-end.
Las funciones que lleva a cabo el proceso servidor se resumen en los siguientes puntos:
§  Aceptar los requerimientos de bases de datos que hacen los clientes.
§  Procesar requerimientos de bases de datos.
§  Formatear datos para trasmitirlos a los clientes.
§  Procesar la lógica de la aplicación y realizar validaciones a nivel de bases de datos

El protocolo es un conjunto bien conocido de reglas y formatos que se utilizan para la comunicación entre
procesos que realizan una determinada tarea. Se requieren dos partes:
§  Especificación de la secuencia de mensajes que se han de intercambiar.
§  Especificación del formato de los datos en los mensajes.

Arquitectura de Dos capas. - Existe una capa de presentación y lógica de la aplicación y otra en base de datos.
§  Requiere poco procesamiento de datos para ordenarlos.
§  Se tiene una base de datos centralizada en un solo servidor.
§  La base de datos es casi estática.
§  Requiere un mantenimiento mínimo. (CINVESTAV, 2017)
Arquitectura de Tres Capas. -Hay una capa de presentación, otra de lógica y una tercera de base de datos.
  • §  Requiere mucho procesamiento de datos.
  • §  La funcionalidad puede estar en constante cambio.
  • §  Los procesos no están estrechamente relacionados con los datos.
  • §  Facilita el cambio de la base de datos.
  • §  Facilita el mantenimiento al aislar código.
  • §  Complementa a los Programación Orientada a Objetos


Ventajas
Desventajas
Existencia de plataforma de hardware cada vez más baratas.

Facilita la integración entre sistemas y el compartimiento de su información.
No existen muchas herramientas para la administración de los sistemas.
Resulta más rápido su mantenimiento y el desarrollo de aplicaciones.
El diagnostico de fallas es más complicado por el origen distinto de sus componentes.
Tiene una gran escalabilidad de software y hardware.



Podemos decir que cuando se habla del Sistema Cliente servidor podemos interpretarlo como la comunicación entre los componentes de nuestro sistema distribuido (contexto) solicitando recursos o información, el cliente (emisor) envía una petición, el servidor (receptor) la procesa en el middleware (canal) mediante un protocolo y manda una respuesta (retroalimentación) al cliente. Gracias a todo esto la información se traslada de un lado a otro, esto nos dice que el programar avanza de manera constante ya no solo a nivel interprete de maquina-usuario sino que a un lenguaje que puede seguir desarrollándose aun más.

Referencias

Alcaraz, V. (13 de Abril de 2015). Diccionario de lingüistica moderna. Obtenido de Scribd: https://es.scribd.com/document/261725597/Alcaraz-Varo-Diccionario-de-linguistica-moderna-pdf
CINVESTAV. (Agosto de 2017). Sistemas Distribuidos. Obtenido de CINVESTAV Tamaulipas: http://www.tamps.cinvestav.mx/~vjsosa/clases/sd/sistemas_distribuidos_panorama.pdf
Coulouris, G., Dollimore, J., & Kindberg, T. (21 de Abril de 2014). Sistemas Distribuidos conceptos y diseño. Obtenido de Scribd: https://es.scribd.com/doc/219504970/Sistemas-Distribuidos-Coulouris-pdf
Santos García, D. V. (Agosto de 2017). Fundamentos de Comunicación. Obtenido de Red Tercer Milenio: http://www.aliat.org.mx/BibliotecasDigitales/comunicacion/Fundamentos_de_comunicacion.pdf

Universidad de las Americas de Puebla. (Agosto de 2017). Capitulo 5.-Cliente-Servidor. Obtenido de Acervos digitales: http://catarina.udlap.mx/u_dl_a/tales/documentos/lis/marquez_a_bm/capitulo5.pdf

Comentarios

Entradas más populares de este blog

Cifrado Hash

Contenido Cifrado Hash . 1 Algoritmos de cifrado . 1 Referencias . 1 En música existe un tipo composición llamada “fuga” donde, en resumen, una “voz” (instrumento o voz) toca un tema donde mientras se desarrolla se une una segunda que inicia el tema de nuevo que armonice con la primera y así se van uniendo más “voces”, persiguiéndolas y sirviendo de acompañamiento formando así una pieza amplia y con identidad propia. A diferencia de las fugas el cifrado hash no busca crear una obra más grande, sino que busca condensar la información cifrando bloques de está con un algoritmo. Cifrado Hash Es un algoritmo de cifrado asimétrico desarrollado por H. P. Luhn en 1953 que resume o identifica un gran conjunto de información dando como resultado un conjunto de imágenes finito para generar claves o llaves que representen a un documento, registro o archivo. Su uso evita ataques de suplantación y de modificación de mensajes. (Estilla, 2009) Requerimientos: Algoritmos d

Cifrado Asimétrico, Diffie-Hellman, RSA, DSS y Curva elíptica.

Contenido Cifrado Asimétrico, Diffie-Hellman, RSA, DSS y Curva elíptica. 1 Cifrado Asimétrico . 1 Intercambio de clave Diffie-Hellman . 1 DSS . 2 RSA .. 2 De curva elíptica . 2 Referencias . 3 Cifrado Asimétrico, Diffie-Hellman, RSA, DSS y Curva elíptica. La sucesión de Fibonacci aplicada de forma geométrica da como resultado una espiral que posee un gran valor y se puede encontrar tanto en la música, pintura como en la propia naturaleza, por ejemplo: en las conchas de los caracoles, en las semillas de los girasoles, en las cascaras de la piña, entre otros.  Este es un pequeño ejemplo de que tan ligadas pueden estar las matemáticas con lo que nos rodea y estos principios son utilizados por la ciencia y la tecnología para beneficiarse de la misma manera que la naturaleza. En el caso de la informática uno de los principales usos de teoremas y descripciones matemáticas y geométricas para realizar el enmascaramiento y autenticación de los datos du

Cifrado, autenticación y cifrado DES

Contenido Cifrado . 1 Simétrico . 1 Asimétrico . 1 Autenticación . 2 DES (Data Encryption Standard) . 2 Referencias . 2 El renacimiento fue una época obscura para la ciencia, pero sin duda fue la cuna de grandes genios en varias ramas del saber siendo Leonardo da Vinci uno de los más reconocidos. Él era ambidextro, en cualquiera de sus anotaciones puede notarse la escritura con la mano izquierda debido a las manchas de tinta que la mano deja al apoyarse, hacía uso de siglas y abreviaciones, pero el detalle que lo distingue de otros científicos de la época (y la principal razón por la que no tuvo problemas con la Inquisición) es la llamada ‘Escritura especular’: sus notas eran ilegibles sin la ayuda de un espejo. Cifrado La criptografía proviene del griego kriptos y grafos dando como significado “Escritura oculta” en base a esto se puede afirmar que así como Da Vinci usó una serie de técnicas para proteger el contenido de la información de la Inquisición y de su