[en] The thesis exposed in this document it is a wrapper on the studies of the Technologies and Services of Telecommunications Engineering Degree coursed by the author. This project consists in the development and implementation of a WAN link emulation system used to emulate long range IP links inside a local or LAN environment. Thus, the application will apply different characteristics from a WAN link to all the packets of an IP network going through the emulation system. Furthermore, the application developed through this thesis presents a web interface through which the user can manage the emulations and network links of the emulation system, allowing the user to use a more friendly management environment. The application also presents an API REST interface though which other users can interact with the emulation system. The application development is done using the following programming languages: PHP, HTML, JavaScript and CSS. The application is executed on top of a Linux operating system; more precisely over the distribution Ubuntu Server 18.04 or newer versions. The developed application uses a variety of Linux packages such as iproute2, traffic control, ethtool or bridge-utils so it can cause the desired effect to the packet flow. The project results in exit, accomplishing and presenting a fully functional emulation system that allows the user to define the following parameters to the target IP links: latency, packet-loss and packet-reordering.

[es] El Trabajo de Fin de Grado que se expone en este documento es la clausura del el estudio del Grado de Ingeniería de Tecnologías y Servicios de Telecomunicación. Este trabajo consiste en el desarrollo y la implementación de un sistema de emulación de enlaces WAN a través del cual podremos emular un enlace de gran distancia adentro un entorno local, o red LAN. De este modo, el emulador aplicará diferentes efectos propios de los enlaces WAN a todos los paquetes de una red IP que circulen por el sistema. Además, la aplicación que se ha desarrollado presenta una interfaz web a través de la cual se pueden gestionar las emulaciones y los enlaces de red del sistema de emulación, ofreciendo al usuario un entorno más amable de gestión. La aplicación cuenta también con una APIO RISTRA a través de la cual otros sistemas y aplicaciones pueden interactuar con la emulación. El desarrollo de la aplicación se ha hecho con los lenguajes de programación PHP, HTML, Javascript y CSS. Esta aplicación se ejecuta sobre un sistema operativo Linux; concretamente sobre la distribución Ubuntu Server 18.04 o superiores. Además, la aplicación desarrollada hace uso de varios paquetes de Linux como por ejemplo iproute2, traffic control, ethtool o bridge-utils para poder aplicar los efectos deseados a los flujos de paquetes. Este trabajo consiste en el desarrollo y la implementación de un sistema de emulación de enlaces WAN a través del cual podremos emular un enlace de gran distancia adentro un entorno local, o red LAN. De este modo, el emulador aplicará diferentes efectos propios de los enlaces WAN a todos los paquetes de una red IP que circulen por el sistema. Además, la aplicación que se ha desarrollado presenta una interfaz web a través de la cual se pueden gestionar las emulaciones y los enlaces de red del sistema de emulación, ofreciendo al usuario un entorno más amable de gestión. La aplicación cuenta también con una APIO RISTRA a través de la cual otros sistemas y aplicaciones pueden interactuar con la emulación. El desarrollo de la aplicación se ha hecho con los lenguajes de programación PHP, HTML, Javascript y CSS. Esta aplicación se ejecuta sobre un sistema operativo Linux; concretamente sobre la distribución Ubuntu Server 18.04 o superiores. Además, la aplicación desarrollada hace uso de varios paquetes de Linux como por ejemplo iproute2, traffic control, ethtool o bridge-utils para poder aplicar los efectos deseados a los flujos de paquetes. El trabajo resulta satisfactorio, se consigue y se presenta un sistema de emulación totalmente funcional que permite definir los parámetros de: latencia, pérdida y reordenamiento de paquetes en los enlaces IP que se quieran emular.