技术新讯 > 电子通信装置的制造及其应用技术 > 面向多处理器的报文处理方法、装置、设备及介质与流程  >  正文

面向多处理器的报文处理方法、装置、设备及介质与流程

  • 国知局
  • 2024-09-11 14:31:56

本发明涉及处理器互联,特别是涉及面向多处理器的报文处理方法、装置、设备及介质。

背景技术:

1、随着物联网、云计算、大数据、人工智能等新兴技术及业务模式的飞速发展,云数据中心迅速兴起,对金融、电信、能源、交通等关键领域业务发展起到了推进器的作用。承担此类功能的关键应用主机系统,特别是8路以上的高端服务器,在性能、可用性等方面的需求也越来越高,因此需要国内企业继续深耕高端服务器前沿技术,在基于国产处理器的高端服务器方面有所突破,进一步扩大信息化建设核心重大装备自主可控的范围,提高国产主机的竞争力,做大做强国产高端服务器产业,实现可持续发展。经过多年的研发,国产cpu(central processing unit,中央处理器)的计算性能有了显著提升,部分型号和参数已经达到国际先进水平,但是在处理器互连和计算性能聚合上没有标准的解决方案,造成在使用国产cpu核心的高端服务器领域无法形成突破。

2、处理器协同芯片是一种基于高速处理器互连一致性协议实现的高端服务器中的核心部件,其主要功能是实现多处理器间的协议报文处理和高速交换,通过硬件支持全系统共享访问,维护缓存一致性,实现紧耦合共享存储器多处理器系统结构,通过处理器间的高速互连,实现多路cpu计算能力的聚合。

3、业界的高端服务器主要基于英特尔的x86处理器架构和ibm(internationalbusiness machines corporation,国际商业机器公司)的power处理器架构。英特尔x86架构最新的至强系列处理器一般具有三个upi(ultra path interconnect,超通道互联)处理器高速接口,可以不需要协同芯片直接实现8路处理器的互连,但8路以上系统受制于处理器接口数、互连带宽和跨节点通信延迟等,需要通过协同芯片实现互连和全局共享缓存一致性协议报文的路由转发。ibm的power处理器在设计之初就加入了多处理器扩展性设计,其高端多路服务器无需处理器协同芯片,可直接实现16颗处理器互连,但可能也无法实现过多处理器一起使用的情况。

4、可见,如何在无协同芯片的环境下实现多处理器的互联,且能够实现多处理器的共同使用,是本领域技术人员需要解决的问题。

技术实现思路

1、本发明实施例的目的是提供面向多处理器的报文处理方法、装置、设备及介质,可以解决在无协同芯片的环境下实现多处理器的互联,且能够实现多处理器,其具体方案如下:

2、第一方面,本发明公开了一种面向多处理器的报文处理方法,应用于配置有远程代理的节点控制器,包括:

3、通过所述远程代理获取本地节点或者远程节点发送的节点报文并利用预设先入先出缓存队列对所述节点报文进行缓存;其中,所述节点报文包括第一类节点报文或第二类节点报文,所述第一类节点报文为由所述本地节点上的中央处理器发送的并且需要传输至远程节点的报文,所述第二类节点报文为所述远程节点通过交叉开关传输的并且需要发往所述本地节点的报文;

4、通过所述远程代理从本地预先配置的协议表中确定与所述节点报文的报文类型对应的目标协议表,并利用所述目标协议表对所述预设先入先出缓存队列中的所述节点报文进行转换,以得到转换后报文,其中,若所述节点报文的报文类型为所述第一类节点报文,则所述转换后报文为满足所述本地节点的内部报文协议的报文,若所述节点报文的报文类型为所述第二类节点报文,则所述转换后报文为符合缓存一致性互联标准的报文;

5、通过所述远程代理根据所述报文类型将所述转换后报文转发至所述本地节点上的中央处理器或者通过所述交叉开关传输至所述远程节点上的中央处理器。

6、可选的,所述通过所述远程代理获取本地节点或者远程节点发送的节点报文并利用预设先入先出缓存队列对所述节点报文进行缓存,包括:

7、通过所述远程代理获取本地节点的中央处理器发送的空请求包以及与所述空请求包对应的请求数据,或通过所述远程代理获取本地节点的中央处理器发送的第一空响应包以及对所述第一空响应包对应的第一响应数据;

8、分别将所述请求数据和所述第一响应数据存储至对应通道的预设内存空间;

9、设置用于存储通过请求通道获取的所述空请求包的第一目标队列和用于存储通过第一响应通道获取的所述第一空响应包的第二目标队列;

