Show HN: MASV – Send 20GB+ files up to 1 Gbps. Pay-as-you-go and custom branding
masv.io
masv.io
This is an issue I have with one of my employees. They only get consumer Comcast, and the connection is crap. I ended up writing a bash script that will chunk and scp the files to a central server, and if it fails a chunk, it leaves it in the directory for her to manually re-run.
That said, I pay $20/mo for the file server (which i would no matter what) and it has 3TB of outbound bandwidth and unlimited inbound, and is less than 5% of your cost.
Use Syncthing, it traverses NATs, it is trivial to set up, it is seemingly very secure by its nature, and crucially for you, it transfers in blocks. You can administer it through a web interface with credentials (or with none, if it's just listening on loopback).
I think there is a very legitimate need for centralized administration, I have all of my Syncthing node configurations synchronized over Syncthing itself (which is a bit of a risk, but not overly so), but I would consider paying for something (if I could have similar confidence and flexibility with the client software) more integrated, with some safeguards against accidentally disabling configuration sync (which would require me to directly configure the node) to a specific node, and some integrated ability to have nodes self-report and self-allocate.
Running bit torrent let's peers share the data you upload and get the same net effect as this. But, that's not as far as I know a browser plugin.
PS: I don't think it's a big deal, but executed well it might be a valuable niche.
That said, their 1Gbit connection will probably average around the same speed if they have more than a few users uploading 50GB files during normal business hours.
rsync basically chunks the files and sends the missing (or differing) chunks over scp, leaves the files in the destination directory if something fails, it is more or less an automated tool that already does what the GP is talking about.
But requires someone to be comfortable using a CLI.
This is for sending large assets from party A to party B, where either the parties do not have access to a shared rsync-capable server, or they do not know how to use rsync. On a deadline, you can't afford to become a CLI trainer or require special software.
A common use case would involve service bureaus and creators. Trust me when I say that there are a hell of a lot of creators out there who would never be able to manage rsync. You want to make stuff like this drop-dead simple for people. That means a service that works in-browser.
> bash script that will chunk and scp the files to a central server, and if it fails a chunk, it leaves it in the directory for her to manually re-run
not responding to the linked post itself.
It's very efficient. I've never seen it fail to consume all of the available upstream bandwidth from the client. If this is of interest, I can go dig up the library I used.
It's intuitive, built on top of AWS and you can take advantage of all of the other AWS features -- i.e. send an email notification when a file is received, supports versioning, fine grained access control. as much storage space as your budget will allow etc.
CloudBerry drive has a one time cost of $40.
It should be a lot easier sell to an IT department an AWS + Cloudberry solution than an unknown company's solution.
I get files from customers in Fortune 100 companies and many of their IT departments absolutely prohibit the installation of something like Cloudberry. It was explained to me that getting IT to approve the installation of a particular application was a multi-month endeavor.
docs.aws.amazon.com/AmazonS3/latest/dev/ShareObjectPreSignedURL.html
You could also create a lambda function that is triggered any time a file is copied with a certain key prefix (like a directory but not really), that copies to the other account. Of course you both have to set up permissions.
https://serverfault.com/questions/349460/how-to-move-files-b...
Never underestimate the bandwidth of a station wagon full of tapes hurtling down the highway. - Andrew S. Tanenbaum
s/station wagon/"40 foot trailer";s/tapes/disks
I guess MASV is transparent about file sizes (no limit) and bandwidth is the resource you pay for, so there is transparency on the SLA.
Especially since there are plenty of post-production companies that host their own 'customer portal' where files can be uploaded/downloaded, which probably has plenty of security issues and so on. This can then be replaced by a branded Masv page, I guess?
Data transmission units (data units) from the source network are received at an encoding component logically located between the endpoints. These first data units are subdivided into second data units and are transmitted to the destination network over the transport network. Also transmitted are encoded or extra second data units that allow the original first data units to be recreated even if some of the second data units are lost. These encoded second data units may be merely copies of the second data units transmitted, parity second data units, or second data units which have been encoded using erasure correcting coding. At the receiving endpoint, the second data units are received and are used to recreate the original first data units.
Got brain damage. What, ffs, does it mean? Help :)
This way they can reduce the number of hops (and potential bottlenecks) between their server and destination, maximizing bandwidth.
that's pretty expensive
For many applications, you can host servers elsewhere while using AWS for S3, DynamoDB, etc.
1. https://paulgrevink.wordpress.com/2017/09/08/about-long-fat-...
I assume that it's using WebRTC data channels to upload the file. WebRTC includes STUN / TURN to bypass firewalls so it makes it a great fit.
My guess is that the performance comes from chunking the data and sending it through multiple data channels. The other performance is to bring the receiving client close to the sender to reduce ACK latencies. I don't think that WebRTC allows to develop custom UDP protocols.
Are their better ways, of course, but this is simple to wrap your head around and can be accomplished by anyone with even the most basic technical understanding.
Both Dropbox and Aspera do UDP + compression + retry so very curious to see how you are able to get such a drastic improvement -- are you using a special form of compression?
Not a good start.
The service looks fairly good, but the speeds are not impressive. It looks Azure is used (and you can test your speed on it here http://www.azurespeed.com/Azure/UploadLargeFile)