lunes, 12 de mayo de 2008

Práctica 3.- Protocolos de nivel de Transporte en TCP/IP. Cuestión 2.-

Cuestión 2.

Rexec. Remote Shell es un servicio presente en un S.O. UNIX con TCP/IP que atiende el puerto
TCP 512 en espera de peticiones de ejecución de comandos desde procesos remotos clientes. Utiliza TCP, por lo que trabaja con conexión. Para las prácticas se dispondrá de un programa para MS Windows (rexec.exe) que actúa como cliente. En una sesión de rexec.exe se pide inicialmente un nombre de usuario y password en la máquina servidora, y tras introducir estos, se pueden ejecutar comandos UNIX en dicha máquina. Nos servirá para estudiar una conexión TCP. Dentro de una máquina UNIX, el cliente es un programa de línea de comandos con esta sintaxis básica:

rsh "IP_SERVIDOR""COMANDO_A_EJECUTAR" .

Empleamos el programa rexec para ejecutar el comando ‘ls –l’ en la maquina con dirección 172.20.43.232 (Linux2). Utilizamos para ello el usuario ‘alumnos’ y la clave ‘alumnos’. Con el monitor de red, analizamos y estudiamos la secuencia de paquetes TCP intercambiados en el establecimiento de la conexión entre la máquina del alumno y la 172.20.43.232. Utilizamos para ello el filtro adecuado (direcciones y protocolos).


Figura 2.a.1.- Ejecución del programa Rexec con comando "ls -l" a la máquina 172.20.43.232.


Figura 2.a.2.- Captura mediante el monitor de red de conexión y desconexión TCP.

- Comprueba las secuencias de conexión-desconexión TCP. ¿Son similares a las que se detallan en la figura 6? (Puede que observes que el cliente contesta a una solicitud de SYN del servidor con un RST. Esto ocurre porque el servidor trata de autentificar al cliente, algo que no permite el PC).

Se solicita el establecimiento de conexión a la máquina 172.20.43.232, nos devuelve la petición aceptada mediante el ACK y nuestra máquina acepta el establecimiento de conexión, se establece la sincronización (es decir, la sesión), posteriormente se produce la autentificación de usuario y contraseña, se envían dos veces las palabras username: alumnos, el servidor confirma que ha recibido los datos y finaliza la conexión (Servidor-Cliente), enviando nuestra máquina un [FIN, ACK] y devolviendonos el servidor un ACK para confirmarnos la finalización de la conexión con un ACK. Se observa que se envían muchos paquetes redundantes debido a utilizar un protocolo tan seguro como es TCP.

- Comprueba el valor de los puertos utilizados. Indica su valor.

TRANSMISSION CONTROL PROTOCOL
Puerto Origen: 2831
Puerto Destino: 512

- Analizar los valores de la ventana de receptor. ¿Cuál es más grande?
Window size: 65535 (Origen) 172.20.43.205
Window size: 5840 (Destino) 172.20.43.232


No hay comentarios: