martes, 27 de abril de 2010

Ejercicio de comunicacion TCP/IP



Sea la siguiente comunicación telnet:
javier@200.0.0.1:~$ telnet 100.0.0.1 2222
Trying 100.0.0.1...
Connected to 100.0.0.1.
Escape character is ’^]’.
Bienvenido.
salir
Adios.
Connection closed by foreign host.
javier@200.0.0.1:~$

Contesta a las siguientes preguntas:
1.¿Cuál es la IP del cliente? ¿y, el puerto que emplea?.
La IP del cliente es 200.0.0.1 El puerto no lo especifica el enunciado.

2.¿Cuál es la Ip del servidor? ¿y, el puerto que emplea?.
La IP del servidor es 100.0.0.1 El puerto es el 2222

3.Analiza a "nivel de aplicación", en seis pasos, como se desarrolla la comunicación.
1)El cliente se conecta al servidor.
2)El servidor envía el mensaje "Bienvenido".
3)En cliente envía el comando "salir".
4)El servidor responde con el mensaje "adios".
5)El servidor cierra la conexión.
6)El cliente cierra la conexión.

4.A "nivel de transporte" la comunicación puede verse plasmada en el siguiente figura:
1)El cliente envia un SYN al servidor, con numero de secuencia x_o
2)El servidor responde con paquete SYN, con numero de secuencia y_o y con un ACK con valor x_(0)+1 (=x_1)
3.) El cliente envia un paquete de ACK del SYN que acaba de recibir, con valor y_o+1(Y_1)

A partir de este momento la conexion se encuentra establecida y puede comenzar el intercambio de datos entre las aplicaciones.

4)El servidor envia un paquete PSH conteniendo la cadena "Bienvenido.\n" (12 bytes), con numero de secuencia y_1.

5.El cliente envia ACK, con un nuemero de secuencia y_1+12 (=y_2)

6.El cliente envia un paquete PSH contenido la cadena "Salir\r\n" (7 bytes), con numero de secuencia x_1

7) El servidor envia un ACk, con número de secuencia x_1+7 (=x_2)

8) El sevidor envía un paquete PSH conteniendo la cadena "Adios.\n" (7 Bytes), con numero de secuencia y_2

9)El cliente envia un ACK, con numero de secuencia Y_2+7 (=x_2)

En este memento. el cliente de telnet decide cerrar la aplicacion.

10)El servidor envía un paquete FIN, con numero de secuencia y_3

11)El cliente envía un paquete FIN, con numero de secuencia x_2, y un ACK, con numero de secuencia y_3+1

12) El servidor envia un ACK, con nmero de secuencia x_2+1
Describe, en doce pasos, la comunicación a "nivel de transporte".


5.Si suponemos que tenemos la siguiente topología:
A "nivel de red" indica:
a.El ruteo, en este caso concreto.
Un paquete que partiera del host de javier, de IP 200.0.0.1 para salir de la red en la que se encuentra, debería de pasar por el encaminador de su red, de IP 200.0.021. Posteriormente, seria encaminado por diferentes routers simbolizados por la nube de internet. Finalmente, accede al encaminador de IP 100.0.0.35 que lo dirige directamente al servidor telnet, IP 100.0.0.1.
b.¿Cuál es el TTL que, generalmente, tiene un paquete que se produce en uno de los extremos de la comunicación telnet?. 64


c.¿Cómo varía el TTL durante ruteo?.
Por cada encaminador que pasa TTL disminuye en una unidad

d.¿Qué medida se lleva ha efecto para evitar que un paquete quede indefinidamente "dando vueltas" por la red?.
El encaminador que recibe un paquete de TTL 0 tiene como misión enviar un paquete ICMP al emisor del paquete que no ha lelgado a su destino.

e.La causa que provoca la fragmentación de paquetes.
La MTU (Unidad Maxima de Transferencia) de la red.

