XFile架构
XFile由3个部分组成,包含windows服务器端(或者Linux服务器端),windows桌面端(可以支持linux桌面),以及android应用端
,此外提供了跨平台简化客户端的python实现(含源代码,支持windows linux unix
mac等,只支持最基本的ftp点播功能,属于备胎软件),以及sync
备份同步软件的python版本[含源代码],以及证书制作工具和xfile电子邮件解析独立命令行程序等.
XFile服务同时提供兼容Ftp协议的接口和Http流播放接口,
XFile实现的整体网络示例图:
登录流程
新加入的聚合传输协议对比:
与常见的NAS软件不同,
常见的NAS软件例如FreeNAS等,都是通过将BSD
UNIX或者Linux操作系统与SAMBA等服务软件进行打包构成的一个整体文件服务系统软件,虽然对常见的操作都通过WEB进行了图形化,但是兼容性和用户友好性不如Windows平台
或者主流的Ubuntu Linux,对普通用户而言就是个黑盒子操作系统,维护成本比较高;而我们开发的XFile文件服务软件,是在Windows操作系统(和Linux)基础上安装的一个独立软件,使用户可以在windows或者Linux平台获得类似独立NAS的软件实现,在易用性和维护成本上更适合普通用户.
Ftp协议兼容性说明:
为了方便使用,我们提供了对标准FTP协议的有限支持,需要注意的是,和老旧的FTP服务器软件不同,我们的XFile默认输出为主流的国际规范UTF-8编码,无论客户端是否使用UTF8
ON指令,XFile只支持UTF-8,始终输出UTF-8,我们自己的客户端采用的是专用加密登录,并支持双向认证,可以避免蜜罐式陷阱服务器套取账户和口令.为了节省服务器端开销,文件的修改时间会始终被固定为一个不相干的时间,因此切勿使用基于FTP
LIST给出的最后修改时间来进行同步,而应该使用单独针对文件的新指令;
在执行LIST操作前,请务必切换到目标目录, 类似LIST
/dir1/dir2/这样的目录会被忽略或者错误.
除了我们自己的配套客户端软件,大部分兼容标准FTP
[UTF-8扩展指令支持]的客户端软件或者流播放软件,基本可以兼容,初步测试主流播放软件兼容性如下,但不保证始终兼容:
windows平台 :
File zilla client [免费
Ftp客户端软件] , Firefox [免费 浏览器] , cute ftp pro[共享软件
Ftp客户端软件], Internet explorer [windows自带浏览器,
需要在设置里打开UTF-8]
播放器支持:
VLC [免费播放器,流播放而非本地缓冲播放] MPlayer [免费播放器,
流播放而非本地缓冲播放] MPV Player[免费播放器,是从MPlayer发展出来的最新分支],Kodi
[MPC-HC,是从经典的Media player
classic发展出来的分支,免费播放器,对遥控器支持很好,注意选Http流优先] 具体选择可以 参考这里
,PotPlayer [免费播放器, 本地缓冲播放, 需要在我们的客户端中打开Http流优先]
Android平台:
建议使用我们的配套客户端,这样可以将Ftp流在服务器端自动转换成Http流,在Android平台有非常好的兼容性,适合调用大部分播放器.
经过测试,常见的播放器都可以被兼容调用,VLC 可以使用FTP/http模式执行流播放
(3.3.x最新版 已经修复了最关键的bug,稳定了),我们推荐从开源软件mplayer发展出来的mpv
player,这个播放器没有mplayer和vlc名气大,但是整洁安全高效,我们推荐使用它[android
5.0以上平台,目前主要的bug是播放某些avi格式视频mpv存在问题, ..avi视频建议用vlc
3.3.x ], 其次,常见的MX播放器也支持在线播放[注意仅Http流模式],
而QQ浏览器自带的播霸播放器,虽然可以兼容[仅Http流模式],但是这个播放器是通过缓冲到本地来实现的,我们不建议长期使用.
Http协议兼容性说明:
XFile服务器软件本身已经提供了Ftp流映射到Http流的功能,但是因为安全原因,只能通过我们配套的客户端软件自动执行,Http只有流播放或者下载功能,没有提供列表功能!!!
XFile软件设计说明:
XFile的设计是针对家庭用户的文件服务器软件,因此是以高效率响应,设置简单容易上手,优秀兼容性和稳定安全长时间运行为目标设计的,基于线程实现,最多支持63用户在线[每协议],如果您要用于大规模发布,本软件是不适合的,切记!
|
|