Está en la página 1de 6

UNIVERSIDAD DE CRDOBA

FACULTAD DE INGENIERAS
PROGRAMA DE INGENIERA DE SISTEMAS Y TELECOMUNICACIONES
Asignatura: TELEMATICA
Profesor: Jose Waldo de la Ossa

Semestre: VII
Laboratorio No. 2
Temtica: Capa de Transporte Protocolo TCP

Indicaciones Generales
1. La presente actividad debe ser desarrollada y entregada en FORMATO DIGITAL
(PDF), va correo electrnico Josewaldo30@gmail.com. En grupo (2 personas).
FECHA ENTREGA 08-05-2016 HASTA LAS 11:00 PM.
2. Realice la lectura sobre la funcionalidad de Wireshark1, herramienta a utilizar en el
presente
laboratorio, la cual puede ser descargada del sitio oficial
https://www.wireshark.org/#download
3. Elabore su informe sobre las actividades planteadas. Debe generar un PDF.

Objetivos de aprendizaje
Identificar la forma en la que se establece una comunicacin a nivel de transporte
mediante el protocolo TCP.

Introduccin
En esta segunda prctica sobre la pila de protocolos TCP/IP nos vamos a ocupar de lo que
se conoce como capas de transporte y de red o Internet. En la figura 1 se puede observar la
posicin que ocupan dentro de la pila de protocolos TCP/IP.
La capa de transporte se encarga, entre otras cosas, de empaquetar la informacin en
segmentos o datagramas de tamao adecuado (limitarlo, por ejemplo, a las caractersticas
de la red fsica, que podra no soportar paquetes de tamaos superiores a), de verificar
que todos los paquetes de una comunicacin han llegado a destino (dependiendo del
protocolo que usemos), de comprobar que los paquetes no estn corruptos
Los dos protocolos principales de la capa de transporte son TCP (Transmission Control
Protocol) y UDP (User Datagram Protocol). A lo largo de la prctica veremos algunas de
sus caractersticas.
1

Herramienta multiplataforma utilizada para realizar anlisis sobre paquetes de red. La utilizacin de esta
herramienta puede parecer de gran complejidad en un principio, pero es de gran utilidad una vez conocida su
interfaz y su forma de operar.

1|Linux Avanzado 1

UNIVERSIDAD DE CRDOBA
FACULTAD DE INGENIERAS
PROGRAMA DE INGENIERA DE SISTEMAS Y TELECOMUNICACIONES
Asignatura: TELEMATICA
Profesor: Jose Waldo de la Ossa

Semestre: VII
Laboratorio No. 2
Temtica: Capa de Transporte Protocolo TCP

La capa de red o de Internet es la que nos permite interconectar diversas redes


independientes y que pueden tener distintas estructuras. Entre los protocolos que componen
esta capa podemos encontrar IPv4 IPv6 (Internet Protocol, versin 4 6) o ICMP
(Internet Control Message Protocol). Ms adelante veremos sus propiedades.
Tambin recuperaremos el protocolo DNS (Domain Name Server) y veremos la necesidad
de contar con servidores DNS en nuestro computador para poder acceder a Internet, cmo
se pueden configurar los servidores DNS y cmo funciona el protocolo.

Figura 1

Parte 1 Establecimiento de conexiones TCP