10、将所述空请求包中的写使能信号作为所述第一目标队列的写使能信号,然后将所述第一目标队列的写使能标志置位,以将所述空请求包写入所述第一目标队列;

11、将所述第一空响应包中的写使能信号作为所述第二目标队列的写使能信号,然后将所述第二目标队列的写使能标志置位,以将所述第一空响应包写入所述第二目标队列;

12、当所述第一目标队列或所述第二目标队列接收读使能信号,则根据预设调度规则控制所述第一目标队列或所述第二目标队列进行读使能标志置位处理,以从所述第一目标队列或所述第二目标队列中读取队列信息,并在每次队列信息读取完成后记录并反馈对应通道的信用值;

13、其中,所述第一目标队列和所述第二目标队列为先入先出缓存队列;所述空请求包或所述第一空响应包中相应配置有所述第一类节点报文中的所述请求数据或所述第一响应数据的与传输相关的控制信息;所述控制信息包括所述请求数据或所述第一响应数据的源地址、目的地址、协议类型;所述信用值为先入先出缓存队列的当前占用信息。

14、可选的,所述通过所述远程代理获取本地节点或者远程节点发送的节点报文并利用预设先入先出缓存队列对所述节点报文进行缓存,包括:

15、通过所述远程代理获取远程节点发送的交叉集群窥探空请求包,或通过所述远程代理获取远程节点发送的第二空响应包以及与所述第二空响应包对应的第二响应数据;

16、根据唯一数据标识分配规则对所述第二响应数据进行唯一数据标识分配处理,并将携带所述唯一数据标识的所述第二响应数据发送至与第二响应通道对应的预设内存空间,然后将所述第二空响应包存储在第三目标队列中,将所述交叉集群窥探空请求包存储在第四目标队列中,并在每次队列信息读取完成后记录并反馈对应通道的信用值;

17、其中,所述第三目标队列和所述第四目标队列为先入先出缓存队列,所述第二空响应包中配置有所述第二类节点报文中的所述第一响应数据的与传输相关的控制信息;所述控制信息包括所述第二响应数据的源地址、目的地址、协议类型;所述信用值为先入先出缓存队列的当前占用信息。

18、可选的,所述通过所述远程代理获取本地节点或者远程节点发送的节点报文并利用预设先入先出缓存队列对所述节点报文进行缓存之后,还包括:

19、将各通道分别对应的预设先入先出缓存队列中的队列信息各添加对应的通道类型标识,以得到用于区分不同通道类型的目标队列信息;

20、通过轮询仲裁方式并将各所述目标队列信息按照时间顺序放入总队列,以便对所述总队列中的队列数据进行调度处理。

21、可选的,所述通过所述远程代理从本地预先配置的协议表中确定与所述节点报文的报文类型对应的目标协议表,并利用所述目标协议表对所述预设先入先出缓存队列中的所述节点报文进行转换,以得到转换后报文,包括:

22、按照先入先出顺序依次调度每一队列数据作为待处理报文数据;

23、通过所述远程代理并根据本地预先配置的协议表以及表征协议表修改信号的写使能信号,逐个将所述待处理报文数据放入对应的本地请求事务协议表或远程监听请求事务协议表,以修改对应的表项信息,得到相应的目标协议表;

24、根据所述目标协议表的当前状态对所述待处理报文数据进行转换,以得到初始转换后报文,并将初始转换后报文与预设内存空间中对应的目标数据进行组合,以得到目标转换后报文;

25、相应的,所述通过所述远程代理根据所述报文类型将所述转换后报文转发至所述本地节点上的中央处理器或者通过所述交叉开关传输至所述远程节点上的中央处理器,包括:

26、通过所述远程代理根据所述报文类型将所述目标转换后报文转发至所述本地节点上的中央处理器或者通过所述交叉开关传输至所述远程节点上的中央处理器。

27、可选的,所述将初始转换后报文与预设内存空间中对应的目标数据进行组合,以得到目标转换后报文,包括:

28、判断所述初始转换后报文是第一类节点报文或第二类节点报文;

29、若所述初始转换后报文为第一类节点报文,且所述初始转换后报文的通道类型不是预设响应通道类型,则将所述初始转换后报文作为目标转换后报文,并将所述目标转换后报文转发至所述本地节点上的中央处理器;

30、若所述初始转换后报文为第一类节点报文,且所述初始转换后报文的通道类型为预设响应通道类型,则判断所述初始转换后报文是否携带所述第二响应数据;

31、若所述初始转换后报文携带所述第二响应数据,则根据唯一数据标识从预设内存空间读取对应的所述第二响应数据,然后将所述第二响应数据和初始转换后报文进行组合,并将得到的目标转换后报文发送至所述本地节点上的中央处理器,然后释放当前第二响应数据的当前唯一数据标识,以便回收所述当前唯一数据标识,并更新当前第二响应通道的信用值;

