Pauta Tarea 2 Redes de Computadores I 1-2011

Anuncio
Pauta Tarea 2 Redes de Computadores I 1-2011
6) Servicios como Google y YouTube poseen varios servidores para atender los servicios de un
mismo sitio (www.google.cl y www.youtube.com respectivamente). (30 pts.)
a) Explique de forma simple cómo usar un servidor DNS para balancear carga entre
varias máquinas que ofrecen un mismo servicio. (20 pts.)
Básicamente lo que se hace en el servidor DNS es configurarlo de manera que las
distintas máquinas (IP) que ofrecerán el mismo servicio apunten al mismo dominio (o
mismo alias, ‘CNAME’), en este caso Google o YouTube. Para ello en el servidor DNS se
deben modificar una serie de archivos, pero solo se mostrará uno de los cuales tiene
relevancia para esta pregunta (en el archivo de nombres directos, es donde se coloca el
alias de la máquina, de la forma ‘.1 IN CNAME youtube.com’), que es donde se especifica
que máquina responderá cuando se necesita acceder al dominio (WWW). El archivo de
extensión ‘.zone’ es en el cual se añaden las máquinas que pertenecerán a la zona o grupo
y a cuáles nombres de dominio responderán:
www
www
www
IN
IN
IN
A
A
A
192.168.10.1
192.168.10.2
192.168.10.3
Luego para elegir a cuál servidor asignarle la petición, se usan algoritmos como
Round Robin (RR) y Network Load Balancing (NLB). RR en sí no es un balanceador, ya que
lo que hace es rotar los resultados que va ofreciendo a las consultas, por lo que no es
equitativo. Se podría llamar un repartidor más que balanceador, por lo demás uno de los
problemas que tiene es que si una de las IP a las que se apunta deja de funcionar, por un
tiempo las peticiones no podrán ser eliminadas ni rechazadas, por lo que se perderán. En
cuanto a NLB, si es un balanceador, ya que dentro de los servidores que componen el
grupo, bajo un algoritmo ellos se comunican y deciden cuál debe ser la máquina que haga
la petición. En este caso si una máquina deja de funcionar, inmediatamente es sacada del
grupo, por lo que al momento de ejecutarse el algoritmo de balanceo, el resto de los
servidores no la tomará en cuenta.
Nota: No era necesario responder tan detalladamente, y no es la única solución.
b) Muestre el resultado del siguiente comando al ser ejecutado en Aragorn:
$ host www.youtube.com (10 pts.)
rpinof@aragorn:~$ host www.youtube.com
www.youtube.com is an alias for youtube-ui.l.google.com.
youtube-ui.l.google.com has address 209.85.195.136
youtube-ui.l.google.com has address 209.85.195.190
youtube-ui.l.google.com has address 209.85.195.91
youtube-ui.l.google.com has address 209.85.195.93
Como se puede observar, www.youtube.com es un alias para youtube-ui.l.google.com.
Existen otras máquinas las que pueden haber respondido a la solicitud del host, mostrando
distintas IP’s.
11) Revise la Máquina de Estados Finita del transmisor para GBN (lámina 27 de Transp_3.4). Siga
este diagrama y analice la operación de Go-Back-N en el escenario de la lámina 29 de
Transp_3.4. Comente si encuentra alguna diferencia y qué cambio haría en la lámina 29 para que
haya correspondencia, en ella indique claramente los instantes en que el timer es reiniciado. (40
pts.)
Como se puede observar en la máquina de estados de la lámina 27, el timer se reinicia bajo tres
condiciones:
1. Si luego de enviar un paquete el número de base es igual al siguiente número de
secuencia, ya que esto implica que los paquetes anteriores han sido recibidos
correctamente (ACK’s llegaron sin problemas).
2. Si el timer llega a timeout, luego de reiniciar el timer se hace la re-transmisión de los
paquetes que no hayan recibido ACK, a partir del más antiguo (Base).
3. Si es que se recibe un ACK correctamente y aún quedan paquetes esperando por su ACK,
el timer es reiniciado.
Por lo tanto, el diagrama de la lámina 29, debiese modificarse en base a los tres puntos
expuestos anteriormente, y según ellos, el evento de timeout debiese hacer referencia al
último evento que reinició el timer, en este caso es el recibo del ACK del segundo paquete
(ACK1). Quedando de la siguiente forma:
Nota: Dependiendo de cómo hayan explicado las diferencias encontradas, pueden existir otros
escenarios.
16) Revise el applet para Go-Back-N del sitio del texto guía. ¿Qué diferencia nota usted entre el
comportamiento del applet y el modo de funcionamiento de Go-Back-N descrito en el texto?
La gran diferencia es que en el applet se utiliza un timer por cada paquete enviado, en
cambio el de los apuntes, solo utiliza un timer global. También se puede apreciar que cuando
ocurre el evento de timeout se reinician todos los timers y luego se re-transmiten los paquetes
que no han recibido su ACK a partir del timer del paquete que inicio el timeout.
En el siguiente esquema se aprecia cómo trabaja el applet, timer de cada paquete, el
timeout junto a la re-transmisión de paquetes, los ACK duplicados y como desecha los paquetes
que ha recibido el receptor sin haber llegado el paquete anterior:
(S) - Packet 0 sent
(S) - Timer started for Packet 0
(S) - Packet 1 sent
(S) - Timer started for Packet 1
(S) - Packet 2 sent
(S) - Timer started for Packet 2
-Packet 2 selected.
-Packet 2 lost
(S) - Packet 3 sent
(S) - Timer started for Packet 3
(S) - Packet 4 sent
(S) - Timer started for Packet 4
(R) - Packet 0 received. Cumulative Ack for Packets up to and including 0 sent. Packet 0 delivered to
application
(R) - Packet 1 received. Cumulative Ack for Packets up to and including 1 sent. Packet 1 delivered to
application
(R) - Packet 3 received out of order. Dropping Packet 3. Cumulative Ack for Packets up to and including 1
sent
(R) - Packet 4 received out of order. Dropping Packet 4. Cumulative Ack for Packets up to and including 1
sent
(S) - Cumulative Ack received for Packet(s) up to and including 0
(S) - Timer(s) for Packet(s) up to and including 0 stopped
(S) -Timer still running for Packet 1.
(S) - Cumulative Ack received for Packet(s) up to and including 1
(S) - Timer(s) for Packet(s) up to and including 1 stopped
(S) -Timer still running for Packet 2.
(S) - Cumulative Ack for Packet(s) up to and including 1 received again (DUPACK)
(S) - Cumulative Ack for Packet(s) up to and including 1 received again (DUPACK)
(S) - Packet 5 sent
(S) - Timer started for Packet 5
(S) - Packet 6 sent
(S) - Timer started for Packet 6
(R) - Packet 5 received out of order. Dropping Packet 5. Cumulative Ack for Packets up to and including 1
sent
(R) - Packet 6 received out of order. Dropping Packet 6. Cumulative Ack for Packets up to and including 1
sent
(S) - Cumulative Ack for Packet(s) up to and including 1 received again (DUPACK)
(S) - Cumulative Ack for Packet(s) up to and including 1 received again (DUPACK)
(S) - Timeout occurred for Packet 2.
(S) - All outstanding Packet(s) from 2 to 6 are retransmitted. Timer(s) restarted for Packet(s)
(R) - Packet 2 received. Cumulative Ack for Packets up to and including 2 sent. Packet 2 delivered to
application
(R) - Packet 3 received. Cumulative Ack for Packets up to and including 3 sent. Packet 3 delivered to
application
(R) - Packet 4 received. Cumulative Ack for Packets up to and including 4 sent. Packet 4 delivered to
application
(R) - Packet 5 received. Cumulative Ack for Packets up to and including 5 sent. Packet 5 delivered to
application
(R) - Packet 6 received. Cumulative Ack for Packets up to and including 6 sent. Packet 6 delivered to
application
(S) - Cumulative Ack received for Packet(s) up to and including 2
(S) - Timer(s) for Packet(s) up to and including 2 stopped
(S) - Cumulative Ack received for Packet(s) up to and including 3
(S) - Timer(s) for Packet(s) up to and including 3 stopped
(S) - Cumulative Ack received for Packet(s) up to and including 4
(S) - Timer(s) for Packet(s) up to and including 4 stopped
(S) - Cumulative Ack received for Packet(s) up to and including 5
(S) - Timer(s) for Packet(s) up to and including 5 stopped
(S) - Cumulative Ack received for Packet(s) up to and including 6
(S) - Timer(s) for Packet(s) up to and including 6 stopped
Descargar