You are on page 1of 2

\section{NetEm} \label{sec:netem} El modulo NetEm \cite{NETEM} del kernel de Linux provee la funcionalidad de emulacin de red para realizar pruebas

de protocolos, emulando las propiedad de un red WAN\footnote{Una WAN es una red de comunicaciones que conecta ordenadores dispersos en una amplia rea geogrfica (conectados por lneas telefnicas u ondas de radio).}, Wide Area Network. La actual versin puede emular demora, perdidas, duplicacin, corrupcin y reordenamiento de paquetes. NetEm se control a travs de la lnea de comando, con el comando \tc, que es parte del paquete de herramientas de iproute2 \cite{IPROUTE2}. NetEm es una mejora reciente a las funcionalidades de control de trafico de Linux. Se construy utilizando las funcionalidades existente en Linux de QoS y Servicios Diferenciados (DiffServ). La motivacin que hay detrs de NetEm es la de proveer una manera de reproducir grandes redes en un ambiente de laboratorio. Primeramente se utilizo para evaluar nuevas mejoras a TCP en Linux. %%Una alternativa a la emulacin de red es una completa simulacin en %%un ambiente virtual. La simulacin es una aproximacin sinttica en %%el cual hay que generar un modelo de los protocolos de red a probar %%y luego aplicar datos, tambin sintticos, al modelo. Simulacin es %%ms til cuando se desarrolla un nuevo protocolo desde su inicio, %%porque es ms fcil reproducir de reproducir y no es influenciado %%por los detalles de tiempo del mundo real. El simulador ns-2 %%\cite{NS2} es el ms utilizado para investigacin de prototipos de %%nuevos protocolos. La figura \ref{fig:netem_basico} muestra la arquitectura bsica de NetEm. Las disciplinas de cola existen entre la salida del protocolo y el dispositivo de red. \begin{figure} \centering \includegraphics[scale=.65]{images/netem_basico.eps} \caption{Arquitectura bsica de NetEm.} \label{fig:netem_basico} \end{figure} Como se explic anteriormente, una disciplina de cola se puede ver como un objeto simple con dos interfases claves. Una interfase encola paquetes a ser enviados y la otra interfase entrega paquetes al dispositivo de red. Las polticas a utilizar para la entrega de paquetes al dispositivo de red est en la configuracin de la disciplina de cola. Se pueden configurar polticas complejas anidando distintas disciplinas de cola. Internamente, NetEm es una disciplina de cola con clases con colas de paquetes. Una es una cola privada de espera tipo FIFO y la otra es una disciplina de cola anidada, generalmente FIFO. La interfase de encolado toma paquetes, les asigna un Timestamp (con el tiempo de envo) y los pone en la cola de espera. Un reloj interno mueve los paquete de la cola de espera a la disciplina de cola anidada. La

interfase de desencolado toma paquetes de la disciplina de cola anidada. Sin embargo, NetEm present un problema ya que no soporta anidamiento consigo mismo, y por ende no es posible configurar una demora fija y una demora variable al mismo tiempo con la versin corriente de NetEm. Por tal razn, se modifico NetEm para agregar una nueva opcin de configuracin, \emph{fixed\_delay}. Esta opcin permite fijar una demora fija a todos paquetes, adems de permitir la demora variable original. Esta opcin es til al momento de definir los experimentos experimentos. Para mayor detalle ver apndice \ref{app:netem}.

You might also like