一种双控制器通信方法、发送端控制器和接收端控制器的制造方法

文档序号:8223309阅读:226来源:国知局
一种双控制器通信方法、发送端控制器和接收端控制器的制造方法
【技术领域】
[0001]本发明涉及计算机领域,尤指一种双控制器通信方法、发送端控制器和接收端控制器。
【背景技术】
[0002]双控制器通信是一种基于发送端控制器和接收端控制器的通信方式。现有的双控制器通信,通常是发送端控制器将数据从发送窗口发送到接收端控制器的接收窗口,如图1所示,接收窗口是接收端控制器分配的内存空间,接收端控制器在收到数据后,将数据从接收窗口拷贝到卷数据缓存中。并将数据对应的指针从卷数据缓存逐级传递到廉价冗余磁盘阵列(RAID,Redundant Arrays of Inexpensive Disks)系统。RAID 系统在计算校验时,需要对数据进行页对齐整理,页对齐整理需要做一次数据拷贝,然后进行数据刷写,写入磁盘。
[0003]从上述的传统的双控制器通信方法可知,数据从接收窗口到磁盘需要经过两次拷贝操作,即第一次拷贝为将数据从接收窗口拷贝到卷数据缓存中,第二次拷贝为RAID在页对齐时做的一次拷贝,这样,在计算机处理过程中会消耗计算机的CPU资源和占用系统的总线带宽,从而降低系统的处理性能。

【发明内容】

