-   Programming (
-   -   Bandwidth load sharing & HTT Protocol (

sadarax 10-02-2007 04:14 PM

Bandwidth load sharing & HTT Protocol
I am looking for something to help share the outgoing bandwidth of a server. The server is serving pictures to a lot of users, and the owner is having trouble paying for the bandwidth.

If there is a system like this already, please tell me. Otherwise, I am going to try to program it.

The system is to share the uploads (file serving) of the server, and the end user never knows the difference.

Basically, this is the model. There is the main server, and volunteers offer their own servers and bandwidth as nodes with mirrors of the main server.

How it works: A 3rd party user asks the server for a file. The server tells the nodes to fulfill the request. The user never knows the difference.

There are a few things I want to know:
  1. I want the user's browser to browse the website(s) like normal and it does not even know the server is having the nodes fulfill the requests. Can this be done with HTTP?
  2. If number 1 is possible, can someone give me information about where to begin programming with HTTP? I would like to write this is C++. I will probably need to know some Apache stuff too (oh boy, that's going to be work).

cygnus-x1 10-02-2007 09:35 PM

I am no expert in this area but doesn't bit torrent function in a similar way?

sadarax 10-02-2007 10:15 PM


Originally Posted by cygnus-x1 (Post 2911173)
I am no expert in this area but doesn't bit torrent function in a similar way?

Yes it does. The idea of sharing the load with multiple volunteer users is basically the same. This is a difference though. Torrent are static and their content does not dynamically update. Also, torrents get uploads from the peers, not just the seeds. Plus, this system would be designed for Webservers, not torrent files.

This system would have dynamically updating content (populated to the nodes by the central server), and the users (the peers) would not be uploading, only downloading.

carl.waldbieser 10-05-2007 12:35 AM

Isn't that kind of like a reverse proxy?

All times are GMT -5. The time now is 02:29 PM.