Skip to content

File distribution system in local networks over socket with capacity to manage over 50 transferences simultaneously

License

Notifications You must be signed in to change notification settings

Krypteria/LFDS-Local-File-Distribution-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LFDS: Local File Distribution System

LFDS es una aplicación que permite tanto recibir como enviar cualquier tipo de archivo (audio, imagen, texto, estructuras complejas de directorios...) a cualquier equipo o equipos pertenecientes a la red interna.

La aplicación tiene capacidad para manejar más de 50 transferencias en paralelo.

main

Como descargarlo y ejecutarlo

  1. Descargar la última versión del ejecutable (Local File Distribution System-x.x.exe) en la pestaña de release.
  2. Lanzar el ejecutable para instalar la aplicación.

La aplicación es instalada en la ruta C:\Program Files\Local File Distribution System y crea automáticamente un acceso directo en el menú Windows y en el escritorio.

Motivación

La idea de crear esta aplicación surge de la necesidad de enviar de forma concurrente ficheros de gran tamaño a varios equipos dentro de una red interna.

Con esta aplicación se busca ofrecer una alternativa al uso de dispositivos USB, el uso del correo electrónico, de google drive, de dropbox o incluso de recursos compartidos para transferir archivos desde un equipo a otro.

También se pretende facilitar el envío de archivos problemáticos como por ejemplo ejecutables, código ...

Funcionalidades

Las funcionalidades de la aplicación están presentadas al usuario en cuatro paneles, cada panel encapsula una funcionalidad concreta.

Esta separación está diseñada para favorecer un uso intuitivo y sencillo.

Panel de hosts

La aplicación permite almacenar contactos, cada contacto está conformado por una dirección IP y un nombre, dichos contactos se muestran al usuario en este panel y permiten efectuar una serie de acciones.

host1

Crear un nuevo contacto

host2
A través de ese botón podemos crear un nuevo contacto introduciendo un nombre y una IP válida.

Modificar información de un contacto existente

host3
Podemos modificar la información relativa a un contacto de manera fácil y así evitar tener que eliminarlo e introducirlo de nuevo en el sistema.

Eliminar un contacto de la lista

host4
Podemos eliminar un contacto de la lista de forma cómoda y rápida.

Asignar receptores

host5
Utilizando el checkbox send podemos asignar que contactos queremos que sean los receptores de una futura transferencia.
Una vez que se selecciona un contacto y se asigna como receptor, se bloquean las opciones de editar y eliminar dicho contacto hasta que hemos realizado la transferencia o hemos deseleccionado dicho contacto.

Panel de ficheros

Desde este panel podemos elegir el fichero que queramos enviar, visualizar los receptores seleccionados y lanzar la transferencia.

filemanagment

Características del manejo de ficheros

  • La aplicación es capaz de enviar estructuras complejas de directorios.
  • La aplicación es capaz de enviar cualquier tipo de archivo (audio, imagen, texto, ejecutables ...).
  • La aplicación es capaz de enviar archivos de cualquier peso, no hay limitaciones al respecto.

Panel de transferencias

Desde este panel podemos observar el estado en el que se encuentran las transferencias en proceso, cada transferencia cuenta con la siguiente información:

  • Tipo de transferencia (entrante o saliente).
  • Receptor o emisor de la transferencia (dependiendo del tipo de esta)
  • Nombre del fichero enviado en la transferencia.
  • Progreso de la transferencia en tiempo real.

transference1

Características del manejo de transferencias

  • La aplicación permite el envío concurrente de transferencias.
  • La aplicación no permite que se realizen dos envíos al mismo host de forma concurrente debido al diseño de esta, para enviar otro archivo se tendrá que esperar a que termine la primera transferencia.
  • La aplicación puede recibir hasta 50 transferencias entrantes en paralelo.

Panel del servidor

En este panel podemos visualizar información relativa al estado y el funcionamiento del servidor así como interactuar con la aplicación a través de una serie de botones.

server1

Estado del servidor

server2

Desde este panel podemos visualizar el estado del servidor:

  • Podemos visualizar si el servidor se encuentra operativo o no.
  • Podemos visualizar el puerto en el que está trabajando el servidor.
  • Podemos visualizar la tarea que está realizando (recibiendo transferencias, en espera, cerrado y rechazando transferencias).

Controles relativos al servidor

server3

Desde este panel también podemos lanzar comandos relativos al funcionamiento del servidor:

  • Podemos abrir el servidor (si este previamente está cerrado).
  • Podemos reiniciar el servidor (si este previamente está abierto).
  • Podemos cerrar el servidor (si este previamente está abierto).
  • Podemos modificar la ruta en la que queremos que se ubiquen los archivos que recibamos mediante transferencias.
  • Podemos visualizar la IP local del equipo para facilitar el intercambio de contactos entre equipos.