处理RPC报文的方法及相关装置制造方法及图纸

技术编号:22420154 阅读:17 留言:0更新日期:2019-10-30 02:33
本公开提供了一种处理RPC报文的方法及相关装置,属于网络通信技术领域。该方法包括:接收发送端的指定业务的RPC报文;通过该指定业务的业务模块,处理该RPC报文;在处理该RPC报文的过程中,当确定在该RPC报文对应的超时等待时长内处理不完该RPC报文时,向该发送端发送第一回应报文,该第一回应报文用于指示该发送端增加该超时等待时长。本公开实现了在某个RPC报文对应的超时等待时长不足时,只修改该RPC报文对应的超时等待时长,不需要修改客户端和服务器的核心代码,也不会增加其他业务的RPC报文对应的超时等待时长,从而整体上提高了处理RPC报文的效率。

【技术实现步骤摘要】
处理RPC报文的方法及相关装置
本公开涉及网络通信
,特别涉及一种处理RPC报文的方法及相关装置。
技术介绍
网络配置协议(NetworkConfigurationProtocol,NETCONF)是一种新的网络配置和管理协议,NETCONF采用可扩展标记语言(ExtensibleMarkupLanguage,XML)作为配置数据和协议消息的编码方式,使用客户端/服务器(Client/Server,C/S)和远程过程调用(RemoteProcedureCall,RPC)方式来管理设备中的信息。因此,在使用NETCONF协议的场景下,客户端与服务器之间通过RPC报文来进行信息交互。当客户端向服务器发送RPC报文后,会进入等待状态,以等待服务器的回应(rpc-reply)报文;客户端接收到回应报文后,根据该回应报文退出等待状态,以进行后续操作。为了防止客户端陷入无限期的等待而耽误其他操作,客户端与服务器之间约定一个固定时长。客户端将所有业务的RPC报文对应的超时等待时长均设置为该固定时长。如果客户端在发送RPC报文之后的该超时等待时长内没有接收到服务器返回的回应报文,则客户端也会退出等待状态。由于所有业务的RPC报文对应的超时等待时长均为该固定时长,当某个业务的RPC报文的处理时长较长时,需要修改客户端和服务器的核心代码,以增加该固定时长。由此可见,上述方法会增加所有业务的RPC报文对应的超时等待时长,从而导致所有业务的RPC报文的处理效率低。
技术实现思路
为了解决现有技术的问题,本公开实施例提供了一种处理RPC报文的方法及相关装置。第一方面,本公开实施例提供了一种处理RPC报文的方法,所述方法包括:接收发送端的指定业务的远程过程调用RPC报文;通过所述指定业务的业务模块,处理所述RPC报文;在处理所述RPC报文的过程中,当确定在所述RPC报文对应的超时等待时长内处理不完所述RPC报文时,向所述发送端发送第一回应报文,所述第一回应报文用于指示所述发送端增加所述超时等待时长。在本公开实施例中,在处理RPC报文的过程中,当确定在该RPC报文对应的超时等待时长内处理不完该RPC报文时,向发送端发送第一回应报文,以指示发送端增加该RPC报文对应的超时等待时长。从而实现了在某个RPC报文对应的超时等待时长不足时,只修改该RPC报文对应的超时等待时长,不需要修改客户端和服务器的核心代码,也不会增加其他业务的RPC报文对应的超时等待时长,整体提高了处理RPC报文的效率。在第一方面的第一种可能实现方式中,所述方法还包括:确定所述RPC报文对应的超时等待时长,以及统计所述RPC报文的处理时长;当所述超时等待时长与所述处理时长之间的差值小于预设阈值时,确定在所述RPC报文对应的超时等待时长内处理不完所述RPC报文。在本公开实施例中,由接收端基于该RPC报文对应的超时等待时长和该RPC报文的处理时长进行比较,从而确定出在该RPC报文对应的超时等待时长内是否能够处理完该RPC报文,提高了效率。在第一方面的第二种可能实现方式中,所述方法还包括:接收所述业务模块发送的增加超时等待时间的处理请求,根据所述处理请求,确定在所述RPC报文对应的超时等待时长内处理不完所述RPC报文。在本公开实施例中,由业务模块确定出在该RPC报文对应的超时等待时长内处理不完该RPC报文时,向接收端发送增加超时等待时长的处理请求,从而接收端基于该处理请求,就可以知道在该RPC报文对应的超时等待时长内处理不完该RPC报文,减轻了接收端的负担。在第一方面的第三种可能实现方式中,所述向所述发送端发送第一回应报文之前,所述方法还包括:确定所述发送端是否支持超时等待时长的协商能力;当所述发送端支持所述协商能力时,执行所述向所述发送端发送第一回应报文的步骤。在本公开实施例中,在向发送端发送第一回应报文之前,先确定该发送端是否支持超时等待时长的协商能力;当该发送端支持该协商能力时,才向发送端发送第一回应报文,从而避免了由于该发送端不支持该协商能力,而发送第一回应报文导致的资源浪费。在第一方面的第四种可能实现方式中,所述确定所述发送端是否支持超时等待时长的协商能力,包括:接收所述发送端发送的第一握手报文,所述第一握手报文用于建立连接;当所述第一握手报文中携带指示支持超时等待时长的协商能力的指定标签时,确定所述发送端支持超时等待时长的协商能力。在本公开实施例中,在第一握手报文中携带超时等待时长的能力,从而保证在接收端修改该RPC报文对应的超时等待时长时,不需要修改发送端的代码就可以使用新的超时等待时长进行通讯,简化了处理过程,从而提高了效率。在第一方面的第五种可能实现方式中,所述第一回应报文携带增加时长,所述增加时长为预设时长或者所述RPC报文还需的处理时长。在本公开实施例中,第一回应报文中可以携带增加时长,从而发送端直接基于该增加时长修改该RPC的超时等待时长,提高了效率。另外,该第一回应报文中还可以不携带增加时长,由发送端自己确定增加时长,提高了灵活性。在第一方面的第六种可能实现方式中,所述接收发送端的指定业务的RPC报文之前,所述方法还包括:在与所述发送端建立连接时,向所述发送端发送第二握手报文,所述第二握手报文携带指定处理时长,所述指定处理时长用于所述发送端设置所述超时等待时长。在本公开实施例中,接收端在与发送端建立连接时,向发送端发送第二握手报文,基于该第二握手报文协商该RPC报文对应的超时等待时长,从而不需要再次发送通过其他消息,以协商该RPC报文对应的超时等待时长,提高了效率。在第一方面的第七种可能实现方式中,所述向所述发送端发送第一回应报文之后,所述方法还包括:当处理完所述RPC报文时,向所述发送端发送第二回应报文,所述第二回应报文用于指示所述RPC报文的处理结果。在本公开实施例中,当处理完该RPC报文时,向发送端发送第二回应报文,以通知发送端该RPC报文的处理结果,从而使得发送端及时获知该RPC报文的处理结果。第二方面,本公开实施例提供了一种处理RPC报文的方法,所述方法包括:向接收端发送指定业务的远程过程调用RPC报文,所述RPC报文用于所述接收端通过所述指定业务的业务模块,处理所述RPC报文;接收所述接收端的第一回应报文,所述第一回应报文用于指示增加所述RPC报文对应的超时等待时长;根据所述第一回应报文,增加所述超时等待时长。在本公开实施例中,接收端在处理RPC报文的过程中,当确定在该RPC报文对应的超时等待时长内处理不完该RPC报文时,向发送端发送第一回应报文,以指示发送端增加该RPC报文对应的超时等待时长。发送端接收到该第一回应报文时,增加该超时等待时长。从而实现了在某个RPC报文对应的超时等待时长不足时,只修改该RPC报文对应的超时等待时长,不需要修改客户端和服务器的核心代码,也不会增加其他业务的RPC报文对应的超时等待时长,从而整体提高了处理RPC报文的效率。在第二方面的第一种可能实现方式中,所述根据所述第一回应报文,增加所述超时等待时长,包括:所述第一回应报文携带增加时长,从所述第一回应报文中获取所述增加时长;在所述超时等待时长的基础上增加所述增加时长的等待时长。在本公开实施例中,第一回应报文中可以携带增加时长,从而发送端直接本文档来自技高网...

