一种基于IROS的海量小文件传输系统和方法技术方案

技术编号:39305416 阅读:7 留言:0更新日期:2023-11-12 15:54
本发明专利技术提供了一种基于IROS的海量小文件传输系统和方法,属于数据通信技术领域。包括文件发送服务器和文件接收服务器,所述文件发送服务器包括发送目录、小文件发送模块、小文件网络发送模块和智能机器人操作系统,所述文件接收服务器包括接收目录、小文件接收模块、小文件网络接收模块和智能机器人操作系统。通过将小文件低效的随机读为主转换为顺序读为主,有效发挥了磁盘的性能;结合IROS的高效消息缓存机制和通过将小消息合并为大消息在传输过程中能够有效利用传输带宽,有效发挥了网络的传输性能。络的传输性能。络的传输性能。

【技术实现步骤摘要】
一种基于IROS的海量小文件传输系统和方法


[0001]本专利技术涉及一种基于IROS的海量小文件传输系统和方法,属于数据通信


技术介绍

[0002]文件是保存数据的最常用方法之一,可以通过网络进行交换。在通过网络传输过程中,一般大文件的传输效率较高,而小文件的传输效率明显要低些,如在千兆网络中,ftp传输一个100MB的大文件大约1秒多点就可传输完毕,而10000个单个为10KB的小文件,其总量大小也为100MB,通过ftp传输时花的时间经常会超过1分钟,传输明显要慢得多。同样的文件传输工具,同样的运行环境,同样总量大小的文件,因单个文件大小的不同,小文件的传输效率明显是很慢的,在不少实际情景中确实需要传输海量的小文件。
[0003]在Linux操作系统中,文件存储在目录中,目录下可嵌套子目录。Linux中的目录和文件需要通过一个成为inode的对象进行索引,读取一个文件时,会调用read操作,read操作会读取inode信息进而获取文件的真实内容的存储位置,然后把数据从磁盘上读出来,而写文件会调用write操作,会更新inode信息,inode信息正常是缓存到内存中的。
[0004]IROS是一种新型的智能机器人操作系统,功能类似于ROS,但比ROS具备更高的性能、可靠性和安全性。IROS实际上是一种机器人中间件,IROS不仅可用于机器人上,也可用于PC机、服务器环境中,提供消息、服务、参数等基础通信服务。
[0005]小文件传输慢的原因是多方面的,网络方面,小数据包的传输效率要低于大数据包,而小文件读出后就是小数据包;磁盘方面,目前业内广泛使用的成本较低、性价比较高的机械盘,机械盘在连续读写时的效率要明显高于随机读写,而小文件就是随机读写,这两方面是小文件传输慢的根本原因。当前缺少一种利用IROS提高海量小文件的传输效率的方法。

技术实现思路