[0004]为解决上述技术问题,本发明实施例提供一种双控制器通信方法、发送端控制器和接收端控制器,能够节约计算机的CPU资源和占用系统的总线带宽,从而提高系统的处理性能。
[0005]为达到本发明目的,本发明提供了一种双控制器通信方法,包括:发送端控制器根据需要发送的数据的数据写入磁盘的位置和大小,向接收端控制器的接收缓存池申请接收缓存空间并获得接收缓存空间的缓存位置指针;
[0006]发送端控制器将需要发送的数据发送到申请到的接收缓存空间中,并将获得的缓存位置指针发送到接收端控制器;
[0007]接收端控制器接收来自发送端控制器的数据及接收缓存空间的缓存位置指针,将接收到的数据存入接收缓存空间;
[0008]接收端控制器将接收到的缓存位置指针转换成本地内存的数据指针,并将转换后的数据指针从卷数据缓存逐级传递到廉价冗余磁盘阵列RAID系
[0009]该方法之前还包括:所述发送端控制器接收数据发送请求,其中包括所述需要发送的数据、所述需要发送的数据的数据写入磁盘的位置和大小。
[0010]所述将接收缓存空间的缓存位置指针发送到接收端控制器包括:
[0011]将所述缓存位置指针携带在数据对应的描述信息中发送至所述接收端控制器。
[0012]所述方法还包括:
[0013]所述发送端控制器接收到来自接收端控制器的回收数据缓存空间通知,释放所述接收缓存空间。
[0014]所述将转换后的数据指针从卷数据缓存逐级传递到RAID系统包括:
[0015]所述接收端控制器将转换后的数据指针从卷数据缓存传递到卷管理,再从所述卷管理传递到RAID系统。
[0016]该方法还包括;所述RAID系统将所述接收缓存空间作为数据缓存空间;将所述数据刷写到硬盘。
[0017]本发明还提供了一种发送端控制器,至少包括申请单元、发送单元;其中,
[0018]申请单元,用于向接收端控制器发送用于申请接收缓存空间的申请请求,其中携带有需要发送的数据的数据写入磁盘的位置和大小;获取申请到的接收缓存空间的缓存位置指针;
[0019]发送单元,用于将需要发送的数据发送到接收缓存空间中,并将获得接收缓存空间的缓存位置指针发送给接收端控制器。
[0020]所述发送端控制器还包括接收单元,用于接收数据发送请求,其中携带有所述需要发送的数据、数据写入磁盘的位置和大小。
[0021]所述发送单元具体用于:将所述接收缓存空间的缓存位置指针携带在数据对应的描述信息中发送至接收端控制器。
[0022]所述发送端控制器还包括:
[0023]释放单元,用于接收到来自接收端控制器发送的回收数据缓存空间通知,释放所述接收缓存空间。
[0024]本发明又提供了一种接收端控制器,至少包括接收单元、指针转换单元、指针传递单元,其中,
[0025]接收单元,用于接收来自发送端控制器的数据及接收缓存空间的缓存位置指针;
[0026]指针转换单元,用于将接收到的缓存位置指针转换成本地内存的数据指针;
[0027]指针传递单元,用于将转换后的数据指针从卷数据缓存逐级传递到RAID系统。
[0028]所述接收单元还用于:接收来自所述发送端控制器的携带有接收缓存空间的缓存位置指针的数据对应的描述信息。
[0029]所述指针传递单元包括:第一指针传递子单元、第二指针传递子单元;其中,
[0030]第一指针传递子单元,用于将所述转换后的数据指针从卷数据缓存传递到卷管理;
[0031]第二指针传递子单元,用于将所述转换后的数据指针从所述卷管理传递到RAID系统。
[0032]所述接收端控制器还包括数据刷写单元,用于:将所述接收缓存空间作为数据缓存空间;将所述数据刷写到硬盘。
[0033]所述接收端控制器,还包括:发送单元,用于向所述发送端控制器发送回收数据缓存空间通知。
[0034]和现有技术相比,本发明提供的技术方案包括:发送端控制器根据需要发送的数据的数据写入磁盘的位置和大小,向接收端控制器的接收缓存池申请接收缓存空间并获得接收缓存空间的缓存位置指针;发送端控制器将需要发送的数据发送到申请到的接收端控制器的接收缓存空间中,并将接收缓存空间的缓存位置指针发送到所述接收端控制器;接收端控制器将接收到的数据存入接收缓存空间,将接收到的缓存位置指针转换成本地内存的数据指针,并将数据指针从卷数据缓存逐级传递到廉价冗余磁盘阵列RAID系统。通过本发明提供的技术方案节约了计算机的CPU资源和占用系统的总线带宽,从而提高了系统的处理性能。具体地,本发明通过发送端控制器按照数据写入磁盘的位置和大小,起到了页对齐的作用,使得接收端控制器的RAID系统无需再做页对齐,从而不需要进行拷贝操作,即现有技术中的第二次拷贝,进而减少了计算机的CPU资源和系统的总线带宽的消耗。
[0035]进一步地,接收端控制器的卷数据缓存从接收缓存池获取到数据时,同时得到了数据指针。卷数据缓存在刷写缓存数据时再将数据指针逐级传递到卷管理和RAID系统中,从而省去了接收端将数据从接收窗口拷贝到卷数据缓存,即现有技术中的第一次拷贝,进而减少了计算机的CPU资源和系统的总线带宽的消耗。
[0036]本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
【附图说明】
[0037]附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
[0038]图1为现有技术的双控制通信方法的接收端的流程示意图;
[0039]图2为本发明实施例提供的一种双控制通信方法的发送端的流程示意图;
[0040]图3为本发明实施例提供的一种双控制通信方法的接收端的流程示意图;
[0041]图4为本发明实施例提供的一种发送端控制器的结构示意图;
[0042]图5为本发明实施例提供的一种接收端控制器的结构示意图。
【具体实施方式】
[0043]为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
[0044]在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0045]图2为本发明实施例提供的一种双控制通信方法的发送端的流程示意图,发送端主要由发送端控制器执行,发送端控制器在数据发送开始之前,先从接收端控制器的接收缓存池分配接收缓存空间,然后将数据发送到接收缓存空间,并将接收缓存空间对应的缓存位置指针通过描述信息发送给接收端控制器。具体地如图2所示,包括以下步骤:
[0046]步骤11、发送端控制器根据需要发送的数据的数据写入磁盘的位置和大小,向接收端控制器的接收缓存池申请接收缓存空间并获得接收缓存空间的缓存位置指针。
[0047]在该步骤11之前还包括,发送端控制器接收数据发送请求,其中包括需要发送的数据、所属需要发送的数据的数据写
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1