一种rdma连接的报文处理方法及相关装置的制造方法_2

文档序号:8433704阅读:来源:国知局
字段、全局路由头(Global Route Header, GRH)字段、基本传输头(Base Transport Header,BTH)字段、不可变循环冗余检验号(InvariantCyclic Redundancy Check,ICRC)字段和可变 CRC (Variant CRC,VCRC)字段,BTH 字段又可以包括:操作码(Operating Code,OpCode)字段、请求事件标志(Solicited Evtnt,SE)字段、迀移请求标志(Migreq,M)字段、填充数(PAD Count,PAD)字段、传输头版本(TransportHeader Vers1n,TVer)字段、分区值(Partit1n Key,PKey)字段、Rsvd 字段、QP 号(QPNumber, QPN)字段和包序列号(Packet Sequence Number, PSN)字段。其中,本实施例中,在OpCode字段用于表示RDMA报文为发送暂停报文,该发送暂停报文用于通知所述对端装置的目标序列队QP暂停发送报文。例如:上述OpCode字段为11000时表示发送暂停报文,当OpCode字段为11001时表示发送就绪(Ready To Send, RTS)报文,该RTS报文用于通知所述目标QP迀移至RTS状态。这样通过使用图4所示的RDMA报文就可以实现在传输上述发送暂停报文和上述RTS报文时都采用同样的报文传输路径,从而本实现在实现将QP迀移至暂停状态时,不需要增加额外的路径,以减少资源的开销。
[0051]本实施例中,上述通知消息可以由本端装置的内核驱动为产生下发通知消息的命令,从而可以实现在启动暂停本端装置和对端装置的QP迀移至暂停状态时,上层应用不感知,从而在实现用户不感知,以提供用户体验。例如:上述步骤301可以包括:
[0052]本端装置的内核驱动向所述本端装置的主机通道适配器(Host Chanel Adapter,HCA)硬件下发通知暂停RDMA连接收发报文的命令;
[0053]本端装置的HCA硬件响应所述命令向所述对端装置发送用于通知所述对端装置的目标序列队QP暂停发送报文的通知消息。
[0054]步骤302可以包括:
[0055]本端装置的内核驱动向所述HCA硬件下发通知本地QP迀移至暂停发送报文的暂停状态的命令,所述HCA硬件响应该命令将本地QP迀移至所述暂停状态。
[0056]其中,上述内核驱动下发命令可以是内核驱动的暂停模块Pause module下发命令。
[0057]另外,上述介绍的发送暂停报文也可以采用上述内核驱动的方式进行发送,此处不作重复说明。
[0058]本实施例中,本端装置在将本地QP迀移至暂停状态时,如果存在当前正在发送报文的QP,可以在该QP发送完当前报文后再将该QP迀移至暂停状态,例如:步骤302可以包括:
[0059]当所述本端装置存在当前正在发送报文的QP时,在所述报文发送完时将该QP迀移至暂停发送报文的暂停状态。
[0060]这样可以保证不会中断当前发送的报文,以避免丢失该报文。
[0061]303、本端装置向所述对端装置发送用于通知所述目标QP迀移至发送就绪RTS状态的通知消息,以使所述对端装置响应该通知消息将所述目标QP迀移至所述RTS状态。
[0062]本实施例中,可以在上述本端装置完成热迀移后,本端装置执行上述步骤,以实现对端装置将目标QP迀移至RTS状态,从而可以向本端装置发送报文。
[0063]304、本端装置将所述本端装置的QP迀移至所述RTS状态。
[0064]当本端装置将本地QP迀移至RTS状态后,本端装置也可以向对端装置发送报文,以实现恢复本端装置和对端装置收发报文。
[0065]可选的,步骤303可以包括:
[0066]所述本端装置为所述本端装置的各个QP封装RTS报文,并通过各个QP将所述RTS报文发送给与该QP连接的对端装置的目标QP,以使所述对端装置响应所述RTS报文将所述目标QP迀移至RTS状态。
[0067]或者,步骤303可以包括:
[0068]本端装置的内核驱动向所述本端装置的HCA硬件下发通知恢复RDMA连接收发报文的命令;
[0069]本端装置的HCA硬件响应该命令向所述对端装置发送用于通知所述对端装置的目标序列队QP迀移至发送就绪RTS状态的通知消息;
[0070]步骤304可以包括:
[0071 ] 本端装置的内核驱动向所述HCA硬件下发通知本地QP迀移至RTS状态的命令,所述HCA硬件响应该命令将本地QP迀移至RTS状态。
[0072]本实施例在图1所示的实施例的基础上增加了多种可选的实施方式,且都可以实现避免RDMA连接断链。
[0073]请参阅图5,图5是本发明实施例提供的另一种RDMA连接的报文处理方法的流程示意图,如图5所示,包括如下步骤:
[0074]501、对端装置接收本端装置发送的用于通知所述对端装置的目标序列队QP暂停发送报文的通知消息,其中,所述本端装置与所述对端装置之间建立RDMA连接,所述目标QP为所述对端装置中与所述本端装置的QP建立连接的QP。
[0075]可以是当上述本端装置需要进行热迀移时,上述本端装置向上述对端装置发送上述通知消息。
[0076]502、对端装置响应所述通知消息将所述目标QP迀移至暂停发送报文的暂停状
??τ O
[0077]当上述对端装置将上述目标QP迀移至暂停状态时,这样该对端装置就不会向上述本端装置发送报文,从而可以实现在本端装置进行热迀移时不会出现RDMA连接断链。
[0078]本实施例中,对端装置接收本端装置发送的用于通知所述对端装置的目标序列队QP暂停发送报文的通知消息,其中,所述本端装置与所述对端装置之间建立RDMA连接,所述目标QP为所述对端装置中与所述本端装置的QP建立连接的QP ;对端装置响应所述通知消息将所述目标QP迀移至暂停发送报文的暂停状态。从而可以实现避免RDMA连接断链。
[0079]请参阅图6,图6是本发明实施例提供的另一种RDMA连接的报文处理方法的流程示意图,如图6所示,包括如下步骤:
[0080]601、对端装置接收本端装置发送的用于通知所述对端装置的目标序列队QP暂停发送报文的通知消息,其中,所述本端装置与所述对端装置之间建立RDMA连接,所述目标QP为所述对端装置中与所述本端装置的QP建立连接的QP。
[0081]602、对端装置响应所述通知消息将所述目标QP迀移至暂停发送报文的暂停状
??τ O
[0082]本实施例中,步骤602可以包括:
[0083]对端装置响应所述通知消息产生修改暂停中断,并将所述修改暂停中断通知所述对端装置的内核驱动,其中,所述修改暂停中断包含事件类型信息和所述目标QP的QP号;
[0084]所述对端内核驱动解析所述修改暂停中断获取到所述事件类型信息和所述目标QP的QP号,并调用QP修改接口向主机通道适配器HCA硬件下发通知所述目标QP迀移至暂停发送报文的暂停状态的命令,所述HCA硬件响应该命令将所述目标QP迀移至所述暂停状
??τ O
[0085]例如:如图7所示,VMO为上述本端装置,VMl和VM2为上述本端装置,当VMO需要进行热迀移时,VMO的内核驱动的暂停模块向HCV硬件下发启动暂停RDMA收发报文流程,此时上层应用不感知;HCV硬件为本地每个QP封装发送暂停报文,发送给RDMA连接的VMl和VM2的对端QP。VMl和VM2的HCV硬件接收到发送暂停报文后,产生修改暂停(Modifyto STOP)中断智能内核驱动,其中,该中继信息包含事件类型和接收QP号,其中,该事件类型表示将QP迀移至暂停状态;VM1和VM2的内核驱动的暂停模块接收到该中断消息,对其进行解析,解析出事件类型和QP号,调用修改QP接口下发命令给HCV硬件,由HCV硬件将QP迀移至暂停状态。另外,上述内核驱动可以是HCV的内核驱动。
[0086]603、对端装置接收所述本端装置发送的通知所述目标QP迀移至发送就绪RTS状态的通知消息,并响应该通知消息将所述目标QP迀移至所述RTS状态。
[0087]其中,上述通知所述目标QP迀移至发送就绪RTS状态的通知消息可以是上述本端装置完成热迀移后向上述对端装置发送的通知消息。
[0088]本实施例中,上述将所述目标QP迀移至所述RTS状态也可以采用上述内核驱动下发命令的方式实现将目标QP迀移至RTS状态,此处不作重复说明。
[0089]本实施例中在图5所示的实施例的基础上增加了多种可选的实现方式,都可以实现避免RDMA连接断链。
[0090]下面为本发明装置实施例,本发明装置实施例用于执行本发明方法实施例一至四实现的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例一、实施例二、实施例三和实施例四。
[0091]请参阅图8,图8是本发明实施例提供的一种本端装置的结构示意图,如图8所示,包括:发送单元81和第一迀移单元82,其中:
[0092]发送单元81,用于向对端装置发送用于通知所述对端装置的目标序列队QP暂停发送报文的通知消息,以使所述对端装置响应所述通知消息将所述目标QP迀移至暂停发送报文的暂停状态,其中,所述本端装置与所述对端装置之间建立RDMA连接,所述目标QP为所述对端装置中与所述本端装置的QP建立连接的QP。
[0093]第一迀移单元82,用于将本地QP迀移至暂停发送报文的暂停状态。
[0094]本实施例中,上述本端装置可以理解为当前需要进行热迀移的装置,或者一些当前需要暂停收发报文的装置虚拟机,例如:出现故障的装置等。另外,本本发明实施例中的装置可以是包括但不限于虚拟机、物理主机等需要进行热迀移的装置。
[0095]本实施例中,本端装置向对端装置发送用于通知所述对端装置的目标序列队QP暂停发送报文的通知消息,以使所述对端装置响应所述通知消息将所述目标QP迀移至暂停发送报文的暂停状态,其中,所述本端装置与所述对端装置之间建立RDMA连接,所述目标QP为所述对端装置中与
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1