32、若所述初始转换后报文不携带所述第二响应数据,则将所述初始转换后报文作为目标转换后报文,并将所述目标转换后报文转发至所述本地节点上的中央处理器。

33、可选的,所述判断所述初始转换后报文是第一类节点报文或第二类节点报文之后,还包括:

34、若所述初始转换后报文为第二类节点报文,则判断所述初始转换后报文是否携带所述第一响应数据;

35、若所述初始转换后报文携带所述第一响应数据,则根据唯一数据标识从预设内存空间读取对应的第一响应数据,然后将所述第一响应数据和第一转换后报文进行组合,并将得到的目标转换后报文发送至所述远程节点上的中央处理器,然后释放当前第一响应数据的当前唯一数据标识,以便回收所述当前唯一数据标识;

36、若所述初始转换后报文不携带第一响应数据,则将所述初始转换后报文作为目标转换后报文,并将所述目标转换后报文转发至所述远程节点上的中央处理器。

37、第二方面,本发明公开了一种面向多处理器的报文处理装置,应用于配置有远程代理的节点控制器,包括:

38、报文缓存模块,用于通过所述远程代理获取本地节点或者远程节点发送的节点报文并利用预设先入先出缓存队列对所述节点报文进行缓存;其中,所述节点报文包括第一类节点报文或第二类节点报文,所述第一类节点报文为由所述本地节点上的中央处理器发送的并且需要传输至远程节点的报文,所述第二类节点报文为所述远程节点通过交叉开关传输的并且需要发往所述本地节点的报文;

39、报文转换模块,用于通过所述远程代理从本地预先配置的协议表中确定与所述节点报文的报文类型对应的目标协议表,并利用所述目标协议表对所述预设先入先出缓存队列中的所述节点报文进行转换,以得到转换后报文,其中,若所述节点报文的报文类型为所述第一类节点报文,则所述转换后报文为满足所述本地节点的内部报文协议的报文,若所述节点报文的报文类型为所述第二类节点报文,则所述转换后报文为符合缓存一致性互联标准的报文;

40、报文转发模块,用于通过所述远程代理根据所述报文类型将所述转换后报文转发至所述本地节点上的中央处理器或者通过所述交叉开关传输至所述远程节点上的中央处理器。

41、第三方面,本发明公开了一种多处理器报文处理设备,包括:

42、存储器,用于保存计算机程序;

43、处理器,用于执行所述计算机程序,以实现前述公开的面向多处理器的报文处理方法的步骤。

44、第四方面,本发明公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的面向多处理器的报文处理方法的步骤。

45、可见,本发明公开了一种面向多处理器的报文处理方法,应用于配置有远程代理的节点控制器,包括:通过所述远程代理获取本地节点或者远程节点发送的节点报文并利用预设先入先出缓存队列对所述节点报文进行缓存;其中,所述节点报文包括第一类节点报文或第二类节点报文,所述第一类节点报文为由所述本地节点上的中央处理器发送的并且需要传输至远程节点的报文,所述第二类节点报文为所述远程节点通过交叉开关传输的并且需要发往所述本地节点的报文;通过所述远程代理从本地预先配置的协议表中确定与所述节点报文的报文类型对应的目标协议表,并利用所述目标协议表对所述预设先入先出缓存队列中的所述节点报文进行转换,以得到转换后报文,其中,若所述节点报文的报文类型为所述第一类节点报文,则所述转换后报文为满足所述本地节点的内部报文协议的报文,若所述节点报文的报文类型为所述第二类节点报文,则所述转换后报文为符合缓存一致性互联标准的报文;通过所述远程代理根据所述报文类型将所述转换后报文转发至所述本地节点上的中央处理器或者通过所述交叉开关传输至所述远程节点上的中央处理器。

46、有益效果:本发明通过在本地节点的中央处理器实现对其他远程节点的处理器节点的节点代理和事务处理,实现对不同通道的节点报文进行报文接收处理,支持多种报文类型和报文数据传输,然后通过对报文类型的节点报文进行分类队列缓存,以便根据不同的报文类型后续的处理和转发,可以实现系统的高效运行,并且对节点报文修改、转换,能够得到内部报文,然后处理发送到对应本地节点的中央处理器或远程节点的中央处理器,以实现多处理器在无需额外协同芯片的环境下,完成多处理器的互联,且根据对节点报文的有序、分类型的缓存处理,以及后续的调度处理,能够实现多处理器的共同使用。

本文地址:https://www.jishuxx.com/zhuanli/20240911/291278.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。