Resumen:
|
[ES] Tradicionalmente, los objetivos de prestaciones de los sistemas distribuidos se enfocaban
principalmente en reducir el tiempo medio de respuesta de las aplicaciones. Sin
embargo, en los entornos cloud actuales, la ...[+]
[ES] Tradicionalmente, los objetivos de prestaciones de los sistemas distribuidos se enfocaban
principalmente en reducir el tiempo medio de respuesta de las aplicaciones. Sin
embargo, en los entornos cloud actuales, la métrica a mejorar es la latencia de cola o tail
latency en vez de la latencia media. Esta métrica representa los tiempos de respuesta más
largos sufridos por las peticiones de las aplicaciones, habitualmente los del percentil 95
o superior. La latencia de cola es importante porque si aumenta excesivamente, puede
hacer peligrar los acuerdos de nivel de servicio o SLA, lo que afectaría a la experiencia
de los usuarios. Esta métrica es altamente sensible a la infraestructura del sistema, la
distribución de carga entre los servidores y las características de las aplicaciones.
Algunos de los benchmark suites de gran uso como Tailbench presentan serias limitaciones
respecto a un sistema real lo que restringe el rango de estudios de evaluación que
se pueden realizar. En concreto, operan en un entorno muy controlado donde el número
de clientes, número de peticiones y carga son fijos; un escenario no representativo de los
servicios distribuidos.
El presente trabajo persigue eliminar estas limitaciones, centrándose en el diseño de
una infraestructura multi-cliente y multi-servidor basada en Linux Virtual Server que
permita estudiar entornos realistas de forma flexible con cargas diseñadas para la evaluación
de la latencia de cola, como son las pertenecientes a la suite de benchmarks Tailbench.
Para lograr este fin, es necesario adaptar las aplicaciones Tailbench para su ejecución en
esta nueva infraestructura. Las aplicaciones modificadas, Tailbench++, permiten definir
situaciones en las que los servidores esperan un número de clientes indefinido, y cada
cliente realiza un número variable de peticiones, permitiendo además poder alterar su
carga dinámicamente en el tiempo.
El objetivo de este trabajo es desarrollar un entorno que permita realizar estudios
sobre el cloud de manera más precisa. En concreto, el entorno persigue considerar, entre
otros indicadores, la interferencia en los recursos compartidos de los servidores, como la
cache de último nivel, y el ancho de banda de memoria principal. Entre los estudios a los
que se dedicará el entorno cabe resaltar, la implementación y análisis de estrategias de
balanceo de carga.
[-]
[EN] Traditionally, the main focus of distributed systems performance objectives has been
reducing the average application response time. However, in today s cloud environments,
the metric to improve is tail latency ...[+]
[EN] Traditionally, the main focus of distributed systems performance objectives has been
reducing the average application response time. However, in today s cloud environments,
the metric to improve is tail latency rather than average latency. This metric represents
the longest response times experienced by application requests, typically those in
the 95th percentile or higher. Tail latency is important because increasing excessively can
compromise service level agreements or SLAs, affecting the user experience. This metric
is highly sensitive to system infrastructure, server load distribution, and application
characteristics.
Some of the widely used benchmark suites, such as Tailbench, have serious limitations
concerning a real system, which limits the scope of studies that can be performed.
In particular, they operate in a very controlled environment where the number of clients,
the number of requests, and the load are fixed, a scenario that is not representative of
distributed services.
This work aims to remove these limitations, focusing on the design of a multi-client
and multi-server infrastructure based on Linux Virtual Server that allows reproducing
realistic environments with workloads designed for the evaluation of tail latency, such as
those belonging to the Tailbench benchmark suite. For this purpose, the Tailbench applications
need to be adapted to run on this new infrastructure. The modified applications,
Tailbench++, allow for more realistic situations to be reproduced, in which the servers
wait for an indefinite number of clients and where each client makes a variable number
of requests, enabling them to alter the load dynamically.
The main objective of this work is to develop an environment that allows cloud studies
to be carried out more accurately. Specifically, the environment aims to consider,
among other indicators, interference among shared server resources, such as the last level
cache and main memory bandwidth. Among the studies to which the environment will
be dedicated, it is worth highlighting the implementation and analysis of load-balancing
strategies.
[-]
[CA] Tradicionalment, els objectius de prestacions dels sistemes distribuïts s’enfocaven
principalment a reduir el temps mitjà de resposta de les aplicacions. No obstant això,
en els entorns cloud actuals, la mètrica a ...[+]
[CA] Tradicionalment, els objectius de prestacions dels sistemes distribuïts s’enfocaven
principalment a reduir el temps mitjà de resposta de les aplicacions. No obstant això,
en els entorns cloud actuals, la mètrica a millorar és la latència de cua o tail latency en
compte de la latència de mitjana. Aquesta mètrica representa el temps de resposta més
llargs patit per les peticions de les aplicacions, habitualment els del percentil 95 o superior. La latència de cua és important perquè si augmenta excessivament pot fer perillar
els acords de nivell de servici o SLA, la qual cosa afectaria l’experiència dels usuaris. Esta mètrica és altament sensible a la infraestructura del sistema, la distribució de càrrega
entre els servidors i les característiques de les aplicacions.
Alguns dels benchmark suites de gran ús com Tailbench presenten serioses limitacions
respecte a un sistema real, la qual cosa restringix el rang d’estudis d’avaluació que es
poden realitzar. En concret, operen en un entorn molt controlat on el nombre de clients,
el nombre de peticions i la càrrega són fixos; un escenari no representatiu dels servicis
distribuïts.
El present treball perseguix eliminar estes limitacions, centrant-se en el disseny d’una
infraestructura multi-client i multi-servidor basada en Linux Virtual Server que permeta
estudiar entorns realistes de manera flexible amb càrregues dissenyades per a l’avaluació
de la latència de cua, com són les pertanyents a la suite de benchmarks Tailbench. Per a
això, es necessari adaptar les aplicacions Tailbench per a la seua execució en esta nova
infraestructura. Les aplicacions modificades, Tailbench++, permeten definir situacions
en les quals els servidors esperen un nombre de clients indefinit, i cada client realitza un
nombre variable de sol·licituds, permetent alterar la seua càrrega dinàmicament.
L’objectiu del treball és desenvolupar un entorn que permeta realitzar estudis sobre
el cloud de manera més precisa. En concret, l’entorn perseguix considerar, entre altres
indicadors, la interferència en els recursos compartits dels servidors, com la cache d’últim
nivell, i l’amplada de banda de memòria principal. Entre els estudis als quals es dedicarà
l’entorn cal ressaltar, la implementació i anàlisi d’estratègies de balanceig de càrrega.
[-]
|