Win XP’s
[quote]How good is the hardware and software?
[/quote]
Not sure what you mean. Bullet Proof FTP was the client… I’m not sure what the server was.
[quote]Also, just how much less than 100ms is your ping time ? And what bandwidths are you getting a 50% increase on?
[/quote]
70ms to 100ms. The bandwidth for our tests was actually fairly low 2.4Mbps I think. I’m told this stuff really shines at 10Mb and above.
[quote]I only ask because IME TCP has been very good to me in very low packet-loss very high bandwidth situations, although 100 ms sounds very high (I would expect to get significantly less than that trans-atlantic, IIRC?). At the same time, bad implementations of TCP have been excrutiatingly painful;
[/quote]
But 100ms isn’t that unusual within North America. (My ping from home to java-gaming.org is 68ms, I’m using a 1.5Mbps broadband connection.)
As for TCP implementation I must live with what the OS gives me in that regard. I’m not about to replace the TCP stack in my OS.
The fact is that TCP is an excellent general purpose solution to implement a reliable communication channel with guaranteed in-order delivery. It is not necessarily the best solution for any particular information transfer on over IP.
I’m not suggesting at all that it is worth re-implementing a reliable protocol on top of UDP. However, in the case of reliable bulk transfers I’ve seen that TCP is clearly inferior to a FEC-based UDP method with typical internet connections.
It’s all about choosing a solution that better fits the specific problem you are trying to solve.
OnionNetworks, who I mentioned way earlier in this thread have a free Java implementation of some FEC stuff here http://onionnetworks.com/developers/index.php that could perhaps be used to experiment with these concepts. I don’t have any experience with their FEC implementation so I’m not sure if it can handle anything like what I was testing. I think it is based on “Tornado Codes”.
My company licensed similar technology but based on a newer algorithm (“Raptor Codes”) that uses less CPU power and has very little overhead required in order for the receiver to decode the data, it also had already made a name for itself in the industry we are targeting, so it was good from a marketing point as well.
I recommend reading chapter 20 of TCP/IP Illustrated Volume 1. (ISBN 0-201-63346-9). It’s an older reference, 1994, but I don’t know that typical TCP implementations in the wild have changed much since then. I have only skimmed it thus far… but it looks to be invaluable.