Examen Final de Redes - ETSIA

Transcripción

Examen Final de Redes - ETSIA
Examen Final de Redes - ETSIA - 1 de Junio de 2007
Apellidos, Nombre:
_
Grupo de matrícula:
1. (0,5 puntos) Completa la siguiente tabla con la pila de protocolos TCP/IP (arquitectura de Internet)
indicando la función de cada nivel de la pila, los protocolos que pertenecen a cada nivel, la función de los
protocolos y la unidad de transferencia de datos empleada en cada nivel.
Nivel
Aplicación
Función del nivel
Proporcionar servicios a
los usuarios
Protocolos del Función de cada protocolo del
nivel
nivel
Unidad de
transferencia
FTP: Transferencia archivos
FTP,
HTTP,
SMTP, POP3, TELNET: Terminal virtual
Mensaje
TELNET,
SMTP,POP3: Correo electrónico
SSH, etc
HTTP: Web
SSH: Terminal virtual seguro
Transporte
Red
Enlace
de
datos
TCP,
Multiplexación de datos
entre aplicaciones (puertos) UDP
Verificación de datos
extremo a extremo
Interconexión y
encaminamiento entre
redes
ICMP
IP: Direccionamiento,
interconexión de redes y
encaminamiento.
ICMP: Permite el envío de
mensajes de control entre
hosts/routers
Datagrama IP
Mensaje ICMP
Conexión directa [fiable]
punto a punto:
Control errores
Control flujo
MAC
Delimitación de tramas
Físico
IP
TCP:
TCP: Protocolo orientado a la
Segmento
conexión, fiable
UDP:
UDP: Protocolo sin conexión
Datagrama
UDP
Se encarga de todas las
características físicas de la
comunicación como por
ejemplo el tipo de
transmisión, características
de los medios de
transmisión , modulación y
codificación de la señal.
IEEE
802.3 Definen tamaño y formato de
(Ethernet)
trama, así como el protocolo de Trama
acceso al medio.
IEEE 802.11
(Wi-Fi)
Bytes/Bits
2. (2 puntos) Calcula, en unidades de RTT, el tiempo necesario para descargarse una página web que
contiene 2 imágenes. El protocolo empleado es HTTP 1.1 con pipelining, el MSS de las conexiones es de
1000 bytes, el tamaño de la respuesta HTTP que contiene el fichero html que describe la página web es de
2000 bytes, y que el tamaño de las respuestas HTTP que contienen las imágenes es de 6000 bytes cada
una. Además, el tamaño de las peticiones HTTP es de 200 bytes. Las ventanas de recepción a usar son de
5000 bytes. La velocidad de transmisión es muy elevada comparada con el RTT existente entre el cliente
y el servidor, por lo que asumimos que el tiempo de transmisión de los segmentos, así como el tiempo de
procesamiento en el cliente y en el servidor son despreciables. Finalmente, se va a hacer uso de ACKs
retardados y de las técnicas de control de la congestión (arranque lento y evitación de la congestión).
Además, es obligatorio que muestres gráficamente el intercambio de segmentos entre cliente y
servidor.
El tiempo necesario, en unidades de RTT es 5. El
primer RTT se debe al establecimiento de la
conexión.
SYN
AC K , S
AC K , G
YN
En el segundo RTT se pide la pagina html y se
devuelve (ocupa 2000 bytes, y como la ventana
de congestión es 1000, se puede devolver todo el
objeto de golpe).
ET H T M
L
Vcong = 2 En
HT M L
A CK
G ET IM
G 1 , GE
T IM G 2
1
IM G
A CK
IM G 2
IM G 2
IM G 2
IM G 2
En el cuarto RTT, con los ACKs que recibe el
servidor, su ventana de congestion llega a 5, con
Vcong = 3
lo que devuelve el resto de la imagen 1 y el
principio de la imagen 2.
En el quinto RTT se recibe el resto de la segunda
AC K
IM G 1
IM G 1
IM G 1
IM G 2
IM G 2
AC K
el tercer RTT se devuelve el ACK
correspondiente al mismo tiempo que se piden las
imagenes (HTTP1.1 con pipelining) y el servidor
devuelve parte de la imagen 1.
Vcong = 4 imagen.
Vcong = 5
AC K
3. (1 punto) Implementa en Java un rastreador de puertos TCP que indique por pantalla los puertos abiertos.
Sólo hay que comprobar los puertos bien conocidos.
import java.net.*;
import java.io.*;
public class LowPortScanner {
public static void main(String[] args) {
String host = "localhost";
for (int puerto = 1; puerto < 1024; puerto ++) {
try {
Socket s = new Socket (host, puerto);
s.close();
System.out.println(“El puerto “ + puerto + “está abierto”);
}
catch (UnknownHostException e) {
System.out.println(“Problemas con el nombre del host”);
}
catch (IOException e) {
}
} // end for
} // end main
} // end PortScanner
4. (0,5 puntos) ¿En qué consiste el piggybacking? Indica cómo se implementa en TCP dicha técnica.
Consiste en añadir un campo ACK (de reconocimiento) a los datos transmitidos, intentando minimizar el
número de mensajes de ACK de los datos recibidos. Dicho de otra forma, permite que los mensajes de ACK
viajen en los segmentos de datos del sentido contrario.
En TCP esta técnica se implementa incluyendo en la cabecera del segmento un campo de reconocimiento
que está siempre presente, y un flag de ACK que indica si dicho campo es válido o no. De esta forma, en los
segmentos de datos se puede incluir en el campo reconocimiento el valor adecuado, y activar el flag de
ACK.
5. (0,5 puntos) Respecto a los sockets:
a) ¿Puede un cliente abrir dos sockets sobre el mismo puerto local (del mismo protocolo)? Justifica la
respuesta.
No. La apertura del segundo socket produciría un error, ya que de permitirse la existencia de este segundo
socket haría que TCP no supiera a cuál entregar un segmento si se emplean ambos para acceder al mismo
servidor.
b) ¿Pueden existir en un servidor dos sockets con el mismo puerto y protocolo? Justifica la respuesta, y
muestra, si es posible, un ejemplo.
Si, únicamente en los servidores TCP, ya que en este caso los sockets se diferencian por la conexión, de la
cual forma parte la dirección del socket remoto (del cliente), ya que son sockets conectados.
Ejemplo: Se crean sockets con el mismo puerto en un servidor concurrente cada vez que se ejecuta la
llamada a accept .
6. (0,5 puntos) Utilizando la aplicación sock, indica las instrucciones para crear:
a) Un socket servidor TCP en el puerto 12345.
sock -l :12345
b) Un socket cliente TCP del servicio ofrecido en el puerto 12345.
sock :12345
c) Un socket servidor UDP en el puerto 12345.
sock -ul :12345
d) Un socket cliente UDP del servicio ofrecido en el puerto 12345.
sock -u :12345
7. (0,75 puntos)
a) Si no hay disponible un servidor DHCP, indica qué parámetros de configuración tiene que introducir el
administrador de un ordenador para que éste pueda trabajar en una red con la pila de protocolos
TCP/IP.
Dirección IP del ordenador, máscara de red, dirección IP del router y dirección IP del servidor DNS.
b) Enumera las órdenes necesarias para comprobar que la configuración de red del ordenador es la
correcta, suponiendo que está empleando el sistema operativo Linux. Indica para qué sirve cada una
de esas órdenes.
/sbin/ifconfig: muestra la dirección IP, la máscara de red y la dirección física
/etc/resolv.conf: muestra los servidores DNS
route [-n] o netstat -r: muestran la tabla de encaminamiento
8. (1 punto) La tabla de encaminamiento del router R es la siguiente:
Kernel IP routing table
Destination
Gateway
192.168.1.0
0.0.0.0
172.16.236.0
192.168.1.3
158.42.180.0
0.0.0.0
139.254.0.0
0.0.0.0
127.0.0.0
0.0.0.0
0.0.0.0
158.42.181.250
Genmask
255.255.255.0
255.255.255.0
255.255.254.0
255.255.0.0
255.0.0.0
0.0.0.0
Flags
U
UG
U
U
U
UG
MSS
0
0
0
0
0
0
Window
0
0
0
0
0
0
irtt
0
0
0
0
0
0
Iface
eth1
eth1
eth0
eth2
lo
eth0
a) Dibuja la topología de las redes más próximas a R (todas las que puedan obtenerse a partir de la tabla
mostrada), indicando para cada una de ellas su dirección de red, máscara y direcciones conocidas de
los routers.
R
158.42.180.0/23
192.168.1.0/24
192.168.1.3
R1
139.254.0.0/16
158.42.181.250
R2
Internet
172.16.236.0/24
b) El router R tiene que enviar varios datagramas a diferentes destinos IP. Indica la entrada de la tabla de
encaminamiento que se utilizaría para encaminar cada uno de estos datagramas. Asimismo indica la
dirección IP del ordenador (host o router) que recibe la trama generada por R.
IP destino
Entrada seleccionada (campo Destination)
del datagrama
158.42.196.11
IP del
receptor de la TRAMA
Entrada seleccionada: 0.0.0.0
158.42.181.250 (R2)
Justificación: después de hacer el AND bit a bit de la IP
destino con la máscara de red (campo Genmask) es la
única entrada del campo Destination que se ajusta al
resultado obtenido ((158.42.196.11 AND 0.0.0.0) =
0.0.0.0. (La entrada 158.42.180.0 no es válida porqué
158.42.196.11 AND 255.255.254.0 = 158.42.196.0 que no
cuadra con la entrada indicada)
172.16.236.45
172.16.236.0
192.168.1.3 (R1)
158.42.181.12
158.42.180.0
158.42.181.12
127.0.0.1
127.0.0.0
No se genera trama. El
datagrama es local al host.
9. (0,5 puntos) Hemos dividido la red 202.202.202.0/24 en varias subredes del mismo tamaño y hemos
obtenido 240 direcciones asignables en total (entre todas las subredes). Calcula el número de subredes
que hemos establecido, su dirección de red y su máscara.
Con una máscara /24 tenemos 256 direcciones disponibles (8 bits para identificar hosts), como de esas sólo
podemos asignar 240, significa que las restantes 16 son 8 para direcciones de red y 8 para direcciones de
difusión dirigida. Por lo tanto, tenemos 8 subredes y necesitamos 3 bits más para identificarlas. La nueva
máscara será /27 (24+3) y las direcciones de red de las subredes: 202.202.202.0, 202.202.202.32 (001X
XXXX), 202.202.202.64 (010X XXXX), 202.202.202.96 (011X XXXX), 202.202.202.128,
202.202.202.160, 202.202.202.192 y 202.202.202.224.
10.(0,25 puntos) A partir del circuito de la figura, obtén el polinomio generador que se está utilizando para
calcular y verificar el CRC.
G(x) = x5 + x4 + x2 + 1
11. (0,5 puntos) En la red de la figura, el router E que estaba
apagado, se acaba de conectar. Todos los demás routers han
alcanzado el estado estable y tienen sus tablas de
encaminamiento construidas. Muestra los vectores de
distancias que recibirá E. Describe cómo, a partir de la
información recibida, construye la tabla de distancias y la
tabla de encaminamiento :
2
C
Vectores de distancia:
Tabla de distancias:
DE() B D
1
A
2
1
B
1
E
1
D
Tabla de encaminamiento:
B
D
Destino
Puerto
A 1
A 2
A
2 3
A
B
B 0
B 3 →
B
1 4
→ B
B
C 2
C 1
C
3 2
C
D
D 3
D 0
D
4 1
D
D
E 1
E 1
E
-- --
E
--
12. (1 punto) Se desea transmitir periódicamente el carácter “10101010” empleando codificación
manchester, por un canal con un ancho de banda igual a 4000 Hz. Sabiendo que T = 0,8 s. Calcula:
a) El número de armónicos que pasarán por el canal. Justifica los cálculos.
Al tratarse de una señal periódica, sus componentes frecuenciales tienen frecuencias múltiplo de la
frecuencia fundamental, por lo tanto:
n*f = B
siendo n, el número de armónicos, f, la frecuencia fundamental y B, el ancho de banda del canal.
n = B/f = B*T = 4000*0,8= 3.200
b) La velocidad de transmisión. Justifica los cálculos.
Como la señal es periódica con período 2 bits: vtrans = 2*f = 2/T= 2/0,8 = 2,5 bps
(El número de bits transmitidos en 1s (vtrans) es el doble que del número de veces que se repite la señal
durante ese segundo (f))
1
0
T
1
0
13. (1 punto) En la transmisión de un datagrama IP desde A hasta D, la caché de A contiene los datos
necesarios para las tramas generadas. Las cachés del resto de sistemas están vacías. C y D están asociados
al punto de acceso. Indica para las tramas que llegan a la tarjeta de red de C:
SW ether
PAcceso
IEEE 802.11
IEEE 802.3
R
C
B
D
...
A
a) Direcciones físicas en la cabecera de la trama, especificando el papel que desempeñan (fuente,
destino, emisor o receptor).
2.
Trama
Dirección 1
Dirección 2
(Receptor)
(Emisor)
Dirección 3
1ª
FF: ...:FF (difusión)
PA (MAC en la red (802.11)
R1 (MAC de R en la conexión con el
PA), fuente
2ª
PA
D
R1, destino
3ª
D
PA
R1, fuente
b) Función de la trama y tipo de información en su campo de datos.
1ª trama: petición ARP de R para averiguar la dirección física de D, el campo de datos corresponde al
protocolo ARP, contendrá las direcciones IP de R y de D, así como la dirección MAC de R.
2ª trama: respuesta ARP de D a R, el campo de datos corresponde al protocolo ARP contendrá las mismas
direcciones que la trama 1ª y, además, la dirección MAC de D.
3ª trama: contiene el datagrama enviado por A. El tipo de información en el campo de datos corresponde al
protocolo IP .
c) Si la tarjeta de red (de C) procesa o descarta la trama y el nivel máximo en la arquitectura de red
que analiza la información recibida.
Sólo procesa la primera trama, por ser de difusión. Las otras dos las descarta porque la dirección del
receptor no corresponde con la suya.
En los tres casos el nivel máximo de la arquitectura que analiza la información recibida es el nivel de enlace
de datos.

Documentos relacionados