Earlier quoted context omitted.
MIT open courseware has a course on Performance Engineering which details some of the types of low level optimizations that can be done. It requires a lot of measuring and problem specific solutions.
I’ve helped with that course in the past. It’s awesome. It’s completely unrelated to WAN networking. I found the IETF groups working on these problems more helpful.
A Desperate Plea for a Free Software Alternative to Aspera (2018)
31–40 of 172 posts
Re: A Desperate Plea for a Free Software Alternative to Aspera (2018)
#32Re: A Desperate Plea for a Free Software Alternative to Aspera (2018)
#33This looks interesting as well as it's developed at CERN and uses plain tcp protocol https://github.com/fast-data-transfer/fdt
Re: A Desperate Plea for a Free Software Alternative to Aspera (2018)
#34A proprietary protocol that somehow facilities throughout orders of magnitude than non proprietary alternatives. I call BS.
Basically it chunks up data and pushes it out as quickly as possible with UDP then retransmits whatever is needed. It works great in enterprise networks where you have high packet latency due to shitty firewalls and inspection appliances.
I haven’t used it in awhile, but I think they also have a proxy like service that lets you do managed file transfer directly from your datacenter network instead. It’s possible that I was using a complimentary product to do that.
Re: A Desperate Plea for a Free Software Alternative to Aspera (2018)
#35A proprietary protocol that somehow facilities throughout orders of magnitude than non proprietary alternatives. I call BS.
Its only faster over large high latency links. Instead of using a single TCP stream to push data (with that exponential roll off) it has a TCP session to do accounting, and a bunch of UDP ports to stream the data.
for links around 16ms latency, its not that much faster.
For a 10 gig link with a latency of 100ms, it runs pretty much at wire speed. (assuming you have a machine that can handle it.)
Re: A Desperate Plea for a Free Software Alternative to Aspera (2018)
#36Aspera was faster on a single stream, but if you have a lot of files to move around (you usually do) you can just multiplex a bunch of tcp streams to get the same throughput.
So like in the example on their page, if you have 20 wget's hitting their ftp and there are no other bottlenecks, the throughput will be similar to using Aspera - and you have just a greater variety of free tooling for tcp based those protocols...
Re: A Desperate Plea for a Free Software Alternative to Aspera (2018)
#371. Measure the existing performance on specific data sets.
2. Understand how many of the bottlenecks come from the network latency vs. I/O limits vs. CPU bottlenecks (if using compression).
3. See if any domain-specific compression is needed.
4. Document the typical use cases. Understand why the current solution sucks (e.g. requires redundant user actions). Write down user interaction scenarios. Design the UI to be as efficient as possible for those scenarios.
This is a non-trivial amount of work that would require a lot of back-and-forth interaction and on-the-go requirement changes and I don't think it's entirely honest to ask someone to do this work for free in the name of cancer research (after all, you are not donating most of your paycheck to charities, are you?). If the existing solution by IBM sucks, how about making a Request For Proposal [0] and seeing if smaller software vendors could offer something better given that you are actually willing to pay for the work?
P.S. A student/hobbyist can probably whip out some sort of a parallel TCP-like thing with a large window for free, but you would get the same performance by just cranking up the TCP window size via sysctl and using multiple HTTP threads (htcat was suggested earlier in the comments).
Re: A Desperate Plea for a Free Software Alternative to Aspera (2018)
#38I worked in VFX, so I've been using aspera since before it was owned by IBM.
Depending on what line speed you have, but for a gig link we made a simple protocol using parallel TCP streams.
Basically, it chunked up the large file into configurable sized chunks, and assigned a chunk to each stream.
Another stream passed the metadata.
This has all the advantage of TCP, with less of the drawbacks of a custom UDP protocol.
For transferring files from london to SF we were getting 800mbit/s over a 1 gig link.
Re: A Desperate Plea for a Free Software Alternative to Aspera (2018)
#39Why not use torrents over wireguard? From an engineering perspective I'd personally be hard pressed to come up with a more optimal solution for private big data transfer. If Aspera is as good as the parent suggests it's probably because they are operating a bittorrent-like network of geo-distributed peers. It would be very cheap to emulate that using cloud computing providers, especially if you are discarding the dat…
The special sauce is measuring the packet loss quickly enough to make sure your not over saturating the link
Apart from that, its a fairly simple protocol.
Re: A Desperate Plea for a Free Software Alternative to Aspera (2018)
#40My group is about to start using Aspera as well.. I too wish there was a good alternative I could suggest to my bosses. And I'm still skeptical of their claims... but I haven't gotten to test it over an actual bad link yet (over a good link it does nothing, which a simple test will prove).
Or anything with a >0.1% packet loss.