Tutorial de protocolos udp,tcp,sctp

20
Página 1 TUTORIAL DE PROTOCOLOS UDP, TCP Y SCTP JAVIER ACOSTA ALFARO COD: 89062553244 ALVARO JOSE OZUNA MARTINEZ COD: PRESENTADO A: SERGIO PEÑALOZA UNIVERSIDAD DE PAMPLONA FACULTAD DE INGENIIEREIAS Y ARQUITECTURAS INGENIERIA DE SISTEMAS PAMPLONA –N/SANTANDER 2012

Transcript of Tutorial de protocolos udp,tcp,sctp

Page 1: Tutorial de protocolos udp,tcp,sctp

Página 1

TUTORIAL DE PROTOCOLOS UDP, TCP Y SCTP

JAVIER ACOSTA ALFARO COD: 89062553244

ALVARO JOSE OZUNA MARTINEZ

COD:

PRESENTADO A: SERGIO PEÑALOZA

UNIVERSIDAD DE PAMPLONA FACULTAD DE INGENIIEREIAS Y ARQUITECTURAS

INGENIERIA DE SISTEMAS PAMPLONA –N/SANTANDER

2012

Page 2: Tutorial de protocolos udp,tcp,sctp

Página 2

INDICE

1. Introducción ………………………………………...…………………….……..3 2. Objetivo General……………………………………………….………….……..3 3. Objetivos Específicos…………………………………………………….……..3 4. Herramientas …………………………………………………………………….4 5. Marco teórico…………………………………………………………….….…...4 6. Emisión de video por medio del protocolo UDP………… ……………..…6 7. Transferencia de archivos por medio del protocol o TCP….……….…..12 8. Ejecución del socket por medio del protocolo SC TP……..………........17

Page 3: Tutorial de protocolos udp,tcp,sctp

Página 3

INTRODUCCION En el siguiente tutorial estaremos dando a conocer los protocolos udp, tcp y sctp los implementaremos en sistemas operativos Linux instalados cada uno en maquinas virtuales con el fin de conectar dos pc´s y enviar los batos a través de cada uno de estos protocolos por medio de una conexión Cliente-Servidor, donde cada uno de los protocolos usara herramientas distintas. OBJETIVO GENERAL Demostrar en cada uno de los procesos de transferencia de de los datos están manejando el protocolo correcto. OBJETIVOS ESPECIFICOS

Saber cómo usar el protocolo UDP a través de una emisión de video utilizando el software VLC Media Player.

Utilizar el programa Filezilla con el fin de demostrar y aprender a transferir archivos por medio del protocolo TCP

Aprender a ejecutar un socket desarrollado en c++, el cual usara el protocolo SCTP.

A cada uno de los procesos anteriores se le hará una captura de trafico por medio de la herramienta Wireshark con el fin de demostrar que están viajando los datos y que usan el protocolo correcto.

Page 4: Tutorial de protocolos udp,tcp,sctp

Página 4

HERRAMIENTAS

Maquina virtual VMWARE WORKSTATION 7.1 con sistemas operativos Linix Mint 12

Software VLC Media Player. Software Filezilla. Socket desarrollado en c++. 1 cable cruzado.

MARCO TEORICO

UDP (User Datagram Protocol, protocolo de datagrama de usuario): Proporciona una comunicación muy sencilla entre las aplicaciones de dos ordenadores. Al igual que el protocolo IP, UDP es:

No orientado a conexión. No se establece una conexión previa con el otro extremo para transmitir un mensaje UDP. Los mensajes se envían sin más y éstos pueden duplicarse o llegar desordenad os al destino.

No fiable: Los mensajes UDP se pueden perder o llegar dañados.

UDP utiliza el protocolo IP para transportar su s mensajes. Como vemos, no añade ninguna mejora en la calidad de la transferencia aunque sí incorpora los puertos origen y destino en su formato de mensaje. Las aplicaciones (y no el protocolo UDP) deberán programarse teniendo en cuenta que la información puede no llegar de forma correcta.

