https://github.com/pgaref/cloudbox
a network synchronisation tool for storing files in a distributed way!
https://github.com/pgaref/cloudbox
Last synced: 5 days ago
JSON representation
a network synchronisation tool for storing files in a distributed way!
- Host: GitHub
- URL: https://github.com/pgaref/cloudbox
- Owner: pgaref
- License: mit
- Created: 2014-01-10T18:00:24.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2014-12-15T01:33:57.000Z (over 11 years ago)
- Last Synced: 2025-02-25T16:23:46.333Z (over 1 year ago)
- Language: C
- Homepage:
- Size: 1.27 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
cloudbox
========
A Cloud tool for storing files in a distributed way!

Each Cloudbox client is able to recognize changes in a directory of files that monitors and notify all other clients running on the same subnet, sending a broadcast message using UDP. Each client receiving a broadcast message, checks the state of its directory and if an update is needed it connects to the appropriate client using TCP, to start the file transfer.
For the clients communication we currently support these general types of messages:
| 2 First Bytes | Type |
|-------------- | ---- |
0x01 | Status Message
0x02 | Client directory with no changes
0x03 | File Added
0x04 | File Modified
0x05 | File Deleted
0x06 | Client Requesting File
0x07 | Client Offering a File
0x08 | Empty Directory
0xFFFF | No Action - For debugging!
TODO.. Add more Implementation details.
Currently supporting: Multiple threads, locking files using flock(), client statistics (number of broadcast messages sent, KiloBytes transfered, average tranfer speed)