implementing a Intelligent File Transfer Software in java over TCP/IP
- by whyjava
Hello
I am working on a proposal where we have to implement a software which can move files between one source to destination.The overall goal of this project is to create intelligent file transfer.This software will have three components :-
1) Broker : Broker is the module that communicates with other brokers, monitors files, moves files, retrieves configurations from the Configuration Manager, supplies process information for the monitor, archives files, writes all process data to log files and escalates issues if necessary
2) Configuration Manager :Configuration Manager is a web-based application used to configure and deploy the configuration to all brokers.
3) Monitor : Monitor is a web-based application used to monitor each Broker in the environment.
This project has to be built up in java and protocol for file transfer in tcp/ip. Client does not want to use FTP.
File Transfer seems very easy, until there are several processes who are waiting to pick the file up automatically. Several problems arise:
How can we guarantee the file is received at the destination?
If a file isn’t received the first time, we should try it again (even after a restart or power breakdown) ?
How does the receiver knows the file that is received is complete?
How can we transfer multiple files synchronously?
How can we protect the bandwidth, so file transfer isn’t blocking other processes?
How does one interoperate between multiple OS platforms?
What about authentication?
How can we monitor het workflow?
Auditing / logging
Archiving
Can you please provide answer to some of these?
Thanks