Ftrans是纯软件的高速传输解决方案
Ftrans是一套纯软件的数据传输解决方案,它所包含的所有的数据传输功能以及对网络传输协议的改进和优化,都是完全基于软件技术实现的,而不需要任何硬件设备的干预。Ftrans可以在不调整现有网络资源的前提下提高数据传输效率,而不需要依赖于特定的硬件设备,具有使用成本低廉、安装部署简便、易于扩展和集成等优点。
系统应用结构
Ftrans企业级高速传输解决方案主要包含高速传输引擎和用户应用终端两大组成部分。其中,高速传输引擎是Ftrans解决方案的核心部分,传输引擎基于CUTP超高速传输协议进行工作,同时内置了任务调度组件、文件处理组件、资源索引服务和传输控制接口(API)等一系列模块和组件。
数据传输引擎
数据传输引擎是高速传输系统的核心组件,直接负责完成具体的数据传输任务,并提供一切与数据传输有关的功能组件。Ftrans数据传输引擎主要由以下几部分组成:
CUTP高速传输协议
高速传输引擎的运行依赖于Ftrans独有的CUTP超高速传输协议,该协议内置了数据收发、带宽感知和拥塞控制策略等功能。CUTP超高速传输协议彻底克服了TCP固有瓶颈,实现了在各种共享和私有网络环境中传输速度的最大化。这种技术可以获得完美的传输效率,不为网络延迟和丢包所限制。并且,用户享有对传输速度以及不同传输流之间带宽共享的无以伦比的控制。不管网络距离和动态性能如何,即便是在最困难的网络条件下,文件传输时间仍然可以得到保障。
任务调度组件
任务调度组件是传输事务的执行模块,负责管理和控制数据传输的执行逻辑,数据传输任务的启动、中断、取消等调度工作均由任务调度组件来完成。任务调度的原则和逻辑可以受到以下几个方面的影响:
- 用户操作产生的任务控制指令
- 传输控制接口接收到的任务调度请求
- 资源索引服务提供的数据来源信息
- 来自CUTP协议的拥塞控制反馈
资源索引服务
资源索引服务是高性能传输系统内置的资源组织与协调模块,其主要作用是面向上层应用模块和组件提供数据资源的索引、检索和快速定位服务。资源索引服务对已知的数据资源和数据资源片段进行目录索引,当整个系统内的数据资源发生变化时,资源索引服务还将对资源索引信息进行即时的更新,以便在传输过程中可以迅速找到数据有效来源并定位到目标资源的具体位置。
资源索引服务包含全局资源索引和本地资源索引,分别对应全网络内的数据资源和单一节点内部的数据资源。资源索引服务依赖于资源索引数据库对数据资源的索引信息进行存储和检索。
文件处理组件
文件处理组件属于系统的底层服务模块,主要负责提供面向操作系统的文件处理能力,高性能传输系统中所有需要读写、校验等文件处理的操作均交付给文件处理组件来完成。
文件处理组件还提供文件的校验与加密功能,对于数据网络传输的最终结果进行验证,确保数据传输的完整性和正确性,并可对具备一定安全性要求的数据传输过程进行加解密处理。
为了与P2P对等传输功能相适应,文件处理组件可以对原始数据文件进行分块与合并操作,这种操作可以是物理的也可以是虚拟进行的,文件处理组件将确保这种操作是安全、可控和可逆的。
传输控制接口(API)
另外,数据传输引擎还面向系统内部提供数据传输控制接口的支持,依赖传输控制接口,数据传输引擎可以和系统的其它模块或组件(例如用户应用终端)进行交互,以接收用户对数据传输任务的控制操作和指令。
用户应用终端
用户应用终端是高性能传输系统面向用户的操作和管理接口,也是用户掌握和控制数据传输状态的有效工具。通过用户应用终端,操作管理人员可以实现以下功能:
任务调度
用户可以发起和创建数据传输任务,设定任务的接收方和需要传输的具体数据内容。在任务传输过程中可以对数据传输任务进行暂停、终止以及优先级调整。对于已完成的任务可以查看传输结果或导出数据资源。
任务监视
通过用户应用终端,用户可以对正在进行的数据传输任务状态进行掌控,包括数据传输的总体进度、即时速度、耗时情况、异常情况以及各参与节点状态。
文件处理组件
传输策略控制
用户可以通过系统配置的形式,对数据传输过程中的策略进行控制和调整,例如接收和发送数据的并发线程数量、本节点的网络带宽限制、是否启用P2P传输等。通过对一系列传输策略的配置,用户将获得对数据传输过程更加灵活的控制能力,进而根据系统应用的不同场景、环境和要求,作出更具适应性的数据传输方案,以便最大限度的使高性能传输系统匹配用户需求。
节点管理
在用户应用终端,系统内置了对本节点以及相邻节点的状态维护与监控功能,可以帮助用户及时地掌握各节点的运行状态,进而做出更准确的判断,并在必要的情况下对传输任务乃至网络和硬件环境进行调整和优化。
资源管理
资源管理模块用于管理当前数据传输节点的所有已知的资源信息,通过对资源文件的索引,每个资源具有一个唯一的ID,作为该资源在全局范围内的唯一标识。另外,用户可以控制资源的状态,决定资源是否在全网内发布并进行传输和共享。
安全认证
用户应用终端同时还提供了面向应用层面的安全控制机制,包括用户账号、身份的管理和验证,以及数据节点接入网络的合法性和安全性认证。