Documentos de Académico
Documentos de Profesional
Documentos de Cultura
UNAN-León
Docente:
Msc. Aldo Martínez
Tema:
• Practica 1. Calidad de Servicio en Linux.
Elaborado por:
Wilber Andrés Manzanarez Narvaez
Fecha: 24/04/2020
Al verificar las discplina de entrada con tc qdisc show muestra las discplina por defecto pfifo_fast.
Inicio el comando iperf en modo cliente que envie trafico de 3 Mbit, por defecto el comando enviá
durante 10segundos.
Observa en el lado servidor, el informe del tráfico recibido en el sentido pc1 → pc3.
En Transferencia muestra 3.75 Mbytes y el ancho es de 3.15 Mbits/sec, y en como no hay otro fluyo
el jitter es el mínimo.
• Escribe (todavı́a sin ejecutar) el comando que arranca iperf en modo cliente UDP en pc1
para que envı́e 3 Mbit al servidor pc3 en el sentido pc1 → pc3 durante 10 segundos.
Escribo iperf -u -c 12.0.0.30 -b 3Mbit, para que envie trafico a 3Mbit a pc3(12.0.0.30) por
defecto se envia durante 10 seg.
• Escribe (todavı́a sin ejecutar) el comando que arranca iperf en modo cliente UDP en pc2
para que envı́e 3 Mbit al servidor pc4 en el sentido pc2 → pc4 durante 10 segundos.
En el instante 0 pc2 tiene todo el ancho de banda de 3.242 bits/sec y cuando entra el flujo de pc1 va
disminuyendo el ancho de banda de pc2
Con nano creo un script llamado tc-ingress.sh y le agrego las siguientes ordenes:
tc qdisc del dev eth0 ingress =elimino disciplina creadas.
Tc qdisc add dev etho handle ffff: ingress=creo la disciplina de entrada.
Tc filter add dev eth0 parent ffff: \= creo los filtros para restringir la velocidad a pc1 y pc2 y para
que no superen la velocidad establecida y le añado cubeta de 10k a pc1 y pc2.
Una vez creado el script debes darle permisos de ejecución con la orden:
chmod 755 tc-ingress.sh
Le damos permiso al script
Interrumpo las captura de trafico en r1 y los informes de los servidores iperf con ctrl+c.
A continuación analiza los resultados obtenidos:
1. Explica las estadísticas que muestran los servidores.
El ancho de banda disminuyo para pc1 y tubo mas perdidas de paquete porque se agrego disciplina
de entrada para pc1 a 1Mbit de velocidad de igual manera a pc2 se le agrego disciplina de entrada
de 2Mbit de velocidad, es por eso que en el reporte informa ancho de banda de 1.96Mbits/seg
2. Carga la captura en wireshark y muestra cada uno de los flujos de forma gráfica. Explica el
ancho de banda medido para cada uno de los flujos.
A como se ve en en la grafica se comprueba el ancho de banda asignada para pc1 de 1Mbit y para
pc2 de 2Mbit con ráfaga de 10 k.
3.Disciplinas de colas para el tráfico de salida
3.1.Token Bucket Filter (TBF)
Mantén la configuración del tráfico de entrada en r1 que has realizado en el apartado anterior
en el script tc-ingress.sh.
• Define en r1 para su interfaz eth1 una disciplina TBF de salida con ancho de banda 1.5
Mbit, latencia 10 ms y tamaño de cubeta 10k y guarda la configuración en un nuevo script
tc-egress-tbf.sh.
A como se ve la tasa de transferencia y el tamaño de banda se limito por que se asigno una
disciplina de salida con un ancho de banda de 1.5Mbit,tubo mas perdidas de paquetes pc1-> pc3,
como se le agrego 10ms de latencia que es el tiempo que espera un paquete por un token entonces
aumento el jitter en pc1→pc3 y el ancho de banda lo intercambian .
2. Carga la captura en wireshark y muestra cada uno de los flujos de forma gráfica. Explica el
ancho de banda medido para cada uno de los flujos.
Cada paquete se intercambia el ancho de banda ya que se agrego latencia a la disciplina de salida
de tbf y estan a la espera que esten disponible token para en enviar rafagas cuando termina el flujo
de pc1 se libera el ancho de banda y alcanza todo el ancho de banda.
Modifica la configuración de TBF de salida para que ahora tenga una latencia de 20
segundos y realiza la misma prueba que antes 1 . Interrumpe la captura al menos cuando
hayan pasado 20 segundos desde que comenzaste a enviar tráfico desde los clientes. A
continuación analiza los resultados obtenidos:
Ejecuto el script.
Arranco los servidores iperf y la captura en r1 eth1.
Como ahora la latencia se incremento entonces pc1→pc3 espera mas tiempo para por token(burst)
para poder obtener mas ancho de banda, y cuando termina el flujo de pc1 todo el ancho de banda es
para pc2->pc3.
3.2. Prioridad (PRIO)
Mantén la configuración del tráfico de entrada en r1 que has realizado en el apartado anterior
en el script tc-ingress.sh. Borra la disciplina de cola de salida configurada en la interfaz eth1 de
r1.
La configuración TBF en el apartado 3.1 permite gestionar el ancho de banda de salida para
que no supere el valor configurado, en nuestro caso 1.5Mbit. Toma como punto de partida esta
configuración para que ahora se atienda el tráfico de salida según diferentes prioridades,
configurando una disciplina de cola con prioridad que sea hija de la disciplina TBF.
● Escribe un script en r1, tc-egress-prio.sh, para configurar TBF con los siguientes
parámetros: ancho de banda 1.5Mbit, cubeta 10k y latencia 20s. Crea una disciplina de
cola hija con prioridad de tal forma que se asignen las siguientes prioridades:
1. Prioridad 1 (más prioritario): tráfico de la dirección IP origen 11.0.0.10
2. •Prioridad 2 (prioridad intermedia): tráfico de la dirección IP origen 11.0.0.20
3. Prioridad 3 (menos prioritario): no lo vamos a definir.
Ejecuto el script.
● Inicia una captura de tráfico en la interfaz eth1 de r1.
● Arranca 2 servidores para recibir los dos flujos de datos tal y como se hizo en el apartado
1.2.
A como se mira en la grafica, tbf le da prioridad al flujo de pc1 a pesar que es de menor cantidad
que trasmite pc1 y le da todo el ancho de banda a pc1 luego que termina de transmitir pc2 ocupa
todo el ancho de banda ya que la latencia es de prioridad mayor.
3.3. Hierarchical token Bucket (HTB)
Mantén la configuración del tráfico de entrada en r1 que has realizado en el apartado anterior
en el script tc-ingress.sh. Borra la disciplina de cola de salida configurada en la interfaz eth1 de
r1.
● Escribe un script en r1, tc-egress-htb.sh, para configurar en su interfaz eth1 una disciplina
HTB de salida con ancho de banda 1.2 Mbit. Reparte el ancho de banda de esta interfaz
de salida de la siguiente forma:
1. 700 kbit para el tráfico con origen en pc1, ceil 700kbit.
2. 500 kbit para el tráfico con origen en pc2, ceil 500kbit.
● Arranca 2 servidores para recibir los dos flujos de datos tal y como se hizo en el apartado
1.2.
● Arranca dos clientes y 2 servidores tal y como lo hiciste en el apartado 1.2.
Arranco los clientes iperf en pc1 y pc2.
2. Carga la captura en wireshark y muestra cada uno de los flujos de forma gráfica. Explica el
ancho de banda medido para cada uno de los flujos.
En la grafica refleja lo 700 kbit para pc1→pc3 y 500kbit pc2→pc4, la configuracion htb es mas
rigida y mas confiable para asignar determinado ancho de banda y como el flujo es mayor del ancho
de banda hay cortes porque hay paquetes descartados en cola.
Modifica la configuración de ceil en cada uno de los flujos para que puedan utilizar
1.2Mbit.
Realiza la misma prueba que antes y analiza los resultados obtenidos:
Edito el archivo ceil con maxico caudal alcanzable de 1.2Mbit para los dos flujos.
Los flujos a como se ve en la grafica estan algo mas estables no tienen curvas por que el caudal
máximo se incremento pero ahora cuando se corta el flujo de pc1→pc3 el flujo de pc2→pc4 alcanza
todo el caudal máximo que es 1.2Mbit.