[0006]本专利技术目的是提供了一种基于IROS的海量小文件传输系统和方法,根据小文件传输慢的原因分别从磁盘读写和网络传输方面进行创新,进而大幅度提高海量小文件的传输效率。
[0007]本专利技术为实现上述目的,通过以下技术方案实现:包括文件发送服务器和文件接收服务器,所述文件发送服务器包括发送目录、小文件发送模块、小文件网络发送模块和智能机器人操作系统,所述文件接收服务器包括接收目录、小文件接收模块、小文件网络接收模块和智能机器人操作系统;所述发送目录存储有待发送的小文件;所述小文件发送模块用于读取发送目录中的小文件,并将每个文件的内容加元数据作为一个消息发布到文件发送服务器中部署的智能机器人操作系统中;所述文件发送服务器中部署的智能机器人操作系统将小文件的内容作为消息缓
存到指定的话题,并提供话题消息的发布和订阅功能;所述小文件网络发送模块从文件发送服务器部署的智能机器人操作系统中订阅消息,并将订阅的多个消息封装为一个消息发送给小文件网络接收模块;所述小文件网络接收模块获得封装后的消息,并将消息拆分为小文件消息缓存到文件接收服务器中部署的智能机器人操作系统指定话题中;所述小文件接收模块从文件接收服务器中部署的智能机器人操作系统中获取小文件消息并在接收目录中还原为对应的小文件。
[0008]优选的,所述文件发送服务器和文件接收服务器基于IP的网络连接,包括局域网或广域网。
[0009]一种基于IROS的海量小文件传输方法,包括以下内容:文件发送服务器中的小文件发送模块周期地遍历发送目录,当遍历到待传输的小文件时,将多个小文件作为一组并将每组中每个文件的内容加元数据作为一个消息发布到文件发送服务器中部署的智能机器人操作系统中;所述文件发送服务器中部署的智能机器人操作系统将小文件的内容作为消息缓存到指定话题中,并提供话题消息的发布和订阅功能;所述小文件网络发送模块从文件发送服务器中部署的智能机器人操作系统指定话题中订阅消息,将订阅的多个消息封装为一个消息发送至小文件网络接收模块;所述小文件网络接收模块从获得封装后的消息,将封装后的消息拆分为独立的小文件消息存储到文件接收服务器中部署的智能机器人操作系统指定话题中;所述文件接收服务器中部署的智能机器人操作系统将接收到的小文件的内容作为消息缓存到指定的话题中,并提供话题消息的发布和订阅功能;所述小文件接收模块从文件接收服务器中部署的智能机器人操作系统指定话题中获取小文件消息并在接收目录中还原为对应的小文件。
[0010]优选的,所述小文件发送模块将多个小文件作为一组并将每组中每个文件的内容加元数据作为一个消息发布到文件发送服务器中部署的智能机器人操作系统中具体方式如下:小文件发送模块直接读取缓存在文件发送服务器内存中的inode信息,分析发送目录中相关的小文件;将小文件划分组别,并调用read接口,逐个读取每个组中的小文件;将每组中的每个小文件的内容加上元数据作为消息缓存在文件发送服务器中的智能机器人操作系统话题中。
[0011]优选的,所述将小文件划分组别的具体内容如下:根据小文件在磁盘上的偏移量和大小,将存储在磁盘上存储接近的多个小文件作为一组。
[0012]优选的,所述将订阅的多个消息封装为一个消息后还经过加密和压缩,再发送至小文件接收模块。
[0013]本专利技术的优点在于:本专利技术通过将小文件低效的随机读为主转换为顺序读为主,有效发挥了磁盘的性能;结合IROS的高效消息缓存机制和通过将小消息合并为大消息在传输过程中能够有效利用传输带宽,有效发挥了网络的传输性能。由于有效解决了制约海量小文件传输慢的原因,本专利技术针对海量小文件的传输性能明显优于传统方法,性能是FTP的
上百倍。
附图说明
[0014]附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例一起用于解释本专利技术,并不构成对本专利技术的限制。
[0015]图1为本专利技术实施例1的主视结构示意图。
[0016]图中:S1文件发送服务器,S2文件接收服务器,D1发送目录,D2接收目录。
具体实施方式
[0017]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0018]实施例1一种基于IROS的海量小文件传输系统,包括文件发送服务器和文件接收服务器,所述文件发送服务器包括发送目录、小文件发送模块、小文件网络发送模块和智能机器人操作系统,所述文件接收服务器包括接收目录、小文件接收模块、小文件网络接收模块和智能机器人操作系统;所述发送目录存储有待发送的小文件;所述小文件发送模块用于读取发送目录中的小文件,并将每个文件的内容加元数据作为一个消息发布到文件发送服务器中部署的智能机器人操作系统中;所述文件发送服务器中部署的智能机器人操作系统将小文件的内容作为消息缓存到指定的话题,并提供话题消息的发布和订阅功能;所述小文件网络本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于IROS的海量小文件传输系统,其特征在于,包括文件发送服务器和文件接收服务器,所述文件发送服务器包括发送目录、小文件发送模块、小文件网络发送模块和智能机器人操作系统,所述文件接收服务器包括接收目录、小文件接收模块、小文件网络接收模块和智能机器人操作系统;所述发送目录存储有待发送的小文件;所述小文件发送模块用于读取发送目录中的小文件,并将每个文件的内容加元数据作为一个消息发布到文件发送服务器中部署的智能机器人操作系统中;所述文件发送服务器中部署的智能机器人操作系统将小文件的内容作为消息缓存到指定的话题,并提供话题消息的发布和订阅功能;所述小文件网络发送模块从文件发送服务器部署的智能机器人操作系统中订阅消息,并将订阅的多个消息封装为一个消息发送给小文件网络接收模块;所述小文件网络接收模块获得封装后的消息,并将消息拆分为小文件消息缓存到文件接收服务器中部署的智能机器人操作系统指定话题中;所述小文件接收模块从文件接收服务器中部署的智能机器人操作系统中获取小文件消息并在接收目录中还原为对应的小文件。2.根据权利要求1所述的基于IROS的海量小文件传输系统,其特征在于,所述文件发送服务器和文件接收服务器基于IP的网络连接,包括局域网或广域网。3.一种使用权利要求1

2任一所述的基于IROS的海量小文件传输方法,其特征在于,包括以下内容:文件发送服务器中的小文件发送模块周期地遍历发送目录,当遍历到待传输的小文件时,将多个小文件作为一组并将每组中每个文件的内容加元数据作为一个消息发布到文件发送服务器中部署的智能机器人操作系统中;所述文件发送服务器中部署的智能机器人操作系统将小文件的内容作为消息缓存到指定话题中,并提供话题消息的发布和订阅功能;所述小文件网络发送模块从文件发送服务器中部署的智能机器人操作系统指定话题中订阅消息,将订阅的多个消息封装为一个消息发送至小文件网络接收模块;所述小文件网络接收模块从...

【专利技术属性】
技术研发人员:李朝铭
申请(专利权)人:浪潮智能终端有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1