Popular file hosting protocols are such few: NFS, SMB, SFTP, FTPS, WebDAV.
Classify the file hosting services in 2 dimension:
- Serving range
- Data's legal ownership
In the dimension of serving range, they are categorized into
- LAN service
- Internet service
In the dimension of data ownership, they are categorized into
- Public service
- Private service
Private service means the users own the server's address.
|
Private service |
Public service |
| LAN service |
Synology NAS; AWS EFS; |
|
| Internet service |
AWS S3; Alibaba OSS; |
OneDrive; iCloud; |
Which protocol should be used depends on which category of the file hosting service you are providing.
Public Internet service
- SMB and NFS don't support unlimited transferring buffer or unlimited slide window, so they have a bad performance on high latency network, e.g. the Internet.
- FTPS doesn't support range reading. It can specify the beginning byte of a read operation, but cannot specify the ending byte. So when you are watching a stream video over FTPS, the player has to buffer the entire file, which may exceeds the memory.
- SFTP is built over SSH rather than TLS, so a client cannot authenticate the server automatically by the OS's built-in CAs. As a service provider, you cannot guarantee your users connect to your genuine server rather than a hacker's server.
So, the only choice has to be WebDAV.
Private Internet service
- SMB and NFS don't support unlimited transferring buffer or unlimited slide window, so they have a bad performance on high latency network, e.g. the Internet.
- FTPS doesn't support range reading. It can specify the beginning byte of a read operation, but cannot specify the ending byte. So when you are watching a stream video over FTPS, the player has to buffer the entire file, which may exceeds the memory.
- WebDAV can range read, but cannot range write.
So, SFTP is the best choice.
Private LAN service
- FTPS doesn't support range reading. It can specify the beginning byte of a read operation, but cannot specify the ending byte. So when you are watching a stream video over FTPS, the player has to buffer the entire file, which may exceeds the memory.
- WebDAV can range read, but cannot range write.
- The most popular version of SFTP (v3) cannot lock files on the server.
So, SMB/NFS is the best choice.
GUI
Every protocol can have a GUI on any OS, because you can mount it to a directory and access it with your native file manager application.