Para ejecutar las interfaces, se debe estar en la carpeta src del proyecto
Tener en cuenta que en toda la ejecución, ADDR y PORT deberán ser el mismo valor.
python3 start-server [ -h ] [ -v | -q ] [ -H ADDR ] [ -p PORT ] [-s DIRPATH ] [ -S ]
| Comando | Forma completa | Requerido | Descripción |
|---|---|---|---|
| -h | --help | NO | Mostrar mensaje de ayuda y salir del programa |
| -v | --verbose | NO | Incrementar la salida del logger en pantalla |
| -q | --quiet | NO | Decrementar la salida del logger en pantalla |
| -H | --host | SI | Dirección IP del servidor |
| -p | --port | SI | Puerto del servidor |
| -s | --storage | SI | Directorio en el que se almacenan los archivos |
| -S | --sack | NO | Correr en modo Selective acknowledgment |
python3 download [ -h ] [ -v | -q ] [ -H ADDR ] [ -p PORT ] [ -d FILEPATH ] [ -n FILENAME ] [ -S ]
| Comando | Forma completa | Requerido | Descripción |
|---|---|---|---|
| -h | --help | NO | Mostrar mensaje de ayuda y salir del programa |
| -v | --verbose | NO | Incrementar la salida del logger en pantalla |
| -q | --quiet | NO | Decrementar la salida del logger en pantalla |
| -H | --host | SI | Dirección IP del servidor |
| -p | --port | SI | Puerto del servidor |
| -d | --dst | SI | Destino del archivo descargado |
| -n | --name | SI | Nombre del archivo que se desea descargar |
| -S | --sack | NO | Correr en modo Selective acknowledgment |
python upload [ -h ] [ -v | -q ] [ -H ADDR ] [ -p PORT ] [ -s FILEPATH ] [ -n FILENAME ] [ -S ]
| Comando | Forma completa | Requerido | Descripción |
|---|---|---|---|
| -h | --help | NO | Mostrar mensaje de ayuda y salir del programa |
| -v | --verbose | NO | Incrementar la salida del logger en pantalla |
| -q | --quiet | NO | Decrementar la salida del logger en pantalla |
| -H | --host | SI | Dirección IP del servidor |
| -p | --port | SI | Puerto del servidor |
| -s | --src | SI | Destino del archivo que se desea subir |
| -n | --name | SI | Nombre que tendrá el archivo cargado al servidor |
| -S | --sack | NO | Correr en modo Selective acknowledgment |
Para abrir una red con mininet, con una topología basica de 2 hosts y un switch, usamos:
sudo mn --link tc,loss=10
Una vez en el cliente de mininet, podemos abrir nuestro server como:
h1 python3 src/start-server.py -H ADDR -p PORT -s FILEPATH &
donde FILEPATH va a ser el file system del servidor.
Para el cliente de subida:
h2 python3 src/upload.py -H ADDR -p PORT -s SRCPATH -n FILENAME
donde SRCPATH es la ruta del archivo a subir y FILENAME es el nombre con el cuál guardarlo en el server.
Y para probar el cliente de descarga:
h2 python3 src/download.py -H ADDR -p PORT -d DESTPATH -n FILENAME
Donde DESTPATH es la ruta donde guardar el archivo descargado, y FILENAME es el nombre del archivo a descargar.