Very sorry if this is in the wrong section. Couldn't decide between networking and servers, if it is the wrong place - admin, please move...
Now, what I'm proposing here, i'm not sure if its ever been done, or if it could be done, but I thought it was a cool idea, and would be quite helpful for people like me... Anyhow, on to explaining my idea:
For 9 months of the year, I live at college. College upload is capped at 10kbs. 10kbs is not enough for me. I enjoy hosting my FTP, Website, and being able to host a game server, but on 10kbs, theres no way. My idea works on the idea behind clustering. One computer triggers others to do something. The school network isn't set up that intricately, we get 2 ethernet jacks in each room. If I use a switch inside, I can get 16 lines (each with a 10kbs upload). You most likely see where I'm going by this point. Say I have 10 basic computers in my room, 192.168.1.1-11... All of my requests come in to 192.168.1.1. Is it possible to have the computer that gets the request to tell the other 9 comps to start uploading (each on their own line) to the person who sent the request? (each uploading a different part of the file). This obviously involves the HTTP or FTP protocols, and dealing with where the files are being sent from.
There would be two options I can think of for storing Files...
1: Each comp has a mirror HD. They are all in sync using something like rsync. They each read from their own HD..
2: One common HD, they all read from the same place (on one of the 10 comps, internal LAN is quicker than it needs to be going out, so they grab a copy of the file and stream it out)....
Hopefully i've made the basic idea of my idea clear. Is it possible? Has it been done? Is there a better way?
Anxiously awaiting a response,
Well, if you look in the networking option on the 2.6 kernel, there's a whole lot of this kind of virtual server and load balancing. I haven't checked it out to clearly, but it seems to match what you want to do.
However, I hope you're aware that each individual upload will still be capped at 10 kBps, and there's nothing you can do about that.
Right, i know each individually will be capped at the 10k, nothing I can do about that.... Jerks...
But if i could somehow get 10 comps each uploading on a 10k line, thats quite a bit faster =P
grrr, and I just thought i had a great idea...
There isn't much documentation on this, let me know if you know anything about it..
I thought I was retarded, and could just throw say 5 NIC cards in one comp, each of them having its own MAC address, each would pull its own IP... I would then bond them...
But isn't that exactly what Bonding does? Spoofs each of their MAC addresses to be the same? Would they each pull a new IP?
Bonding is only used between two computers. For example, if you have two servers (say a web server and the back-end database server), and it is absolutely mission critical that these don't lose the connection between each other, you can put two NICs in each, connect these pairwise with a crossover cable and bond them, so that if both NICs are working, you get double the speed, and if one breaks, you have redundancy in the other.
That's what bonding usually does.
Of course, you can't bond them like this, because I'm guessing that the uni network caps per IP address. Since you'd need them all to have the same IP address in order to be able to communicate to other computers, it would still be capped at 10 kBps, only you'd have a lot of redundancy. ;-)