f.Los elementos fragmentadores y reensambladores.
Los encaminadores, routers, gateway, etc.

6.A "nivel de enlace", explica los frames necesarios, unicamente en la primera red ethernet, para mandar un

paquete IP correspondiente a la comunicación telnet.

Caso no planteado: Supongamos que el host 200.0.0.1 quiere enviar un paquete IP al host 200.0.0.33.

Como ambos están en la misma red local (los primeros 24 bits de sus direcciones coinciden), lo único que debe hacer es averiguarcuál es la dirección Ethernet de este último. Para ello, se utiliza el protocolo ARP ("Address ResolutionProtocol").

1º) El host 200.0.0.1 envía un paquete (en terminología de Ethernet se denomina "frame") a la dirección ff:ff:ff:ff:ff:ff (las direcciones Ethernet se denotan con seis bytes en hexadecimal separados por dos puntos), que es la dirección de broadcast (que llega a todos los hosts de la red) preguntando quién tiene la dirección IP 200.0.0.33. Dicha solicitud ARP tiene como origen ladirección Ethernet del emisor (supongamos, 00:22:33:44:55:66).

2º) El poseedor de esa dirección IP le responderá con otro frame con su dirección Ethernet como origen(supongamos, 00:11:22:33:44:55). De ahora en adelante, cada vez que el host 200.0.0.1 quiera enviar unpaquete IP al host 200.0.0.33, enviará un frame Ethernet proveniente de la dirección 00:11:22:33:44:55a la dirección 00:22:33:44:55:66, conteniendo el paquete original. (La información sobre las direccionesARP se almacenan en cada host en una tabla que tiene una duración de algunos minutos.)

Caso planteado: el host donde se ejecuta la aplicación cliente (200.0.0.1) debe enviar paquetes IP al host en donde se ejecuta el servidor (100.0.0.1).


1º) Para ello, usando el protocolo ARP averigua la dirección Ethernet del gateway (cuya dirección IP,recordemos, es 200.0.0.21), que supondremos es 00:12:23:34:45:56. Una vez hecho esto, envía un frameEthernet (con origen 00:11:22:33:44:55 y destino 00:12:23:34:45:56), conteniendo el paquete IP cuyoorigen es 200.0.0.1 y con destino a 100.0.0.1.


2º) El gateway recibirá el frame (puesto que la dirección Ethernet de destino es la suya) y dentro de élencontrará un paquete IP dirigido a 100.0.0.1. Decrementará el campo TTL y, en base a las reglasdefinidas en su "tabla de enrutamiento" (o "tabla de ruteo"), lo reenviará hacia el gateway correspondiente.



7.La siguiente figura ilustra una simplificación del camino que sigue la información a traves de los distintos niveles. Describe lo qué apota cada uno de los distintos estadios.

  1. Nivel de aplicación: La aplicación (en este caso, el programa cliente), escribe la cadena "salir\n".
  2. Nivel de transporte: En la capa TCP forma un paquete agregando el número de secuencia (20),puerto de origen (4781) y puerto de destino (2222).
  3. Nivel de red: En la capa IP se forma un paquete (datagrama) añadiendo la dirección IP origen(200.0.0.1), destino (100.0.0.1), el TTL (64) y un valor que identifica el protocolo del paqueteencapsulado (0x06, valor hexadecimal que representa al protocolo TCP).
  4. Nivel de enlace: En la capa Ethernet se forma un nuevo paquete (frame) agregando las direccionesEthernet de origen (00:30:b8:80:dd:11) y destino (00:01:02:ed:41:61, la dirección del gateway,cuya IP es 200.0.0.21). Se añade además el identificador del tipo de protocolo del paquete contenido(el valor 0x800 corresponde al protocolo IP).
  5. Nivel físico: El frame formado es enviado a través del medio físico que vincula los hosts de la redlocal (típicamente, cable de par trenzado).

No hay comentarios:

Publicar un comentario