TCP (Transmission Control Protocol, Protocolo de Co ntrol de Transmisión): Sirve para crear conexiones entre ellos a través de las cuales puede enviarse un flujo de datos. El protocolo garantiza que los datos serán entregados en su destino sin errores y en el mismo orden en que se transmitieron. También proporciona un mecanismo para distinguir distintas aplicaciones dentro de una misma máquina, a través del concepto de puerto a diferencia del UDP es:

Orientado a conexión: Es necesario establecer una conexión previa entre las dos máquinas antes de poder transmitir ningún dato. A través de esta conexión los datos llegarán siempre a la aplicación destino de forma ordenada y sin duplicados. Finalmente, es necesario cerrar la conexión.

Fiable: La información que envía el emisor llega de forma correcta al destino.

SCTP (Stream Control Transmission Protocol, Control de flujo de Protocolo de Transmisión): es una alternativa a los protocolos de transporte TCP y UDP pues provee confiabilidad, control de flujo y secuenciación como TCP. Sin embargo, SCTP opcionalmente permite el envío de mensajes fuera de orden y a diferencia de TCP, SCTP es un protocolo orientado al mensaje (similar al envío de datagramas UDP) posee unas ventajas tales como:

Page 5: Tutorial de protocolos udp,tcp,sctp

Página 5

Capacidad de Multihoming, en la cual uno (o dos) de los extremos de una asociación (conexión) pueden tener más de una dirección IP. Esto permite reaccionar en forma transparente ante fallos en la red.

Es capaz de seleccionar y monitorizar caminos, seleccionando un camino "primario" y verificando constantemente la conectividad de cada uno de los caminos alternativos.

VLC MEDIA PLAYER: VLC es un libre y de código abierto multiplataforma reproductor multimedia y marco de trabajo que reproduce archivos de la mayoría de los multimedia, así como DVD, CD Audio, VCD y varios protocolos streaming.

VMWARE WORKSTATION: Es un sistema de virtualización por software. Un sistema virtual por software es un programa que simula un sistema físico (un computador, un hardware) con unas características de hardware determinadas. Cuando se ejecuta el programa (simulador), proporciona un ambiente de ejecución similar a todos los efectos a un computador físico (excepto en el puro acceso físico al hardware simulado), con CPU (puede ser más de una), BIOS, tarjeta gráfica, memoria RAM, tarjeta de red, sistema de sonido, conexión USB, disco duro (pueden ser más de uno). WIRESHARK: Es un analizador de protocolos utilizado para realizar análisis y solucionar problemas en redes de comunicaciones, para desarrollo de software y protocolos, y como una herramienta didáctica para educación. Cuenta con todas las características estándar de un analizador de protocolos.

Page 6: Tutorial de protocolos udp,tcp,sctp

Página 6

EMISIÓN DE VIDEO POR MEDIO DEL PROTOCOLO UDP

Bueno en primera instancia las IP tanto al equipo que servirá de cliente como al servidor, luego nos ubicamos en el PC que será el servidor y empezamos a configurar de la manera siguiente:

Como estamos en este tutorial trabajando con Linux Mint 12, nos dirigimos a aplicaciones->sonidos y videos-> Reproductor multimedia VLC

Ok. Luego que nos aparezca el VLC no vamos a la siguiente dirección: Medio>>Emitir

Page 7: Tutorial de protocolos udp,tcp,sctp

Página 7

Luego de esto se nos abrirá una ventana donde, pulsaremos añadir, nos pedirá que seleccionemos un video de nuestra biblioteca o donde los tengamos guardados…seleccionado ya el video nos vamos a la inferior de la ventana y vamos al desplegable que se encuentra al lado de reproducir y damos en emitir

En la siguiente ventana daremos solo en siguiente

Page 8: Tutorial de protocolos udp,tcp,sctp

Página 8

en esta parte damos en el desplegable de archivo para seleccionar el protocolo:

el desplegable que es este, y a continuación seleccionamos el protocolo udp y seguidamente damos en añadir:

Page 9: Tutorial de protocolos udp,tcp,sctp

Página 9