Paso 1 - Antes de empezar la prctica debe ser descargado el programa que permite
monitorizar el trfico de red (http://www.wireshark.org/). Instlalo en su computador.
Ejectalo, y dentro del men Capture, en la opcin Interfaces, elige la interfaz de red
activa (Network Connection). Ejecuta cmd y recupera y anota la IP de tu computador
por medio del comando ipconfig (de las distintas interfaces de red que aparezcan debes
seleccionar la correspondiente a Adaptador de Ethernet Conexin de rea local). Ahora
crea un filtro en Wireshark como el siguiente para conseguir aislar slo el trfico que tiene
2|Linux Avanzado 1

UNIVERSIDAD DE CRDOBA
FACULTAD DE INGENIERAS
PROGRAMA DE INGENIERA DE SISTEMAS Y TELECOMUNICACIONES
Asignatura: TELEMATICA
Profesor: Jose Waldo de la Ossa

Semestre: VII
Laboratorio No. 2
Temtica: Capa de Transporte Protocolo TCP

como origen o destino tu mquina:


ip.addr eq la_ip_de_tu_maquina
A lo largo de la prctica, a medida que Wireshark captura ms paquetes, es probable que su
comportamiento se ralentice. En ese caso puedes detenerlo (Capture -> Stop) y
reiniciarlo (Capture -> Interfaces -> Network Connection) slo al realizar los distintos
ejercicios (ten en cuenta que empezar una nueva sesin o captura cada vez que lo
arranques y se perdern los paquetes ya capturados).

Paso 2 - Abra 4 pestaas en su navegador. Trata de acceder con l a las siguientes


direcciones:
190.66.23.59
190.66.23.42
190.66.23.38
190.66.23.56
Qu pginas se han abierto? Filtra en Wireshark toda la actividad DNS que ha habido al
abrir las pginas anteriores (escribe dns en la ventana Filter:). El protocolo DNS es el
que permite, a partir de una direccin URL, resolver su IP para que las cabeceras de la capa
de red se puedan formar correctamente. Ha necesitado el computador conectarse a los
servidores DNS para resolver las anteriores direcciones? Se ha conectado antes o despus
de hacer las solicitudes HTTP?

Paso 3 - Vamos ahora a ver cmo funciona la capa de transporte. Dentro de la misma
podemos encontrar principalmente dos protocolos, TCP y UDP. Filtra en Wireshark la
comunicacin que ha tenido lugar entre tu computador y la pgina web en 190.66.23.42.
Puedes crear un filtro como:
ip.addr eq la_ip_de_tu_maquina and ip.addr eq 190.66.23.42
Observa la lista de paquetes que has recuperado. A qu protocolos pertenecen? Recupera
el mensaje de protocolo HTTP cuya info sea exactamente GET / HTTP/1.1 y brelo
3|Linux Avanzado 1

UNIVERSIDAD DE CRDOBA
FACULTAD DE INGENIERAS
PROGRAMA DE INGENIERA DE SISTEMAS Y TELECOMUNICACIONES
Asignatura: TELEMATICA
Profesor: Jose Waldo de la Ossa

Semestre: VII
Laboratorio No. 2
Temtica: Capa de Transporte Protocolo TCP

(botn derecho sobre el mismo, opcin Show Packet in New Window).


Las cabeceras del protocolo HTTP ya las observamos en la prctica anterior. Observa las
cabeceras TCP. Anota el valor de los puertos Src (puerto de tu mquina) y Dst (puerto
del servidor). La comunicacin entre mquinas siempre se hace a travs de puertos de las
mismas. Mientras dura una comunicacin, cada mquina mantiene el mismo puerto
escuchando y mandando mensajes. Algunos protocolos tienen un puerto asignado por
defecto; por ejemplo, cuando te conectes a un servidor a travs del protocolo http, lo
normal es que el servidor utilice su puerto 80 para esa comunicacin (es cierto en este
caso?). Si te conectas por ftp, por defecto el servidor utilizar el puerto 21.
Vamos a observar ahora la comunicacin que ha habido a travs del puerto de tu
computadora. En primer lugar, vamos a filtrar los paquetes de los que hemos sido origen (o
src). Utiliza el siguiente filtro de Wireshark:
tcp.srcport eq puerto_de_tu_maquina
Cul es la IP de origen de dichas comunicaciones? Y la de destino? Qu recursos web se
han solicitado por HTTP a travs de ese puerto?
Veamos ahora los paquetes de los que hemos sido destinatarios (dst). Utiliza el filtro:
tcp.dstport eq puerto_de_tu_maquina
Cul es la IP de origen de dichas comunicaciones? Y la de destino? Qu mensajes
HTTP se han enviado a travs de ese puerto?
Aparte de la informacin sobre los puertos, las cabeceras TCP contienen informacin que
nos va a permitir asegurar la correcta recepcin de los paquetes. Copia los nmeros
Sequence number y Next Sequence Number dentro de la cabecera TCP del mensaje
GET / HTTP/1.1.
Ahora crea el siguiente filtro:
tcp.ack eq next_sequence_number

4|Linux Avanzado 1

UNIVERSIDAD DE CRDOBA
FACULTAD DE INGENIERAS
PROGRAMA DE INGENIERA DE SISTEMAS Y TELECOMUNICACIONES
Asignatura: TELEMATICA
Profesor: Jose Waldo de la Ossa

Semestre: VII
Laboratorio No. 2
Temtica: Capa de Transporte Protocolo TCP

Qu mensajes contienen el nmero next_sequence_number? La respuesta del servidor


HTTP/1.1 200 OK contiene el next_sequence_number? Pulsa el botn derecho sobre el
mensaje cuya info es HTTP/1.1 200 OK, opcin Show Packet in New Window y
trata de comprobar, en la seccin de cabeceras de Reassembled TCP Segments, qu
paquetes han sido reensamblados para construir el mensaje de respuesta HTTP. Anota
sus nmeros y comprueba si aparecen tambin entre los mensajes filtrados por la regla
tcp.ack eq next_sequence_number.
Tratemos de dar una explicacin al anterior hecho. Cuando tu computador hace una
solicitud a un servidor, genera nmeros Sequence Number y Next Sequence Number.
Estos nmeros son generados de forma aleatoria. Cuando el servidor responda a tu mensaje,
siempre incluir un campo Acknowledgment number en el que enviar el nmero que
nuestro computador le envi como Next Sequence Number. As nuestro computador
consigue distinguir las respuestas a las distintas solicitudes que le haya hecho a ese
servidor.
De no existir los nmeros Sequence y Acknowledgment, nos sera imposible distinguir
las distintas comunicaciones con una misma mquina, y por tanto no podramos reconstruir
sus mensajes.
El protocolo TCP tiene an ms funciones. Veamos otra de ellas. Selecciona uno de los
mensajes de la comunicacin con 190.66.23.42 y pulsa sobre el mismo el botn derecho.
Selecciona la opcin Follow TCP Stream. Observa los tres ltimos mensajes de la
comunicacin. Si observas su info, vers que dos de ellos contienen la orden [FIN, ].
En qu orden se ha puesto fin a la comunicacin? Quin es el que manda el primer
mensaje avisando del fin de la misma?
Abre uno de los mensajes conteniendo [FIN,] y trata de ver, en sus cabeceras TCP,
dnde se ha especificado que el mismo pona fin a la comunicacin (porque ya haba
recibido todos los paquetes TCP de la misma, y haba reconstruido adecuadamente el
mensaje recibido).
Puedes observar algo parecido en los dos primeros mensajes de la comunicacin, que
contienen la etiqueta [SYN, ] en su campo info. En primer lugar un mensaje TCP
con la etiqueta [SYN] por parte de nuestro computador solicitando la conexin. A
continuacin, un mensaje [SYN,ACK] del servidor, respondiendo a la solicitud y
5|Linux Avanzado 1

UNIVERSIDAD DE CRDOBA
FACULTAD DE INGENIERAS
PROGRAMA DE INGENIERA DE SISTEMAS Y TELECOMUNICACIONES
Asignatura: TELEMATICA
Profesor: Jose Waldo de la Ossa

Semestre: VII
Laboratorio No. 2
Temtica: Capa de Transporte Protocolo TCP

solicitando Acknowlegdement a nuestro computador. En tercer lugar, el mensaje con el


flag [ACK] por parte de nuestro computador, en el que anuncia al servidor que est
esperando el inicio de la comunicacin. Esto es lo que se conoce como negociacin en tres
pasos de la conexin.
Como has podido observar, son mensajes TCP los que se encargan de establecer la
conexin [SYN] y de terminarla [FIN].
Ya para terminar con el protocolo TCP, recapitulamos alguna de las limitaciones fsicas del
protocolo. Los mensajes TCP tienen una limitacin de tamao debido a los distintos
protocolos
de
red
que
interactan.
Lee
en
http://es.wikipedia
.org/wiki/Unidad_m%C3%A1xima_de _transferencia el lmite de la unidad mxima de
transferencia para redes Ethernet. Recupera algunos de los paquetes TCP de tus
comunicaciones con 190.66.23.42 y comprueba que este lmite se cumple. Anota en tu
informe los lmites correspondientes y el tamao de los paquetes que has comprobado.

Paso 4 - Para terminar con los protocolos de la capa de transporte, vamos a introducir otra
de sus propiedades. El protocolo TCP sobre IP se define como un protocolo orientado a
conexin. Esto quiere decir que los mensajes deben ser recibidos por el destinatario en el
mismo orden en que han sido enviados (recuerda que en el protocolo TCP slo
disponamos de un nmero ACK que indicaba que un mensaje TCP era respuesta a una
solicitud determinada, pero no haba ningn indicador de cules eran los mensajes previos
o posteriores a ese; si los mensajes no llegan en el mismo orden en que han sido enviados,
la mquina receptora no podr recomponerlos).

Referencias

https://www.wireshark.org/
http://www.welivesecurity.com/la-es/2013/01/28/uso-filtros-wireshark-para-detectaractividad-maliciosa/
http://manualwireshark.blogspot.com.co/

6|Linux Avanzado 1