【技术保护点】
1.一种处理RPC报文的方法,其特征在于,所述方法包括:接收发送端的指定业务的远程过程调用RPC报文;通过所述指定业务的业务模块,处理所述RPC报文;在处理所述RPC报文的过程中,当确定在所述RPC报文对应的超时等待时长内处理不完所述RPC报文时,向所述发送端发送第一回应报文,所述第一回应报文用于指示所述发送端增加所述超时等待时长。

【技术特征摘要】
1.一种处理RPC报文的方法,其特征在于,所述方法包括:接收发送端的指定业务的远程过程调用RPC报文;通过所述指定业务的业务模块,处理所述RPC报文;在处理所述RPC报文的过程中,当确定在所述RPC报文对应的超时等待时长内处理不完所述RPC报文时,向所述发送端发送第一回应报文,所述第一回应报文用于指示所述发送端增加所述超时等待时长。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:确定所述RPC报文对应的超时等待时长,以及统计所述RPC报文的处理时长;当所述超时等待时长与所述处理时长之间的差值小于预设阈值时,确定在所述RPC报文对应的超时等待时长内处理不完所述RPC报文。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收所述业务模块发送的增加超时等待时间的处理请求,根据所述处理请求,确定在所述RPC报文对应的超时等待时长内处理不完所述RPC报文。4.根据权利要求1所述的方法,其特征在于,所述向所述发送端发送第一回应报文之前,所述方法还包括:确定所述发送端是否支持超时等待时长的协商能力;当所述发送端支持所述协商能力时,执行所述向所述发送端发送第一回应报文的步骤。5.根据权利要求1所述的方法,其特征在于,所述第一回应报文携带增加时长,所述增加时长为预设时长或者所述RPC报文还需的处理时长。6.根据权利要求1-5任一所述的方法,其特征在于,所述向所述发送端发送第一回应报文之后,所述方法还包括:当处理完所述RPC报文时,向所述发送端发送第二回应报文,所述第二回应报文用于指示所述RPC报文的处理结果。7.一种处理RPC报文的方法,其特征在于,所述方法包括:向接收端发送指定业务的远程过程调用RPC报文,所述RPC报文用于所述接收端通过所述指定业务的业务模块,处理所述RPC报文;接收所述接收端的第一回应报文,所述第一回应报文用于指示增加所述RPC报文对应的超时等待时长;根据所述第一回应报文,增加所述超时等待时长。8.根据权利要求7所述的方法,其特征在于,所述根据所述第一回应报文,增加所述超时等待时长,包括:所述第一回应报文携带增加时长,从所述第一回应报文中获取所述增加时长;在所述超时等待时长的基础上增加所述增加时长的等待时长。9.根据权利要求7或8所述的方法,其特征在于,所述根据所述第一回应报文,增加所述超时等待时长之后,所述方法还包括:接收所述接收端的第二回应报文,所述第二回应报文为所述接收端在处理完所述RPC报文发送的;根据所述第二回应报文,确定所述RPC报文的处理结果。10.一种处理RPC报文的装置,其特征在于,所述装置包...

【专利技术属性】
技术研发人员:雷歆黄业钦罗潇
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1