一种基于ipsan的均衡多主机网口性能的方法及装置制造方法及图纸

技术编号:13074365 阅读:86 留言:0更新日期:2016-03-30 10:10
本发明专利技术公开了一种基于ipsan的均衡多主机网口性能的方法:对每个端口维护一个连接链表,每个端口的连接链表中包含该端口与主机之间的多个连接;对每个端口维护一个对象链表,每个端口的对象链表中的多个对象分别对应该端口与主机之间的多个连接;对对象链表中的每个对象分别维护一个命令链表,每个命令链表中包含多个命令,每个命令链表中包含的多个命令是由与该对象所对应的连接所下发的;在处理对象链表中的某个对象所对应的命令链表中预设数量的命令后,将命令执行结果通过返回发送队列返回给对应的主机,并继续处理下一个对象所对应的命令链表中预设数量的命令并返回命令执行结果。本发明专利技术还提供了相应的基于ipsan的均衡多主机网口性能的装置。

【技术实现步骤摘要】

本专利技术属于通信
,更具体地,涉及一种基于ipsan的均衡多主机网口性能的方法及装置
技术介绍
企业存储技术发展日新月异,早期是基于大型服务器的DAS技术(DirectAttached Storage,直接附加存储,又称直连存储),后来为了提高存储空间的利用及管理安装上的效率,因而有了SAN(Storage Area Network,存储局域网络)技术的诞生,SAN可说是DAS网络化发展趋势下的产物。早先的SAN采用的是光纤通道(FC,Fiber Channel)技术,所以在iSCSI出现以前,SAN多半单指FC而言。一直到iSCSI (Internet Small ComputerSystem Interface,Internet小型计算机系统接口)问世,为了方便区别,业界才分别以FC-SAN及iSCS1-SAN的称呼加以分辨。紧接着,为了能在多用户网络环境中,做好档案集中化分享管理的工作,采用全然不同于以往的文件协议(File Protocol)数据存取方式的NAS(Network Attached Storage;网络附加存储)方案也应运而生。它的出现,为以太网络的成熟及重要,做了最佳脚注。日益发展及成熟的因特网,更进一步成为了 IP存储方案成长壮大的最佳腹地及平台,现成的架构、协议、标准、基础设施及管理工具,莫不吸引着寻求最佳存储方案者的目光。此背景,加上FC-SAN高不可攀的成本及管理门坎的障碍,另一存储成员iSCSI (InternetSCSI)也来报到了。iSCSI的出现,标志着低价化SAN方案的问世。从IP SAN到iSCSI SAN所谓iSCSI亦即通过IP网络,将SCSI区块数据转换成网络封包的一种传输标准,它和NAS—样通过IP网络来传输数据,但在数据存取方式上,则采用与NAS不同的,而与FC-SAN相同的Block Protocol。iSCSI最早是由IBM和Cisco于2001年制定的。事实上,为了解决FC-SAN在价格及管理上的诸多门坎,各家早有不同协议的IP SAN的研究开发。这些IP SAN的架构,其实与iSCSI大同小异,只不过并非走标准化的协议(事实上,在iSCSI标准化之前,也没有什么标准不标准的问题),而是各家自行研发的协议,所以基本上各家IP SAN是不兼容的。IP SAN基于十分成熟的以太网技术,由于设置配置的技术简单、低成本的特色相当明显,而且普通服务器或PC机只需要具备网卡,即可共享和使用大容量的存储空间。由于是基于IP协议的,能容纳所有IP协议网络中的部件,因此,用户可以在任何需要的地方创建实际的SAN网络,而不需要专门的光纤通道网络在服务器和存储设备之间传送数据。同时,因为没有光纤通道对传输距离的限制,IP SAN使用标准的TCP/IP协议,数据即可在以太网上进行传输。IP SAN网络对于那些要求流量不太高的应用场合以及预算不充足的用户,是一个非常好的选择。然而如果多台主机同时访问ipsan的同一个网口,会出现性能好的主机独占带宽的情况,从而导致性能波动很大。
技术实现思路
针对现有技术的以上缺陷或改进需求,本专利技术提供了一种基于ipsan的均衡多主机网口性能的方法及装置,其目的在于为多个主机访问ipsan存储设备的同一个端口时提供一种资源均衡的调度方法,从而解决部分性能好的主机独占带宽以及访问性能波动很大的技术问题。为实现上述目的,按照本专利技术的一个方面,提供了一种基于ipsan的均衡多主机网口性能的方法,包括:在ipsan存储设备中,针对每个端口维护一个连接链表,每个端口的连接链表中包含该端口与主机之间的多个连接;在ipsan存储设备中,针对每个端口维护一个对象链表,每个端口的对象链表中的多个对象分别对应该端口与主机之间的多个连接;在ipsan存储设备中,针对对象链表中的每个对象分别维护一个命令链表,每个命令链表中包含多个命令,每个命令链表中包含的多个命令是由与该对象所对应的连接所下发的;在ipsan存储设备中,开启一个监控线程用于轮询对象链表,在处理对象链表中的某个对象所对应的命令链表中预设数量的命令后,将命令执行结果通过返回发送队列返回给对应的主机,并继续处理下一个对象所对应的命令链表中预设数量的命令并返回命令执行结果。进一步地,当有新的主机与ipsan存储设备的某一端口建立连接时,把该连接加入到该端口所对应的连接链表中,并在该端口所对应的对象链表中加入对应该连接的对象,并建立该对象所对应的命令链表。进一步地,在ipsan存储设备中开启一个处理线程用于轮询连接链表,当连接链表中某个连接下发了新的命令时,则将该命令加入到该连接所对应的对象的命令链表中。进一步地,所述将命令执行结果通过返回发送队列返回给对应的主机具体为:监控线程在处理完某个对象所对应的命令链表中预设数量的命令后,将命令执行结果挂到该对象所对应的连接所维护的返回发送队列中;处理线程轮询连接链表,当接链表中某个连接收到了新的命令执行结果时,则将预计数量的命令执行结果发送给该连接所对应的主机。进一步优选地,监控线程执行命令链表中的命令的预设数量是4;处理线程发送返回发送队列中的命令执行结果的预设数量是4。按照本专利技术的另一方面,还提供了一种基于ipsan的均衡多主机网口性能的装置,包括连接链表维护模块、对象链表维护模块、命令链表维护模块以及监控线程维护模块,其中:所述连接链表维护模块,用于在ipsan存储设备中,针对每个端口维护一个连接链表,每个端口的连接链表中包含该端口与主机之间的多个连接;所述对象链表维护模块,用于在ipsan存储设备中,针对每个端口维护一个对象链表,每个端口的对象链表中的多个对象分别对应该端口与主机之间的多个连接;所述命令链表维护模块,用于在ipsan存储设备中,针对对象链表中的每个对象分别维护一个命令链表,每个命令链表中包含多个命令,每个命令链表中包含的多个命令是由与该对象所对应的连接所下发的;所述监控线程维护模块,用于在ipsan存储设备中,维护一个用于轮询对象链表的监控线程,在处理对象链表中的某个对象所对应的命令链表中预设数量的命令后,将命令执行结果通过返回发送队列返回给对应的主机,并继续处理下一个对象所对应的命令链表中预设数量的命令并返回命令执行结果。进一步地,当有新的主机与ipsan存储设备的某一端口建立连接时,所述连接链表维护模块用于把该连接加入到该端口所对应的连接链表中;所述对象链表维护模块,用于在该端口所对应的对象链表中加入对应该连接的对象,并建立该对象所对应的命令链表。进一步地,所述装置还包括一个处理线程维护模块,用于在ipsan存储设备中开启一个用于轮询连接链表的处理线程,当连接链表中某个连接下发了新的命令时,则将该命令加入到该连接所对应的对象的命令链表中。进一步地,所述监控线程维护模块将命令执行结果通过返回发送队列返回给对应的主机具体为:监控线程在处理完某个对象所对应的命令链表中预设数量的命令后,将命令执行结果挂到该对象所对应的连接所维护的返回发送队列中;并由处理线程轮询连接链表,当接链表中某个连接收到了新的命令执行结果时,则将预计数量的命令执行结果发送给该连接所对应的主机。进一步优选地,监控线程执行命令链表中的命令的本文档来自技高网
...

【技术保护点】
一种基于ipsan的均衡多主机网口性能的方法,其特征在于,包括:在ipsan存储设备中,针对每个端口维护一个连接链表,每个端口的连接链表中包含该端口与主机之间的多个连接;在ipsan存储设备中,针对每个端口维护一个对象链表,每个端口的对象链表中的多个对象分别对应该端口与主机之间的多个连接;在ipsan存储设备中,针对对象链表中的每个对象分别维护一个命令链表,每个命令链表中包含多个命令,每个命令链表中包含的多个命令是由与该对象所对应的连接所下发的;在ipsan存储设备中,开启一个监控线程用于轮询对象链表,在处理对象链表中的某个对象所对应的命令链表中预设数量的命令后,将命令执行结果通过返回发送队列返回给对应的主机,并继续处理下一个对象所对应的命令链表中预设数量的命令并返回命令执行结果。

【技术特征摘要】

【专利技术属性】
技术研发人员:杨淑娟
申请(专利权)人:深圳市迪菲特科技股份有限公司
类型:发明
国别省市:广东;44

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

1