En este siguiente paso colocaremos la IP del que recibirá la emisión es decir el cliente, y seguidamente damos en siguiente:

Y por ultimo solo resta seleccionar la casilla que muestra la siguiente imagen y damos en emitir…y esta sería la configuración del servidor:

Page 10: Tutorial de protocolos udp,tcp,sctp

Página 10

Como segunda parte pasaremos a la configuración de cliente: Nos dirigimos nuevamente a aplicaciones>>sonidos y videos>> Reproductor multimedia VLC y luego Medio>>Volcado de Red y en la siguiente ventana nos vamos a la pestaña Red y colocamos lo siguiente:

detallamos que es la misma IP que utilizamos en la configuración del servidor, que es la IP del cliente. Reproducimos y listo.

Page 11: Tutorial de protocolos udp,tcp,sctp

Página 11

En la siguiente ventana vemos la captura de trafico y que se esta siendo mediante el protocolo UDP:

Page 12: Tutorial de protocolos udp,tcp,sctp

Página 12

TRANSFERENCIA DE ARCHIVOS POR MEDIO DEL PROTOCOLO T CP

A continuación describiremos como transferir archivos mediante el servidor Filezilla usando el protocolo TCP:

En primera instancia configuraremos el servidor de la manera siguiente: lo primero que debemos de hacer es instalar el paquete vsftpd, por la consola:

Una vez instalado creamos en la carpeta documentos del servidor una carpeta ftp y dentro un documento llamado guía:

Page 13: Tutorial de protocolos udp,tcp,sctp

Página 13

Luego nos vamos a la terminal para darle permisos a la carpeta mediante la línea de comando # chmod 777 –R /home/lmint/documentos/ftp.

Seguiedo esto nos conectamos como servidor ftp de la siguiente manera:

Page 14: Tutorial de protocolos udp,tcp,sctp

Página 14

Listamos con la orden ls y vemos los archivos que podemos compartir y vemos que carpeta documentos tiene todos los permisos:

Para el servidor esto seria todo en cliente tenemos instalamos el Filezilla cliente que trae el Linux Mint lo abrimos y llenamos las casillas , la IP ,el nombre de usuario, y contraseña del servidor y clickeamos en conexión rápida:

Page 15: Tutorial de protocolos udp,tcp,sctp

Página 15

Luego nos ubicamos en la parte del servidor en la carpeta Documento seleccionamos la carpeta interna ftp y la arrastramos hacia la parte del cliente para la transferencia:

Page 16: Tutorial de protocolos udp,tcp,sctp

Página 16

Para demostrar todo esto capturamos el trafico mediante el Wireshark y vemos que efectivamente esta usando el protocolo TCP:

Page 17: Tutorial de protocolos udp,tcp,sctp

Página 17

EJECUCIÓN DEL SOCKET POR MEDIO DEL PROTOCOLO SCTP

a continuación ejecutaremos un socket realizado en el lenguaje c++ el usa el protocolo sctp, en primera instancia para poder un protocolo de estos en Linux debemos instalar la siguientes librerías por medio del synaptic:

Echo este paso lo que nos queda ejecutar el archivo .cpp nos ubicamos en la dirección donde se encuentre para nuestro caso lo tenemos en el Escritorio y empezamos ejecutando el servidor de la siguiente manera:

Page 18: Tutorial de protocolos udp,tcp,sctp

Página 18

De la misma manera hacemos con el cliente:

La conexión se comprueba ya que en el servidor nos debe aparecer asi

Page 19: Tutorial de protocolos udp,tcp,sctp

Página 19

Enviamos un mensaje desde el cliente :

Y nos aparece en el servidor :

Antes de que todo esto se dé, para poder conectar el cliente al servidor en esta línea de código en el archivo cliente.cpp le entregamos la dirección IP del servidor y definimos el mismo puerto del servidor como lo muestra la figura:

Page 20: Tutorial de protocolos udp,tcp,sctp

Página 20

Como en todos los pasos anteriores en acá también capturamos el trafico mediante el Wireshark para confirmar que si se utilizo el protocolo SCTP: