Examen de Arquitectura de Redes de Ordenadores
1o de Ingenierı́a de Telecomunicación
GSyC, Universidad Rey Juan Carlos
5 de septiembre de 2008
Pregunta 1 (4 puntos)
La figura 1 muestra la red TCP/IP de una organización que interconecta entre sı́ y con Internet las máquinas A, B, C, D, E y
F y los encaminadores (routers) R1, R2, R3, R4 y R5. Al lado de cada interfaz de comunicaciones aparece su dirección IP y, en
algunos casos, también su dirección Ethernet (representada por el último byte, por simplicidad). La máscara de subred en todos
los casos es [Link]. Supón que todos los datagramas IP se generan con un TTL inicial de valor 8.
Contesta razonadamente a las siguientes cuestiones:
1. Supón que, además de las entradas que aparecen en las tablas de la figura 1, existen en las siguientes máquinas las entradas
adicionales que aparecen a continuación:
Tabla de A Tabla de F
[Link] [Link] [Link] [Link]
Tabla de R2 Tabla de R3 Tabla de R4
Tabla de R5
[Link] [Link] [Link] [Link] [Link] [Link]
[Link] [Link]
[Link] [Link] [Link] [Link] [Link] [Link]
Suponiendo las cachés de ARP LLENAS, escribe LAS DOS ÚLTIMAS tramas Ethernet que se generan en la figura 1
cuando se ejecuta en la máquina A el siguiente comando1 :
ping -c 1 [Link]
En cada trama Ethernet, indica los valores de los todos los campos relevantes de las cabeceras de todos los protocolos
involucrados.
2. Partiendo únicamente de las tablas de encaminamiento de la figura 1 (y sin tener en cuenta los cambios del apartado ante-
rior), añade a dichas tablas el menor número posible de entradas para que se cumplan simultáneamente las siguientes
condiciones:
A envı́a datagramas IP a F por el camino más corto
A envı́a datagramas IP a E pasando por R5
A no puede enviar datagramas IP a D
B envı́a datagramas IP a C y E pasando por R2
B no puede enviar datagramas IP a D
B envı́a datagramas IP a cualquier otro destino de Internet pasando por R2.
1 La opción -c 1 del comando ping provoca el envı́o de un único mensaje ICMP de petición de eco y su respuesta correspondiente.
1
[Link] [Link] [Link] [Link]
Figura de la pregunta 1
A B
[Link] [Link]
[Link] [Link] [Link]
...:07 ...:06
[Link] [Link] [Link] [Link] [Link] [Link]
[Link] [Link] [Link] [Link] [Link] [Link]
R2 [Link] [Link] R3 R4
[Link] [Link] [Link]
...:04 ...:05
2
[Link] [Link] [Link] [Link]
...:01 ...:02
[Link] [Link] [Link] [Link]
[Link] C [Link] [Link] D
R1 R5 [Link] [Link]
Internet [Link]
[Link] [Link]
[Link] [Link] [Link] [Link] [Link]
[Link] [Link]
...:08 ...:03
[Link] [Link]
...:09
[Link] [Link] [Link] [Link]
E F
Solución
1. Como las cachés de ARP están llenas, ya no aparecerán tramas de ARP. La solicitud de eco que envı́a A a F, dadas las
tablas de la figura, viaja por la ruta A → R2 → R4 → R5 → F. Cuando llegue a F, F enviará una respuesta de eco a A
que viajará por la ruta: F → R5. La tabla de R5 no tiene ruta ni para A, ni para la red [Link], ni ruta por defecto, por
lo que no puede encaminar la respuesta de eco y la descartará, enviando entonces un ICMP de destino inalcanzable (red
inalcanzable) a F, que era el origen del datagrama descartado. Dicho ICMP viajará directamente de R5 a F al ser vecinos.
Por lo tanto, las 2 últimas tramas que aparecen en la figura son el ICMP de respuesta de eco viajando de F a R5, y el
ICMP de ruta inexistente viajando de R5 a F, y tendrán los siguientes campos principales:
Eth. Destino Eth. Origen Protocolo IP Origen IP Destino TTL Protocolo Tipo Código
...:03 ...:09 IP [Link] [Link] 8 ICMP 0 0
Eth. Destino Eth. Origen Protocolo IP Origen IP Destino TTL Protocolo Tipo Código
...:09 ...:03 IP [Link] [Link] 8 ICMP 3 0
2. La solución debe cumplir todas las condiciones del enunciado. Además se ha valorado más cuanto menor sea el número
de entradas que se han añadido a las tablas.
Escribir unas tablas que cumplan las condiciones del enunciado es sencillo: basta con ir añadiendo en cada máquina una
entrada de máquina para cada destino a través de uno de los router que cumpla las condiciones. Por otro lado, para la
comunicación con Internet es imprescidible usar una ruta por defecto: no hay otra forma de especificar “cualquier otro
destino de Internet”). Además hay que ir añadiendo entradas en los routers empleados en las rutas añadidas a las máquinas
de forma que permitan alcanzar los destinos no adyacentes.
Lo más complicado es hacer que B no pueda hablar con D, aunque sı́ con destinos normales de Internet a través de R2.
Esto quiere decir que B tiene que tener ruta por defecto a través de R2, y que R2 tiene que tener ruta por defecto a través
de R1. Luego tiene que ser R1 el que no tenga ruta para llegar a D. Como la ruta por defecto de R1 tiene que ser hacia la
[Link] para llegar a Internet, esa ruta hará que no pueda llegar a D, ya que en el mejor de los casos la máquina [Link]
le devolverá el tráfico hacia D a R1 formándose un bucle que terminará haciendo que se descarten los datagramas.
Ası́, una solución completa con el menor número de entradas posibles serı́a (hay otras soluciones con el mismo número
de entradas):
Tabla de A
Tabla de B
[Link] [Link]
[Link] [Link]
[Link] [Link]
Tabla de R1 Tabla de R2 Tabla de R4
[Link] [Link] [Link] [Link] [Link] [Link]
3
Pregunta 2 (3 puntos)
En la figura 2 se muestran 3 redes, cada una de las cuales está conectada a Internet mediante un encaminador o router.
Los routers NAT R1 y R2 están configurados de forma que rechazan el tráfico entrante nuevo para el que no tienen una
entrada en su tabla NAT. Al lado de los routers NAT R1 y R2 se muestra el estado actual de sus respectivas tablas NAT. El router
R3 es un router normal (que no realiza NAT).
Teniendo en cuenta el estado actual de las tablas NAT que aparecen en la figura, contesta razonadamente a las siguientes
cuestiones:
1. Indica en cuáles de los puntos X1, X2, X3, X4, X5 y X6 puede encontrarse el siguiente paquete, razonando la respuesta:
IP Origen IP Destino Protocolo Puerto Origen Puerto Destino
[Link] [Link] TCP 1520 80
2. Indica en cuáles de los puntos X1, X2, X3, X4, X5 y X6 puede encontrarse el siguiente paquete, razonando la respuesta:
IP Origen IP Destino Protocolo Puerto Origen Puerto Destino
[Link] [Link] TCP 23 23
3. Indica todos los paquetes que se generan en las redes de la figura 2 cuando la máquina C envı́a el siguiente paquete,
indicando los puntos marcados con X en la figura en los que aparecen, y los cambios que van ocurriendo en las tablas
NAT de la figura:
IP Origen IP Destino Protocolo Puerto Origen Puerto Destino
[Link] [Link] TCP 8080 80
4
Figura de la pregunta 2
A B
[Link] [Link] X1
TABLA NAT de R1 [Link]
RED PRIVADA INTERNET
ROUTER
IP interna Puerto interno IP externa Puerto externo
Prot. NAT
[Link]
R1
[Link] 80 [Link] 80 TCP X2
[Link] 23 [Link] 23 UDP
Internet
TABLA NAT de R2
RED PRIVADA INTERNET
Prot.
IP interna Puerto interno IP externa Puerto externo
[Link] 80 [Link] 1020 TCP
[Link] 80 [Link] 80 TCP X3 X4
[Link] 23 [Link] 23 TCP
ROUTER
[Link]
ROUTER [Link] NORMAL
NAT R3
R2 [Link] [Link]
X5 X6
[Link] [Link]
C D
5
Solución
1. El paquete tiene como dirección IP origen la [Link] y dirección IP destino la [Link]. Esta dirección de destino es una
dirección privada, por lo que el paquete no puede aparecer ni en X2 ni en X3 ni en X4 ni en X6.
En las tablas NAT de R1 y de R2 aparece una entrada para paquetes del protocolo TCP con puerto interno 80. Dado que
el 80 TCP es el puerto destino del paquete en cuestión, podrı́a tratarse de un paquete que atravesó R1, llegando a X1 con
la dirección IP destino [Link], o de un paquete que atravesó R2, llegando a X5 con esa misma dirección de destino.
Por lo tanto, este paquete sólo puede haber aparecido en los puntos X1 o X5.
2. El paquete tiene como dirección IP origen la [Link] y dirección destino la [Link]. Esta dirección de destino es una
dirección privada, por lo que el paquete no puede aparecer ni en X2 ni en X3 ni en X4 ni en X6.
En la tabla NAT de R1 aparece una entrada para paquetes del protocolo UDP con puerto interno 23, pero el paquete en
cuestión va destinado al puerto 23 TCP. Por ello este paquete no puede aparecer en X1, pues no hay una entrada en la
tabla NAT de R1 para el protocolo TCP que tenga como Puerto interno el 23.
En la tabla NAT de R2 sı́ aparece una entrada para paquetes del protocolo TCP con puerto interno 23. Dado que el 23
TCP es el puerto destino del paquete en cuestión, podrı́a tratarse de un paquete que atravesó R2, llegando a X5 con la
dirección IP destino [Link].
Por lo tanto, este paquete sólo puede haber aparecido en el punto X5.
3. El paquete en cuestión tiene su origen en la máquina C, teniendo su dirección IP, la [Link], como dirección origen. La
dirección destino es la [Link]. El paquete pasa por X5, tratándose para R2 de tráfico saliente. Al atravesar el router R2
se añade a la tabla NAT de R2 la siguiente entrada:
IP interna Puerto interno IP externa Puerto externo Prot.
[Link] 8080 [Link] 8080 TCP
El router R2 cambia la dirección IP origen. El puerto 8080 TCP no aparece en la columna de puerto interno de la tabla
NAT de R2, por lo que no se cambia el puerto origen del paquete. Cuando sale de R2 el paquete tiene estos campos:
IP Origen IP Destino Protocolo Puerto origen Puerto Destino
[Link] [Link] TCP 8080 80
Este paquete pasa por X3 y por X2.
Cuando llega a R1, dado que aparece una entrada en la tabla NAT de R1 con puerto externo TCP 80 y dirección IP interna
[Link], el paquete atraviesa R1, pero cambiándosele su dirección IP destino por la [Link], que es la que aparece en
la columna IP interna de la entrada antes mencionada. El puerto destino no se cambia, pues en la entrada mencionada el
puerto interno es igual al puerto externo.
Tras salir de R1, el siguiente paquete es por tanto el que pasa por X1 y llega finalmente a la máquina A:
IP Origen IP Destino Protocolo Puerto origen Puerto Destino
[Link] [Link] TCP 8080 80
6
Pregunta 3 (2 puntos)
En la figura 3 se muestra una conexión TCP entre dos procesos A y B. Supongamos las siguientes condiciones:
Las lı́neas horizontales de la figura representan tics de reloj, y tanto A como B sólo transmiten segmentos coincidiendo
con el tic de reloj.
A y B envı́an segmentos con datos siempre que pueden.
A y B envı́an segmentos con asentimientos siempre que reciben un segmento con datos, o con el flag SYN o con el flag
FIN.
Todos los segmentos que no se pierdan tardarán medio tic de reloj en llegar a su destino.
A tiene que enviar 400 bytes de datos a B a partir del tic número 4.
B tiene que enviar 300 bytes de datos a A a partir del tic número 5.
A anuncia siempre un mismo valor de ventana a B.
B anuncia siempre un mismo valor de ventana a A.
A partir del tic número 4 no se sabe si los segmentos enviados por A y B se han perdido o han llegado a su destino,
exceptuando el segmento B8 enviando en el tic número 15 que se sabe que no se ha perdido.
Contesta razonadamente a las siguientes cuestiones:
1. Indica cuál es el plazo de retransmisión para cada uno de los sentidos de la comunicación.
2. Indica cuál es el valor de ventana anunciado por A y cuál es el valor de ventana anunciado por B.
3. Indica cuáles son los segmentos Ai y Bi que necesariamente deben haberse perdido en dicha conexión.
4. Indica cuáles son los segmentos Ai y Bi que pueden haberse perdido o no en dicha conexión y el resultado de la figura
serı́a el mismo.
7
Figura de la pregunta 3
8
Solución
1. 3 tics de reloj para ambos sentidos de la comunicación. En el sentido de A a B viene dado por la separación entre A3 y
A4 (tics 4 y 7) y entre A5 y A7 (tics 9 y 12). En el sentido de B a A viene dado por la separación entre B2 y B4 (tics 5 y
8) y entre B3 y B5 (tics 6 y 9).
2. La ventana anunciada por A es 200 bytes ya que B sólo envı́a 200 bytes de datos y después espera recibir asentimiento,
se observa en los segmentos B2 y B3 y en los segmentos B4 y B5 . La ventana anunciada por B es 200 bytes ya que A
sólo envı́a 200 bytes de datos y después espera recibir asentimiento, se observa en cada uno de los segmentos de datos
que envı́a A, segmentos A3 , A4 . A5 y A7 .
3. Necesariamente se han perdido B2 , B3 y A5 .
Se ha perdido el segmento B2 porque si hubiera llegado, A tendrı́a que enviar asentimiento en el tic 6.
Se ha perdido el segmento B3 porque si hubiera llegado, A tendrı́a que enviar número de asentimiento 5201 en el segmento
A5 (asentimiento del segmento 5001 enviado en B4 y asentimiento del segmento 5101 enviado en B3 ).
Se ha perdido el segmento A5 porque si hubiera llegado, B tendrı́a que enviar asentimiento en el tic 10.
4. Puede haberse perdido el segmento A4 y el diagrama de segmentos TCP serı́a el mismo. Ese segmento no afecta al
diagrama ya que los datos de ese segmento ya se habı́an recibido previamente con el segmento A3 y el envı́o de B4 no se
debe a la recepción de A4 sino al vencimiento del plazo de retransmisión de B2 .