专利名称:支持双模式的消息引擎及消息传输方法
技术领域:
本发明涉及高性能计算互联通信领域,特别涉及消息传输方法及装置、消息发送 及接收装置。
背景技术:
目前,计算机网络的节点间的数据传输常采用基于消息传递的方式,通过消息传 递的方式来驱动数据传输的进行。
商用服务器,其存储容量大,主要用于大数据存储和提供文件服务。定制节点, 其计算速度较快,主要用于数据计算。商用服务器通常使用标准通信协议(例如PCI-E、 PCI-X、PCI)进行数据传输。而定制节点,考虑到整体计算速度,通常会使用自定义的通信 协议以提高节点内各部件间的数据传输速度。
由于基于各种通信协议的不同,当商用服务器和定制节点间需要通过互相传输消 息进行数据传输时,就会面临消息协议不兼容的问题。发明内容
本发明解决的问题是现有技术商用服务器和定制节点间消息传输时,消息协议不 兼容的问题。
为解决上述问题,本发明提供一种消息传输方法,包括
基于消息发送模式配置消息传输的源节点的通信协议;
当消息传输的源节点和消息传输网络的通信协议相同时,将消息以消息传输网络 对应的通信协议发送至消息传输网络;
当消息传输的源节点和消息传输网络的通信协议不相同时,将消息拆包解析,以 消息传输网络对应的通信协议格式重新组包后发送至消息传输网络;
基于消息接收模式配置消息传输的目标节点的通信协议;
当消息传输的消息传输网络和目标节点的通信协议相同时,将消息以消息传输的 目标节点对应的通信协议发送至目标节点;
当消息传输的消息传输网络和目标节点的通信协议不相同时,将消息拆包解析, 以消息传输的目标节点对应的通信协议格式重新组包后发送至目标节点。
相应的,本发明还提供一种消息传输装置,包括第一配置单元、第一处理单元、第 二配置单元、第二处理单元及发送接收单元,其中,
第一配置单元,基于消息发送模式配置消息传输的源节点的通信协议;
第一处理单元,基于第一配置单元的配置,当消息传输的源节点和消息传输网络 的通信协议相同时,将消息发送至发送接收单元;当消息传输的源节点和消息传输网络的 通信协议不相同时,将消息拆包解析,以消息传输网络对应的通信协议格式重新组包后发 送至发送接收单元;
第二配置单元,基于消息接收模式配置消息传输的目标节点的通信协议;
第二处理单元,基于第二配置单元的配置,当消息传输的目标节点和消息传输网 络的通信协议相同时,将消息发送至目标节点;当消息传输的目标节点和消息传输网络的 通信协议不相同时,将消息拆包解析,以消息传输的目标节点对应的通信协议格式重新组 包后发送至目标节点;
发送接收单元,将第一处理单元发送的消息发送至消息传输网络;从消息传输网 络接收消息发送至第二处理单元。
本发明还提供一种消息发送装置,包括发送配置单元、发送处理单元及发送单 元,其中,
发送配置单元,基于消息发送模式配置消息传输的源节点的通信协议;
发送处理单元,基于发送配置单元的配置,当消息传输的源节点和消息传输网络 的通信协议相同时,将消息发送至发送单元;当消息传输的源节点和消息传输网络的通信 协议不相同时,将消息拆包解析,以消息传输网络对应的通信协议格式重新组包后发送至 发送单元;
发送单元,将发送处理单元发送的消息发送至消息传输网络。
本发明还提供一种消息接收装置,包括接收单元、接收配置单元及接收处理单 元,其中,
接收单元,从消息传输网络接收消息发送至接收处理单元;
接收配置单元,基于消息接收模式配置消息传输的目标节点的通信协议;
接收处理单元,基于接收配置单元的配置,当消息传输的目标节点和消息传输网 络的通信协议相同时,将消息发送至目标节点;当消息传输的目标节点和消息传输网络的 通信协议不相同时,将消息拆包解析,以消息传输的目标节点对应的通信协议格式重新组 包后发送至目标节点。
与现有技术相比,上述消息传输方法及装置、消息发送及接收装置具有以下优点 以统一的消息传输网络传输消息,仅在向消息传输网络发送消息前,以及从消息传输网络 接收消息后,进行源节点/目标节点与消息传输网络的消息包格式转换,使得使用不同通 信协议的节点间可以互相传输消息。
由于使用统一的消息传输网络传输消息,也相应提高了消息传输效率。
图1是本发明消息传输装置的一种实施方式示意图2是本发明消息传输方法的一种实施方式示意图3是本发明商用服务器和定制节点间消息传输的一种实施例示意图4是本发明消息发送装置的一种实施例示意图5是本发明消息接收装置的一种实施例示意图。
具体实施方式
参照图1所示,本发明消息传输装置的一种实施方式包括第一配置单元10、第一 处理单元20、第二配置单元30、第二处理单元40及发送接收单元50,其中,
第一配置单元10,基于消息发送模式配置消息传输的源节点的通信协议;
第一处理单元20,基于第一配置单元10的配置,当消息传输的源节点和消息传输 网络的通信协议相同时,将消息发送至发送接收单元50 ;当消息传输的源节点和消息传输 网络的通信协议不相同时,将消息拆包解析,以消息传输网络对应的通信协议格式重新组 包后发送至发送接收单元50 ;
第二配置单元30,基于消息接收模式配置消息传输的目标节点的通信协议;
第二处理单元40,基于第二配置单元30的配置,当消息传输的目标节点和消息传 输网络的通信协议相同时,将消息发送至目标节点;当消息传输的目标节点和消息传输网 络的通信协议不相同时,将消息拆包解析,以消息传输的目标节点对应的通信协议格式重 新组包后发送至目标节点;
发送接收单元50,将第一处理单元20发送的消息发送至消息传输网络;从消息传 输网络接收消息发送至第二处理单元40。
上述实施方式的消息传输装置在将消息发送至消息传输网络之前,先由第一处理 单元20根据第一配置单元10配置的消息传输的源节点的通信协议以及所获得的消息传输 网络的通信协议进行相应处理,在消息传输的源节点与消息传输网络的通信协议相同时, 由第一处理单元20将源节点的消息直接通过发送接收单元50将消息发送至消息传输网络 进行消息传输,在消息传输的源节点与消息传输网络的通信协议不同时,由第一处理单元 20将消息进行协议转换,具体地说,将消息拆包解析,以消息传输网络对应的通信协议格式 重新组包后再通过发送接收单元50将消息发送至消息传输网络进行传输。更具体地说, 所述将消息拆包解析,以消息传输网络对应的通信协议格式重新组包,包括从消息中提取 出需传输的数据,并以消息传输网络对应的通信协议格式将所提取出的数据重新包装成消 肩、ο
而在发送接收单元50从消息传输网络接收消息后,由第二处理单元40根据第二 配置单元30配置的消息传输的目标节点的通信协议以及所获得的消息传输网络的通信协 议进行相应处理,在消息传输的目标节点与消息传输网络的通信协议相同时,第二处理单 元40直接将接收的消息发送至目标节点,在消息传输的目标节点与消息传输网络的通信 协议不同时,第二处理单元40将消息进行协议转换,具体地说,将消息拆包解析,以消息传 输的目标节点对应的通信协议格式重新组包后再发送至目标节点。更具体地说,所述将消 息拆包解析,以消息传输的目标节点对应的通信协议格式重新组包,包括从消息中提取出 需传输的数据,并以消息传输的目标节点对应的通信协议格式将所提取出的数据重新包装 成消息。
上述实施方式的消息传输装置通过上述消息传输中的处理,实现了使用相同或不 同通信协议的节点间的消息传输,例如商用服务器和商用服务器间、商用服务器和定制节 点间、定制节点和定制节点间的消息传输。由于有了消息传输装置的协议转换,各使用不同 通信协议的节点实质也成为了使用相同通信协议的节点,各节点本身无需对其发送的消息 或接收的消息进行额外格式处理,有利于提高消息处理的效率。
并且,对于进行消息传输的消息传输网络,其也无需考虑在其中传输的消息是否 具有不同的通信协议格式,有利于对消息传输网络进行最优化配置,使用合适的通信协议 进行高效传输。
参照图2所示,本发明消息传输方法的一种实施方式用于两通信节点A和B间的消息传输,通信节点A和B均可以为消息的源节点和目标节点,此处为说明方便,假定A为 消息的源节点,B为消息的目标节点,所述消息传输方法包括
步骤11,基于消息发送模式配置A节点的通信协议;
步骤12,判断A节点和消息传输网络C的通信协议是否相同,若相同,则执行步骤 13,若不同,则执行步骤14;
步骤13,直接向消息传输网络C发送A节点发送的消息;
步骤14,将A节点发送的消息拆包解析,以消息传输网络C对应的通信协议格式重 新组包后向消息传输网络C发送;
步骤21,基于消息接收模式配置B节点的通信协议;
步骤22,判断消息传输网络C和B节点的通信协议是否相同,若相同,则执行步骤 23,若不同,则执行步骤M ;
步骤23,直接向B节点发送从消息传输网络C获得的消息;
步骤M,将从消息传输网络C获得的消息拆包解析,以B节点对应的通信协议格式 重新组包后向B节点发送。
上述实施方式的消息传输方法实质包括消息传输网络的消息传输过程以及两个 通信节点处的消息传输处理过程,即源节点(消息发送节点)的消息传输处理以及目标节 点(消息接收节点)的消息传输处理。通过源节点的消息传输处理,实现发送的消息格式 与消息传输网络的兼容,从而消息传输网络可以进行消息的高效传输。通过目标节点的消 息传输处理,使得接收的消息格式与目标节点的兼容,从而目标节点可以直接处理消息。
以下通过商用服务器和定制节点间的消息传输过程的举例作进一步说明。
结合图1 图3所示,如前述说明,商用服务器300使用标准的通信协议,此处 以PCI-X协议为例,其向消息传输装置401发送符合PCI-X协议格式的消息请求。当消息 传输装置401在获得所述消息请求后,会由第一处理单元20根据第一配置单元10配置的 商用服务器300的通信协议进行处理。假定第一配置单元10配置的商用服务器300使用 PCI-X协议,若消息传输网络600使用的通信协议为自定义协议,则第一处理单元20会将符 合PCI-X协议格式的消息请求进行拆包解析,再以符合自定义协议的格式将消息请求重新 组包后发送至发送接收单元50。发送接收单元50在获得第一处理单元20重新组包后的消 息请求后,将所述消息请求发送至消息传输网络600。
消息传输装置402通过发送接收单元50从消息传输网络600获得消息请求后,由 第二处理单元40根据第二配置单元30配置的定制节点500使用的通信协议进行处理。假 定此时定制节点500使用的通信协议为自定义协议,则第二处理单元40直接将消息请求发 送至定制节点500。
当定制节点500对消息请求处理后返回消息响应时,消息传输装置402中的第一 处理单元20获知消息传输网络600和定制节点500使用的通信协议后,其直接将消息响应 发送至发送接收单元50。发送接收单元50在获得第一处理单元20发送的消息响应后,将 所述消息响应发送至消息传输网络600。
消息传输装置401通过发送接收单元50从消息传输网络600获得消息响应后,消 息传输装置401的第二处理单元40获知商用服务器300和消息传输网络600使用的通信 协议后,将符合自定义协议的消息响应拆包解析,再以符合PCI-X协议的格式将消息响应重新组包后发送至商用服务器300。
至此,商用服务器300和定制节点500间的消息传输完成。可以看到,商用服务器 300在发送消息请求、接收消息响应,定制节点500在接收消息请求、发送消息响应时,都无 需考虑对方使用的通信协议细节,期间协议的转换都经由消息传输装置401、402完成。
在上述消息传输装置以硬件形式(例如芯片)实现时,可以将其与商用服务器的 通信接口设计成符合标准通信协议的样式,将其以插卡的方式运行在商用服务器上,将其 与定制节点的通信接口设计成兼容硬件接口。或者所述消息传输装置可以与定制节点集成 在同一芯片中,该集成芯片与商用服务器的通信接口设计成符合标准通信协议的样式。从 而,通过所述举例的硬件实现方式,实现商用服务器与定制节点间的消息传输。
当然,上述消息传输装置也完全可以根据实际需要部分以软件形式实现。
进一步考虑,可以分别在进行消息传输的节点间配置部分或全部的消息传输装置 的功能。
参照图4所示,本发明还提供一种消息发送装置,包括发送配置单元101、发送处 理单元102及发送单元103,其中,
发送配置单元101,基于消息发送模式配置消息传输的源节点的通信协议;
发送处理单元102,基于发送配置单元101的配置,当消息传输的源节点和消息传 输网络的通信协议相同时,将消息发送至发送单元103 ;当消息传输的源节点和消息传输 网络的通信协议不相同时,将消息拆包解析,以消息传输网络对应的通信协议格式重新组 包后发送至发送单元103 ;
发送单元103,将发送处理单元102发送的消息发送至消息传输网络。
参照图5所示,本发明还提供一种消息接收装置,包括接收单元201、接收配置单 元202及接收处理单元203,其中,
接收单元201,从消息传输网络接收消息发送至接收处理单元203 ;
接收配置单元202,基于消息接收模式配置消息传输的目标节点的通信协议;
接收处理单元203,基于接收配置单元202的配置,当消息传输的目标节点和消息 传输网络的通信协议相同时,将消息发送至目标节点;当消息传输的目标节点和消息传输 网络的通信协议不相同时,将消息拆包解析,以消息传输的目标节点对应的通信协议格式 重新组包后发送至目标节点。
虽然本发明已以较佳实施例披露如上,但本发明并非限定于此。任何本领域技术 人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应 当以权利要求所限定的范围为准。
权利要求
1.一种消息传输方法,其特征在于,包括基于消息发送模式配置消息传输的源节点的通信协议;当消息传输的源节点和消息传输网络的通信协议相同时,将消息以消息传输网络对应 的通信协议发送至消息传输网络;当消息传输的源节点和消息传输网络的通信协议不相同时,将消息拆包解析,以消息 传输网络对应的通信协议格式重新组包后发送至消息传输网络;基于消息接收模式配置消息传输的目标节点的通信协议;当消息传输的消息传输网络和目标节点的通信协议相同时,将消息以消息传输的目标 节点对应的通信协议发送至目标节点;当消息传输的消息传输网络和目标节点的通信协议不相同时,将消息拆包解析,以消 息传输的目标节点对应的通信协议格式重新组包后发送至目标节点。
2.如权利要求1所述的消息传输方法,其特征在于,将消息拆包解析,以消息传输网络 对应的通信协议格式重新组包,包括从消息中提取出需传输的数据,并以消息传输网络对 应的通信协议格式将所提取出的数据重新包装成消息。
3.如权利要求1所述的消息传输方法,其特征在于,所述消息传输网络采用自定义协议。
4.如权利要求1所述的消息传输方法,其特征在于,所述消息发送模式包括消息传输 的源节点采用自定义协议的定制节点模式,以及消息传输的源节点采用标准通信协议的服 务器模式。
5.如权利要求4所述的消息传输方法,其特征在于,所述标准通信协议为PCI-E、 PCI-X、PCI中的任意一种。
6.如权利要求1所述的消息传输方法,其特征在于,所述消息接收模式包括消息传输 的目标节点采用自定义协议的定制节点模式,以及消息传输的目标节点采用标准通信协议 的服务器模式。
7.如权利要求6所述的消息传输方法,其特征在于,所述标准通信协议为PCI-E、 PCI-X、PCI中的任意一种。
8.一种消息传输装置,其特征在于,包括第一配置单元、第一处理单元、第二配置单 元、第二处理单元及发送接收单元,其中,第一配置单元,基于消息发送模式配置消息传输的源节点的通信协议;第一处理单元,基于第一配置单元的配置,当消息传输的源节点和消息传输网络的通 信协议相同时,将消息发送至发送接收单元;当消息传输的源节点和消息传输网络的通信 协议不相同时,将消息拆包解析,以消息传输网络对应的通信协议格式重新组包后发送至 发送接收单元;第二配置单元,基于消息接收模式配置消息传输的目标节点的通信协议;第二处理单元,基于第二配置单元的配置,当消息传输的目标节点和消息传输网络的 通信协议相同时,将消息发送至目标节点;当消息传输的目标节点和消息传输网络的通信 协议不相同时,将消息拆包解析,以消息传输的目标节点对应的通信协议格式重新组包后 发送至目标节点;发送接收单元,将第一处理单元发送的消息发送至消息传输网络;从消息传输网络接收消息发送至第二处理单元。
9.一种消息发送装置,其特征在于,包括发送配置单元、发送处理单元及发送单元, 其中,发送配置单元,基于消息发送模式配置消息传输的源节点的通信协议;发送处理单元,基于发送配置单元的配置,当消息传输的源节点和消息传输网络的通 信协议相同时,将消息发送至发送单元;当消息传输的源节点和消息传输网络的通信协议 不相同时,将消息拆包解析,以消息传输网络对应的通信协议格式重新组包后发送至发送 单元;发送单元,将发送处理单元发送的消息发送至消息传输网络。
10.一种消息接收装置,其特征在于,包括接收单元、接收配置单元及接收处理单元, 其中,接收单元,从消息传输网络接收消息发送至接收处理单元;接收配置单元,基于消息接收模式配置消息传输的目标节点的通信协议;接收处理单元,基于接收配置单元的配置,当消息传输的目标节点和消息传输网络的 通信协议相同时,将消息发送至目标节点;当消息传输的目标节点和消息传输网络的通信 协议不相同时,将消息拆包解析,以消息传输的目标节点对应的通信协议格式重新组包后 发送至目标节点。
全文摘要
一种消息传输方法及装置、消息发送及接收装置。所述消息传输方法包括基于消息发送/接收模式分别配置消息传输的源节点、目标节点的通信协议;当消息传输的源节点和消息传输网络的通信协议不相同时,将消息拆包解析,以消息传输网络对应的通信协议格式重新组包后发送至消息传输网络;当消息传输的消息传输网络和目标节点的通信协议不相同时,将消息拆包解析,以消息传输的目标节点对应的通信协议格式重新组包后发送至目标节点。所述消息传输方法及装置、消息发送及接收装置支持自定义协议和例如PCI-X等标准协议,使得不同通信协议的节点均可通过统一的定制网络进行高效通信,提高了通信功能集成度,缩减了研发及使用成本。
文档编号H04L29/06GK102035791SQ20091005796
公开日2011年4月27日 申请日期2009年9月28日 优先权日2009年9月28日
发明者卢宏生, 李媛, 毕小建, 陈健, 黄永勤 申请人:无锡江南计算技术研究所